|
Фиксики - Вытащить прошивку из китайского детского компьютера. Найти и заменить пару байт. Залить обратно. |
|
|
|
Nov 11 2014, 20:18
|
Группа: Новичок
Сообщений: 5
Регистрация: 11-11-14
Пользователь №: 83 630

|
Извиняюсь, если ошибся разделом. Родственники подарили ребенку детский компьютер под брендом "Фиксики". Вот такой: http://www.detmir.ru/product/index/id/159652/http://www.youtube.com/watch?v=s56FbzGL3pUВпринципе, компьютер неплохой, интересно смотреть на теплый ламповый ЖК экран, ребенок сразу удивился что изображение можно формировать из квадратиков. Есть неплохие игры. Вещь в себе. Но есть один раздражающий недостаток в интерфейсе, из-за которого я запретил ребенку играть на нем и разобрал его.
Проблема в том, что этот компьютер не позволяет сосредоточиться на работе с ним. Меню устроено таким образом, что раз в две секунды оно автоматически перелистывается с мерзким звуком. То есть, меню можно листать клавишами, но если более двух секунд не листаешь, оно само начинает перелистываться по кругу. То же самое и во всех подменю. То есть, пока выберешь что тебе нужно, измучаешься. Нужно либо с дикой скоростью перетыкаться в меню, либо постоянно перелистывать обратно на нужный пункт меню, который (пока человек раздумывал) успевает перелистнуться несколько раз.
Перечитал всю инструкцию. Нигде нет отключения этого режима. В интернете нет никаких данных по возможной настройке.
Мне ничего не остается, как попробовать модифицировать прошивку, и убрать это недоразумение. Ребенок просит отдать комп, но я либо его доломаю, либо исправлю.В компе есть две платы. ----- Материнская плата с двумя бескорпусными микросхемами: http://i.piccy.info/i9/8ee1b07c69417f2f112...P1110671_01.jpghttp://i.piccy.info/i9/bc122b3a0985addefcd...P1110674_01.jpgЯ не большой знаток микроэлектроники, но если бы я делал такой комп, я бы использовал какую-нибудь 8-битную AVR-ку типа AVR XMEGA. Вопрос в том, влезет ли в ~380Кб набортной памяти все звуковые оцифровки в каком-то формате. Звуков, музыки и фраз на русском и английских языках достаточно много. Возможно, что вторая микруха - это ПЗУ я хз. Слышал, что для AVR есть либы по работе с FAT, что внешнее ПЗУ - это типа винта, вобщем не знаю. Либо в качестве микроконтроллера используется что-то более современное с 32-х битной архитектурой типа STM32 и хотя бы с мегабайтом flash мозгов. В бытность DOS я бы мог засунуть в 1Мб несколько минут звуковой оцифровки с приемлемым качеством. В этом случае назначение второй микрухи для меня загадка. Или на плате какой-то MIPS? Плата односторонняя, и похоже что однослойная. На плате не нашел тактового генератора. Под черной резинкой ничего интересного - резисторы, диоды, с обратной стороны платы припаян транзистор S8550 D331 (добавил второе фото без резинки). Три электролитических кондера в прорезанных окошечках. Сверху гребенка контактов идет на ЖК экран, экран накрывает всю эту плату. Сбоку пропаянные контакты от конроллера клавиатуры. На плате две надписи PL-1590JSMA0-1 и AEC1222. В интернете по этим обозначениям ничего не находится. ----- Контроллер клавиатуры - это вторая плата. http://i.piccy.info/i9/192ed57e15bfae9b93c...P1110673_01.jpgОдна бескорпусная микруха. На плату заведены сигналы с клавиатуры и "мышки" - джойстика (черные открытые контакты - это они). Сверху пропаянные контакты уходят на материнку. Тактового генератора нет. Плата односторонняя, однослойная. На плате обозначение PL-1590JSMB01-4, тоже ничего в интернете нет. ----- Вопрос 1. Что за архитектура, по вашему мнению, скрывается в бескорпусных микросхемах на материнке? Каково назначение большой и малой микрухи на материнке? Вопрос 2. Реально ли вытащить из (видимо большой) микрухи прошивку, и засунуть ее обратно модифицированную? На материнке есть какие-то три здоровых перемычки, возможно это JTAG, никогда с такой штукой не работал, но если надо разберусь. В интернете правда натыкался и на двухпроводной RX/TX JTAG и на шестипроводной JTAG... Вопрос 3. Похожи ли эти перемычки на контакты JTAG? Ели похожи, надо ли их перерезать? К каким контактам подключаться после перезки? К верхним или нижним (склоняюсь к верхним). Как определить куда подключать RX, куда TX? Вопрос 4. Реально ли декомпилировать/отдебажить прошивку, чтобы найти место, где перетыкаются пункты меню? Я бы попробовал изменить условие, чтобы оно никогда не срабатывало по таймеру. Я под виндой подламывал несколько программ через SoftICE и OllieDebugger, представление об ассемблерах и машинном коде имею. Какой софт посоветуете (лучше опенсорч и под линух). Вопрос 5. Реально ли залить прошивку по JTAG обратно? Или производители обычно делают непрошиваемыми такие устройства? Чем лить? Avrdude справится или нужно что-то другое? UPD: Добавил фото материнки без резинки.
Сообщение отредактировал xintrea - Nov 11 2014, 20:20
Эскизы прикрепленных изображений
|
|
|
|
|
 |
Ответов
|
Nov 14 2014, 12:57
|

Ally
     
Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050

|
Цитата(Golikov A. @ Nov 14 2014, 14:23)  значит реверсировать прошивку от непонятного проца потянет, а такое нет  ? Реверс значительно легче чем разработка, это очевидно. Для реверса достаточно снять FLASH, прочитать ее на программаторе, посмотреть первые сектора, натравить IDA и другие тулсы поиска магических чисел и вычислить архитектуру под которую подходит стема команд. Такое в бытность мою хакером делали за полдня. Для реверса не нужно читать мануалы на тысячу страниц и изучать периферию. Вообще можно не быть сильным программистом и знать тучу алгоритмов и прикладную область.
|
|
|
|
|
Nov 14 2014, 15:32
|
Гуру
     
Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713

|
Цитата(AlexandrY @ Nov 14 2014, 18:57)  Для реверса не нужно читать мануалы на тысячу страниц и изучать периферию. Ну-ка определите, что сей кусок кода делает не читая мануалов на периферию Конфигурит McASP или настраивает SPI+EDMA? CODE MVK .L2 0x1,B0 $C$L1: ; PIPED LOOP PROLOG [ B0] SPLOOPW 7 ;14 ; (P) $C$L2: ; PIPED LOOP KERNEL $C$DW$L$___CPR76__LPSCTransition__FP11CSL_PscRegsQ2_J18J2MDUiQ2_J18J7MDSTATE$3$B: NOP 1 SPMASK L1,S1,D1 || MV .L1 A6,A8 ; |38| || MV .D1 A4,A6 ; |38| || MVK .S1 296,A4 ; |39| SPMASK S1 || MVK .S1 1,A3 || ADD .L1 A4,A6,A7 ; |39| (P) <0,2> SPMASK S1 || SHL .S1 A3,A8,A5 || [ B0] LDW .D1T1 *A7,A3 ; |39| (P) <0,3> ^ NOP 2 SPMASK L1 || MV .L1X B4,A9 ; |38| NOP 1 AND .L1 A5,A3,A0 ; |39| <0,8> ^ [!A0] ZERO .L2 B0 ; |39| <0,9> ^ NOP 2 NOP 1 SPKERNEL 0,0 $C$DW$L$___CPR76__LPSCTransition__FP11CSL_PscRegsQ2_J18J2MDUiQ2_J18J7MDSTATE$3$E: $C$L3: ; PIPED LOOP EPILOG SHL .S1 A9,2,A9 ; |40| ADD .L1 A9,A6,A4 ; |40| MVK .S2 2560,B4 ; |40| ADD .L2X B4,A4,B4 ; |40| LDW .D2T2 *B4,B5 ; |40| NOP 4 EXTU .S2 B5,27,27,B5 ; |40| CMPEQ .L2 B5,B6,B0 ; |40| [ B0] BNOP .S1 $C$L10,5 ; |40| LDW .D2T2 *B4,B5 ; |42| NOP 4 CLR .S2 B5,0,4,B5 ; |42| OR .L2 B6,B5,B5 ; |42| STW .D2T2 B5,*B4 ; |42| MVK .S1 288,A4 ; |43| || MVK .S2 288,B4 ; |43| ADD .L1 A4,A6,A4 ; |43| LDW .D1T1 *A4,A16 ; |43| MVK .L2 0x1,B0 ADD .L1X B4,A6,A31 ; |43| MVK .L1 1,A4 ; |43| SHL .S1 A4,A8,A7 ; |43| OR .L1 A7,A16,A4 ; |43| STW .D1T1 A4,*A31 ; |43| $C$L4: ; PIPED LOOP PROLOG [ B0] SPLOOPW 7 ;14 ; (P) $C$L5: ; PIPED LOOP KERNEL $C$DW$L$___CPR76__LPSCTransition__FP11CSL_PscRegsQ2_J18J2MDUiQ2_J18J7MDSTATE$8$B: NOP 1 SPMASK S1 || MVK .S1 296,A4 ; |44| ADD .L1 A4,A6,A7 ; |44| (P) <0,2> [ B0] LDW .D1T1 *A7,A3 ; |44| (P) <0,3> ^ NOP 4 AND .L1 A5,A3,A0 ; |44| <0,8> ^ [!A0] ZERO .L2 B0 ; |44| <0,9> ^ NOP 2 NOP 1 SPKERNEL 0,0 $C$DW$L$___CPR76__LPSCTransition__FP11CSL_PscRegsQ2_J18J2MDUiQ2_J18J7MDSTATE$8$E: $C$L6: ; PIPED LOOP EPILOG $C$L7: ; PIPED LOOP PROLOG NOP 1 MVK .L2 0x1,B0 [ B0] SPLOOPW 8 ;16 ; (P) $C$L8: ; PIPED LOOP KERNEL $C$DW$L$___CPR76__LPSCTransition__FP11CSL_PscRegsQ2_J18J2MDUiQ2_J18J7MDSTATE$12$B: NOP 2 SPMASK L1,S1 || ADD .L1 A9,A6,A4 || MVK .S1 2048,A5 SPMASK L1 || ADD .L1 A5,A4,A5 [ B0] LDW .D1T1 *A5,A3 ; |45| (P) <0,4> ^ NOP 2 SPMASK L1 || MV .L1X B6,A4 NOP 1 EXTU .S1 A3,27,27,A6 ; |45| <0,9> ^ CMPEQ .L1 A6,A4,A0 ; |45| <0,10> ^ [ A0] ZERO .L2 B0 ; |45| <0,11> ^ NOP 2 NOP 1 SPKERNEL 0,0 Могу даже архитектуру подсказать.
|
|
|
|
Сообщений в этой теме
xintrea Фиксики - Вытащить прошивку из китайского детского компьютера. Найти и заменить пару байт. Залить обратно. Nov 11 2014, 20:18 kovigor Цитата(xintrea @ Nov 11 2014, 23:18) Реал... Nov 11 2014, 21:15 alexunder Цитата(kovigor @ Nov 12 2014, 00:15) В ва... Nov 11 2014, 21:24 xintrea Цитата(kovigor @ Nov 11 2014, 22:15) Реал... Nov 11 2014, 21:34  muravei Цитата(xintrea @ Nov 12 2014, 00:34) Да у... Nov 12 2014, 08:30   mantech Цитата(muravei @ Nov 12 2014, 11:30) Вот ... Nov 14 2014, 08:54 AlexandrY Цитата(xintrea @ Nov 11 2014, 22:18) В эт... Nov 11 2014, 21:35 xintrea Цитата(AlexandrY @ Nov 11 2014, 22:35) Па... Nov 11 2014, 21:54  AlexandrY Цитата(xintrea @ Nov 11 2014, 23:54) Хоти... Nov 11 2014, 22:01   Lmx2315 ..тема мне напоминает содержание одной из неснятых... Nov 11 2014, 22:04   xintrea Цитата(AlexandrY @ Nov 11 2014, 23:01) По... Nov 11 2014, 22:17    kovigor Цитата(xintrea @ Nov 12 2014, 02:17) Ага,... Nov 11 2014, 23:44 _3m Цитата(AlexandrY @ Nov 12 2014, 00:35) Ми... Nov 12 2014, 12:32  AlexandrY Цитата(_3m @ Nov 12 2014, 14:32) Китайцы ... Nov 12 2014, 13:24 Сергей Борщ А нельзя в магазине посмотреть другой экземпляр та... Nov 12 2014, 08:57 kostyan Цитата(Сергей Борщ @ Nov 12 2014, 14:57) ... Nov 12 2014, 11:34 xintrea Цитата(Сергей Борщ @ Nov 12 2014, 09:57) ... Nov 12 2014, 17:11 Golikov A. прикидываю как круто считать прошивку из не извест... Nov 12 2014, 15:00 jcxz Цитата(Golikov A. @ Nov 12 2014, 21:00) п... Nov 12 2014, 16:14  mcheb Цитата(jcxz @ Nov 12 2014, 19:14) ....
... Nov 12 2014, 16:58 Golikov A. ну коль игры работают, так от добра добра не ищут.... Nov 12 2014, 18:18 kovigor Цитата(Golikov A. @ Nov 12 2014, 21:18) п... Nov 12 2014, 18:44 Golikov A. надо на STM сделать обратную листалку, устройство ... Nov 14 2014, 09:22 jcxz Цитата(Golikov A. @ Nov 14 2014, 15:22) н... Nov 14 2014, 12:02  mantech Цитата(AlexandrY @ Nov 14 2014, 15:57) Дл... Nov 14 2014, 14:26   AlexandrY Цитата(jcxz @ Nov 14 2014, 17:32) Ну-ка о... Nov 14 2014, 15:36  jcxz Цитата(AlexandrY @ Nov 14 2014, 18:57) Ре... Nov 14 2014, 15:39 Golikov A. не это фича указанная в мануале листать меню, ТС у... Nov 14 2014, 15:59 AlexandrY Цитата(Golikov A. @ Nov 14 2014, 17:59) н... Nov 14 2014, 19:26 Golikov A. ну если все так просто, помогите товарищу, сделайт... Nov 15 2014, 07:29 Михась Цитата(Golikov A. @ Nov 15 2014, 13:29) н... Nov 15 2014, 11:19
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|