Внимание! Это временный неофициальный архив старой версии форума Полигон Призраков, созданный сочувствующим форуму участником. Этот сайт просуществует лишь до тех пор, пока администрация Полигона не сдержит своё обещание и не откроет официальный архив по адресу old.sannata.org.

Полигон-2

Форум о старых компьютерах

Объявление форума

Если пользуетесь личными сообщениями и получили по электронной почте оповещение о новом письме, не отвечайте, пожалуйста, почтой. Зайдите на форум и ответьте отправителю через ЛС.

Полигон-2 »   Документация »   Програмный ремонт жёстких дисков HDD
RSS

Програмный ремонт жёстких дисков HDD

Програмный (и не только) ремонт классических жёстких дисков HDD /Seagate /Samsung /IBM /Hitachi /HGST /Western Digital

<<Назад  Вперед>> Страницы: 1 2 3 4 5 6 7 * 8 9 10 11 .. 75 76 77 78 79 80
Печать
 
i8088
Advanced Member


Откуда: г. Баку, Азербайджан
Всего сообщений: 2132
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
30 янв. 2015
Очень полезный материал, много нового узнал!

Меня тоже интересует ремонт старых HDD (причем чем диск старее, тем актуальнее
ремонт), было восстановлено несколько Seagate (иногда с усечением емкости), с
Conner тоже много возился, также с другими по интерфейсу IDE посредством PC3000 для DOS.

Остановился я давно на Seagate. где можно было обойтись без чтения служебной информации
для последующего восстановления после self-scan. Возможно, теперь есть повод продолжить!

Так держать!
KALDYH
Advanced Member
Технонекромант

Откуда: Кемерово
Всего сообщений: 2355
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
5 июня 2009
Ресурсы и совместимость микропрограмм
С микропрограммами у макстора полный бардак. Версии ПЗУ даже с одним и тем же кодом версии могут иметь совершенно разное содержимое, аналогично с модулями. Поэтому в ресурсах указывается не имя модуля, а его контрольная сумма - только по ней можно удостовериться о принадлежности микропрограммы к определённой версии и о её совместимости.

PC3000 именует файлы модулей следующим образом: XXXXYYYY.RPM, где
XXXX - UBA адрес начала модуля в HEX,
YYYY - HEX длина модуля в секторах.
Как видно, найти нужный модуль по имени довольно затруднительно.
Также PC3000 создаёт файлы групп модулей с расширением .SMB, формат имени тот же.

Так как идентифицировать всю эту кучу весьма проблематично, есть программа MxHelp for Windows 2_1 (автор - Лалетин Вячеслав). Возможности:
[q]
1. Поиск модуля Паспорта и его отображения.
2. Поиск модуля Спецификации.
3. Поиск загружаемой ПЗУ, выводит:
-\tконтрольной суммы.
-\tверсию микропрограммы. New
-\tстатус загружаемой ПЗУ. New

4. Вывод из LDR:
-\tконтрольной суммы загружаемой ПЗУ в LDR.
-\tконтрольной суммы самого LDR.
-\tверсии микропрограммы. New
-\tстатус загружаемой ПЗУ. New
-\tк какому семейству принадлежит LDR. New

5. Возможность переименования LDR:
-\tв контрольную сумму загружаемой ПЗУ.
-\t+ версию микропрограммы. New (E7CF_VAM51JJZ.LDR)

6. Есть возможность настраивать просмотр Паспорта по вашему желанию в MxHelp.ini и добавлять нужные параметры вывода или убирать ненужные вам. Возможность добавлять новые модели незанесенные в этот список и их параметры.
[/q]
Документация внутри.

Лоадер
Итак, как я уже говорил, если накопитель определяется заводским псевдонимом - его нужно перевести в safe mode установкой перемычек и отправить ему лоадер.

Перемычки для Safe mode: HARD DRIVE MODEL.doc, также положение перемычек есть в доках по PC3000 (выдержка из них)
Для SATA - нужен специальный адаптер: http://forum.acelaboratory.com/viewtopic.php?t=4501

Лоадер, создаваемый PC3000 - по сути, склейка из двух частей. Лоадер собирается из модулей накопителя. Первая часть - оверлейное ПЗУ (256 блоков = 128 кбайт), вторая - склейка из программных модулей. Структура аселабовского лоадера .LDR © krogr:
[q]
[начало лоадера]

512 байт – таблица распределения №1
Оверлей №00
512 байт – таблица распределения №2
Оверлеи в порядке возрастания номеров.

[конец лоадера]

Первые 512 байт – таблица распределения оверлеев в файле лоадера. Ее формат следующий:
01 nn 00 00 00 00 00 00 mm mm mm mm 00 00 00 00
Где nn – номер оверлея, mm – длина его.
Первая таблица, как правило, состоит из описания размещения одного-единственного оверлея – за номером 00, образа ПЗУ. Например:
01 00 00 00 00 00 00 00 00 00 02 00 00 00 00 00
……….
Остальное – нули до 512 байт.
За этой таблицей идет, собственно, сам образ ПЗУ. Длина – 131072 или 0х20000 байта. После него есть еще одна таблица распределения, вторая, тоже длиной 512 байт, в которой расписаны остальные оверлеи. Структура их точно такая же, как и у первой. Только записей будет побольше. ;) Например:
01 03 00 00 00 00 00 00 00 40 00 00 00 00 00 00
01 04 00 00 00 00 00 00 00 40 00 00 00 00 00 00
01 05 00 00 00 00 00 00 00 40 00 00 00 00 00 00
…………………….
Из нее мы видим, что оверлей номер 03 имеет длину 16 К, номер 04 – столько же, и номер 05 по размеру от них не отстал.
Почему именно такая структура? ;) Думаю, что ответ кроется в принципе загрузки лоадера в память посредством стандартной ATA команды. Или я неправ? ;)
Нужно нам, к примеру, найти оверлей за номером 05 в файле. Высчитываем адрес его начала:
512 (длина первой таблицы распределения) + длина образа ПЗУ + 512 (длина второй таблицы распределения) + сумма длин предыдущих оверлеев.
Оверлеи, кстати, идут подряд, один за одним, без какого-либо перерыва. У ХРТ же оверлеи можно сохранять в виде отдельных файлов - *.CP
[/q]
Части отправляются так: ПЗУ - SoftReset - оверлеи - SoftReset. PC3000 умеет делать это одним нажатием или частями. При отправке универсальными программами, например HDDL, лоадер должен быть поделен на эти две части, которые посылаются одна за другой.
У Poker/Ardent алгоритм загрузки ещё более усложняется. Первыми посылаются оверлеи 1B и 1С, а только потом ПЗУ - SoftReset - оверлеи - SoftReset.
После отправки лоадера может выполняться инициализация из служебной зоны. В необходимости этого и условиях для неё я не разобрался.
Версия лоадера должна соответствовать версии ПЗУ. В противном случае таблица модулей не читается и дальнейшая работа невозможна.
Где взять лоадер? Поищите по сайтам с ресурсами HDD. Обычно его кладут в архив вместе со считанной служебкой.
Лоадер содержит в себе только код, но не содержит нужных для работы со служебкой данных - транслятор служебной зоны, адаптивы записи и др. Перед тем, как делать какие-либо попытки записи в служебку, всё это должно быть вычитано с блинов.
Тем не менее, лоадер новых моделей содержит в себе адаптивы чтения. Это приводит к тому, что для успешного старта придётся перебрать их немало в поисках совместимого :(
Ещё сведения:
[q]
ВНИМАНИЕ!!!!! Некоторые Мухтары ОЧЕНЬ ТУГОДУМНЫЕ!!! К чему это я? Да к тому...что когда пустите заливать лодырь.........не все произойдет быстро.....Винт задумаеться, появиться красно голубая "любимая заставка" (PC-3000 DOS), НЕ ОБРАЩАТЬ внимание на это...А просто прислушиваться к винту......сек. через 15-30(по разному) винт рекалибруется..., затем, жмем - ESC и выходим из утиля- ОБЯЗАТЕЛЬНО!!!! Заходим по новой, еще раз, заливаем еще раз, для модулей, теперь все произойдет быстро :-) Ну а дальше - Стандартный режим, тест записи служеб. зоны, восстановление модулей...резет по питанию!!! :-)
[/q]
Тест записи
Из-за несовместимых или незагруженных адаптивов MicroJog записывающая головка может не попадать на нужную дорожку/сектор. В таком случае при попытке записи в служебную зону будут разрушены соседние модули! Поэтому после загрузки лоадера и перед попыткой перезаписи повреждённых модулей обязательно следует:
1) Считать модули данных с диска
2) Провести "Тест записи SA" - пишет один сектор в неиспользуемой области и пытается его считать.
Если нужные модули не читаются или тест не прошёл, нужен другой лоадер - этим чинить бесполезно и опасно.

Итак, алгоритм загрузки лоадера:
1) Ищем лоадер от любой модели того же семейства (лучше сразу пачку). Желательно от экземпляра с такими же буквами на четырехбуквенной наклейке на гермоблоке (в ней зашифрованы коды головок, пластин и коммутатора).
2) Ставим перемычки Safe Mode
3) Получаем доступ к служебке. Если не удалось - пробуем другой лоадер.
4) Вычитываем все родные модули винта, создаём из них родной лоадер. На этом этапе НИЧЕГО НЕ ПИШЕМ!
5) Загружаемся с родного лоадера
6) Проводим тест записи. Смещение должно быть=0!
7) После этого уже можно делать любые операции, связанные с восстановлением битой служебки.

Образ RAM
PC-3000 позволяет снимать образ памяти и заливать его обратно. Имея образ ОЗУ от своего винчестера, всегда можно вывести его на готовность при любых проблемах в служебке, и записать её обратно при потерянных модулях адаптивов (т.к. они уже и так в RAM).
[q]
На антене последовательность такая:
лодырь-память-проверка модулей
[/q]
Также может пригодиться для анализа микропрограммы.

Программы и утилиты для ремонта
Во-первых, большая часть винчестеров Maxtor до DiamondMax Plus 9 поддерживается досовcкой версией PC-3000. PC-3000 UDMA поддерживает также DiamondMax 10, но нам она не доступна. Примечание: в комплекте самой популярной ломаной 14.0 идёт утилита pcmx_pkr.exe версии 2.01, настоятельно рекомендуется найти и использовать pcmx_pkr.exe версии 2.06 (разыскивается!) от PC3K 14.5, "хотя кривость и в нем есть :(" © Версию 2.03 не использовать, она ещё более глючная, чем 2.01
tomset написал:
[q]
Даже самая последняя версия утилиты 14.5 на самом PC3000-ISA работала очень плохо.
Более менее нормально утилиту доделали только в PC3000 UDMA
Да и то, так и не закончили, прекратили поддержку максторов, как неактуальное направление.
[/q]
[q]
вообще запомните раз и навсегда: ася криво работает с P-list на максторах!

Надо в G-List помещать, а потом делать перенос из G в P. Тогда всё будет правильно.

можно сказать совсем не работает, ИМХО это работой не назовёшь :( А вот с глистом нормально, а перенос можно осуществить и другими средствами.
[/q]
Во-вторых, есть китайская утилита с английским переводом HDD Repair 2.0. Работает под Windows.

В-третьих, у меня завалялась предположительно "китайская утилита от xlysoft вся в иероглифах"
[q]
These are just the .exe's from the pro version of MFR. These are in chinese language. You can still use it though if you get the english manual from the salvationdata website as the menus are the same (from what I can tell, the versions are different though...)
[/q]
. Инструкция к ней (тоже на китайском, разумется). Я ее запустить не смог.

UPD: В-четвёртых, за время моей работы над практической частью igor_me залил в сеть Maxtor Repair Tool (MRT) от krogr. Предположительно, эту прогу увели у него китайцы из China HDD Union и впоследствии предлагали как свою, дело тёмное (авторство krogr подтверждает структура меню selfscan, аналогичная KrogrESS). В архиве две версии, каждая глючит по-своему. Ещё копия: http://www.mediafire.com/file/dokctmpx04e8fy2/MRT+Maxtor.rar Переключатель Poker/DSP отсутствует, есть предположение, что она чисто для DSP.

Алгоритм восстановления
Версия от SRUTSSSSSSSS80 (цитата из аселабовской документации)
[q]
служебка востонавливается легко при условии что не были задеты модули критичности А
1. Запуск накопителя без установки перемычки “safe mode”.
Данный способ будет работать, если при входе в утилиту накопитель определяется своим заводским
псевдонимом и перемычка safe mode не установлена. Суть этого метода в загрузке только части “модули” LDR-файла. При этом модули должны быть такие же точно, как были в накопителе. Пошаговый алгоритм:
1. Подаем питание и запускаем утилиту pcmx_dsp.exe или pcmx_pkr.exe.
2. В меню режима выбираем пункт “Загрузить LDR-файл”.
3. Загружаем LDR-файл в режиме “Загрузчик модулей”. В случае успешной загрузки накопитель дает возможность работы со служебной зоной.
Отличие этого метода от метода загрузки с вводом накопителя в safe mode заключается в том, что при старте накопителю удается подгрузить из служебной зоны таблицу дефектов служебной зоны и адаптивные параметры. В случае же с запуском через safe mode этого не происходит. Данный метод не будет работать, когда испорчены модули, относящиеся к критичности A (см. таблицу 2).

Перед тем, как приступить к ремонту модулей, следует убедиться в корректности записи секторов в
служебную область. Дело в том, что при запуске накопителя при помощи LDR-файла не полностью
выполняется инициализация микропрограммы, что приводит к сбоям ее работы. Чтобы проверить корректность записи, необходимо запустить команду “Тест записи служебной информации” (п. 5.2.2.2). Этот тест состоит из двух частей: загрузка адаптивов из модуля PN=1Eh и проверка возможности записи в служебную зону путем записи одного сектора случайного содержания в неиспользуемую область служебной зоны, названную “swap1”. В случае успешности проверки записи будет выдано сообщение «Смещение записи: 0», что сигнализирует о корректности операций записи в служебной зоне.
Достаточно частая неисправность накопителей Maxtor – это искажение информации в модулях
служебной зоны. Модули портятся в результате возникновения сбоев при операциях чтения/записи. Сбои могут быть вызваны неконтактом двигателя/коммутатора, неисправной магнитной головкой, запилами на поверхности, или, чаще всего, сбоями в электропитании накопителя. Во всех этих случаях симптомы одинаковые – повреждение модулей транслятора.
Обычно повреждение модулей сводится только к неверной строке идентификации при верной
контрольной суме. Чтобы восстановить такой модуль (например, P-List), достаточно записать верный заголовок
1
и пересчитать контрольную сумму. Такое повреждение могут иметь следующие модули: P-List (PN=18h), G-List (PN=1Bh), DMCS (PN=1Dh). Когда они повреждены, то идентификационная строка заменена на следующие: NO_PLIST, NO_GLIST, NO_DMCS. Похожее повреждение возможно еще у модуля U_LIST00 (PN=37h), но оно встречается очень редко. Если у этого модуля заголовок верный, то исправлять его при помощи автоматического восстановления не рекомендуется.
[/q]
Ссылки
http://maxtor-hdd.narod.ru/ - ресурсы на макстор от Sable
http://www.scspb.ru/pchdd/index.html - ещё немножко старых ресурсов
http://www.hardw.net/forum/arc...index.html - архивный раздел форума hardw.net. Все ссылки битые. Чтобы перейти на нужную страницу, вручную добавляйте "/forum/archive/" после доменного имени.
В процессе дополнения...
KALDYH
Advanced Member
Технонекромант

Откуда: Кемерово
Всего сообщений: 2355
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
5 июня 2009
Selfscan
Ну и наконец у Maxtor есть селфскан.
Для понимания этой главы ознакомьтесь с параграфами "Модули", "Лоадер", "Альтернативная служебная зона" предыдущих частей.

Подготовка
Перед запуском селфскана из основной служебной зоны - очистить модули таблиц дефектов - 78, 37, 1B, A7, 33, иначе неправильно отработают процедуры скрытия дефектов. Обязательно очистить логи - без очистки скан не стартанёт.
[q]
ессно почистить логи, потом забить _нулями_целиком_
AT_PDL, AT_POL, ZBRT, DMCS, HUTIL\HUSR передернуть питание
дать вендор-команду очистки листов(при этом сабж сам соберет нужные структуры дефект-мененжмента)
ну и ессно пнуть скан
(С) Sable
[/q]
HDD Repair при старте автоматически чистит ряд логов, причём не совсем корректно. Разбор дальше.

Если винт тестируется не подключенным к интерфейсу, к 39 и 40 ноге советую подключить светодиод индикации работы диска.
Рекомендуется подключить винт к отдельному блоку питания.

Тесты
Описание модуля 0E скрипта селфскана - см. выше
Номер тестаНазваниеПримечание

01Начало самотестированияПроизводит инициализацию логов и подготовку программы

00Конец тестированияВывод в обычный режим. Может использоваться для отладки прохождения

06ОЖИДАНИЕ ВНЕШНЕГО СОБЫТИЯНакопитель ожидает команды от стенда. Т.к. мы не знаем зачем - закомментировать

38КалибровкаВыполняет большую часть адаптивных настроек

90Настройка служебной зоныЕсли он зависает, то может быть закоментирован (см. документ ниже)

89Рестарт накопителяПараметр 7 - переключение между программой A (значение 0) и программой B (значение 100h), осуществляемое изменением модуля 95.

0С,31,32...Пустой тестНичего не делает

F5КомментарийАналогичен пустому тесту, но в параметрах записаны строковые комментарии

Назначение прочих тестов можно глянуть в файле HDDMaxtor.ini
Дополнительные сведения от Sable:
[q]
Flaw Scan... Тест ID 75. Какой-то из 7-ми параметров - очевидно "придирчивость" теста, а какой-то - допустимое количество ошибок.
замечено, что в линейке тестов 70-75-70 он обычно проходит без проблем, а вот следующий 75-й тест в крипте - бывает, что и затыкается (по переполнению логов?) Различаются они 2-мя параметрами, 1-м и 5-м.
Но.. на SABRE отсутствует как класс линейка 70-75-70, там линейка 70-70 (с разными значениями (на единичку) в 1-м параметре. Дальше ожидание внешнего события (с каким-то бредом в параметрах, причем два раза... - очень непонятный момент... может он тут чего по терминалу ждет ?), загрузка сервопараметров, 75-й тест, снова загрузка сервопараметров и тот-же 75-й тест. Различаются только 1-м параметром.

А вот про "тест сжатия треков", ID 7D который... ничего умного сказать не могу... :( Но на нем, в том числе, режется объем. По всей видимости какой-то из параметров (возможно 1-й) - тоже пиковое значения для анализа результатов 38-го теста (оптимизации).

"ждать до упора" есть в параметрах теста ИД06 (wait for external event).
он-же Infinty bit в 6-м параметре, если ничего не путаю.
[/q]
Ещё добавлю:
Тест 2C стучит башками.
Тест 38 - один из самых длительных

Модификация скрипта перед запуском
У старых накопителей для запуска селфскана скрипт брался как есть. Однако у накопителей ARES 64K, ATHENA POKER, требуется правка параметров теста 89 - седьмой параметр ставится в 0. Или же можно его не ставить, но тогда нужно выполнить "Сброс конфигурации SA" в PC3000 (какие действия выполняет эта команда - не знаю).
Для CALYPSO обязательно закомментировать в скрипте все тесты ожидания внешнего события 06h (обычно их два), тесты начала и конца цикла, обрамляющие тест ожидания внешнего события, а также первый по порядку тест 90h. Подробности - в доке Maxtor4Windows_ver2.pdf

Запуск

PC3000 умеет пускать селфскан только на DSP, HDD Repair - также и на Poker. Запуск производится технологической командой - стартанёт немедленно, или в модуле 1F DISK изменить байт 1FC с 00 на FF - селфскан запустится после следующего включения. Также HDD Repair на N40P меняет байт 1FA с 08 на 0C - это активные системные головки, и меняет он его зря (этот винт всегда одноголовый). После передёрга питания винт берёт паузу в 30 сек. (большинство моделей) или паузу в 10 мин. (некоторые прошивки ARES 64K, N40P), во время которой светодиод моргает с частотой в 2 Гц. Если в течение этого времени подать сброс или команду чтения паспорта, винт перейдёт в обычный режим до следующего включения. О назначении пауз можно узнать в комментариях скрипта.

Запуск из альтернативной служебки
Если у винта есть альтернативная служебка (некоторые N40P, все CALYPSO) - скан пускается из неё. Делается это так:

1. Винт переводится в альтернативную служебку. Можно лоадером из safe mode, можно порчей модулей основной (но тогда перейти обратно в основную сложнее). Лоадер должен соответствовать служебке - сравнить контрольные суммы. Если не соответствует - создать свой из своих модулей.
2. Проверяем доступность и целостность альтернативной служебки.
3. Чистим логи, если надо - правим скрипт.
4. Либо:
а) ставим перемычку в нормальный режим и нажимаем "запуск селфскан немедленно" (стартует без паузы), либо
б) настраиваем селфскан на запуск при следующем включении питания (правка модуля DISK), передёргиваем питание, если на шаге 1 использовался лоадер - снова грузим его из safe mode и ставим перемычку в нормальный режим. Выжидаем паузу, мониторим прохождение. Первая стадия проходит около 2 минут.
5. В конце первой части тестом 89h винт перезагружится и переключится на основную служебку.
6. Ждём 30 секунд/10 минут, мониторим прохождение второй половины селфскана. Никакого лоадера грузить уже не нужно.

Запуск из основной служебки
Так он делается на всех DSP и на тех Poker, у которых нет альтернативной (ATHENA, ROMULUS, ARES C64)
1. Проверяем целостность основной служебки
2. Чистим логи и дефект-листы
3. Пускаем тест:
а) командой
б) правкой DISK и передёргивания питания (после чего выжидаем 30 сек.)
4. Мониторим прохождение

Урезанная Alt-SA
У CALYPSO есть ряд прошивок, у которых есть Alt-SA, но запуск селфскана из неё ни к чему не приводит. Отличить их можно, просмотрев скрипт Selfscan в ней. Если он короткий (порядка 7 тестов) - то селфскан следует пускать из основной служебки. Кроме того, в их служебке нету копий модулей основной служебки, и собрать A-loader из неё невозможно.
Цитата от Sable:
[q]
Да, есть такие звери без модулей группы "А" в "С".
Наглядный пример лежит на столе.
D6FYP1, YAR41VW0, 6Y060L0620411, KGCD, в сейфе - YAR428WZ
Пока пасиент сам себе адаптивы пересчитывает попробую описать свою точку зрения на это дело.
Итак, исходные данные:
1. "Заветным ключиком" в "завестом листе" винт в "С" не вываливается. БИЗИ.
2. Да и фик с ним, пытаемся вычитать альтернативку из основной - ну.... почти удачно. За одним исключением: Читается она, мягко говоря, странно... Теряет серву, зависает... Бубен, танцы.. прочитали ПОЧТИ все. Но: после чтения последнего сектора в 1-й копии модулей - зависает наглухо, не снимая зависон даже резетом. Делаем вывод... там не то, чтобы неотформатировано... Там похоже банально просто НЕТ сервы... Или фирмварь "её готовить не умеет". Или я что-то делаю не так. Хрен с ним, делаем лодыря, попадаем нормально в "С". Выясняем, что то, что после "первой копии" - суть приколы транслятора УБА. Реально там нету нифига.
3. Начинаем анализ считанного альт-трека. ДИСКРОМ и все оверлеи группы "С" присутствуют. Дефолтные модули дефект-менеджмента присутствуют. Скановые модули присутствуют. Версия скана - cal_tz13.
В "С" определился как YCR41VW0, 6Y080L2.
4. Начинаем анализ скрипта скана. В нем 8 шагов:
0. 0001 - Старт тестирования
1. 20F6 - "пустой тест"
2. 20F6 - "пустой тест"
3. ххF5 - Комментарий, "Wait to move Rack"
4. 0006 - Ожидание внешнего события N минут, очевидно 15
5. ххF5 - Комментарий, "Read to Trim 2"
6. 0090 - Подготовка служебки
7. 0000 - Конец тестирования
Итак, Больше всего нам интересен тесты 4,6 и комментарий к тесту нумбер 5.
Уж очень много "смыслов" у слова "trim". Остановимся на "готовность".
Дальше идет чистое "ИМХО".
Ху из "ожидание внешнего события"? Осознавая, что у макторов тоже есть COM-терминал, могу предположить, что это самое "внешнее событие" - ничто иное, как ожидание сигнала от терминала и, возможно, потоковая SLDL загрузка базиса "А" служебки. 6-й тест в скрипте - ничто иное как эта самая "потоковая заливка" служебки "А", возможно напрямую "терминал - буффер-блин". Дальше винт просто резетится (возможно тоже по терминалу). И пинается скан из "А", без упоминаний о "С".
Все такие калипсы - ПЕРВЫЕ у Макстора, на них отрабатывалась идеология...
[/q]


Назначение Alt-SA - пересоздание чистой немодифицированной основной служебной зоны. Если запустить селфскан из основной, она в ходе тестов затрёт саму себя. Тем не менее, скан можно пускать и из основной.
[q]
Альтернативная нужна только для формирования основной. Так что, если в служебке А все в порядке, ну и запускайте из нее. Из С имеет смысл запускать только при наличии разрушений модулей, которые не удается восстановить. Селфскан все равно после теста Рестарт накопителя переключится в А и основные тесты пойдут уже оттуда. ;)
[/q]
[q]
1. Пускаем винт _стандартно_ в основную варь.
2. Проводим тест записи(мне правда непонятно зачем. но как я уже говорил, АСЕ -рекомендует )
3. Записываем "вытащеные" из альт модули: 1f/37/1b/1d/18/78/33/93 ("чистые" паспорт/транслятор служебки/G-List/DMCS/итд.)
(пишем все сразу не передергивая питания и т.д.), на системную голову(в нашем случае - 3_я.
4. Дергаем питание и переопределяем винт(изменилась модель, зонник и т.д.), на всякий случай. заглянем в дефектлисты. Они должны быть девственно чистыми и вся конфигурация винта, должна быть старшей моделью для этого типа.
5. В конфиге винта, так же убираем способность реллокейта и защитного стирания, разумеется сохраняем эти изменения. перегружаем винт.
6. По ВСЕМ головам(в нашем случае, по 2 и 3_ей) "чистим" модули:
11,43,4С(в принципе можно его не чистить) и правим по ВСЕМ головам модуль скрипта(0Е). Ремапим все тесты по 89(включительно) кроме 01. ПРОВЕРЯЕМ ПРОДЕЛАНОЕ!!! И только после этого, переходим к пункту 7.
7. тут есть два варианта:
а) пихаем скан командой(АСЕ_вая утила может)
в) правим модуль 1f(АСЕ_вая утила может)
8. Мониторим прохождение скана.(желательно пользоваться альтернативной "смотрелкой". У АСЕ_вой нет возможности подглядеть, по какой голове проблемы, а это не хорошо
9. если скан где-то встал\завис. смотрим состояния регистров в этот момент...и...долго думаем, думаем, ну а что непонятно, спрашиваем!
[/q]
Я, пожалуй, не рекомендую использовать эту методику как основную.

Мониторинг
Мониторить процесс прохождения селфскана можно по морганию светодиода активности, либо по данным, выводимым в регистры ATA интерфейса. Функцию мониторинга имеют почти все сервисные программы.
На ARES 64K, N40P, появляется последовательный порт для мониторинга. Почитать о нём можно здесь: http://www.hardw.net/forum/arc...index.html
Я провёл исследования на N40P. Это ни разу не асинхронный интерфейс (читай - не терминал по компорту). Раз так, значит должен быть синхронным. Скорость порядка 1000 бит/с, поддаётся анализу через аудиовход. Длины импульсов скачут. На роль синхросигнала может претендовать сигнал INDEX, выведенный на соседний пин. Дальнейшие исследования вести не буду - времени тратит много, а толку мало.

Дополнительные файлы
N4onN40P.pdf - дока как пустить укороченный селфскан (только юзер-зона) на максторах. Когда-то лежала тут. Я попробовал её на CALYPSO - не получилось (возможно, я что-то напутал).
Разыскивается файл 6E0X.pdf с того же сайта.
Разыскивается китайская прога под названием selfscan.exe (осторожно, содержит троян!) Сведения о ней: https://forum.hddguru.com/viewtopic.php?f=1&t=5749

В процессе дополнения...
i8088
Advanced Member


Откуда: г. Баку, Азербайджан
Всего сообщений: 2132
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
30 янв. 2015
KALDUH, я заранее извиняюсь, если вопрос глупый, я вот что хотел узнать.

Можно ли на Seagate (конкретно серии 7200.9 и 7200.10) просто перенести сектора из G в P list
и пересчитать транслятор, не выполняя полный комплекс self-scan (даже с N4)?

Иногда попадаются диски с небольшим количеством remap (нерастущим длителеное время,
и в целом в хорошем состоянии). Собственно из-за плохой эксплуатации предыдущим
владельцем (плохой БП, контакты итп) эти remap-ы могут быть и ложными.

Просто хотелось бы избавиться от задеожек, связанных с позиционированием в резервную
зону, не делая полный комплекс тестирования.
KALDYH
Advanced Member
Технонекромант

Откуда: Кемерово
Всего сообщений: 2355
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
5 июня 2009
i8088, перечитав весь справочник по командам, я не нашёл там пересчёта транслятора. Отсюда могу сделать вывод, что возможности переноса G->P нет. Теоретически, её можно было бы найти, изучив часть скрипта селфскана, отвечающую за дефектоскопию, но это выше моих навыков.

i8088 написал:
[q]
Иногда попадаются диски с небольшим количеством remap (нерастущим длителеное время,
и в целом в хорошем состоянии). Собственно из-за плохой эксплуатации предыдущим
владельцем (плохой БП, контакты итп) эти remap-ы могут быть и ложными.
[/q]
Однако G-List можно очистить: сначала T>V4 - просмотр, затем T>i4,1,22 - очистка. Сам не пробовал, попробуйте.
i8088
Advanced Member


Откуда: г. Баку, Азербайджан
Всего сообщений: 2132
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
30 янв. 2015
KALDYH, большое спасибо!

Да, есть смысл попробовать очистить G list, тк есть вероятность, что remap-ы
ложные (диски скорее всего работали ранее с ужаснами блоками питания).
Подготовлю тестовый стенд с терминалом и проверю!

Позавчера приобрел Quantum AS 20.5 (я давно искал рабочий AS) с дикой
наработкой, было 2 записи в Glist и заметные задержки на них, при чтении
(точнее верификации) в MHDD. Но сканирование по физическим
параметрам не нашло проблем в них. Ну я просто средствами PC3K добавил
один из них в дефект лист, в результате все бывшие в Glist записи оказались
в Plist. Сделал erase, сейчас диск тестируется.

PS. Попутно выяснилось, что ASUS TR-DLS умеет UDMA на встроенном
IDE под DOS (те через int13), что редкость для плат Pentium3. Она еще и
LBA48 тоже поддерживает.
KALDYH
Advanced Member
Технонекромант

Откуда: Кемерово
Всего сообщений: 2355
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
5 июня 2009
Заканчиваем теоретический курс по максторам, а то мне пора переходить к практике.

Вопрос: По какому алгоритму считается контрольная сумма у модулей Maxtor?
Ответ: У DSP и Poker/Ardent по-разному. Вроде бы так:
[q]
для н40п, а может и для всех покеров
Можно в ФАК

WORD Max_CS(char *b,WORD len)
{
WORD csm=0;
WORD l=len/2-1;
_asm {
push esi
push ebx
push edx
xor edx,edx
xor eax,eax
mov esi,b
mov dx,1
mov ecx,l
mov ebx,csm
ll:
rol bx,1
xor bx,dx
lodsw
add bx,ax
loop ll

rol bx,1
xor bx,dx
neg bx

mov csm,ebx

pop edx
pop ebx
pop esi

}
return csm;
}
[/q]
[q]
а на ДСП подскажите
Если не ошибаюсь, то там просто суммирование, минимальная модификация кода
[/q]
[q]
K.C = FFFF-(X без последнего слова)
X - сумма по словно, с учетом что-
"Следует так же принять во внимание,что байты в слове
хранятся в виде младший байт_старший байт" © Хрюша
[/q]
В: А какой программой это можно сделать?
О: Была такая прога - PokerCRC.exe, кто найдёт - молодец.
UPD: По моей просьбе друг написал по двум вышеописанным алгоритмам две программки, для Poker и для DSP. Я проверил - обе считают правильно. Вот, пожалуйста: https://drive.google.com/file/...sp=sharing
Для пересчёта КС модуля просто перетащите бинарник на значок программы.

В: После манипуляций со служебкой (перенос G->P) винт ушёл в вечный BUSY, и ни сейфмод с лоадером, ни хот-свап ему не помогают!
О: Попробуйте замкнуть канал чтения - точки RDN и RDP на плате. Замыкать конденсатором примерно на 1000 пф, иначе есть риск спалить коммутатор! Порядок действий такой: замкнуть канал чтения - подать питание - слать лоадер.
Serg_T написал:
[q]
"Второй" транслятор SA зоны слетел.
Первопричина скорее всего аппаратная, глюки системной головы.
[/q]
В: Как отключить головки?
О: Пока не знаю, инструкция в разработке.

В:
[q]
На платке калипсы в КЗ погорел 8-ми ногий дип-транзюк обозначеный как Q500. Cудя по всему это формирователь -5 в банку. На нем маркировка 20PFS20V. Есть еще платка с калипсы, там на ентой деталюхе маркировка W503 4G. Есть платка от антенны плоской, там стоят полевики по выходам VCM и SD. Маркировка PHN210T. Вопрос в том - кого и как туда поставить взамен дохлятины?
[/q]
О:
_AND_ написал:
[q]
Это сборка полевиков. На ней собран преобразователь -5в.
Недавно тоже была калипса с дохлой 20PFS20V. Но у меня она выгорела вместе
с L7250E и дорожкой где-то внутри платы... Взял с другой калипсы - маркировка
тоже совершенно другая была, поменял - работает :) Так что можно менять.

Прозвони дорожку на землю на дроссель преобразователя -5в. У меня она тоже отгорела.
[/q]
Сталкивался с такой поломкой лично.

B: Maxtor CALYPSO издаёт на удивление громкие мелодичные звуки, похожие на телефонную трель!
О: Да, калипсы могут :) Залипли головки, клин шпиндельного двигателя или КЗ в его обмотках. Неремонтопригодно, в общем-то. Подноготная: http://nazyura.hardw.net/000004.htm (четвёртый слайд)

В: Что такое "служебка C" и "служебка A"?
О: Основная и альтернативная соответственно. А названы они так по отображаемой второй букве серийника. Поэтому "B" нету :) Хотя "служебкой B" иногда назвают группу альтернативных оверлеев в основной.

В: Что такое "группы критичности модулей" (A, B, и т.д.). В обсуждениях встретилось.
О: Читайте доки к PC3000. Я эту терминологию использовать не стал.

В:
[q]
Я на днях ARES боролся, заголовки поправил, бобик вроде ожил, начал по логике сканить, а там... Короче чем больше заносишь дефектов тем становиться хуже. С пустыми листами и то вроде картина получше.:(
[/q]
О: Отвечает Sable:
[q]
Дам один намек... (Больше - религия не позволяет):
При ОТСУТСТВИИ одного из оверлеев, точно не помню (какогото из 1х, но не 1С и 1В) при прогоне записью по всей поляне дефекты в дефект-листы НЕ заносятся, но транслятор пересчитывается накопителем вполне исправно.
После чего работает как часики. Помогает при описанной проблеме
[/q]
В:Calypso при попытке чтения дефектов в P-list выдает "Ошибка идентификации". При этом проверка служебки говорит что все "Ок".
О:
[q]
Это калипса.
Это асина утиля, которая калипсин п-лист не идентифицирует.
Кароче, ничего страшного.
[/q]
В: Можно ли на ATHENA/ROMULUS заменить плату DSP на Poker и наоборот?
О: Можно, народ делал. Только кодовые модули переписать соответствующей микропрограммой и у остальных КС пересчитать. Какие ещё модули кроме кодовых надо заменить - с ходу не скажу, надо думать.

В: У меня CALYPSO SATA!
О: Если есть какие-то трудности с этим - можно прикрутить плату PATA с такой же маркировкой процессора.

В: У меня бэды в служебке!
О: Скорее всего, это не бэды, а мусор в U_LIST00. Настоящие, с завода, бэды в служебной зоне у Maxtor - громадная редкость. Однако - если это действительно бэды, то дело плохо. Я столкнулся с невозможностью восстановить служебку на CALYPSO (которую сам же и попортил), где служебная зона содержала бэды. Запись проходит нормально, все модули читаются нормально, но винт при рестарте выпадает в альтернативку. Проверка поверхности при этом (еще на рабочей служебке) никаких бэдов не показывала. Предполагаю, что чтение выполняется с обходом дефектов, а запись - без. Ну, или есть еще какой-то неописанный подводный камень.

В: А у меня настоящие бэды в служебке нашлись при проверке поверхности служебной зоны! Как их в U_LIST добавить?
О: Никак :( Способов не найдено, диск на полку. Если есть Alt-SA и она цела - можно попробовать пустить селфскан из неё.

В: "SMPORT pissed off!"
О: http://forum.hddguru.com/viewtopic.php?t=6788&start=

В: Как вы и советовали, не стал скрывать дефекты в P-List, а скрыл в P-List и потом сделал перенос дефектов. Теперь винт висит! Что делать?
О: Обсуждение на тему:
[q]
Цитата: Делаем перенос из G в P. Висим Висим 5 часов. Висим 10 часов. Мне это надоеает и передёргиваю питание. После этого кроль дохнет полностью Стук, никакие лоадеры, игрушки с памятью и даже своп не могут их вывести из стука
DOS-лабой делал перенос видимо? Я ещё пару-тройку месяцев тому назад подобную ситуацию обрисовал. Тогда мне помог метод с замыканием входов проца(с комутатора) некоторой ёмкостью и подгрузкой нужного лодыря(сейчас знаю более цивилизованый метод). Отстучался он немного, потом ввалился в утиль . Убитым оказался в том числе и модуль DISK(ID1F). Поэтому конфигурацию головок крол неправильно понимал - вот и стук! Поправил я ему всё что померло, вобщем поднял крола.Больше не использую эту функцию на Калипсах(особо в DOS-лабе) и другим не советую - методы есть и получше.
p.s. Реанимация производилась уже WIN-лабой.
[/q]
[q]
А переносим как....утилей от АСЕ? Там был глюк на старых версиях, даже на зарегенных. Больше определенного колличества, винт именно впадал в транс. Я про перенос из Г листа в П лист. приходилось по немногу...по 50..проходило всегда.

Перенос из Г в П лист одной командой проходит. Так что если дефектов много скорее глюк прошивки/дефект поверхности СЗ в том месте куда пытается писать фирмваря. Мое мнение. Места под П лист достаточно - 139h(313) секторов.
На ДСП ромулусе 500 дефетов секунд за 30 переносило за один раз.
[/q]
[q]
У подопытного накопителя поверхность примерно 3 процент в начале диска и процентов 10 в конце убиты в хлам. Дефектов примерно 5 тысяч. Так вот примерно когда этой цифры достигаю, то накопитель глюковать начинает. Уходит в бизи при любых операциях с дефектами. Скрывать в п-лист не получается никаким способом. Вот я и подумал что может быть п-лист уже под завязку забит, отсюда и глюки. (ещё интересно, г - лист заполняется только до 636 дефектов и ни одним больше, хотя утилита пишет что г-лист на 3000 с чем то дефектов)
[/q]
В: Селфскан завис на 38 тесте! (в смысле, это ID теста, а не порядковый номер)
О: Я не знаю... Где-то читал об этом, но не сохранил.


Резюмируя: максторы (особенно последние, на новых процессорах) - очень мало раскопанные и недоизученные винты. После покупки Сигейтом все разработки был брошены как неперспективные. Плюс очень капризная и "сырая" микропрограмма. Самих винтов было относительно мало, по большей части они давно попередохли, так что нынче найти что-то по теме можно только в старых, 10-15-летней давности, обсуждениях.

Отлитчительные черты Maxtor:
1)Четыре разных ПЗУ из четырёх возможных источников: маска, флеш и два в служебке
2) Большое разнообразие (проще говоря, бардак) в микропрограмме, глючный код
3) Транслятор в нескольких модулях
4) На каждый чих нужен лоадер
5) Лоадер содержит адаптивы
KALDYH
Advanced Member
Технонекромант

Откуда: Кемерово
Всего сообщений: 2355
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
5 июня 2009
KALDYH написал:
[q]
Теоретически, её можно было бы найти, изучив часть скрипта селфскана, отвечающую за дефектоскопию, но это выше моих навыков.
[/q]
i8088, зато я нашёл подсказку, как найти неописанные команды: http://nazyura.hardw.net/Part02.htm (во 2 половине заметок)
Попробуйте, может, у вас получится.
i8088
Advanced Member


Откуда: г. Баку, Азербайджан
Всего сообщений: 2132
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
30 янв. 2015
KALDYH, спасибо!

Надо будет какой-нибудь полудохлый накопитель найти, чтобы почти исправный не запортить, по моему на работе должен быть. Немножко
освобожу рабочее мето от текущих дел и займусь!
KALDYH
Advanced Member
Технонекромант

Откуда: Кемерово
Всего сообщений: 2355
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
5 июня 2009
Не могу не похвастаться: выпросил в дар Maxtor D740X-6L квантумообразный. Изрядная редкость в наше время - они давно попередохли... Будет теперь на основе чего статью по квантумам дополнить.
<<Назад  Вперед>> Страницы: 1 2 3 4 5 6 7 * 8 9 10 11 .. 75 76 77 78 79 80
Печать
Полигон-2 »   Документация »   Програмный ремонт жёстких дисков HDD
RSS

0 посетителей просмотрели эту тему за последние 15 минут
В том числе: 0 гостей, 0 скрытых пользователей

Последние RSS
[Москва] LIQUID-Акция. Сливаются разъемы CF
МС7004 и 7004А на AT и XT
Пайка термотрубок
Проммать s478 PEAK 715VL2-HT ( Full-Size SBC)
Подскажите по 386 материке по джамперам.

Самые активные 5 тем RSS