ARES C64K: слетели P-List и DMCS

Добрый день!

Дали на ремонт комп... Сдуру включил в BIOSе SMART, после чего винт Maxtor Fireball 3 стал определяться как ARES C64K. Данные винта:

Maxtor Fireball 3
2F030J0310211
VAM51JJ0
KMCA
A8FFA (над IDE-разъемом)

Посторонних звуков нет, только двигатель шумноват (звенит).

Нужна инфа с винта (архив фоток хозяев этого компа). Ремонтника нашел (hdd-911.com), но пока есть надежда, что сделаю сам. Понимаю, что надежнее отдать в ремонт, но пока ищу инфу по форумам, на винт ничего не пишу...

PC3000 v.14, pcmx_pkr v.2.01 (более свежей не нашел, кстати, может кто поделится??)

Проверка служебки:

  # PN  UBA Size Rd ChkSum Id           Comment
--------------------------------------------------------------------------------
 20 18 0029 0004  -    -    -            AT_PDL - P-List
 25 1D 02A0 0002  -    -    -            DMCS - таблица кэширования
 35 30 018B 0001  -    -    -            SMART Attributes - атрибуты SMART
 41 41 018D 0002  -    -    -            
 45 45 018F 000C  -    -    -            
 68 63 018C 0001  -    -    -            Копия  SMART атрибутов
 77 70 0356 0001  -    -    -            SMART Summary Log

Соотв. этим модулям файлы имеют расширение .BAD. В группах модулей соотв. места заполнены строкой "BAD!", причем в обоих копиях (в DMCS - оба сектора, в AT_PDL - первые 4 сектора BAD, потом нули). Вычитывание с игнорированием ошибок ничего не дает.

Еще есть модули (кроме этого списка), у которых не в порядке только CRC.

Оверлеи в порядке. Дефектов в служебке нет. Тест записи в служебку проходит (смещение: 0). Ресурсы с винта предварительно слил.

Почитав форумы и доки, пришел к выводу, что нужно восстановить только AT_PDL и может быть DMCS. Определил следующую последовательность действий:

1. Запускаем DOS.
2. Подаем питание на винт (перемычка установлена в safemode).
3. Запускаем эмулятор, затем pcmx_pkr.exe.
4. Загружаем лоадер (в режиме ПЗУ+модули).
5. "Стандартный режим".
6. Прописываем модули AT_PDL и DMCS от другого винта.
7. Выходим из программы, выключаемся, запускаем все заново (пп. 1-5).
8. Запускаем пересчет транслятора. Модули транслятора (в т. ч. AT_PDL) будут пересобраны из 33-го модуля (он в порядке).

Вопрос 1. Это правильная последовательность действий? Может чего-то не хватает, или наоборот лишнее? Данные на винте останутся?

Вопрос 2. Могу ли я использовать текущий лоадер (ес-но, это лоадер от другого винта)? Или прохождение теста записи служебки однозначно показывает, что лоадер подходит?

Вопрос 3. Меня смущает, что PC3000 выдает, похоже, не полную информацию о винте.
Верхняя строка. MODEL: MaxtorARES C64K VAM51JJ0 CYL:-1 HEAD:1 SEC:0
Нижняя строка. STATE: DONE: LBA: ERRS: (все пусто)
В строке флагов "красных" битов нет.
Это нормально?

P.S. Вчера угробил свой старый Calypso 6Y080L0, на котором экспериментировал. Кушает некоторые лоадеры, но в них (в тех, что пробовал) не идет тест служебки, проверка служебки показывает нечитаемость большинства модулей, а также ПЗУ и оверлеев. Ресурсы с него все есть, но свой лоадер тоже почему-то не кушает... Ес-но, инфы на нем ценной нет, но теперь вдвойне аккуратен, выверяю каждый шаг.

Цитата:

Тогда может запишете и DMCS чужой (пересчитается ли он тоже, или только AT_PDL)?

Записал AT_PDL чужой, выкл/вкл - данные не видны. Пересчитал транслятор - данные видны и на первый взгляд (открыл несколько текстовых файлов) - целые.
DMCS пока не пробовал.
А вообще-то лучше всего это добро из копий восстановить. Есть группа data copy 2. Если эта группа считалась без ошибок, эти модули можно из неё выкусить любым hex редактором.
Более просто, но более стрёмно - залить эту группу прямо поверх data copy 1...

Чужой DMCS ни на что не повлиял.

Цитата:
Записал AT_PDL чужой, выкл/вкл - данные не видны. Пересчитал транслятор - данные видны и на первый взгляд (открыл несколько текстовых файлов) - целые.
Отлично!

(апдейт- пока я писал сообщение, вы уже ответили:) )

Цитата:
Чужой DMCS ни на что не повлиял.

Т.е. с чужим DMCS винт нормально работает, данные видны?

И еще тогда попрошу вас глянуть:

1. Как у вас PC3000 показывает информацию о винте
(Верхняя строка. MODEL:? CYL:? HEAD:? SEC:?
Нижняя строка. STATE:? DONE:? LBA:? ERRS:?)

2. Если прописать какой-то модуль, он сохранится в обе копии данных, или только в одну (в какую)?

Цитата:
А вообще-то лучше всего это добро из копий восстановить. Есть группа data copy 2. Если эта группа считалась без ошибок, эти модули можно из неё выкусить любым hex редактором.
В том то и дело, что состояние проблемных модулей (не читаются - весь модуль, или отдельные сектора) одинаково в обеих копиях. Вообще-то, это показалось мне странным... Возможно, действительно глючит неродной лоадер - попробую вычитать под родным.

Цитата:
Более просто, но более стрёмно - залить эту группу прямо поверх data copy 1...
Думаю, лучше не надо: я сравнивал 2 копии - есть отличия (помимо проблемных модулей).

Цитата:

Т.е. с чужим DMCS винт нормально работает, данные видны?

Да. Модуль - каталог какого-то кеша. Может не так сильно критичен.

Цитата:

И еще тогда попрошу вас глянуть:

1. Как у вас PC3000 показывает информацию о винте
(Верхняя строка. MODEL:? CYL:? HEAD:? SEC:?
Нижняя строка. STATE:? DONE:? LBA:? ERRS:?)

Верхняя строка:
MODEL: Maxtor 2B020H1 WAH21PB0 CYL: 49801 HEAD:1 SEC:0
От нижней строки толку нет. Она нужна только в течении теста.

Цитата:

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

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

Вобщем, я взял 5 лоадеров, что у меня были для этого винта, и из-под каждого создал "родной" лоадер. Т.е. получилось 5 "родных", из которых грузится только 1. Я загрузил этот лоадер и прежде всего провел тест записи в служебку. Тест прошел. Затем я, на всякий случай запустив все поновой, считал модули, память, структуру служебки, G-list и P-list...

Чуда не случилось - не читаются те же 7 модулей, и в обеих копиях.

Настораживает, что и с этим лоадером CYL (в верхней строке) = -1. Запускаюсь как обычно: DOS, потом питание винта (винт - в safemode), эмулятор+pcmx_pkr, гружу лоадер (ПЗУ+память), стандартный режим.

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

Можно

А почему же он тогда показывает "CYL: -1"? Потому что есть доступ только к служебке (которая на "отрицательных" дорожках)?

Цитата:

А почему же он тогда показывает "CYL: -1"?

-1 = FFFFh - ошибка. По логике не работает, вот и ошибка. Когда всё восстановишь и запустишь в нормальном режиме, тогда и будет нормальное кол-во цилиндров.

Alexander_G, а вы перед запуском пересчета транслятора, я так понимаю, НЕ чистили P-list & G-list? Там просто при запуске выдается запрос - чистить или нет?

Больше никаких запросов там нет?

Заодно тогда спрошу еще кое-что и расскажу новости... Прописал я ему все битые модули, кроме 41 и 45 (их назначение неизвестно). Все прописалось нормально, в обе копии. Только у AT_PDL неверная CRC (видимо, из-за несоответствия с U_LIST). В рабочем режиме винт по-прежнему определяется как ARES C64K. Может из-за CRC, может из-за битых 41 и 45...

План действий такой:
1. Пересчитываю транслятор.
2. Если все еще будет определяться как ARES C64K, прописываю модули 41 и 45 от другого винта.

У вас после прописывания чужого AT_PDL у него тоже была неверная CRC? Запускать пересчет транслятора можно?

Не уверен, когда прописывать 41 и 45 - до пересчета или после? Все-таки назначение этих модулей неизвестно. Посмотрел их содержимое от другого винта - какие-то данные там есть (т.е. там не просто нули)...

Цитата:

Alexander_G, а вы перед запуском пересчета транслятора, я так понимаю, НЕ чистили P-list & G-list? Там просто при запуске выдается запрос - чистить или нет?

Больше никаких запросов там нет?

НЕ чистить, конечно. Для этого на этот запрос надо не отвечать нет/да, а просто нажать Esc. Глюк такой.
Запросов больше нет. Скажет - успешно пересчитан.

AT-PDL лей любой. Лишь бы был. Если брать из нормального комплекта - КС должна быть нормальной. На то и рассчитана метода.

Цитата:

Не уверен, когда прописывать 41 и 45 - до пересчета или после? Все-таки назначение этих модулей неизвестно. Посмотрел их содержимое от другого винта - какие-то данные там есть (т.е. там не просто нули)...

После.
Если 41-й и 45-й не описаны в доке, возможно это не критичные модули.

Отправить комментарий

Содержание этого поля является приватным и не предназначено к показу.
  • Разрешённые HTML-теги: <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <img>
  • You can use BBCode tags in the text. URLs will automatically be converted to links.

Подробнее о форматировании текста

Антибот - введите цифру.
Ленты новостей