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

Полигон-2

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

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

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

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

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

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

<<Назад  Вперед>> Страницы: 1 2 3 4 5 ... 37 38 39 40 41 42 43 44 45 .. 75 76 77 78 79 80
Печать
 
i8088
Advanced Member


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


Ссылка


Дата регистрации на форуме:
30 янв. 2015
strelec написал:
[q]
В слитом дампе по адресам D8,xxxx;D9,xxxx нет такой crc.
[/q]
Так и не должно быть, тк это вычисленная программой CRC


KALDYH написал:
[q]
Удачи!
[/q]
Присоединяюсь к пожеланиям! У меня самого с механикой вообще плохо,
в разных самоделках самым сложным бывает изготовление корпуса, а
про вскрытие HDD, снятие БМГ и чистку головок даже подумать страшно!
strelec
Newbie


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


Ссылка


Дата регистрации на форуме:
3 апр. 2018
i8088 написал:
[q]
Так и не должно быть, тк это вычисленная программой CRC
[/q]
Я предполагал,что crc хранится в самом файле(дампе и тп) ,рассчитывается программой жд,сравнивается для определения целостности файла.
Я исходил из того,например :
T>r
Disk Code Revision # .137 CRC ==> 6713

И в файле CERT как раз есть эта crc в 1-ых двух байтах (в обр. последовательности).Причем встречается в данном случае единожды.Что похоже на правду.
i8088
Advanced Member


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


Ссылка


Дата регистрации на форуме:
30 янв. 2015
strelec написал:
[q]
И в файле CERT как раз есть эта crc в 1-ых двух байтах (в обр. последовательности).Причем встречается в данном случае единожды.Что похоже на правду.
[/q]
Тогда она должна храниться в той части ПЗУ, которая не учавствует в подсчете CRC, те
не все ПЗУ будет охвачено CRC, тк практически очень сложно так подогнать данные,
чтобы CRC в самом файле хранилась, и та же CRC получалась при подсчете.
По отношению к образу ПЗУ такой практики не припоминается.
А попробуйте поискать эту CRC на скопированных с диска треках
strelec
Newbie


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


Ссылка


Дата регистрации на форуме:
3 апр. 2018
i8088 написал:
[q]
А попробуйте поискать эту CRC на скопированных с диска треках
[/q]
Я не знаю ,что это за адресное пространство:
1>Dxx,xxxx.Это гигантский массив.По адресу D8,0000-D9,FFFF ,согласно скрипту лежит ПЗУ.
Причем все эти адреса D00,0000-DFF,FFFF(000000h-FFFFFFh) читаются.
Если даже и найти crc ,алгоритм ее расчета сложно вычислить(как тут говорили,ida вам в помощь :))
i8088
Advanced Member


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


Ссылка


Дата регистрации на форуме:
30 янв. 2015
Если можно переставлять байты в карте голов, и потом работает, может эта CRC не особо и
критична? Те программа имеет возможность подсчитать CRC для ПЗУ, но она возможно и не
испульзуется. Это так, предположения...
strelec
Newbie


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


Ссылка


Дата регистрации на форуме:
3 апр. 2018
i8088 написал:
[q]
Если можно переставлять байты в карте голов, и потом работает, может эта CRC не особо и
критична? Те программа имеет возможность подсчитать CRC для ПЗУ, но она возможно и не
испульзуется. Это так, предположения...
[/q]
Вполне возможно,надо пробовать.
SRUTSSSSSSSS80
Newbie


Всего сообщений: 10
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
11 апр. 2018
i8088 написал:
[q]
Если можно переставлять байты в карте голов
[/q]
просто правим карту голов в ПЗУ и APP и всё, считать CRC не нужно...я зачем примеры приводил от
это касается 7200,7 и потом можно рубить командой.
Ресурсы от SD
i8088
Advanced Member


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


Ссылка


Дата регистрации на форуме:
30 янв. 2015
В докуметации от BVG есть кое-какое описание команд на уровне A>.

Там встречается термины LPL (logical cyl, physical head, logical sector) и PCHS (здесь все
ясно). Диск вместо PCHS использует LPP (logical cyl, physical head, physical sector)
[q]
Cx,y Convert LBA to LPL and display to screen.
x - upper word of >16 bit address
y - lower word >16 bit address or the 16 bit address
Dx,y Convert LBA to PCHS and display to screen.
x - upper word of >16 bit address
y - lower word >16 bit address or the 16 bit address
[/q]
Диск однако сообщает несколько иначе, так

A>C30,AA
LBA 003000AA = LPL 000002DB.02.027A
A>D30,AA
KBA 003000AA = LPP 000002DB.2.0495
A>


Те, полный физический цилиндр диск не сообщает, но отдает физическую головку и сектор. Функции эти видимо не проверяют корректность ввода, и при вводе запредельных LBA дают
"интересные" номера.

В описании видимо ошибка, так команда >D> конвертирует не LBA->PCHS, а KBA->LPP

Обратные команды:
[q]
cx,y,z Convert LPL to LBA and display to screen.
x – Logical Cylinder
y – Physical Head
z – Logical Sector
dx,y,z Convert PCHS to LBA and display to screen.
x – Physical Cylinder
y – Physical Head
z – Physical Sector
[/q]
Примеры:

A>c2000,1,50
LBA 023A7516 = LPL 00002000.01.0050
A>d2000,1,50
KBA 023A790C = LPP 00002000.1.0050
A>


В описании аналогичная ошибка, по команде >d> конвертируем не PCHS->LBA, а LPP->KBA (или так только у GALAXY?).

Кстати, как правильно расшифровывается KBA - K??? Block Address ?


Если конвертировать LPP в KBA, и если сектор в дефект листе, то преобразование дает один
и тот же KBA для дефектного и соседнего с ним сектора. В случае группы дефектов, это
распространяется на всю группу.

Примеры.

1. В дефект-листе имеем 00107.1.1F0 001 (1 дефектный сектор на треке 107, head 1, sec 1f0)

A>d107,1,1f0
KBA 00117029 = LPP 00000107.1.01F0
A>d107,1,1f1
KBA 00117029 = LPP 00000107.1.01F1
A>d107,1,1f2
KBA 0011702A = LPP 00000107.1.01F2
A>


2. В дефект-листе имеем 0102E.2.28F 003 (3 дефектных сектора на треке 102E, head 2,
начальный сектор блока дефектов 28F)

A>d102e,2,28f
KBA 011200D2 = LPP 0000102E.2.028F
A>d102e,2,290
KBA 011200D2 = LPP 0000102E.2.0290
A>d102e,2,291
KBA 011200D2 = LPP 0000102E.2.0291
A>d102e,2,292
KBA 011200D2 = LPP 0000102E.2.0292
A>d102e,2,293
KBA 011200D3 = LPP 0000102E.2.0293
A>d102e,2,294
KBA 011200D4 = LPP 0000102E.2.0294
A>



Я предположил, что этим можно воспользоваться для проверки, реально ли "работает" наш
перенесенный сектор в дефект листе. Проверим наш перенесенный сектор 10B76.2.228

A>d10b76,2,228
KBA 10D8BAC1 = LPP 00010B76.2.0228
A>d10b76,2,229
KBA 10D8BAC1 = LPP 00010B76.2.0229
A>d10b76,2,22A
KBA 10D8BAC2 = LPP 00010B76.2.022A
A>d10b76,2,22B
KBA 10D8BAC3 = LPP 00010B76.2.022B
A>

Из этого можно предположить, что транслятор работает с нашим "перенесенным" сектором должным
образом.

Почему же появились два дефекта UNC, разнесенные друг от друга?
Один бывший UNC LBA я сохранил, это 282638848, те 10D8BA00

A>D10d8,ba00
KBA 10D8BA00 = LPP 00010B76.2.0167


Почему-то он расположен до сектора 288, даже с учетом съезжания транслятра на один сектор (хотя оно должно быть после сектора 288), мне непонятно.

Ну а второй UNC скорее всего первый годный сектор после бывшего последнего сектора трека, он
как раз должен попасть на первый ранее не использованный резервный сектор на треке, и на нем
видимо верного ECC не было, и необходимо выполнить запись, для правильного расчета ECC.

Таким образом, после выполнения A>P необходимо стирание поверхности.

Интересно проверить команды преобразований с секторами в G-лист, должен быть уход в резервную
зону
. С remap-ами у меня осталась одна TONKA2 160GB, когда скопирую с нее информацию,
попробую проверить.
SRUTSSSSSSSS80
Newbie


Всего сообщений: 10
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
11 апр. 2018
LEVEL A COMMANDS: Niwot Read/Write LBA Commands (FULLSLIP)
Оффтопик: Оффтопик: Command Description
Cx,y Convert LBA to LPL and display to screen.
x - upper word of >16 bit address
y - lower word >16 bit address or the 16 bit address

Dx,y Convert LBA to PCHS and display to screen.
x - upper word of >16 bit address
y - lower word >16 bit address or the 16 bit address

Ex,y Display Log(s)
See /2 E for further detail.
Mx,y Set GrandB Test ports
x – Test port to set
y – Value to set it to ( 0xff will disable the port )
Q,x Write/Read/Read LBA.
x – # of sectors to read
default - # of unslipped sectors on this LPL – this sector #
(rest of track , no wrap )
R,x Read LBA Command.
x – # of sectors to read
default - # of unslipped sectors on this LPL – this sector #
(rest of track , no wrap )
Sx,y,z Seek LBA Command.
x - upper word of >16 bit address
y - lower word >16 bit address or the 16 bit address
z - Track follow offset. Signed 16 bit integer
W,x Write LBA Command.
x – # of sectors to read
default - # of unslipped sectors on this LPL – this sector #
(rest of track , no wrap )
Yx,y,za Show/Set Retry Controls
See /2 Y for further detail.
cx,y,z Convert LPL to LBA and display to screen.
x – Logical Cylinder
y – Physical Head
z – Logical Sector
dx,y,z Convert PCHS to LBA and display to screen.
x – Physical Cylinder
y – Physical Head
z – Physical Sector

lx,y,z Display # of unslipped sectors for LPL to screen.
x – Logical Cylinder
y – Physical Head
z – Logical Sector
SRUTSSSSSSSS80
Newbie


Всего сообщений: 10
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
11 апр. 2018
Вот к примеру на ST3320620A
KBA 00000000 = LPP 00000018.0.0000
KBA 00100000 = LPP 000000B9.0.0063
KBA 00200000 = LPP 0000015A.0.0088
KBA 00300000 = LPP 0000021D.1.0040
KBA 00400000 = LPP 000002BA.1.002D
KBA 00500000 = LPP 000003AC.2.054F
KBA 00600000 = LPP 00000451.2.03A5
KBA 00700000 = LPP 000004F6.2.01F4
KBA 00800000 = LPP 00000569.3.0047
KBA 00A00000 = LPP 0000069C.3.0104
KBA 00C00000 = LPP 00000887.2.0100
KBA 00E00000 = LPP 000009D2.2.0461
KBA 01000000 = LPP 00000ACC.1.02D8
KBA 02000000 = LPP 0000167B.2.0344
КBA это логические сектора (LBA) . LPP физические -в координатах цилиндр.голова.сектор в шестнадцатеричном представлении естественно.
<<Назад  Вперед>> Страницы: 1 2 3 4 5 ... 37 38 39 40 41 42 43 44 45 .. 75 76 77 78 79 80
Печать
Полигон-2 »   Документация »   Програмный ремонт жёстких дисков HDD
RSS

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

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

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