MS-DOS для программиста


Команды для контроллера НГМД - часть 3


/p>

После выполнения команды центральный процессор должен получить от контроллера байты результата. Среди них - содержимое внутренних регистров состояния контроллера ST0, ST1, ST2, ST3. Опишем назначение отдельных бит этих регистров.

Формат регистра ST0:

Биты Название Назначение
1, 0 US1, US2 Код НГМД
2 HD Номер головки
3 NC Устанавливается, если НГМД не готов выполнить команду чтения или записи
4 EC Сбой оборудования
5 SE Завершена команда "Поиск"
7, 6 I, C Код прерывания:

00 - нормальное завершение;

01 - аварийное завершение;

10 - неправильная команда;

11 - нет готовности НГМД

Формат регистра ST1:

Биты Название Назначение
0 MA Пропуск адресной метки. Этот бит устанавливается в 1, если контроллер не может найти адресную метку
1 NN Защита записи. Устанавливается, если при выполнении операции контроллер получает от НГМД сигнал защиты записи
2 ND Сектор не найден
3 - Зарезервировано
4 OR Переполнение. Процессор не успевает выполнять обмен данными с контроллером
5 DE Ошибка в данных при проверке контрольной суммы
6 - Зарезервировано
7 EN Несуществующий сектор, устанавливается, когда контроллер пытается прочесть сектор со слишком большим адресом

Формат регистра ST2:

Биты Название Назначение
0 MD Пропущен адресный маркер в поле данных
1 BC Дорожка не читается
2 SN Ошибка сканирования. Устанавливается, если при выполнении команды сканирования контроллер не может найти требуемую дорожку
3 SH Сканирование выполнено, дорожка найдена
4 WC Ошибка адреса дорожки
5 DD Ошибка в поле данных
6 CM Во время операции чтения или сканирования не обнаружен сектор с маркером удаленных данных
7 - Зарезервировано

Формат регистра ST3:

Биты Название Назначение
1, 0 US1, US2 Код выбранного НГМД
2 HD Номер выбранной головки
3 TS Используется режим двухсторонней записи
4 T0 Головка установлена на дорожку 0
5 RDY НГМД готов к работе
6 WP Защита записи на диске
7 FT Неисправность НГМД
<


- Начало -  - Назад -  - Вперед -