Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

ru:stati:alluoc:saacompare [2014/01/11 19:12]
ru:stati:alluoc:saacompare [2014/01/11 19:12] (текущий)
Строка 1: Строка 1:
 +====== Сравнение прошивок микросхем SAA55xx/​SAA56xx/​TDA93xx/​TDA95xx ======
  
 +Однократно программируемые телевизионные процессоры серий ​ SAA55xx/​SAA56xx и TDA93xx/​TDA95xx уже давно не выпускаются,​ однако на складах осталось еще много как неиспользованных чистых,​ так и забракованных при прошивке на заводе.
 +
 +Во втором случае причина брака - скорее всего плохой контакт в панельке. Заводской программатор проверяет после каждого байта, поэтому остается много таких, где прописаны (частично) всего несколько байтов. Если дефект прошивки - "​0",​ т.е. нули вместо единиц,​ то сделать ничего нельзя. В то же время, если дефект был - "​1",​ т.е. "​недозапись"​ - единицы вместо нулей, то их еще можно иногда использовать.
 +
 +В то же время на складах осталось много вполне исправных ​ уже запрограммированных микросхем,​ причем бОльшая часть без этикеток. Достаточно сложно бывает выяснить,​ что они собой представляют,​ и где их можно использовать.
 +
 +Иногда удается найти версию в файле прошивки,​ но она не всегда информативна и может вообще отсутствовать. Однако сравнение с другими прошивками позволяет узнать многое. Например,​ есть наблюдение:​ если области Character ROM одинаковые,​ то эти прошивки от одного или схожих шасси, и, скорее всего, они в большей или меньшей степени взаимозаменяемые. Достаточно сравнивать только секцию Low Char по адресам 0x40000-0x423FF
 +
 +Программа [[ru:​searchchip|SearchChip]] предназначена для сравнения и поиска похожих дампов. В файл 1.hex сохраняется исследуемая прошивка. В папку examples помещаютя образцы для сравнения. Сейчас там находится бОльшая часть прошивок Rolsen-Rubin и еще некоторые. В текстовом файле intervals.txt указываются участки адресного пространства,​ подлежащие сравнению.
 +
 +Сейчас там установлены следующие:​ первые 64K Program ROM и Character ROM (без сигнатуры). При желании их можно изменять. Предусмотрены 2 режима сравнения:​
 +
 +1. Собственно сравнение (сравнение.bat) После сравнения программа показывает количество различающихся байтов и адрес первого различия. В случае полного совпадения такая прошивка выделяется значком ​ **OK!** Участки,​ не занятые кодом, могут быть заполнены как 00, так и FF. Чтобы они не мешали сравнению,​ сочетания "00 и FF" или "FF и 00" в исследуемом файле и образце соответственно не регистрируются как различия.
 +
 +2. Исследование отбракованных на производстве м/с на возможность использования (проверка на перезапись.bat). В этом случае **OK!** появляется напротив тех прошивок,​ которыми можно дописать исследуемую м/с.
 +
 +Эту программу можно использовать для быстрого массового сравнения не только прошивок UOC, но и любых других hex файлов.
 +Баг: жрет память (начинает подтормаживать после некольких десятков просмотров папки). Закрыть и открыть снова. В общем, особенно не мешает. Надо будет собраться исправить как-нибудь.