Получить состояние дисковой подсистемы
На входе: | AH = 01 |
DL = Адрес дисковода (0, 1, ...,80h, 81h, ...) | |
На выходе: | AL = Состояние дисковода после завершения последней операции |
Примечание: | PC, XT, AT, PS/2 |
Эта функция может быть использована для анализа результата выполнения дисковой операции и получения кода ошибки. Передаваемый в регистре AL код ошибки функция берет из области данных BIOS - из байта с адресом 0000:0441h.
Код ошибки может принимать следующие значения:
00h | Успешное завершение операции |
01h | Неправильная команда |
02h | Не найдена адресная метка |
03h | Попытка записи на диск, защищенный от записи |
04h | Сектор не найден |
05h | Ошибка при сбросе (НМД) |
06h | Произошла замена дискеты |
07h | Неправильные параметры дисковода (НМД) |
08h | Переполнение канала ПДП (НГМД) |
09h | Переход за границу 64К при работе с ПДП |
0Ah | Обнаружен плохой сектор (НМД) |
0Bh | Обнаружена плохая дорожка (НМД) |
0Ch | Неправильный номер дорожки |
0Dh | Неправильный номер сектора при форматировании (НМД) |
0Eh | Обнаружена адресная метка управляющих данных (НМД) |
0Fh | Ошибка ПДП (НМД) |
10h | Обнаружена ошибка в CRC/ECC |
11h | Данные скорректированы с использованием ECC (НМД) |
20h | Сбой контроллера |
40h | Сбой при поиске дорожки |
80h | Таймаут - программа не успевает обрабатывать данные |
AAh | Дисковод не готов (НМД) |
BBh | Неизвестная ошибка (НМД) |
CCh | Сбой при записи (НМД) |
E0h | Ошибка регистра состояния (НМД) |
FFh | Ошибка операции считывания (НМД) |