Приложение 1
Структура описателя устройства (0 блок - 0 сектор на 0-й дорожке диска) в системе до 22.I.1997 г.
|
Смещение |
Длина |
Комментарии |
|
0 |
2 |
Резерв |
|
2 |
8 |
Имя устройства |
|
10 |
3 |
Признак iS-DOS: "DSK" |
|
13 |
5 |
Резерв |
|
18 |
2 |
Размер устройства (в блоках по 256 байт) |
|
20 |
2 |
Номер 0-го блока главного каталога |
|
22 |
1 |
Количество цилиндров на устройстве |
|
23 |
1 |
Тип диска. Биты(0/1): 0 - 40/80 дорожек 1 - 1/2 стороны |
|
24 |
1 |
Размер сектора: 1/2/4: 256/512/1024 байт |
|
25 |
1 |
Количество секторов на дорожке |
|
26 |
1 |
Резерв |
|
27 |
1 |
Контрольная сумма описателя ????_dos.sys |
|
28 |
2 |
Резерв |
|
30 |
2 |
Дата (см. ПРИЛОЖЕНИЕ 23) |
|
32 |
32 |
Описатель ????_dos.sys1 |
|
64 |
16 |
Таблица номеров секторов на дорожке |
|
1В описателе is_dos.sys по смещению +22 лежит значение вектора прерывания в системе. Используется при загрузке системы. |
||
Приложение 1а
Структура описателя устройства (0 блок - 0 сектор на 0-й дорожке диска) в системе 22.I.1997 г. и новее
|
Смещение |
Длина |
Комментарии |
|
0 |
2 |
Резерв |
|
2 |
11 |
Имя устройства |
|
13 |
3 |
Признак iS-DOS: "DSK" |
|
16 |
2 |
Резерв |
|
18 |
2 |
Размер устройства (в блоках по 256 байт) |
|
20 |
2 |
Номер 0-го блока главного каталога |
|
22 |
1 |
Количество цилиндров на устройстве |
|
23 |
1 |
Тип диска. Биты(0/1): 0 - 40/80 дорожек 1 - 1/2 стороны |
|
24 |
1 |
Размер сектора: 1/2/4: 256/512/1024 байт |
|
25 |
1 |
Количество секторов на дорожке |
|
26 |
1 |
Резерв |
|
27 |
1 |
Контрольная сумма описателя ????_dos.sys |
|
28 |
2 |
Резерв |
|
30 |
2 |
Дата (см. ПРИЛОЖЕНИЕ 23) |
|
32 |
32 |
Описатель ????_dos.sys1 |
|
64 |
16 |
Таблица номеров секторов на дорожке |
|
1В описателе is_dos.sys по смещению +22 лежит значение вектора прерывания в системе. Используется при загрузке системы. |
||
Приложение 1б
Структура описателя загрузочного устройства винчестера
(Обычно размещается на треке 0, но допускается размещение на треках 1-255)
|
Смещение |
Длина |
Комментарии |
|
|
Байты 0-27 соответствуют указанным в ПРИЛОЖЕНИЯХ 1 и 1а |
|||
|
28 |
2 |
Байты из вектора конфигурации ядра (ПРИЛОЖЕНИЕ 3) со смещениями -8 и -7 Значение их неизвестно. |
|
|
Байты 30-63 соответствуют указанным в ПРИЛОЖЕНИЯХ 1 и 1а |
|||
|
64 |
32 |
Описатель is_dos.rom |
|
|
96 |
1 |
Контрольная сумма описателя is_dos.rom |
|
|
97 |
24 |
Байты 16-39 драйвера винчестера (см. ПРИЛОЖЕНИЕ 24)1 |
|
|
97 |
1 |
HEAD |
Количество головок винчестера |
|
98 |
1 |
SECTOR |
Количество секторов винчестера |
|
99 |
2 |
DEV A |
Начальный трек винчестера для устройства A |
|
101 |
2 |
DEV B |
Начальный трек винчестера для устройства B |
|
103 |
2 |
DEV C |
Начальный трек винчестера для устройства C |
|
105 |
2 |
DEV D |
Начальный трек винчестера для устройства D |
|
107 |
2 |
DEV E |
Начальный трек винчестера для устройства E |
|
109 |
2 |
DEV F |
Начальный трек винчестера для устройства F |
|
111 |
2 |
DEV G |
Начальный трек винчестера для устройства G |
|
113 |
2 |
DEV H |
Начальный трек винчестера для устройства H |
|
115 |
2 |
HS2 |
Значение HEADxSECTORx2 |
|
117 |
2 |
CYL |
Количество цилиндров на винчестере |
|
119 |
2 |
CLT |
Начальный трек текущего устройства2 |
|
121 |
4 |
Резерв |
|
|
125 |
3 |
Признак загрузочного диска винчестера - "KAY" |
|
|
128 |
32 |
Описатель uni_boot.sys |
|
|
160-255 |
|
Не используется |
|
|
Эта информация, вносится программой uni_con.com при создании загрузочного устройства для запуска системы с винчестера (см. "Загрузка системы с HDD"). |
|||
|
1В эти байты программа uni_con.com сохраняет параметры текущего драйвера винчестера на момент работы программы. Это нужно для того, чтобы восстановить параметры винчестера в драйвере при загрузке системы с винчестера. Эти байты берет программа hdd_boot при загрузке системы. |
|||
|
2Внутренняя переменная драйвера винчестера, внешними программами не устанавливается и в данном случае значения не имеет. |
|||