Выход:
AL=00h, если в DL был задан корректный диск
DS:BX – адрес блока информации о диске для запрошенного устройства (Таблица Б-6)
AL=FFh, если в DL был задан некорректный дискОписание.
Возвращает блок информации, представляющей интерес для приложений и утилит, которые выполняют доступ к дискам, поддерживаемым драйверами устройств, на уровне секторов.
Некоторые дисководы (особенно незагружаемые) функционируют только через свои драйвера устройств. Такие диски могут содержать неверную информацию в корневой записи и таблице разделов, что делает очень трудным определение, например, размера корневого оглавления, числа таблиц FAT и прочего. Блок информации диска содержит такие данные в хорошо форматированной структуре.Версии: DOS 2.00 и выше.
Вход:
AH=33h
AL=00h – опросить текущий статус контроля Ctrl-Break
AL=01h – установить статус контроля Ctrl-Break
DL – требуемый статус (0 – выключен, 1 – включен)Выход: DL – текущий статус (0 – выключен, 1 – включен)
Описание.
Если AL=00h, в DL возвращается текущий статус контроля Ctrl-Break.
Если AL=01h, в DL возвращается новый текущий статус.
Когда статус «включен», DOS при выполнении большинства функций (исключая 06h и 07h) проверяет, нажаты ли клавиши Ctrl-Break. Если это обнаружено, выполняется прерывание INT 23h (если оно не перехватывается, то процесс снимается).
При статусе «выключен» DOS проверяет на нажатие Ctrl-Break лишь при выполнении операций стандартного ввода/вывода, стандартной печати и стандартного AUX.Версии: DOS 2.00 и выше.
Вход:
AH=34hВыход: ES:BX – адрес флага активности DOS
Описание.
Функция возвращает флаг активности DOS, который показывает, можно ли на данный момент вызывать функции DOS. Эту функцию использует, например, функция фоновой печати PRINT.
Если ES: [BX] не нулевой, фоновая программа (TSR либо popup) не должна использовать никаких функций DOS.Версии: DOS 2.00 и выше.
Вход:
AH=35h
AL – номер прерывания (00h до FFh)Выход: ES:BX – адрес обработчика прерывания
Описание. Возвращает значение вектора прерывания для INT (AL), то есть загружает в BX 0000:[AL*4], а в ES – 0000:[(AL*4)+2].
Примечание. Эта функция изменяет сегментный регистр ES.
Версии: DOS 2.00 и выше.
Вход:
AH=36h
DL – номер диска (0 – текущий, 1 – A и так далее)Выход:
AX=FFFFh, если AL содержал неверный номер диска
Если функция выполнена успешно:
AX – число секторов на кластер
BX – число доступных кластеров
CX – байт на сектор
DX – всего кластеров на дискеОписание. Возвращает данные, полезные для подсчета общей и доступной дисковой памяти. Если в AX возвращено FFFFh, значит задан неверный диск. Иначе свободная память (в байтах) составляет (AX*BX*CX), всего памяти (AX*CX*DX) байт.
Версии: DOS 2.00 и выше.
Вход:
AH=37h
AL=00h – опросить текущий переключатель
AL=01h – установить символ-переключатель
DL – символ-переключательВыход:
AL=00h, если функция выполнена успешно
DL – текущий символ-переключатель DOS (если при вызове AL=00h)
AL=FFh, если использована неподдерживаемая подфункция