logo separator

[mkgmap-dev] What's the maximum size of global index MDR size?

From Gerd Petermann gpetermann_muenchen at hotmail.com on Sun Dec 12 16:20:51 GMT 2021

Hi all,

yes, Mdr16 obviously contains some kind of codebook that is used to decode the strings in Mdr15.

I've modified the code to write a copy of the MDR 16 section that I found in the Adria Topo map
and changed Mdr15 code so that it always returns 1 as string offset
and copies the first 24 bytes of the Mdr15 section. The original index contains offsets 1,11,16,20,24,27,... into Mdr15
so the first string seems quite long compared to the next ones.
If created a map that contains a single city POI with the name abc and MapSource displays Abc as expected (did not use --lower-case)
Next I start to search for cities.
No matter what character I type in the city name field the string that is displayed is
"Baca Pri Podbrdu" (not sure about Upper/Lowercase yet)
When I change the code to return offset 11 instead of 1 the string "Bavsica" is displayed instead of "Baca Pri Podbrdu"

These strings can be found in the Adria Topo map.

When I modify the content of the MDR 16 table, esp. the last byte, I see different strings displayed.
E.g. when I change the last byte 0x42 ('B') to 0x58 ('X') the string "Baca Pri Podbrdu" changes to "Xaca Pri Podxrdu"
So, I am now trying to understand the meaning of that table. It is different in the three maps, all use
codepage 1252 and the MDR 16 sizes are 165, 177 and 212. It's very likely that the content
depends on the frequency of the characters in the uncompressed MDR 15 file.

Gerd

________________________________________
Von: mkgmap-dev <mkgmap-dev-bounces at lists.mkgmap.org.uk> im Auftrag von Gerd Petermann <gpetermann_muenchen at hotmail.com>
Gesendet: Sonntag, 12. Dezember 2021 15:36
An: Development list for mkgmap
Betreff: Re: [mkgmap-dev] What's the maximum size of global index MDR size?

Hi Ticker,

I have 3 maps with compressed strings. Only one (Adria Topo) has these sections filled. I think those sections are not related to MDR 15.

Gerd

________________________________________
Von: mkgmap-dev <mkgmap-dev-bounces at lists.mkgmap.org.uk> im Auftrag von Ticker Berkin <rwb-mkgmap at jagit.co.uk>
Gesendet: Sonntag, 12. Dezember 2021 15:31
An: Development list for mkgmap
Betreff: Re: [mkgmap-dev] What's the maximum size of global index MDR size?

Hi Gerd

In the example with the compressed strings, did it have Mdr30/31 and/or
Mdr32/33?

Ticker

On Sun, 2021-12-12 at 11:07 +0000, Gerd Petermann wrote:
> Hi all,
>
> for now I've added a check to stop if the MDR subfile gets > 2G.
> My findings reg. string compression in MDR 15:
> If Mdr15 is compressed I also find an MDR 16 section which is rather
> small.
> My first idea was that MDR15 might be the content of a zipped file,
> but offsets
> into MDR15 never exceed the size of the MDR15 section, so it's more
> likely that
> something simple like Huffman encoding is used and MDR 16 contains
> further
> data (the frequencies of the Huffman tree?)
>
> Gerd


_______________________________________________
mkgmap-dev mailing list
mkgmap-dev at lists.mkgmap.org.uk
https://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev
_______________________________________________
mkgmap-dev mailing list
mkgmap-dev at lists.mkgmap.org.uk
https://www.mkgmap.org.uk/mailman/listinfo/mkgmap-dev


More information about the mkgmap-dev mailing list