> Во-первых, не Алексей, а Александр :)
Прошу прощения, давно встречались, память стала плохая
> В-третьих, изначально я писал не о различии в кодировках, а о том, что
> я утверждал, что на многоязыковых дисках используется таблица языков
> (глава 7.4.2.1.2.2 пункт 2), а на одноязыковых - нет.
>
> Вылезла забавная вещь - таблица языков не используется нигде...
Скорее всего она есть в Route Plan, по крайней мере на европейском и
русском диске воспроизводятся названия улиц на английском, французском
и.т.д. хотя в MainMap имена только английские. RoutePlan пока не
разбирал. Однако RoutePlan есть не у многих записей, устройство
прочитает его не скоро, соответветственно загружаться должно.
>
> Парсилась NDF, на шотах выделен отдельный рекорд. Всюду структура одна
> и та же: два байта сайза, два байта первого атрибута, два байта
> второго атрибута, шесть байт координат, два байта длины строки, далее
> сама строка двухбайтными символами. Если количество символов нечетное,
> то оно дополняется до четного нулями (глава 7.4.2.1.2.2 прим 6).
>
> Есть, правда, один забавный диск - вот он.
http://photofile.ru/users/headache/115141848/119205498/full_image/
> Обратите внимание - сайз, первый атрибут, второй атрибут, координаты,
> а далее непонятная хрень 80 00. Теоретически, это может быть только
> высота, но практически - нет флага наличия высоты, да и цифра не
> подходит. Хрень какая-то.
Но структура не совсем такая как пишешь. Там несколько видов записей
Names:
- String TypeA
- String TypeB
- String TypeC
- Barycentric
- SymbolString (в этой вообще текста может не быть, только typecode
указывающий на пиктограмму) ...
у меня на диске встречаются все. Координаты есть не во всех типах.
В твоем случае это как раз SymbolString (тип 6), содержащая строку . С
80 00 все понятно - это флаги alignment (7.4.2.1.7 String Data Record
(When String Type is Symbol + String)). Затем 2 байта - длина текста в
словах, потом текст. Здесь все нормально, открой в KiwiExplorer.
> Какая используется кодировка - это есть в metadata.kwi.
А ты сним разобрался?
> Краткое резюме. А хрен его знает, почему перенос карт между языками не
> работает. :) На досуге еще разок попробую...
Дело не в кодировке. Помнишь ты пробовал моей программой генерить
новый ISO? У тебя он не шел. Кодировка оставалась прежней, он только
меняла адреса MMPD (сортировала по другому). Если у тебя получается
отключать уровни, попробуй в ручную поменять местами 2 верхних MMPD, я
имею в виду их физические расположения в файле. Если все нормально -
можно двигаться дальше.