AH | функция |
0 | Сброс устройства. Вход: DL - номер устройства Выход: Carry-флаг=1 при ошибке и код ошибки диска в AH. Примечание: Вызывает рекалибрацию контроллера, голоыки диска устанавливаются на нулевой трек. На некоторых системах, в случае, если на одной линии расположено два диска (конфигурация Master/Slave), запрос на реколибрацию выполняется обоими дисками. |
1 | Дать статус ошибки последней операции. Вход: DL = диск. Выход: AH содержит код ошибки диска Примечание: Некоторые БИОСы учитывают ошибки не всех операций |
2 | Читать секторы Вход: DL = номер диска (0=диск A...; 80h=HDD 0; 81h=HDD 1...) (обычно при запуске системы номер диска, с которого проведён запуск передаётся в dl, но НЕ при запуске программы в DOS) DH = номер головки чтения/записи CH = биты 0-7 номера дорожки (цилиндра) CL = биты 0-5 - номер сектора (Считая с 1) биты 6-7 - биты 8-9 номера дорожки AL = число секторов ES:BX => адрес буфера вызывающей программы Выход: Carry-флаг=1 при ошибке и код ошибки диска в AH. ES:BX буфер содержит данные, прочитанные с диска. AL - количество считанных секторов (кроме ошибки 11h) Примечание: Старые БИОСы могут не поддерживать переход с одной дорожки на другую в процессе чтения, так что будте осторожны! Документация на PhoenixBios (rev 6) утверждает, что максимальное значение, передаваемое в AL - 80h |
3 | Писать секторы Вход: DL = номер диска (0=диск A...; 80h=HDD 0; 81h=HDD 1...) (обычно при запуске системы номер диска, с которого проведён запуск передаётся в dl, но НЕ при запуске программы в DOS) DH = номер головки чтения/записи CH = биты 0-7 номера дорожки (цилиндра) CL = биты 0-5 - номер сектора (Считая с 1) биты 6-7 - биты 8-9 номера дорожки AL = число секторов (в сумме не больше чем один цилиндр) ES:BX => адрес буфера вызывающей программы Выход: Carry-флаг=1 при ошибке и код ошибки диска в AH. AL - количество записанных секторов Примечание: Старые БИОСы могут не поддерживать переход с одной дорожки на другую в процессе записи, так что будте осторожны! Документация на PhoenixBios (rev 6) утверждает, что максимальное значение, передаваемое в AL - 80h |
4 | Проверить секторы. Вход: DL = номер диска (0=диск A...; 80h=HDD 0; 81h=HDD 1...) (обычно при запуске системы номер диска, с которого проведён запуск передаётся в dl, но НЕ при запуске программы в DOS) DH = номер головки чтения/записи CH = биты 0-7 номера дорожки (цилиндра) CL = биты 0-5 - номер сектора (Считая с 1) биты 6-7 - биты 8-9 номера дорожки AL = число секторов (в сумме не больше чем один цилиндр) Для биосов старше 15 ноября 1985-го года: ES:BX => адрес буфера вызывающей программы Выход: Carry-флаг=1 при ошибке и код ошибки диска в AH. AL - количество проверенных секторов Примечание: Старые БИОСы могут не поддерживать переход с одной дорожки на другую в процессе записи, так что будте осторожны! Документация на PhoenixBios (rev 6) утверждает, что максимальное значение, передаваемое в AL - 80h, а для дисков с ECC - 79h В зависимотси от реализации может проверять как сами данные, так и только служебные метки. |
5 | Форматировать дорожку. Вход: DL,DH,CH = диск,головка,дорожка (см. функцию 02H) ES:BX => дескрипторы секторов (формат дескрипторов см. ниже) дискета: 4-байтовый 'CHNS' (C - цилиндр,H - головка,N - сектор, S - размер) для каждого сектора на дорожке (т.е. 36 байт для 9-секторных дорожек); номера секторов должны быть упорядочены. 'S' - код размера сектора: 0=128; 1=256; 2=512; 3=1024 для AT Тв. диск: 2-байтовый 'FN' (F - флаг,N - сектора) для каждого сектора на дорожке. последовательность полей 'N' определяет "коэффициент прослаивания" ("interleave factor"). для XT Тв. диск: ES:BX не используется. Вместо этого AL содержит значение "прослаивания" между 1 и 16 (10h). Выход: Carry-флаг=1 при ошибке и код ошибки диска в AH. AL - количество отформатированных секторов Примечание: Данные на дорожке разрушаются. Тв. диск: 'F'-поля установливаются в 80h для плохих секторов Крайне не реккомендуется применять эту функцию к современным жёстким дискам |
6 | Форматировать дорожку и проверить на битые сектора.(HDD) Вход: AL - "коэффициент прослаивания" ("interleave factor") DL,DH,CH = диск,головка,дорожка (см. функцию 02H) CL = 0 Выход: AH - код ошибки Примечание: Данные на дорожке разрушаются. Эта функция поддерживается не всеми дисками КРАЙНЕ НЕ реккомендуется применять эту функцию к современным жёстким диска 'F'-поля установливаются в 80h для плохих секторов Некоторые БИОСы размещают в битах 6 и 7 регистра DH биты 10 и 11 номера дорожки |
7 | Форматировать диск начиная с заданной дорожки Вход: AL - "коэффициент прослаивания" ("interleave factor") DL,DH,CH = диск,головка,дорожка (см. функцию 02H) CL = 0 Выход: AH - код ошибки Примечание: Данные на дорожке разрушаются. Эта функция поддерживается не всеми дисками Крайне не реккомендуется применять эту функцию к современным жёстким диска 'F'-поля установливаются в 80h для плохих секторов Некоторые БИОСы размещают в битах 6 и 7 регистра DH биты 10 и 11 номера дорожки |
8 | Параметры диска Вход: DL = диск Выход: Carry-флаг=1 при ошибке и код ошибки диска в AH. если CX или DX ==0, то произошла ошибка и код ошибки диска в AH. DL = число жёстких дисков на первом контроллере DH = максимальный номер головки CH = максимальный номер цилиндра (младшие 8 бит) CL = биты 0-5 - максимальный номер сектора (и старшие биты максимум номера цилиндра) биты 6-7 - биты 8-9 максимаьного номера цилиндра Для дискет: ES:DI - указатель на таблицу параметров дискеты Для дискет: BL - Тип дисковода: 0 - ошибка при определении типа дисковода 1 - 360 кб, 5 дюймов, 40 дорожек 2 - 1.2 мб, 5 дюймов, 80 дорожек 3 - 720 кб, 3 дюйма, 80 дорожек 4 - 1.44 мб, 3 дюйма, 80 дорожек 5 - не определено, однако на некоторых компьютерах означает 2.88 мб, 3 дюйма 6 - 2.88 мб, 3 дюйма 10 - ATAPI-совместимое устройство со съёмным носителем Примечание: Только AT и XT совместимые компьютеры BH и AL могут быть сброшены в ноль. |
9 | Инициализировать параметры диска Вход: DL - номер диска Выход: Carry-флаг=1 при ошибке и код ошибки диска в AH. Примечание: Векторы для INT 41h и INT 46h адресуют Табл. параметров тв. диска соответственно для устройств 0 и 1. В XT совместимом компьютере обе таблицы указываются через вектор INT 40h. Только AT совместимые компьютеры Сообщает BIOS о любом динамическом изменении таблиц параметров устройства. |
0Ah | Длинное чтение Вход: DL = номер диска (0=диск A...; 80h=HDD 0; 81h=HDD 1...) (обычно при запуске системы номер диска, с которого проведён запуск передаётся в dl, но НЕ при запуске программы в DOS) DH = номер головки чтения/записи CH = биты 0-7 номера дорожки (цилиндра) CL = биты 0-5 - номер сектора (Считая с 1) биты 6-7 - биты 8-9 номера дорожки AL = число секторов ES:BX => адрес буфера вызывающей программы Выход: Carry-флаг=1 при ошибке и код ошибки диска в AH. ES:BX => считанные данные Примечание: Только AT и XT совместимые компьютеры Документация на PhoenixBios (rev 6) утверждает, что максимальное значение, передаваемое в AL - 79h Буфер не должен пересекать адрес, кратный 64 Кб. Чтение должно быть в пределах одной дорожки и одной головки. |
0Bh | Длинная запись Вход: DL = номер диска (0=диск A...; 80h=HDD 0; 81h=HDD 1...) (обычно при запуске системы номер диска, с которого проведён запуск передаётся в dl, но НЕ при запуске программы в DOS) DH = номер головки чтения/записи CH = биты 0-7 номера дорожки (цилиндра) CL = биты 0-5 - номер сектора (Считая с 1) биты 6-7 - биты 8-9 номера дорожки AL = число секторов ES:BX => адрес буфера вызывающей программы Выход: Carry-флаг=1 при ошибке и код ошибки диска в AH. Примечание: 512 байт + 4-байтоый ECC (код коррекции ошибок). Только AT и XT совместимые компьютеры Документация на PhoenixBios (rev 6) утверждает, что максимальное значение, передаваемое в AL - 79h Буфер не должен пересекать адрес, кратный 64 Кб. Запись должна быть в пределах одной дорожки и одной головки. |
0Ch | Искать цилиндр Вход: DL - номер диска DH - Номер Головки CH - Номер дорожки CL - старшие биты номера дорожки Выход: Carry-флаг=1 при ошибке и код ошибки диска в AH. Примечание: Только AT и XT совместимые компьютеры Только для жёстких дисков Перемещает головку к нужной дорожке |
0Dh | Сброс устройства Вход: DL - диск Примечание: Только AT и XT совместимые компьютеры Только для жёстких дисков |
0Eh | Читать буфер секторов Вход: как для функции 02H Выход: Carry-флаг=1 при ошибке и код ошибки диска в AH. По адресу ES:BX содержание буфера Примечание: Только AT совместимые компьютеры |
0Fh | Писать буфер секторов Вход: как для функции 02h Выход: Carry-флаг=1 при ошибке и код ошибки диска в AH. По адресу ES:BX содержание буфера Примечание: Только AT совместимые компьютеры |
10h | проверить готовность устройства Вход: DL = диск (обычно при запуске системы номер диска, с которого проведён запуск передаётся в DL, но НЕ при запуске программы в DOS) Выход: код ошибки диска (статус) в AH. Примечание: Только AT и XT совместимые компьютеры |
11h | Рекалибровать устройство Вход: DL = диск(обычно при запуске системы номер диска, с которого проведён запуск передаётся в DL, но НЕ при запуске программы в DOS) Выход: код ошибки диска (статус) в AH. Примечание: Только AT и XT совместимые компьютеры Только для жёстких дисков |
12h | Диагностика RAM контроллера Вход: DL = диск Выход: код ошибки диска (статус) в AH. Примечание: Только AT совместимые компьютеры |
13h | Диагностика устройства Вход: DL = диск Выход: код ошибки диска (статус) в AH. Примечание: Только AT совместимые компьютеры |
14h | Внутренняя диагностика контроллера Вход: DL = диск Выход: код ошибки диска (статус) в AH. Примечание: Только AT и XT совместимые компьютеры Только для жёстких дисков |
15h | Читать тип диска (недоступна в XT BIOS) Вход: DL = диск AL = 0 Выход: Carry-флаг=1 при ошибке и код ошибки диска в AH. AH = код устройства: == 0 , AL!=3 устройство DL отсутствует == 0 , AL==3 Жёсткий диск == 1 дискета; статус замены диска неподдерживается == 2 дискета; статус замены диска доступен (большинство случаев) == 3 Жёсткий диск Примечание: Для жёстких дисков по адресу CX:DX передаётся количество секторов Только AT совместимые компьютеры Некоторые биосы ошибочно возвращают тип "жёсткий диск" в AL, по этому перед вызовом функции AL рекомендуется утсановить в 0 и если в AH в результате 0, то проверять AL |
16h | Читать статус замены диска Вход: DL = диск Выход: Carry-флаг=1 при ошибке и код ошибки диска в AH. AH = код статуса: 0 = замена диска непроизводится 1 = неверный номер диска; 6 = производится замена диска (открыта дисковая дверь), либо статус замены диска неподдерживается 80h = ошибка таймаута Примечание: Только AT совместимые компьютеры Не реккомендуется использовать на очень старых биосах, так как многие из них имеют ошибки в реализации из-за которых могут "испортится" различные данные |
17h | Установить тип дискеты (используется перед операцией форматирования) Вход: DL = номер устройства диска (0 или 1) AL = тип носителя диска: 0 = не используется 1 = 360K дискета в 360K устройстве 2 = 360K дискета в 1.2M устройстве 3 = 1.2M дискета в 1.2M устройстве 4 = 720K дискета в 720K или (поддерживается не всеми биосами) 1.44M устройстве Выход: Carry-флаг=1 при ошибке и код ошибки диска в AH. Примечание: Только AT совместимые компьютеры Документация на PhoenixBios (rev 6) явно оговаривает что случай с 1.44М дискетами не поддерживается, поэтому я реккомендую использовать функцию 18h |
18h | Установить тип диска (используется перед операцией форматирования) Вход: DL = номер устройства диска CH = Максимальный номер цилиндра CL : биты 0-5 кол-во секторов на дорожке биты 6,7 старшие биты номера цилиндра Выход: Carry-флаг=1 при ошибке и код ошибки диска в AH. ES:DI - таблица параметров дискеты Примечание: Только AT и/или XT совместимые компьютеры Не многие БИОСы устанавливают основную таблицу параметров диска в соответствии со сформированной этой функцией, по этому рекомендуется перед проведением форматирования произвести замену адреса вектора прерывание 1Eh |
20h | Получить тип дискеты Вход: DL = номер устройства диска (0 или 1) Выход: Carry-флаг=1 при ошибке и код ошибки диска в AH. AL - тип: 00 - 720 кб 01 - 1.44 мб 02 - 2.88 мб 03 - 1 мб (неформатированная 720 кб) 04 - 2 мб (неформатированная 1.44 мб) 06 - 4 мб (неформатированная 2.88 мб) 0Ch - 360 кб 0Dh - 1,2 мб 0Eh и 0Fh - дискета с размером сектора 1024 кб 10h - устройство ATAPI Примечание: Некоторые старые БИОСы неподдерживают эту функцию БИОСы Compaq изготовленные до 1993 года всегда возвращают 0 в AL |
Код | Значение |
00 | Нет ошибки |
01 | Неизвестная/неверная комманда |
02 | Не найдена адресная метка |
03 | Диск защищён от записи |
04 | Не найден сектор |
05 | Ошибка при сбросе HDD |
06 | Произошла замена дискеты |
07 | Ошибка инициализации |
08 | Ошибка DMA |
09 | Выход за приделы 64КБ при работе с DMA |
0Ah | Плохой сектор |
0Bh | Плохая дорожка |
0Ch | Неправильный номер дорожки (В некоторых биосах - не правильный номер устройства) |
0Dh | Неправильный номер сектора |
0Eh | Обнаружена адресная метка управляющих данных |
0Fh | Ошибка DMA |
10h | Ошибка данных (неверная контрольная сумма) |
11h | Была произведена коррекция данных для устраниния ошибки |
20h | Сбой контроллера |
30h | Неподдерживаемый формат дискеты |
31h | Дискета извлечена |
32h | Неподдерживаемый тип дискеты |
40h | Сбой при поиске дорожки |
80h | Ошибка таймаута |
AAh | Диск не готов |
BBh | Неисовместимый контроллер или неизвестная ошибка |
CCh | Сбой при записи |
E0h | Неопознанная ошибка контроллера |
FFh | Ошибка при чтении |
AH | функция | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
41h | Проверка наличия расширения. Вход: BX = 55AAh DL - номер диска(80h ... 0FFh) Выход: Флаг переноса установлен - расширение не поддерживается Флаг переноса сброшен - расширение поддерживается: BX = AA55h AL - изменено AH - номер версии (01 - первая; 20h - EDD версии 1.0, версия реализации функций 2; 21h - EDD версии 1.1, версия реализации функций 2; 30h - третья версия) CX - поддерживаемые возможности: бит 0 = 1 : поддержка расширенного доступа к жёсткому диску диску (функции 42h-44h, 47h, 48h) бит 1 = 1 : поддержка расширенного управления дисками со съёмным носителем (функции 45h, 46h, 48h, 49h) бит 2 = 1 : поддержка EDD (функции 48h,4Eh) биты 3-15 - резерв Примечание: В некоторых реализациях регистр DH может быть изменён В некоторых источниках утверждается, что третий бит регистра CX обозначает поддержку 64-х битного расширения для адреса буфера, однако найти подтверждение этому в официальной документации не удалось. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
42h | Расширенное чтение. Вход: DL - номер диска(80h ... 0FFh) DS:SI - адрес пакета адресации Выход: AH - состояние дисковой подсистемы Если флаг переноса установлен - произошла ошибка Примечание: Пакет адресации представляет из себя следующую структуру:
Для перевода из CHS-адресации в LBA-адресацию используйте следующую формулу: (Cylinder*NumHeads + Head) * SectorsPerTrack + Sector - 1 Если произошла ошибка в процессе чтения, то в поле число блоков записывается число успешно считанных блоков | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
43h | Расширенная запись. Вход: AL - 0 или 1 - запись без проверки данных, 2 - запись с проверкой данных DL - номер диска(80h ... 0FFh) DS:SI - адрес пакета адресации Выход: AH - состояние дисковой подсистемы Если флаг переноса установлен - произошла ошибка Примечание: Пакет адресации описан в функции 42h. Устройство может не поддерживать запись данных с проверкой. В таком случае если запрошена запись с проверкой, то после возврата из функци AH=01 и возведён флаг переноса. Что бы узнать, поддерживается ли запись с проверкой используйте функцию 48h. Если произошла ошибка в процессе записи, то в поле число блоков записывается число записанных блоков | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
44h | Проверить секторы Вход: DL - номер диска(80h ... 0FFh) DS:SI - адрес пакета адресации Выход: AH - состояние дисковой подсистемы Если флаг переноса установлен - произошла ошибка Примечание: Пакет адресации описан в функции 42h. Если произошла ошибка в процессе проверки, то в поле число блоков записывается число проверенных сеторов (сеткторы проверяются последовательно) | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
45h | Заблокировать/разблокировать устройство Вход: DL - номер диска(80h ... 0FFh) AL : = 0 - заблокировать = 1 - разблокировать = 2 - узнать статус Выход: AH - состояние дисковой подсистемы AL - состояние диска Если флаг переноса установлен - произошла ошибка Примечание: Эта функция подразумевает, что носитель информации нельзя извлечь, пока устройство заблокированно. Эта функция поддерживает до 255 блокировок на устройство. Для каждой блокировки необходима своя команда разблокировки, т.е. блокировки могут быть вложенными. Если подать команду разблокировки на разблокированный диск, функция вернёт ошибку. Некоторые диски с несъёмными носителями информации допускают использование команды блокировки. Точный смысл этой команды в таком случае зависит от производителя жёсткого диска. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
46h | Извлечь носитель информации из устройства Вход: DL - номер диска(80h ... 0FFh) AL = 00 (резерв) Выход: AH - состояние дисковой подсистемы Если флаг переноса установлен - произошла ошибка Примечание: Если диск заблокирован, то функция вернёт ошибку. Если диск имеет несъёмный носитель, то функция вернёт ошибку. При попытке извлечь носитель из пустого дисковода функция вернёт ошибку. Эта функция использует функцию 52h прерывания 15h | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
47h | Расширенный поиск Вход: DL - номер диска(80h ... 0FFh) DS:SI - адрес пакета адресации Выход: AH - состояние дисковой подсистемы Если флаг переноса установлен - произошла ошибка Примечание: Это функция позволяет сообщить устройству, какой следующий блок понадобится системе | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
48h | Получить параметры диска Вход: DL - номер диска(80h ... 0FFh) DS:SI - адрес буфера для сохранения параметров(не менее 26 байт, рекомендуется 66) Выход: AH - состояние дисковой подсистемы Если флаг переноса установлен - произошла ошибка По адресу DS:SI расположена таблица с параметрами диска:
Примечание: *при длинне, записанной по смещению 32, равной 44 или больше используется второе значение. Значения в таблице конфигурации EDD и её адрес могут менятся при вызове функций EDD Путь на шине определяется по следующей логике:
Путь к устройству определяется по следующей логике:
Таблица конфигурации EDD выглядит следующим образом:
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
49h | Получить расширенный статус смены носителя Вход: DL - номер диска(80h ... 0FFh) Выход: Флаг переноса сброшен, AH==0 : носителт не менялся Флаг переноса установлена, AH==6 : носитель сменился, если AH имеет иноезначение - то это код ошибки. Примечание: Если в DL передать номер диска с несъёмным носителем, то функция вернёт, что смены диска не было. | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
4Eh | Установить конфигурацию оборудования Вход: DL - номер диска(80h ... 0FFh) AL - функция: 0 : разрешить предвыборку 1 : запретить предвыборку 2 : установить максимальный номер режима PIO и установить максимально возможную скорость передачи данных 3 : установить минимальный номер режима PIO и установить минимальную скорость передачи данных 4 : устновить скорость передачи данных и номер режима PIO на стандартные значения 5 : включить передачу данных в режиме DMA. Установить максимально возможную скорость 6 : отключить режим DMA Выход: Флаг переноса сброшен, AH==0 : функция выполнена успешно ; AH==1 : функция выполнена успешно, но повлияла на другие устройства Флаг переноса установлен : произошла ошибка, AH - состояние дисковой подсистемы | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
50h | Послать коммандный пакет Вход: DL - номер диска(80h ... 0FFh) AL = 01 ES:BX - указатель на коммандный пакет
Выход: AH - состояние дисковой подсистемы Эта функция используется БИОСом для работы с устройствами, подключёнными по интерфейсу 1394 или USB Если флаг переноса установлен - произошла ошибка |
Код | Значение |
B0 | Диск не заблокирован |
B1 | Диск заблокирован |
B2 | Диск не имеет съёмного носителя |
B3 | Диск занят (используется) |
B4 | Превышено количество блокировок |
B5 | Пропытка извлечения носителя провалилась |
B6 | Диск защищён от чтения |
AH | функция | |||||||||||||||||||||||||||||||||
4Ah | Запустить эмуляцию. Вход: AL = 0 DI:SI - спецификационный пакет Выход: AX - состояние дисковой подсистемы (то же значение, что и для расширенного API) Если флаг CF установлен, то произошла ошибка. Примечание: Спецификационный пакет имеет следующий формат:
| |||||||||||||||||||||||||||||||||
4Bh |
| |||||||||||||||||||||||||||||||||
4Ch | Запустить эмуляцию и загрузится с диска. Вход: AL = 0 DI:SI - спецификационный пакет | |||||||||||||||||||||||||||||||||
4Dh | Узнать загрузочный каталог. Вход: AL = 0 DI:SI - пакет команды Примечание: Пакет крманды имеет следующий формат:
|