Блог : http://collectingrd.kxk.ru/ . В ЛС прошу не писать, все сообщения MMTEMA@MAIL.RU
Попытался запустить под современнный linux программу HARD.SAV (точнее её исходник HARD.C). Конечно она у меня ничего не форматирует, но смотреть/редактировать таблицу разделов можно. Выглядит она так с дефолтными параметрами взятыми из HARD.MNU:
Т.е. этот винт на 22Мбайт разбит на 6-ть разделов по 3.6М (HD0-HD5) и два по 270К (HD6-HD7). У HD0 стоит признак "нулевого диска" - его первый сектор занят под таблицу разделов. У HD1 признак холодной загрузки, а у HD2 - горячей загрузки. Все диски разрешены к использованию (признак ON) и ни один из них не находится в состоянии readonly (RON).Код:Disk global parameters Hard disk formater ╔═════════════╦═══════╦═════════╦════════╦═══════════╦══════╗ ║ Cylinders ║ Heads ║ Sectors ║ Size ║ Precomp. ║ GAP3 ║ ╠═════════════╬═══════╬═════════╬════════╬═══════════╬══════╣ ║ 615 ║ 4 ║ 18 ║ 44280 ║ 200 ║ 16 ║ ╚═════════════╩═══════╩═════════╩════════╩═══════════╩══════╝ ╔═══╦═════════════╦═══════╦═════════╦════════╦═════════════════════════════╗ ║ № ║ Cylinders ║ Heads ║ Sectors ║ Size ║ Flags ║ ║ ║ from ║ # ║ 0 ║ # ║ 0 ║ # ║ blocks ║ ON ║ RON ║ Spc ║ Cld ║ Wrm ║ ╠═══╬══════╬══════╬═══╬═══╬════╬════╬════════╬═════╬═════╬═════╬═════╬═════╣ ║ 0 ║ 0 ║ 100 ║ 0 ║ 4 ║ 0 ║ 18 ║ 7200 ║ + ║ - ║ + ║ - ║ - ║ ║ 1 ║ 100 ║ 100 ║ 0 ║ 4 ║ 0 ║ 18 ║ 7200 ║ + ║ - ║ - ║ + ║ - ║ ║ 2 ║ 200 ║ 100 ║ 0 ║ 4 ║ 0 ║ 18 ║ 7200 ║ + ║ - ║ - ║ - ║ + ║ ║ 3 ║ 300 ║ 100 ║ 0 ║ 4 ║ 0 ║ 18 ║ 7200 ║ + ║ - ║ - ║ - ║ - ║ ║ 4 ║ 400 ║ 100 ║ 0 ║ 4 ║ 0 ║ 18 ║ 7200 ║ + ║ - ║ - ║ - ║ - ║ ║ 5 ║ 500 ║ 100 ║ 0 ║ 4 ║ 0 ║ 18 ║ 7200 ║ + ║ - ║ - ║ - ║ - ║ ║ 6 ║ 600 ║ 15 ║ 0 ║ 2 ║ 0 ║ 18 ║ 540 ║ + ║ - ║ - ║ - ║ - ║ ║ 7 ║ 600 ║ 15 ║ 2 ║ 2 ║ 0 ║ 18 ║ 540 ║ + ║ - ║ - ║ - ║ - ║ ╚═══╩══════╩══════╩═══╩═══╩════╩════╩════════╩═════╩═════╩═════╩═════╩═════╝
Параметр GAP3 кажется маловатым (это сколько байтов заполнителей после данных сектора должен контроллер вставляет). В описании W1010-5 указывается, что он зависит от нестабильности мотора привода и при отсутствии интерливига номеров у секторов должен быть не меньше 25 (согласно описания WD2010 - не меньше 18).
Кроме того, я извлёк из HARD.225 таблицу разделов и подсунул его, будто это реальный диск так его возвращает. Оказалось там другая рабивка по размерам (но общий размер тот же - используется весь объём диска):
О, параметр прекомпенсации удвоили - теперь с 400-й дорожки должны уменьшать ток записи (при текущей разбивке это в разделе HD7, а в дефолтной из HARD.MNU было с самого начала HD2).Код:Disk global parameters Hard disk formater ╔═════════════╦═══════╦═════════╦════════╦═══════════╦══════╗ ║ Cylinders ║ Heads ║ Sectors ║ Size ║ Precomp. ║ GAP3 ║ ╠═════════════╬═══════╬═════════╬════════╬═══════════╬══════╣ ║ 615 ║ 4 ║ 18 ║ 44280 ║ 400 ║ 16 ║ ╚═════════════╩═══════╩═════════╩════════╩═══════════╩══════╝ ╔═══╦═════════════╦═══════╦═════════╦════════╦═════════════════════════════╗ ║ № ║ Cylinders ║ Heads ║ Sectors ║ Size ║ Flags ║ ║ ║ from ║ # ║ 0 ║ # ║ 0 ║ # ║ blocks ║ ON ║ RON ║ Spc ║ Cld ║ Wrm ║ ╠═══╬══════╬══════╬═══╬═══╬════╬════╬════════╬═════╬═════╬═════╬═════╬═════╣ ║ 0 ║ 0 ║ 36 ║ 0 ║ 4 ║ 0 ║ 18 ║ 2592 ║ + ║ - ║ + ║ - ║ - ║ ║ 1 ║ 36 ║ 18 ║ 0 ║ 4 ║ 0 ║ 18 ║ 1296 ║ + ║ - ║ - ║ + ║ - ║ ║ 2 ║ 54 ║ 72 ║ 0 ║ 4 ║ 0 ║ 18 ║ 5184 ║ + ║ - ║ - ║ - ║ + ║ ║ 3 ║ 126 ║ 18 ║ 0 ║ 4 ║ 0 ║ 18 ║ 1296 ║ + ║ - ║ - ║ - ║ - ║ ║ 4 ║ 144 ║ 200 ║ 0 ║ 2 ║ 0 ║ 18 ║ 7200 ║ + ║ - ║ - ║ - ║ - ║ ║ 5 ║ 144 ║ 200 ║ 2 ║ 2 ║ 0 ║ 18 ║ 7200 ║ + ║ - ║ - ║ - ║ - ║ ║ 6 ║ 344 ║ 271 ║ 0 ║ 2 ║ 0 ║ 18 ║ 9756 ║ + ║ - ║ - ║ - ║ - ║ ║ 7 ║ 344 ║ 271 ║ 2 ║ 2 ║ 0 ║ 18 ║ 9756 ║ + ║ - ║ - ║ - ║ - ║ ╚═══╩══════╩══════╩═══╩═══╩════╩════╩════════╩═════╩═════╩═════╩═════╩═════╝ U - Update (Занести таблицу в контроллер) Q - Quit (Выход) G - Get (Взять таблицу из контроллера) W - Write (Записать таблицу на диск) S - Size (Вычислить размеры) ←↓↑→ - Перемещение указателя F - Format (Форматировать раздел) Space - Измение состояния флага
Размеры разделов такие: HD0 - 1.3М, HD1 и HD3 - 648K, HD2 - 2.5M, HD4 и HD5 - 3.6М, HD6 и HD7 - 4.8M (с учётом, что на HD6 были игры - это правильное решение увеличить этот раздел в 18 раз)
>Параметр GAP3 кажется маловатым
Скорее всего это патамучто авторам хотелось 18 секторов вместо 17.
>параметр прекомпенсации удвоили - теперь с 400-й дорожки должны уменьшать ток записи
200 и 400? Артиллеристы это "вилкой" называют. По паспорту 300 (ftp://ftp.seagate.com/techsuppt/mfm/st225.txt)
Хотя смысла никакого нет, вроде прекомпенсация в схеме Неона аппаратно не поддержана.
Последний раз редактировалось dk_spb; 05.12.2018 в 13:06.
Но самая жесть в том, как они там прописывают номера секторов на жестком диске. Казалось бы пропиши номера секторов 0, 1, 2,.. 17 по всему диску, но нет - это не наш путь. Наш путь курильщика такой:
HD0 => 255, 1, 2, 3,.. 17
HD1 => 32, 33, 34, 35,.. 49
HDn => n*32+0, n*32+1, n*32+2,.. n*32+17
Да, это круто, если вылетить за размер, допустим, HD1 то контроллер никогда не найдёт секторов на диске, с номерами секторов, которые используются в разделе HD1...
Фобию секторов с номером ноль тоже можно понять...
Но,.. но как это развидеть?..
>Но,.. но как это развидеть?..
AND 0x1F не подойдёт?
- - - Добавлено - - -
>Наш путь курильщика такой:
Ну решили они что 8 бит на номер сектора много и оставили 5 бит. В чем сложность-то?
troosh, я сегодня получаю Nec D3142 MFM, как мне его размечать имеющимися средствами?
Код:D 3 1 4 2 NEC NO MORE PRODUCED Native| Translation ------+-----+-----+----- Form 3.5"/HH Cylinders 642| | | Capacity form/unform 44/ MB Heads 8| | | Seek time / track 25.0/ ms Sector/track 17| | | Controller MFM / ST506 Precompensation 128 Cache/Buffer KB Landing Zone 664 Data transfer rate 0.625 MB/S int Bytes/Sector 512 0.625 MB/S ext
Последний раз редактировалось Woland; 05.12.2018 в 15:04.
Возрождение БК0011М: pk-fpga.ru, forum.pk-fpga.ru
Продажа электронных компонентов >>тут<<
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Самый простой способ, как здесь уже предлалаги, - отформатовать при помощи HARD.225 (70М просто не используются),
Ну, либо можно попробовать так,.. запускаешь HARD.SAV (есть на образах дискет SOUZ-NEON_ASP_1992_1_, SOUZ-NEON_SYSTEM_0B_IMG, SOUZ-NEON_HD0_KBD_PRC_LZ-SAV_, SOUZ-NEON_HD3_MCC_HD4_UTILIT_, SOUZ-NEON_INSTALL_, Work) и:
- правишь геометрию диска 642/8, ставишь precomp=128
- в столбцах Heads везде прописываешь: "0 8".
- Цилиндры прописываешь так:
- Нажимаешь "S" чтобы размеры пересчитались.Код:╔═════════════╦═══════╦═════════╦════════╦═══════════╦══════╗ ║ Cylinders ║ Heads ║ Sectors ║ Size ║ Precomp. ║ GAP3 ║ ╠═════════════╬═══════╬═════════╬════════╬═══════════╬══════╣ ║ 642 ║ 8 ║ 18 ║ 92448 ║ 128 ║ 16 ║ ╚═════════════╩═══════╩═════════╩════════╩═══════════╩══════╝ ╔═══╦═════════════╦═══════╦═════════╦════════╦═════════════════════════════╗ ║ № ║ Cylinders ║ Heads ║ Sectors ║ Size ║ Flags ║ ║ ║ from ║ # ║ 0 ║ # ║ 0 ║ # ║ blocks ║ ON ║ RON ║ Spc ║ Cld ║ Wrm ║ ╠═══╬══════╬══════╬═══╬═══╬════╬════╬════════╬═════╬═════╬═════╬═════╬═════╣ ║ 0 ║ 0 ║ 50 ║ 0 ║ 8 ║ 0 ║ 18 ║ 7200 ║ + ║ - ║ + ║ - ║ - ║ ║ 1 ║ 50 ║ 25 ║ 0 ║ 8 ║ 0 ║ 18 ║ 3600 ║ + ║ - ║ - ║ + ║ - ║ ║ 2 ║ 75 ║ 100 ║ 0 ║ 8 ║ 0 ║ 18 ║ 14400 ║ + ║ - ║ - ║ - ║ + ║ ║ 3 ║ 175 ║ 25 ║ 0 ║ 8 ║ 0 ║ 18 ║ 3600 ║ + ║ - ║ - ║ - ║ - ║ ║ 4 ║ 200 ║ 150 ║ 0 ║ 8 ║ 0 ║ 18 ║ 21600 ║ + ║ - ║ - ║ - ║ - ║ ║ 5 ║ 350 ║ 150 ║ 0 ║ 8 ║ 0 ║ 18 ║ 21600 ║ + ║ - ║ - ║ - ║ - ║ ║ 6 ║ 500 ║ 100 ║ 0 ║ 8 ║ 0 ║ 18 ║ 14400 ║ + ║ - ║ - ║ - ║ - ║ ║ 7 ║ 600 ║ 42 ║ 0 ║ 8 ║ 0 ║ 18 ║ 6048 ║ + ║ - ║ - ║ - ║ - ║ ╚═══╩══════╩══════╩═══╩═══╩════╩════╩════════╩═════╩═════╩═════╩═════╩═════╝
- Нажимаешь "U" и "W" - таблицу раздлелов записать в драйвер и на винт.
- Затем курсором проходишь по каждой из строк 0..7 и там жмешь клавишу "F" для форматирования каждого из разделов.
P.S. Ну, я это как-то так понимаю, могу конечно в чём-то ошибаться и/или могут быть сюрпризы, вроде того, что с 8-ми головами винты никто из разработчиков этой машины не проверял в работе.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)