Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Hardware » Магнитные носители информации » Ремонт накопителей Seagate. Часть 10

Модерирует : Akam1, Dr_StandBy, vertex4

Akam1 (07-08-2019 06:41): http://forum.ru-board.com/topic.cgi?forum=84&topic=5470  Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

   

E123



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Прежде всего перекачайте мой LodEdit, в нем новый .ini, в котором все модули названы "от Seagate".
И немного "полезностей". Тогда дальнейшая терминология будет понятнее.
https://yadi.sk/d/ps0J3Kns3A3KY9
Так вот, причину несовместимости я выяснил, а теперь дошли руки описАть это.
В хедерах лоадера помимо контрольной суммы есть еще поле с датой/временем. Это время "билда" фирмвари.
В хедере для 20D оно ВСЕГДА должно соответствовать ROM.
Оно есть у CFW, CFW_DISK, OVLY и еще у некоторых модулей.
Оно проверяется при загрузке. Не всегда. Правильное можно увидеть в хекс-редакторе поиском по сигнатуре.
Если взять модуль CFW из ROM и для этой CFW предусмотрен "хвост на блинах" в виде CFW_DISK, то поиском
по сигнатуре "17 06 03 13" вы найдёте нужные вам 64 байта хедера. Точнее оттуда нужно взять 8 байт с
датой/временем/номером с 18h по 1Fh (подробнее - см. "Header.xls").
Размер и ид модуля там указаны чаще всего не верные. Почему? Не знаю.
Точно также поиском в теле оверлея по сигнатуре "71 78 37 07" можно найти нужный хедер для этого оверлея.
С оверлеями проще: мне не попадались ROM с проверкой валидности оверлеев, но это не значит что таких нет.
 
В LodEdit я положил примеры, там есть лодырь с 20D, который заливается при помощи CTPM.
В таком варианте проверки на валидность игнорируются в большинстве случаев. Подходит, если вы хотите поменять
варь с простой (без 20D) на сложную (c 20D), в которой обычно сервисный функционал по-богаче, но не знаете
на каком ABA лежит 20D.
 
Теперь про CTPM(id41).
Дербанится из сигейтовских "обновлялок". Подходят на несколько семейств (например на wyatt может
подойти как от бринкс, так и от kahuna - может не совсем правильно помню семейства, но общий принцип такой),
для CFW и SFW обычно (не всегда) разные.
С её помощью можно записывать модули ROM и модули на блинах:
 
02 - DL_CFW    
03 - DL_SFW
04 - DL_CAPM    
05 - DL_SAPM    
06 - DL_RAPM    
0D - CONGEN XML
0E - IAP
 
22 - DL_BFWCTNR
23 - DL_BFWCTNR
24 - FWADAPT
 
42 - CFW
43 - SFW
44 - CAP
45 - SAP
46 - RAP
4B - SHELL
и др.
 
CAP и RAP пишутся так:
Выравнивание по 512 байт обязательно.
Вначале HDR+DL_PAD+HDR+DL_CTPM(последний нужен для своего семейства, но иногда подходит от других),
затем HDR+DL_PAD+HDR(заполнить только размер блока и байт типа данных, КС можно не расчитывать),
потом модуль адаптивов (без заголовка и контрольной суммы, он уже выровнен на 512 байт).
Одним DL_CTPM можно записывать несколько блоков адаптивов подряд, группируя их друг за другом.
(С SAP не разобрался, модуль записывается, но он в ПЗУ состоит из двух половин у каждой свой заголовок,
а CTPM принимает только оба сразу, при этом неверно переписывает размер в заголовке первой половины.)
CTPM получает все блоки, потом обрабатывает все сразу, при этом она:
- переписывает заголовки модулей, указывая новый размер;
- расчитывает КС модулей(!);
- расчитывает КС сегментов(заголовок + модуль);
после этого перезапускает FW и продолжает обработку лоадера.
 
Все сегменты с id большим 41 записываются целым модулем, заголовки и контрольные суммы не пересчитываются.
Выравнивание по 512 байт обязательно.
 
PS. Крик души: Мужики, я уже понял, что вы понимаете меня через слово, но... спрашивайте, не стесняйтесь!
Каждый ваш вопрос "по-существу" помогает что-то понять. За два года года копаний в лоадерах было только ДВА(!) вопроса.
Больше тысячи скачавщих LodEdit. Отзывы в основном "да!", "cool", "great"...
У меня, блин, не грузится, а у всех всё работает...

Всего записей: 1030 | Зарегистр. 18-03-2008 | Отправлено: 10:44 31-05-2018
   

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Hardware » Магнитные носители информации » Ремонт накопителей Seagate. Часть 10
Akam1 (07-08-2019 06:41): http://forum.ru-board.com/topic.cgi?forum=84&topic=5470


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru