NetLab · Rules · Torrent Tracker · Have a problem? · Eng/Rus | Help Search Members Gallery Calendar |
Welcome Guest ( Log In | Register | Validation ) | Resend Validation Email |
Pages: (52) [1] 2 3 .. 6 .. 9 .. 12 .. 15 .. 18 .. 21 .. 24 .. 27 .. 30 .. 33 .. 36 .. 39 .. 42 .. 45 .. 48 .. 51 52 > ( Show unread post ) |
Модифицируем прошивку для DVD плейера (MTK 1389), инструкция от САХ |
|
Posted: 15-12-2005, 18:17
(post 1, #511315)
|
||
Member Group: Members Posts: 184 Warn:0% |
2cax А не смог бы ты написать свою инструкцию from_A_to_Z на русском? 2ivani4 Я-то могу, но что-то мне подсказывает, что потом ты попросишь и ассемблер на русский перевести Честно говоря, 90% инструкции состоит из фраз "найди такую-то последовательность байтов и замени её на такую-то", и если ты не знаешь английский даже на таком базисном уровне, то как ты сможешь использовать все упомянутые в инструкции программы - ведь у них интерфейс тоже на английском ? 2cax Спасибо что не ответил категорическим отказом.Дело в том что никак не могу я это дело начать.Не получается.Никогда не занимался подобными вещами и к программированию никакого отношения не имею.Очень много не понятного.Так я и подумал,что если бы по русски ,так может удалось бы это дело с места сдвинуть.winhex есть у меня на русском.Так что если бы ты смог ,то я был бы рад ivani4, в этой теме это будет офтопик. Открой новую тему, озаглавленную, например, "Модифицируем прошивку для DVD плейера такого-то" Убедись, что у тебя есть файл с прошивкой для твоего плейера и упомянутые в инструкции программы и другие документации; найди автоматический словарь, который даст тебе подстрочный перевод инструкции на русский, посмотри, стал ли ты понимать больше. Если боишься испортить плейер в процессе проверок изменённых прошивок - спаяй себе специальный кабель для восстановления и научись им пользоваться. Схему я дам. Кстати, hex-редактор я использую XVI32, т.к. он позволяет использовать т.н. joker char, т.е. подстановку любого байта при поиске. После этого, если у меня будет время и настроение, мы в той новой теме откроем "академию". Чем смогу-помогу This post has been edited by ivani4 on 15-12-2005, 18:25 |
||
|
Posted: 15-12-2005, 18:28
(post 2, #511322)
|
||
Pro Member Group: Members Posts: 738 Warn:0% |
Итак, есть ли у тебя файл прошивки от плейера, и как он называется ? |
||
|
Posted: 15-12-2005, 23:18
(post 3, #511483)
|
||
Member Group: Members Posts: 184 Warn:0% |
cax Файл прошивки у меня есть.Хотел бы начать с отключения значка зум.В твоей инструкции написано: 3BE42: FF => 08 3BE4D: FF => 08 Я проверил и увидел что в прошивке от Hyundai 3899(верхняя в таблице на твоём сайте)эта процедура была произведена только по адресу 3BE42.А на 3BE4D фигурирует А5 до и после изменений .Этот момент мне как то не понятен. Пытался найти в своей прошивке нужный адрес.Безрезультатно. Не понимаю по каким признакам нужно искать.А если знать адрес ,то как знать какое изменение нужно там сделать? Пытался провести аналогию с твоими работами в АРЕХ-не помогло. R4R5-это я вообще не понял где это и как оно может помочь. А в MTK ReMaker нужная строка у меня 0x0200.Это я нашёл,но пользы от этого я не вижу. This post has been edited by ivani4 on 20-12-2005, 01:12 |
||
|
Posted: 17-12-2005, 19:15
(post 4, #512642)
|
||
Pro Member Group: Members Posts: 738 Warn:0% |
Здесь инструкция действительно недостаточно подробная и требует знаний ассемблера. Я отвечу сюда поподробнее - позже. Кстати, я нигде не писал, что оффсеты совпадают - они не совпадают нигде (кроме одного места). Нужна hex-последовательность. |
||
|
Posted: 17-12-2005, 21:26
(post 5, #512767)
|
||
Member Group: Members Posts: 134 Warn:0% |
ivani4 По-моему в инструкции саха вкралась опечатка: второй адрес не 3BE4D, а 3BE5D. Чтобы в этом убедиться, необходимо работать над файлом не в обычном НЕХ редакторе, а в дизассемблере (например IDA). Тогда видно, что это два очень похожих куска. Кстати, работая таким образом тебе будет гораздо легче обнаружить аналогичные куски в своей прошивке. P.S. Почему-то в IDA нет чипа 8032, я пользовался 8051. |
||
|
Posted: 17-12-2005, 23:28
(post 6, #512876)
|
||
Member Group: Members Posts: 184 Warn:0% |
moroz
Полностью согласен.В WINHEX есть возможность сравнивать файлы.Там этот момент чётко отслеживается.Не писал об этом потому как хотел услышать это от самого маэстро,но он почему то на это не отреагировал. А идой я пользоватся пока не умею да и ассемблер не знаю. А за подсказку и участие спасибо.Попробую поработать с идой. This post has been edited by ivani4 on 17-12-2005, 23:31 |
||
|
Posted: 18-12-2005, 00:14
(post 7, #512927)
|
||
Pro Member Group: Members Posts: 738 Warn:0% |
Значит так. Цитирую сам себя и дополняю заодно. Сперва открываем прошивку в MTK ReMaker и в "Data Part->OSD->OSD Languages2->Language 1[00]" ищем номер текстового сообщения, которое появляется при нажатии на zoom. Допустим, это 0x207. Разбивая на байты, получаем 02 и 07. Если нам повезёт, то эти 2 байта грузятся в регистры 4 и 5 примерно так: 7D 07 mov R5, #7 7C 02 mov R4, #2 и тогда мы сразу найдём нужное место при поиске такой цепочки: 90 xx xx 74 01 F0 A3 74 xx F0 A3 74 xx F0 7B FF 7D 07 7C 02 где хх - любой байт (в XVI32 это называется "joker char", или "wildcard") Далее меняем отмеченный выше FF на 08 и дело сделано. Примечание 1: менять в прошивке надо 2 раза - один раз для режима воспроизведения DivX, второй - для режима DVD. Примечание 2: после каждого изменения нужно переоткрыть прошивку в MTK Remaker, на вопрос "Поправить контрольную сумму ?" ответить "Да", затем сохранить прошивку. ======================================= Но если не повезёт, и регистры грузятся иначе, цепочка не найдётся. Причины: один из байтов - ноль, и получается не загрузкой нуля в регистр, а командой обнуления регистра; или байты одинаковые и грузятся копированием регистра (как в случае, описанном для HU3899) Тогда над искать цепочку покороче: 90 xx xx 74 01 F0 A3 74 xx F0 A3 74 xx F0 7B FF Она найдётся много раз. Какой из них нам подходит - узнаем уже в дизассемблере... |
||
|
Posted: 18-12-2005, 00:17
(post 8, #512928)
|
||
Member Group: Members Posts: 184 Warn:0% |
спасибо This post has been edited by ivani4 on 18-12-2005, 00:41 |
||
|
Posted: 18-12-2005, 00:45
(post 9, #512939)
|
||
Member Group: Members Posts: 184 Warn:0% |
А это где, как и чем смотреть? |
||
|
Posted: 18-12-2005, 10:24
(post 10, #513054)
|
||||
Pro Member Group: Members Posts: 738 Warn:0% |
IDA + комплект скриптов из раздела "Files" группы mt13x9 на yahoo. А разве длинная цепочка не нашлась ? Если да, то IDA не понадобится. This post has been edited by cax on 18-12-2005, 10:25 |
||||
|
Posted: 18-12-2005, 10:32
(post 11, #513055)
|
||
Member Group: Members Posts: 184 Warn:0% |
а как и чем её искать? |
||
|
Posted: 18-12-2005, 10:54
(post 12, #513059)
|
||
Pro Member Group: Members Posts: 738 Warn:0% |
Спасибо, исправил. Заодно вставил описание правки зума, аналогичное опубликованному здесь. |
||
|
Posted: 18-12-2005, 11:05
(post 13, #513062)
|
||
Member Group: Members Posts: 184 Warn:0% |
В xvi32 есть функция поиска.Что бы найти длинную цепочку нужно,наверное,полностью вписать её в строку поиска.А как быть с теми местами где может быть любой файл(хх)?как записать это в строку поиска?или это не так ищут? This post has been edited by ivani4 on 18-12-2005, 12:15 |
||
|
Posted: 18-12-2005, 11:11
(post 14, #513064)
|
||||
Pro Member Group: Members Posts: 738 Warn:0% |
ivani4, Я ищу hex-редактором XVI32. Подойдёт любой, поддерживающий, как я уже писал выше, так называемый "wildcard"-символ, или "джокер"; говоря по-русски - поддерживающий подстановку любого байта в местах, которые я пометил, как "xx". Теперь объясняю на пальцах: допустим, надо найти все последовательности такого вида: первый байт - 1F, третий - C2, а что посредине нам не важно, т.е. любой. Мы можем найти такие тройки байтов: 1F 00 C2 1F 24 C2 1F C2 C2 1F E4 C2 и т.д. Я это записываю как "1F xx C2", где "xx" - wildcard. Если ты освоишь поиск с подстановками - дальнейшее для тебя будет просто. Дерзай. В XVI32 ты можешь задать joker char,например, "ЕЕ", и в дальнейшем использовать "ЕЕ" вместо моих "хх". This post has been edited by cax on 18-12-2005, 11:13 |
||||
|
Posted: 18-12-2005, 13:07
(post 15, #513087)
|
||
Member Group: Members Posts: 184 Warn:0% |
cax Теперь всё понятно.Сходу всё нашёл и переправил.Работает как положено,но с диском двд синий квадрат не убирается.Я где то ошибся или для этого требуется дополнительное действие? И попутно ещё одна проблема возникла.Что бы утвердится в успехе решил проделать данную процедуру ещё с двумя двд от разных производителей.Один прошёл на ура,а во втором значок зума убрался частично.Т.е. только какая то часть от него пропадает через несколько секунд.????????????? В этом двд 0x014F .И если я правильно понял,то: 90 xx xx 74 01 F0 A3 74 xx F0 A3 74 xx F0 7B FF 7D 4F 7C 01 This post has been edited by ivani4 on 18-12-2005, 21:39 |
||
Pages: (52) [1] 2 3 .. 6 .. 9 .. 12 .. 15 .. 18 .. 21 .. 24 .. 27 .. 30 .. 33 .. 36 .. 39 .. 42 .. 45 .. 48 .. 51 52 > |