Увы, "мопед не мой..." ;-)
Вид для печати
Доброго времени ! Что то трудностей много... Сегодня нашел проблему, из за "сопли" на плате были закорочены выходы программатора, и в следствии - в микросхеме 74LS05, один из выходов пробило на корпус.Устранил, Заменил... Через порт Р6 таки получил отклик от микросхемы 4С 7С 7Е...
Но на этом проблемы не закончились... Я так и не прочитал прошивку.
при нажатии READ показывает прогресс-бар, но в разных местах (от 0% до 40%) прерывается чтение и появляется предупреждение, гласящее: ERROR while READ MTV Flash. Stoped. И после нажатия "OK" на окне сообщения об ошибке - в левом верхнем углу в консоли появляется надпись: ERROR MTV READ! Stop at:2560 Причем, число всегда разное, от 0 до 81664 (это когда почти до 70% считывается перед ошибкой)... Читает всегда разное количество процентов, до возникновения ошибки.. Что может быть, у кого то подобное было ?
Да, я думал об этом. Изначально запитал от USB зарядки 1А. Но она под нагрузкой дает 4,8.. Потом запитал от питания, подаваемого на GBS8220 (5в), проблема не пропала, далее, как раз предположил, что для совмещения по уровням нужно запитать от питания процессора, то есть 3,3в. Тут я теоретически понимал, что 74LS05 питается начиная от 5в, и скорее всего вариант изначально провальный, так и оказалось, отзыв был, но иногда терялись 4С или 7E... Потом еще попробовал короче провода, с проводами 10 см - вообще не заработало, провода 25 см изначально были.. Попробовал 1,5м провод, результат вообще странный, отклик есть, но числа не те которые должны быть... В общем, понял, нужно попробовать с регулируемым блоком, и поиграться от 5 до 7 вольт поизменять. Попробую.
Вот тут мой девайс. Все провода очень короткие и в экране (он же общий). Питание от Гонбеса.
Спасибо огромное, заэкранировал провода, и в целом все заработало.
Шрифт, сдвинутый мной на 4 бита оказался вполне адекватным, шрифты в меню без сдвигов, все красиво, но... где то в прошивке есть маска, может быть в прошивке соседней микросхемы, не знаю. В общем, на экран выводится только то, что попадает в эту маску, это хорошо видно на снимке который я приложу, вверху изначальный вид китайской письменности, а внизу - после заливки модифицированных шрифтов.. Можно понять, что все что попадает в очертание иероглифа - выводится на экран.. https://sun9-47.userapi.com/c204520/...YDzpuQuooc.jpg..
При прошивке считанным из этой же микросхемы дампом верификация проходит успешно, при прошивке модифицированным дампом - верификация не проходит, и говорится, что возможно чип заблокирован, причем, ошибка возникает, когда в верхней части экрана появляется полоска с изменяющимися шрифтами, как раз в тот момент, когда прогоняются модифицированные. Где то в прошивке или где то еще есть проверка, которая сравнивает шрифты, и ругается когда есть отличие с оригинальными...
https://sun9-28.userapi.com/c204520/...Jq_APAjvzI.jpg
В любом случае, я выполнил то что хотел, следом убрал все из кубиков заставки, они заполнились нулями - и теперь китайская письменность меня не беспокоит...
Было бы круто конечно убрать маску от туда, и таки вписать то что мне нужно, но это не так принципиально. На досуге попробую поковырять прошивку еще, но это вряд ли произойдет быстро..
Если у кого есть опыт и какие то наработки по этому поводу, пожалуйста делитесь ! Если кому то нужен скрипт, который сдвигает ".bin" от программы шрифтов, или готовый дамп, без картинки - который нужно просто вписать с 10000H по 17FFFH в бэкап прошивки и записать его в микросхему, чтобы просто не было ничего на экране после включения - пишите пожалуйста, с удовольствием поделюсь. Так же могу кинуть готовую прошивку с нулями в районе заставки, так будет проще.
Думаю можно проинвертировать какую то часть иероглифа из шрифтов, и поискать поиском в heх редакторе в дампе прошивок. Было бы круто получить то что во второй микросхеме.. А может это в диапазоне, под шрифтами... Да много еще куда это можно засунуть.. Как же трепетно китайцы относятся к своей письменности XD ... Ну в общем, есть чем заняться.. Вот только такого запала уже нет в целом, минимальный объем достигнут.
Надеюсь, что и эта маска со временем будет побеждена. Спасибо огромное Arseny за помошь, очень благодарен !
- - - Добавлено - - -
Помоему начинаю понимать, шрифт дублируется, с адреса 18000, это как то связанно. Но когда я заполнил обе области одним и тем же, то получил то же отсутствие символов, причем только в картинке заставки, а все остальные шрифты на месте. (Возможно я просто по ошибке продублировал шрифт в прошивке где были пустые кубики, такое могло быть, спешил...) При этом сообщения о том что верификация ошибочна не появлялось...
- - - Добавлено - - -
Таки да, шрифт просто дублируется, ничего менять не нужно... просто заливаете одинаковый шрифт два раза подряд, с 10000H и с 18000H и радуетесь )))
Не понятно, почему с первого раза не заработало, наверное где то что то проглючило, скорее всего я сам, продублировал шрифты в которых были пустые кубики картинки, в целом, со второго раза (со второй прошивки) все запустилось..
https://sun9-3.userapi.com/c857136/v...i0r9un62BI.jpg
Всем привет.
Пытаюсь подключить через GBS8200 компьютер Profi 3.2. Изображение четкое, не дергается. Но чуть-чуть дрожит, на пару пикселей влево-вправо. И нет яркости. Фон в TR-DOS серого цвета, а не бежевый. Есть мысли как победить?
Доброго времени дорогие друзья !
Хочу поделиться наработками по прошивке GBS 82XX. Так случилость, что само устройство сейчас мне не доступно, я нахожусь в Индии, а девас я продал, и заказал еще один, и он сейчас идет из китая в Ростов, как раз приеду и он будет на месте. Тем не менее, мне удалось многое найти и изменить в прошивке устройства. Первое что сразу хотелось бы сказать, разобрался с цветными шрифтами, они представляют собой всего 32 символа, которые состоят из трех дампов по 32 символа красного, зеленого и синего цветов. Оригинально решение по их размещению в теле бинарника шрифтов.
И так...
На каждую из 18 строк используется 2 байта (12 бит/точек в 1 байт не влезут). Поэтому 36 байт на символ. в 1 строке 64 байта, Из них 36 байта записан основной символ, потом 14 байт для чего то резервированно, а последние 16 байт - это как раз поле для 32*3 цветных символов, по 32 на каждый цвет. Каждый символ разбит на 3 строки по 16+16+4 байта, последняя строка дозаполненна нулями, четвертая строка - нули, следующие 4 строки - следующий символ.
Это можно наблюдать на скрине из HEX редактора, там 64 битные строки, хорошо видны основные символы, и цветные, между ними 14 бит пустоты.
В целом, цветные символы начинают кодироваться примерно с 2000h адреса шрифтов, или с 12000h адреса прошивки. Вызов цветных шрифтов осуществляется по их номерам, с 1E0H по 1FFH,... и вот тут затык... Пока, в коде прошивки я не нашел места, в котором выводится двухбайтовые номера шрифтов, на данный момент на экран (теоретически) выводятся только шрифты с однобайтным номером. Экспериметны на реальном устройстве могут прояснить ситуацию, имено для этого все иероглифы (всего их было 230), которые я не заменил на работоспособные или важные символы - заменены на номера, порядковые десятичные и имена шестнадцатиричные. НА опыте возможно проявится, как они выводятся, хотя по памяти - вроде выводилось на экран то, что было с 1 байтными номерами позиции.
Соответственно, написал прямой парсер на PHP который позволяет из дампа прошивки (вырезаю сразу 10000-17FFF в файл *.bin) делать задание для програмы Myson OSD редактор шрифтов, парсит весь шрифт, включая цветные шрифты. Тут тоже имеет место сдвиг обратно, на 4 байта, для чего то программа написана таким образом, чтобы работать именно со сдвинутым на 4 байта относительно реального файлом задания. Обнаружил в дампах стандартных прошивок несколько цветных символов, причем, из трех имеющихся у меня дампов, скачаных из стандартных устройств - в одном не оказалось вообще цветных символов, во втором они были только в копии шрифтов, которая была по адресам 18000- 1FFFF, а в третьем дампе в обоих копиях. И так как код прошивки во всех трех дампах идентичен - скорее всего цветные символы не выводились на экран. Стандартные цветные символы из прошивок на маленьком скрине в конце. Не помню, чтобы где то такие символы мелькали в меню или на экране...
Так же написал обратный парсер, который обрабатывает *.bin файл, выводимый из Myson OSD редактора шрифтов. Парсер сдвигает дамп на 4 байта, и еще дублирует, и этот файл можно сразу копировать в HEX редакторе и вставлять в прошивку, с адреса 10000 по адрес 1ffff. То есть процесс редактирования в целом закрыт.
Далее, нашел в прошивке кусок, который содержит 36 байтные строки меню, и отредактировал их, так чтобы не затрагивать исполняемый код, в итоге получил полностью англо - русскую прошивку, использовал кодировку Macintosh ASCII-437, потому что это расположение кирилицы возможно вставить до кубиков с картинкой заставки в прошивке, влазеет все кроме 4х последних букв, их засунул сразу после картинки заставки (это видно на скрине с набписью Версия 0F) - что соответствует прописным этим же буквам в кодировке, в итоге, отредактировал шрифты, так, чтобы были только большие буквы, шрифт стилизовал под digital, прошивка русифицированна, иероглифов нет.
В некоторых пунктах меню сделал пиктограмки, пока не цветным шрифтом а обычным однотонным, может разберусь с выводом двухбайтных имен, поменяю на цветные, а может и нет, не сильно много толку от этого.
Дизассемблировл код прошивки, частично он мне не понятен, потому как я никогда не работал с ассемблером специализированного МПУ, и мне некоторые вещи тут не понятны, отличаются от ассемблера обычных CPU широкого применения. Но в целом, кое что стало понятно и в следствии разбора прошивки.
На сколько я понимаю, тема реверс - инжиниринга GBS8220 мало кому интересна, в основном всех интересует исключительно качество видео от GBS, по этому текст парсеров не прилагаю, если что, пишите в личку. Несколько скринов приложу.
И вопрос, конечно же... НЕ могу пока разобраться, как выводить на экран шрифты с двухбайтовым номером, если кто знает, подскажите пожалуйста.. Все символы, их 512 - выводятся по номерам, и теоретически, без экспериментов я не могу пока ответить на этот вопрос, а устройства под рукой нет, чтобы проверить предположения, по этому, кто знает, как это реально осуществить - пишите.
Ну и может кому нужно подредактировать прошивку, сменить картинку, шрифты, русифицировать и т.д. - тоже пишите в личку. (В целом, не думаю что кому то это нужно,.... X) )
Повторяю, что на данный момент проработка теоретичская, и проверить на реальном устройстве не могу, но, в работоспособности уверен, потому как код не тронут, переходы ассемблерного кода не нарушены, и измененные участки не могут сказаться на работоспособность кода, менялись только элементы информационных массивов (db) и код шрифтов. Тем не менее, когда проверю на реальном устройстве - опубликую практический отчет !
Всем прекрасного настроения !
https://sun9-35.userapi.com/c205728/...tiFqWU-0QQ.jpg
https://sun9-42.userapi.com/c205728/...vafSBASM1U.jpg
https://sun9-8.userapi.com/c205728/v...3wIHg87ap0.jpg
https://sun9-54.userapi.com/c205728/...djU8U5qkko.jpg
https://sun9-29.userapi.com/c855032/...hCAGNi-yXY.jpg