Моя профессиональная деятельность не связана с реверс инженерингом и перепродажей чужой интеллектуальной собственности под своим именем.
…Был один любитель перепродавать программу Навител (с небольшим изменением кода), взяли его довольно быстро. Правда это было в России…
Это энтузиазм Лично я вот рисую карту, по которой сам езжу. Это инвестиция!
В мире много чего не законно и есть рыбы покрупнее. Не стоит этому уделять столько внимания. Главное, что нашелся человек, который способен удовлетворить спрос пользователей, ибо гармин уже плюнул им в лицо(прошивка 2.10 убивает насовсем), слава богу хоть выходящие из строя 1xxx бесплатно меняет.
Пример неуместен. Потому что навител в этом случае не становился лучше или хуже.
Пример уместен т.к. вы приобретаете продукт за меньшие деньги и в обход производителя. Вместо того чтобы переплатить пару сотен Гармину за более дорогое устройство, вы платите двадцатку кулибину, который делает из г… конфетку.
Собственно у Гармина вопросов к пользователям не будет, но со временем они обязательно будут к продавцу мода.
Прижмут его рано или поздно, увы, мне кажется. Хотя дело уберполезное, но такие вещи надо выкладывать анонимно с подробными описаниями и вообще создавать сообщество. Но так профита не получишь.
Тут приобретается не продукт, а ПО для него. Другое бы дело, если бы он торговал гарминами, со своей прошивкой. И навиком зная это вообще никак не реагирует.
С каких пор ПО перестало быть продуктом, тем более когда из этого извлекается прибыль. Не забывайте что это модифицированное ПО от более дорогого Гармина, а не проект с нуля.
В данном случае ПО это часть продукта. Я не говорю что это законно и всё такое. Я говорю про то что человек молодец, что делает из 1xxx конфетку. Лучше заплатить нашему соотечественнику, чем гармину, который наплевал на пользователей и выпустил подобие китайского навигатора.
А каковы шансы через этот EOL грузить родную/пропатченную прошивку? С таким количеством оперативки там наверняка XIP из NOR.
Вообще интересный вариант. Вывод *DOP бы прикрутить.
Цифры только по маркировке микросхем.
Надо разобраться, где в адресном пространстве замаплен интеловский NOR, где SRAM, как сконфигурирован MMU с
виртуальной памятью и что ожидает/думает прошивка о своем местонахождении и нахождении SRAM.
В крайнем случае потеснить basemap, на него вроде как 8MB приходится, но это можно будет легко проверить
слив NOR полностью после старта EOL.
В крайнем случае новую прошивку придется прошить.
Все драйвера вроде как есть: lcd, usb, keypad, nor, 2 RS232 порта (sirf3 и гарминовский коннектор)
нувики и так под линуксом работают, там все гораздо проще.
А вот даже на 60/76Cx (не говоря уже о более примитивных девайсах) нужен моск
Я нашел в архиве стандартные (Европа и Тайвань) и модифицированную русскую прошивки
Надо декодировать конфигурацию MUX и используемые GPIO
(муторное занятие).
2 MB (CS2) → 0x8000000 это до 0x8200000.
loader.bin ссылается на адреса от 0x8002260 до 0x80A0C3C, т.е.
первый мегабайт. Хотя непонятно, куда updater.exe
поместит сам loader.bin (73K)
Начало fw_all.bin похоже по структуре на loader.bin ,
но есть статические ссылки на 0x0c000000 (CS3) сегмент,
а указатель стека уже не вверху первого, а второго мегабайта:
OMAP вообще-то умеет грузиться из CS3 напрямую, но как это все сделано в гармине неясно.
Размер экрана 160x240 (может и наоборот, хотя врядли), но EOL прочитает
это из конфигурационных регистров LCDC.
LCD панель на 60/76Cx 8-битная (?), EOL предполагает только 16бит, надо править.
Вот пока такие мысли.
Я разобрал мой 76Cx, чтобы освежить данные о железе.
Процессор OMAP D751623BZHK, такой же как http://img501.imageshack.us/img501/3282/dsc00159lw5.jpg
вроде бы 300MHz: http://forums.gpsreview.net/viewtopic.php?t=6842
и 16 МВ intel NOR flash (28F128) и 2MB SRAM (K6F1616R6C).
Получается, что и на всех nüvi до 8xx
стоит тот же самый процессор, но насколько он совпадает с OMAP1623, как пишут здесь http://www.eetasia.com/ART_8800517624_499488_NP_4ed1e6ad.HTM
непонятно.
В любом случае, можно прошить EOL, или даже uboot для omap на место гарминовского firmware и
задампить NOR полностью, а то гарминовские region ID не дают ясного представления, что же
по каким физическим адресам записано в NOR flash.
Все .rgn с апдейтами состоят из заголовка, и 2 блоков (0xc и 0xe), согласно статье
0C Loader (nicht auslesbar, wird als Zwischenspeicher für das Flashen der
Firmware gebraucht.)
0E Firmware also Gerätesoftware
т.е. загрузчик (почему-то “нечитаемый”) и собственно payload.
В апдейте basemap только заголовок и 1 блок (0x3)
03 Basis-Karte
Так что все это можно смело перепрошивать.
Программа gunp фонты не находит, наверное сигнатура изменилась на более современных девайсах.
etrex.infо об этом молчит, типа разбирайтесь сами, если надо
Со временем разберемся
OMAP nüvi имеют несколько другую конфигурацию, чем 60/76Cx. У них присутствует SDRAM в обычном для него месте @0x10000000
По моим расчетам 60/76Cx работает на частоте 80MHz (DPLL1_CTL=0x2a50, ARM_CKCTL=0x4006)
Без мануала для OMAP1610 жизнь очень тяжела, так что если у кого завалялся
OMAP1611/12 Multimedia Processor Technical Reference Manual http://bbs.cnttr.com/archiver/tid-121950.html
выложите его куда-нибудь.
В заголовке и loader и firmware наблюдается единая структура состоящая из
jump’a (b 0x10) и трех адресов
+0xc всегда отстоит от +0x8 на 2 байта,
а +0x4 очень смахивает на relocation address для .text сегмента,
но это еще надо изучать.
Мой большой план состоит в модификации uboot для omap1610 innovator
в духе http://linux.omap.com/pub/documentation/osk/omap5912osk_2.6.pdf
и запуск его как loader.
Маленький план - в тестировании минимальной программы
из комплекта EOL, пишущей
в framebuffer sram тоже через запуск как loader.
2байтный alignment для arm32 кода не катит эту фразу вверху беру назад.
Брутально дизассемблировал loader, не PIC оффсеты портят картину, но
есть много новой информации.