logo separator

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

From Ticker Berkin rwb-mkgmap at jagit.co.uk on Mon Dec 13 12:14:33 GMT 2021

Hi Gerd

I've build and examined this. I assume that the table came from a map
that used most of the available characters, so not seeing these
precludes the theory of it being flattened shape/contents lists in any
simple representation. Can you tell if the original map was mixed case?
If it wasn't then it can't be a simple normalized frequency count as
there would be an area of zeros for the lower case letters.

Ticker

On Mon, 2021-12-13 at 10:25 +0000, Gerd Petermann wrote:
> Hi Ticker,
> 
> attached is my experimental code patch for mkgmap.
> It changes mkgmap to write the MDR 16 section ad MDR15 section with
> compression set to 1 in the MDR header.
> The Mdr15 content are the first 32 bytes of the original table.
> 
> I use it with the attached OSM file and options --index --gmapi --
> code-page=1252
> 
> Hope it helps. Maybe you can find the download link to the adria map
> somewhere
> in the archive, my downloaded file is called "AdriaTOPO 2.40 HR.exe"
> Unfortunately my links to Nabble no longer work.
> 
> Gerd
> 
> ________________________________________
> Von: mkgmap-dev <mkgmap-dev-bounces at lists.mkgmap.org.uk> im Auftrag
> von Ticker Berkin <rwb-mkgmap at jagit.co.uk>
> Gesendet: Montag, 13. Dezember 2021 11:08
> An: Development list for mkgmap
> Betreff: Re: [mkgmap-dev] What's the maximum size of global index MDR
> size?
> 
> Hi Gerd
> 
> Does Mdr16 look like some form of a flattened Huffman tree? A common
> representation is a stream of bits describing the shape and a stream
> of
> chars giving the contents.
> 
> If you send me an example + the little bit at the start of Mdr15
> you've
> been using I'll have a look.
> 
> Ticker
> 
> On Sun, 2021-12-12 at 16:20 +0000, Gerd Petermann wrote:
> > 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
> 
> 
> _______________________________________________
> 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