Сборка образа ПЗУ

Обсуждение вопросов по возможностям wdmarvel
Ответить
KDV
Сообщения: 17
Зарегистрирован: 22 сен 2021, 15:38

Сборка образа ПЗУ

Сообщение KDV »

Приветствую.

Собираю образ ПЗУ в WDMarvel Demo, имея оригинальную ПЗУ с сомнительным модулями 0A и 47. Соответственно, за основу беру образ ПЗУ с пациента, подменяя в нем 0A из прошивки донора.

Код: Выделить всё

из донора:
0A.bin    -> 0102.bin

из пациента:
Flash.bin -> 0109.bin
47.mod    -> 0103.mod
30.mod    -> 0105.mod
0B.mod    -> 0107.mod
0D.mod    -> 0104.mod
4F.mod    -> 0106.mod
Из пациент никуда не попадает ID20B(281 байт).

WDMarvel собирает образ, но меньшей на 512 байт длины. А разница между исходным Flash.bin и Generated_Flash.bin гигантская. Мясо с начала по адрес 3СDD0 не совпадает вообще, а дальше совпадают некоторые модули. При этом образ ПЗУ донора и Flash.bin пациента в мясе(0x0..3D1B1) идентичны, а различаются только после в некоторых модулях.

Generated_Flash.bin вообще стоит ли заливать в ПЗУ с такой разницей? Суть вопроса - заменить карту голов 0A в пациенте(весь модуль 78 байт) и пересчитать контрольные суммы...
Аватара пользователя
smyg
Сообщения: 508
Зарегистрирован: 12 ноя 2019, 12:40
Откуда: Симферополь, Крым
Контактная информация:

Re: Сборка образа ПЗУ

Сообщение smyg »

так диск то какой?

на свежих дисках с Safe FW Update, разница такая и будет...
Вложения
DualUpdate.png
DualUpdate.png (112.83 КБ) 111 просмотров
KDV
Сообщения: 17
Зарегистрирован: 22 сен 2021, 15:38

Re: Сборка образа ПЗУ

Сообщение KDV »

smyg писал(а): 10 окт 2021, 07:02 так диск то какой?
на свежих дисках с Safe FW Update, разница такая и будет...
WD10EZEX-60ZF5A0 2013 года выпуска.

На борту контроллер 88i9346, предрположительно SoC, и ппзу Pm25LD020 объёмом 256Кб. Логика Dual Safe Firmware Updates подразумевает объем ппзу в 2+ раза больший, чем длина прошивки. В случае с этим кроликом образ ПЗУ как-раз и составляет 256Кб.

Можно допустить, что где-то в недрах 88i9346 есть ппзу порядка 256+Kб, в которой лежит BIOS диска и рабочая микропрограмма а Pm25LD020 - временное хранилище для обновлений. Да что-то слабо верится... В таком случае пропадает мсысл резервировать временное хранилище и тянуть за гермоблоком эту Pm25LD020 на новую плату, что настоятельно рекомендуют большинство инструкций...

Куда более вероятным кажется, что это просто программный баг. Благодаря вам копнул глубже и обнаружил, что модуль 0109 из SA содержит заголовок, а в образе ПЗУ его, конечно же, нет :D :Изображениеальтернатива
Соответственно, съедая файл 0109.bin, WDMarvel предполагает наличие заголовка и пропускает кусок соответствующей длины. Проверил - если скормить WDMarvel 0109.rpm с заголовком, результат куда лучше :idea:
Ответить