Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Когда нужна инверсия SWAP ?
Программаторы Мастер > Наши программаторы > Мастер 02, Мастер 02 USB
CAIIIA
Не знаю когда нужно делать инверсию дампа, а когда нет при заливке во флешь, вразумите пожалуйста.
masterra
К сожалению, однозначного ответа здесь нет. Порядок байт зависит от контроллера, который работает с данной Flash.
Если вы считали программатором прошивку, то нужно так и записывать( без Swap).
А если получили из других источников, тогда нужно посмотреть на нее в редакторе. В ней всегда есть какая текстовая информация (например, версия), по ней нужно сориентироваться, правильный порядок или нет(для любых Bios этот должно быть одинаково).
Цитата(CAIIIA @ 7.2.2011, 18:43) *
Не знаю когда нужно делать инверсию дампа, а когда нет при заливке во флешь, вразумите пожалуйста.

CAIIIA
Сегодня слил дамп с BBK DK929S (MX29LV160ATTC-70) затем сравнил со скачанной из сети и заметил обратный порядок байт у слитой, скачанную из сети инвертировал (SWAP) и влил в плеер. Плеер пашет.

Цитата: masterra
"В ней всегда есть какая текстовая информация (например, версия), по ней нужно сориентироваться, правильный порядок или нет"

То есть я должен увидеть например слово (open), если вместо него вижу (pone), то смело делаем SWAP.
masterra
Вы правильно поняли, что здесь есть вероятность ошибки и, поскольку, проверка в устройстве достаточно трудоемкая, лучше делать наверняка.
В программе автоматически разворачиваются байты при чтении файла прошивки, если выбрана 16-битная микросхема( к ним относятся кроме 16 битных ПЗУ и Flash еще Pic/AVR контроллеры). Т.е. если выбрать последовательно м.с 29F160 и 29F160x16, при этом считать один и тот же файл, к.сумма будет одинакова, а порядок байт разный.
Если прошивки BIOS, также как в примере, тоже нужно "разворачивать", получается, что для этих типов м.с в программе нужно убрать автоматическую инверсию.
Сам я больше склоняюсь сделать еще один конфигурационный параметр ("порядок байт" - по умолчанию), тогда не нужно будет инвертировать каждую прошивку.
Цитата(CAIIIA @ 7.2.2011, 21:41) *
Сегодня слил дамп с BBK DK929S (MX29LV160ATTC-70) затем сравнил со скачанной из сети и заметил обратный порядок байт у слитой, скачанную из сети инвертировал (SWAP) и влил в плеер. Плеер пашет.

Цитата: masterra
"В ней всегда есть какая текстовая информация (например, версия), по ней нужно сориентироваться, правильный порядок или нет"

То есть я должен увидеть например слово (open), если вместо него вижу (pone), то смело делаем SWAP.

CAIIIA
Цитата(masterra @ 8.2.2011, 22:34) *
Сам я больше склоняюсь сделать еще один конфигурационный параметр ("порядок байт" - по умолчанию), тогда не нужно будет инвертировать каждую прошивку.


Автоматизм - хорошо и ещё лучше, если не будет ошибаться. Сегодня у меня в ремонте был DVD BBK DKX1100. Грешил на прошивку сначала сервопроцессора, не помогло, затем обновлял основную прошивку. Микра EN29LV800A. Шил как Spansion S29AL008-16. Впаиваю, включаю - ноль реакции на кнопки, перепаял, ещё раз прошил, не включается. Когда решил сравнить прошивку скачанную с инета и залитую во флешь, увидел, что та что во флеши инвертированная. Тогда я предварительно перед прошивкой инвертировал дамп и залил в микру, аппарат ожил. Но к неудовольствию, аппарат не отермонтировался. Но это уже к теме как говорится не относится smile.gif.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
IPB NULL RU