Содержание прошивок каким оно должно или не должно быть?

m.ix
27/08/2008 21:14
Содержание прошивок каким оно должно или не должно быть?
Столкнулся уже второй раз с подобным..
Мне говорят что это так и должно быть.


1 http://www.telemaster.ru/minitv/CHA8TV/hdtv-800s%20ver.2 сохранить как объект на комп.
2 переименовать с расширением HEX
3 открыть в программаторе 24с04

Что мы видим.
1 это в txt версии

:10000000A5A5A5000390000000000000021F040445
:10001000033C323232322020046907000000000025
:10002000451900A09F80EF40401000404080808034
:10003000022B0C0700E0E000000000009C0270F5BD
:10004000800F00000000000021B80A1A1C191619C0
:1000500011230A0A0A0A0A0A0A0A0A0A0A0A006F85
:100060000002000000000004020000000000532015
:100070006D6F64652E0D0D0A240000000000000065
:10008000EF55AA55AA55AA5555EE55AA55AB55AAEE
:10009000AA55ED55AA55AA5555AA55EC55AB55AAE2
:1000A000AA55AA55EB55AA5555AA55AA55EA55AAD7
:1000B000AA55AA55AA55E95555AA55AA55AB55E8CA
:1000C000E755AA55AA55AA5555E655AA55AB55AABE
:1000D000AA55E555AA55AA5555AA55E455AA55AAB3
:1000E0000100E0FFFFFFFFFFFFFFFFFFFFFFFFFF3C
:1000F000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF10
:100100004D5A90000300000004000000FFFF0000B3
:10011000B8000000000000004000000000000000E7
:1001200000000000000000000000000000000000CF
:10013000000000000000000000000000E0000000DF
:100140000E1FBA0E00B409CD21B8014CCD21546860
:1001500069732070726F6772616D2063616E6E6F7C
:10016000742062652072756E20696E20444F5320A2
:100170006D6F64652E0D0D0A240000000000000064
:10018000EF55AA55AA55AA5555EE55AA55AB55AAED
:10019000AA55ED55AA55AA5555AA55EC55AB55AAE1
:1001A000AA55AA55EB55AA5555AA55AA55EA55AAD6
:1001B000AA55AA55AA55E95555AA55AA55AB55E8C9
:1001C000E755AA55AA55AA5555E655AA55AB55AABD
:1001D000AA55E555AA55AA5555AA55E455AA55AAB2
:1001E000AA55AA55E355AA5555AA55AA55E255AAA6
:1001F000AA55AA55AA55E15555AA55AA55AB55E099
:100200004D5A06FE177E446144F549F44DC450AF83
:10021000897C8C678F2F91D8946596D999389CA04A
:10022000A4F1A7CEA9A9AF11B1C60000000000003B
:10023000000000000000000000000000E0000000DE
:100240000E1FBA0E00B409CD21B8014CCD2154685F
:1002500069732070726F6772616D2063616E6E6F7B
:10026000742062652072756E20696E20444F5320A1
:100270006D6F64652E0D0D0A240000000000000063
:10028000EF55AA55AA55AA5555EE55AA55AB55AAEC
:10029000AA55ED55AA55AA5555AA55EC55AB55AAE0
:1002A000AA55AA55EB55AA5555AA55AA55EA55AAD5
:1002B000AA55AA55AA55E95555AA55AA55AB55E8C8
:1002C000E755AA55AA55AA5555E655AA55AB55AABC
:1002D000AA55E555AA55AA5555AA55E455AA55AAB1
:1002E000AA55AA55E355AA5555AA55AA55E255AAA5
:1002F000AA55AA55AA55E15555AA55AA55AB55E098
:1003000084828282828282828282828282828282CB
:1003100082828282828484848484848484848484A7
:10032000848484848484848484848484848484848D
:10033000848484848484848484848484848484847D
:10034000848484848484848484848484848484846D
:10035000848484848484848484848484848484845D
:10036000848484848484848484848484848484844D
:10037000848484848484848484848484848484843D
:10038000848484848484848484848484848484842D
:10039000848484848484848484848484848484841D
:1003A000848484848484848484848484848484840D
:1003B00084848484848484848484848484848484FD
:1003C00084848484848484848484848484848484ED
:1003D00084848484848484848484848484848484DD
:1003E00084848484848484848484848484848484CD
:1003F00084848484848484848484848484848484BD
:040000FE091B0000DA
:00000001FF

2 это в программаторе выделенный текст.



Теперь немножко об ином.
Теперь откроем любой маааленький исполняемый файл с расшиернием exe в блокноте (не обязательно в программаторе)
И что мы видем?
Всё тоже словобразования
==================================
MZ..........................
................................
This program ...........
............................$7
==================================
Так что вопрос прошивкали это???

Меня убеждают что нужно подправить чуток, в чём я сильно сомневаюсь.

nessy
28/08/2008 11:03
Возможно прошивка изначально была для 24C02, писалась в 24C04, с адреса 100 попал мусор из буфера.

БМК-Миха
28/08/2008 11:44
m.ix, копируешь текстовый файл и открываешь его в проге "chkhex",затем сохраняешь его в НЕХ-файле.
И все

ДОБАВЛЕНО 28/08/2008 12:45

прога

m.ix
28/08/2008 11:50
nessy писал:
с адреса 100 попал мусор из буфера.

Странно, это уже не первая подобная.
БМК-Миха писал:
копируешь текстовый файл и открываешь его в проге "chkhex",затем сохраняешь его в НЕХ-файле.

Там три прошивки были без расширений.
Я просто тупо добавил расширение HEX
Открыл программатором

И

Увидел то что увидел.

Первая прошивка была нормальная, остальные две с этими *словами*

Прогу чуть позже попробую.

tit7861
28/08/2008 12:57
Почему в других прошивках, например в bin, читается логотип, например "PROLOGY", а в этих его не видно, куда их не суй. Что то здесь не то. Наверное, и правда, надо что-то в них подправлять.

m.ix
28/08/2008 13:04
У меня мало опыта, но логический вывод говорит, что ни в одной прошивки не должно быть остатков экзэшников.

tit7861
29/08/2008 05:52
Цитата:
Всё тоже словобразования
==================================
This program cannot be run in DOS mode.
==================================
Так что вопрос прошивкали это???

В общем, такие прошивки, просачиваются с авторизованного центра, они их, видимо, получают уже в таком виде от производителя жк "PROLOGY". Вот та прошивка тоже к ЖК "PROLOGY" была, и как ее не конвертировал, в какие проги только не совал, в реале она не работала.
http://monitor.espec.ws/section13/topic106224.html

Вот таки дела. Кто что еще чего скажет?

China
02/09/2008 08:19
tit7861 писал:
Почему в других прошивках, например в bin, читается логотип, например "PROLOGY", а в этих его не видно, куда их не суй.


И не должно читаться. И при конвертации в BIN тоже не всегда работать будет. В HEX указано, с какого адреса разные фрагменты прошивки должны начинаться, если прошивка, например, для контроллера. Там же есть фьюзы, номер, EEPROM, память программы. Всё это расположено не подряд, в BINе это указать невозможно.

Формат HEX-файла

Intel Hex - формат файла. Строки текстового файла представляют собой последовательности двоичных данных, представленных в шестнадцатеричной системе счисления .
Каждую строку в файле называют записью. Она состоит из таких элементов:
Двоеточие :.
Число байтов данных, содержащихся в этой записи. Занимает один байт (две шестнадцатеричных цифры), что соответствует 0…255 в десятичной системе.
Начальный адрес блока записываемых данных - 2 байта. Этот адрес определяет абсолютное местоположение блока в EPROM </wiki/EPROM>.
Один байт, обозначающий тип записи. Если значение этого байта равно 00h (0), то следующие байты являются фактическими данными, которые будут сохранены в EPROM. Значение 01h (1) указывает на конец файла.
Байты данных, которые требуется сохранить в EPROM (их число указывается в поле 2).
Последний байт в записи является контрольной суммой. Если сумма всех байтов в строке (без учёта переноса) равняется 00, строка считана правильно.
Строка заоканчивается стандартной парой CR/LF (0Dh 0Ah).
Файл завершается записью «:00000001FF».

Если вы посмотрите содержимое такого файла при помощи редак­тора «Блокнот», то вы увидите, что это текстовый файл, в котором данные закодированы в виде текстовых строк. Ниже приведено содержимое hex-файла, полученного в результате трансляции про­граммы Progl (листинг 1.1):

:020000020000FC
:100000000FE70DBF00E806BD00E006BD01BB0FEF26 :1000100007BB08BB02BB00E808B900B308BBFDCFB3
:00000001FF

Как видите, данный файл состоит из четырех строк. Первая и последняя строки несут служебную информацию. Наличие пер­вой строки необязательно. Система AVR Studio при трансляции программы всегда добавляет в hex-файл первую строку именно такого содержания. Последняя строка — это стандартный конец для любого hex-файла.
Оставшиеся две строки как раз и содержат информацию о кодах программы. В каждой такой строке закодирована цепочка байтов и адрес в памяти, где эти байты должны размещаться.
Строка начинается с двоеточия. Двоеточие — обязательный эле­мент, который служит для идентификации hex-формата. Все осталь­ные символы в строке — это шестнадцатиричные числа, записанные слитно без пробелов. Отдельные числа отличают по их позиции в строке. Так первые два знака занимает шестнадцатиричное число, означающее длину цепочки.
В нашем случае длина обеих цепочек равна 0x10 (то есть 16) байт. Следующие четыре символа — это начальный адрес, куда эти байты должны быть помещены. Первая цепочка будет размещена в памя­ти, начиная с нулевого адреса. Вторая цепочка — с адреса 0x0010. Очередные два знака занимает код вида строки. В интересующих нас строках он равен «00», что означает, что эти строки предназна­чены для записи данных (в первой строке такой код равен «02», а в последней «01»).
Сразу после кода вида строки начинаются собственно данные. Каждый байт данных занимает два знака. Самые последние два символа — это контрольная сумма. Она рассчитывается по специ­альной формуле с использованием значений всех байтов цепочки и служит для проверки на отсутствие ошибок.

m.ix
02/09/2008 08:27
China, Должны ли быть в прошивке подобные символы?
писал:
This program cannot be run in DOS mode


China
02/09/2008 08:38
А прошивка к чему? Какая микросхема, в каком девайсе стоИт?

m.ix
02/09/2008 08:42
China писал:
А прошивка к чему?
К TV LCD Prology
m.ix писал:
1 http://www.telemaster.ru/minitv/CHA8TV/hdtv-800s%20ver.2 сохранить как объект на комп
China писал:
Какая микросхема,
m.ix писал:
3 открыть в программаторе 24с04
China писал:
каком девайсе стоИт?
Willem 3-4.5

China
02/09/2008 08:44
Цитата:
Там три прошивки были без расширений.
Я просто тупо добавил расширение HEX


Это не пойдёт. HEX - это не просто расширение, это формат файла. Если к текстовому файлу добавить расширение AVI, он от этого фильмом не станет.

ДОБАВЛЕНО Вт 02 Сен, 2008 07:47

This program cannot be run in DOS mode - такого быть не должно, прошивка ТВ никакого отношения к ДОСу и винде не имеет.

m.ix
02/09/2008 08:51
China, А ты попробуй скачай и посмотри что и как там.
Может я что то у себя напортачил?
Там две подобные прошивки к теме притачены.
владелец писал:
Это прошивки. Их только надо переделать немного.
Что там переделать нужно я незнаю? Гложат сомения меня так же как и тебя по поводу подобных прошивок.

tit7861
02/09/2008 08:53
Цитата:
This program cannot be run in DOS mode - такого быть не должно

Да, но такие прошивки и к разным девайсам пришли из двух не связанных мест, одни отсюда
1 http://www.telemaster.ru/minitv/CHA8TV/hdtv-800s%20ver.2 , а другая с серв. центра. Их связывает только один производитель девайса Prology. Может быть они каким-то образом закодированы?.

China
02/09/2008 09:04
Посмотрел. Очень странная строчка, похоже на просто мусор. К тому же, сигнатура MZ - это опознаваловка EXE файла. Наверное, это просто мусор как-то попал или прошивки битые. А ещё что значит "Их только надо переделать немного"? Это ересь какая-то. Нужно знать, что править и на что менять, изменение одного байта наугад сделает её совсем нерабочей. А нет ли возможности слить прошивку с рабочего TV LCD Prology и посмотреть на неё?

tit7861
02/09/2008 09:13
Цитата:
рабочего TV LCD Prology и посмотреть на неё?

пока нету такой возможности, но ждем, когда-нибудь будет, сразу солью и суда помещу.

ДОБАВЛЕНО 02/09/2008 12:47

Цитата:
. HEX - это не просто расширение, это формат файла. Если к текстовому файлу добавить расширение AVI, он от этого фильмом не станет.

Как правильно делать и чем эту конвертацию, что б быть уверенным???

m.ix
02/09/2008 09:25
China писал:
К тому же, сигнатура MZ - это опознаваловка EXE файла
И я об этом же говорил тому кто убеждал что чуток подправить.
China писал:
А нет ли возможности слить прошивку с рабочего
Там же она висить первая из трёх. вторая и третья они как братья близнецы.

China
02/09/2008 09:34
Цитата:
Как правильно делать и чем эту конвертацию, что б быть уверенным???


Есть крохотные утилитки HEX2BIN.EXE и BIN2HEX.EXE. Но правильное преобразование из HEX в BIN не всегда возможно.

m.ix
02/09/2008 09:47
Уже пробовали результат нулевой.
Файл для начала нужно обозначить, точнее назначить ему расширение.
Я первый правильный файл переименовал в HEX открыл в программаторе и сохранилв bin без проблем.
А с остальными двумя косяки.
Точнее со структурой файла, точнее остаются все теже ЭКЗЭШНЫЕ причиндалы.

tit7861
03/09/2008 07:25
Цитата:
правильное преобразование из HEX в BIN не всегда возможно

Тмак понимаю, что когда неправильное преобразование, то прошивка работать в реале и не будет. Тогда встает вопрос - когда это возможно и когда нет???

China
03/09/2008 08:07
Суть проблемы в том, что память не всегда представляет собой сплошной непрерывный участок. Если речь идёт о микросхемах памяти, то неприятностей при преобразовании возникать не должно. А вот, например, в случае контроллеров, картина совсем иная. Ихняя память разбита на куски, у каждого своё назначение и идут они не всегда вплотную друг к другу. У них есть память программ, память для серийного номера, EEPROM, память для слова конфигурации. В файле HEX указывается с какого адреса должно располагаться в памяти содержимое каждой строчки, а BIN - это просто содержимое без всяких адресов. Если в прошивке для контроллера указано слово конфигурации, то оно либо совсем не попадёт в файл при преобразовании, либо же при программировании попадёт не в то место, куда ему положено. То же самое касается и EEPROM. Вот кусочки одной и тойже бессмысленной прошивки для PICа. Всю EEPROM я забил нулями.

:1007C000FF3FFF3FFF3FFF3FFF3FFF3FFF3FFF3F39
:1007D000FF3FFF3FFF3FFF3FFF3FFF3FFF3FFF3F29
:1007E000FF3FFF3FFF3FFF3FFF3FFF3FFF3FFF3F19
:1007F000FF3FFF3FFF3FFF3FFF3FFF3FFF3FFF3F09
:084000000F000F000F000F007C
:02400E00FF3180
:1042000000000000000000000000000000000000AE
:10421000000000000000000000000000000000009E
:10422000000000000000000000000000000000008E
:10423000000000000000000000000000000000007E
:10424000000000000000000000000000000000006E
:10425000000000000000000000000000000000005E
:10426000000000000000000000000000000000004E
:10427000000000000000000000000000000000003E
:10428000000000000000000000000000000000002E
:10429000000000000000000000000000000000001E
:1042A000000000000000000000000000000000000E
:1042B00000000000000000000000000000000000FE
:1042C00000000000000000000000000000000000EE
:1042D00000000000000000000000000000000000DE
:1042E00000000000000000000000000000000000CE
:1042F00000000000000000000000000000000000BE
:00000001FF

Видно, что эти нолики есть, они в конце фрагмента. А вот результат преобразования в BIN, тоже самый конец файла. Здесь никаких ноликов нет, содержимое EEPROM совсем не попало в результат преобразования. Естественно, такая прошивка работать не будет.

tit7861
03/09/2008 09:27
China, CПС, ты здорово все объясняешь классно! . Еще осталось разобраться с теми непонятными прошивками под 24с04(08). Ты заходи сюда иногда, может рабочие такие PROLOGY попадутся и в результате сравнения прошивок удастся чего нибудь выяснить.

m.ix
10/09/2008 11:26
Мужикик!!!
Вы будуте смеятся но я чуть со стула не упал.
Только что программировал 24С08 её содрал с какого то тела LCD
Короче прошивка содержала те самые ЭКЗЭШНЫЕ артефакты в трёх экзэмплярах.

Хочешь верь хочешь нет а вот такое случилось.
И не возможное возможно.

Но вопрос всё ж открыт, для чего там эти виндовые артефакты???

tit7861
24/09/2008 16:18
Цитата:
Вы будуте смеятся но я чуть со стула не упал.

Ага, тоже снимал прошивки с LCD PHILIPC c ЕЕPROM, то ли скалера, то ли Геркулеса и тоже подобное обнаружилось.
Кстати, та моя прошивка ( см. выше), на которую грешил, оказалось работоспособной. Просто панель выносная под DIP-8 глючила - переломилася нога, видимо от частого вставления и вынимания пробных памятей. В моем случае, оказалось, что вся нужная процу инфа записана в первых семи строках дампа ( точнее 94 первых ячейках), а все остально было потом забито FF и на работоспособность аппарата никак не повлияло. Хоть чуток разобрался улыбка .
Пускай они там находятся, эти "артефакты", но по умолчанию можно принять, что они ни на что не влияют, видимо. Для интереса хотелось бы, конечно знать, для чего они там и откуда. Или может быть их нет, а они сами появляются.... улыбка

liveinternet.ru RadioTOP Rambler's Top100 –ейтинг@Mail.ru