TwoNav RMAP

From OpenStreetMap Wiki
Jump to navigation Jump to search

map2rmap converter is part of qlandkarte, which can only generate 24bit JFIF tiles (type=0xa).

Header (len=19):

43  6f  6d  70  65  47  50  53  52  61  73  74  65  72  49  6d  61  67  65
C   o   m   p   e   G   P   S   R   a   s   t   e   r   I   m   a   g   e

Known data types (4,5,7,8,9,a) and tagged tiles (2=zlib,7=jfif,9=rle?):

Espana CDEM 3D: zlib 16bit BIL EHdr
header + 0x04               + 0x4650 + 0x2580     + 16 + 1 +  64 +  64 + mapDataOffset8 + 0            + 8 + ptr8[width  height 11a 96 ptr8[2  64   64  len zdata78 ]] ...
         type                 width     height     bpp   1   tilex tiley                 n_pal   pal[]  nzoom                    nx  ny     tag twid thei
Alps.CDEM: zlib16
header + 0x04               + 0x3390 + 0x1770     + 16 + 1 +  64 +  64 + mapDataOffset8 + 0            + 7 + ptr8[width  height  cf 5e ptr8[2  64   64  len zdata78 ]] ...
         type                 width     height     bpp
Scan1000_6.rtmap: zlib8
header + 0x05               + 0x1d00 + 0xffffe540 +  8 + 1 + 256 + 256 + mapDataOffset8 + 256  + pal[] + 6 + ptr8[width -height  nx ny ptr8[2 256 -256  len zdata78 ]] ...  
         type                 width    -height     bpp                                                                                                        
Sweden_1m_4.rtmap: zlib8
header + 0x05               + 0x2800 + 0xffffb200 +  8 + 1 + 256 + 256 + mapDataOffset8 + 256  + pal[] + 8 + ptr8[width -height  nx ny ptr8[2 256 -256  len zdata78 ]] ...  
         type                 width    -height     bpp
W020N90.CDEM: zlib16
header + 0x05               + 0x12c0 + 0xffffe890 + 16 + 1 +  64 +  64 + mapDataOffset8 + 0            + 6 + ptr8[width -height  4b 5e ptr8[2  64  -64  len zdata78 ]] ...
         type                 width    -height     bpp
Europe.CDEM: zlib16
header + 0x07 + 0x02 + 0x00 + 0xc02d + 0xffff8621 + 16 + 1 +  64 +  64 + mapDataOffset8 + 0            + 9 + ptr8[width -height  nx ny ptr8[2  64  -64  len zdata78 ]] ...
         type   subtyp obfusc width    -height     bpp                                                                                      tag
Swiss_4.RTMAP: JFIF
header + 0x08 + 0x07 + 0x00 + 0x23ff + 0xffffe7fc + 24 + 1 + 256 + 256 + mapDataOffset8 + 0            + 7 + ptr8[width -height  nx ny ptr8[7           len jfif... ]] ...
                              width    -height     bpp                                    n_pal  pal[]                                      tag
400k: Belgium zlib8
header + 0x09 + 0x02 + 0x00 + 0x5400 + 0xffffbbc0 +  8 + 1 + 128 + 128 + mapDataOffset8 + 0x2b + pal[] + 8 + ptr8[width -height  nx ny ptr8[2 128 -128  len zdata78 ]] ...  
                              width    -height     bpp                                                                                      tag
Poland10k_overview_9.RTMAP: JFIF
header + 0x09 + 0x07 + 0x00 + 0x05c0 + 0xfffffac0 + 24 + 1 + 256 + 256 + mapDataOffset8 + 0            + 4 + ptr8[width -height   3  3 ptr8[7           len jfif... ]] ...
                              width    -height     bpp                                                                           nx ny      tag
DACH.CDEM: 16bit BIL EHdr
header + 0x09 + 0x09 + 0x00 + 0x3cf0 + 0xffffd120 + 16 + 1 + 128 + 128 + mapDataOffset8 + 0            + 7 + ptr8[width -height  nx ny ptr8[9 128 -128  len    data ]] ...
                              width    -height     bpp                                                                                      tag
Finland CDEM: 16bit BIL EHdr
header + 0x09 + 0x09 + 0x00 + 0x3a57 + 0xffffcbb3 + 16 + 1 + 128 + 128 + mapDataOffset8 + 0            + 7 + ptr8[width -height  75 69 ptr8[9 128 -128  len    data ]] ... 
                              width    -height     bpp                                                                                      tag
RMAP, QLANDKARTE:
header + 0x0a + 0x07 + 0x00 + width    -height      24   1 tileWidth tileHeight mapDataOffset8 0       nzoom [zoomLevels[i].offset8=[width -height xTiles yTiles offsets[yTiles*xTiles]=tag(=7)+taglen+jdata[taglen]]]
        type  subtype obfusc                       bpp                                   

Obfuscated zoom levels:

GT_layer_500K.rtmap:
header + 0x09 + 0x02 + 0x05 + 0x01 + 23000000 + 87000000 + ...
GT_layer_100K.rtmap
header + 0x09 + 0x02 + 0x05 + 0x01 + 23000000 + 87000000 + ...
Finland Topo 250k:
header + 0x09 + 0x02 + 0x05 + 0x01 + 23000000 + 87000000 + ...
GBtopo:
header + 0x09 + 0x02 + 0x05 + 0x01 + 23000000 + 87000000 + ...
Norway_Topo250k_Overview_3.rtmap:
header + 0x09 + 0x07 + 0x05 + 0x01 + 23000000 + 87000000 + ...
Finland_Topo4M5_Overview.rtmap
header + 0x09 + 0x07 + 0x05 + 0x01 + 23000000 + 87000000 + ...
Finland_Topo1M_Overview.rtmap
header + 0x09 + 0x07 + 0x05 + 0x01 + 23000000 + 87000000 + ...
Spain_Topo_layer_200k.rtmap:
header + 0x0a + 0x02 + 0x05 + 0x01 + 23000000 + 87000000 + ...