Assembler - язык неограниченных возможностей


Блочные устройства - часть 4


41h: записать дорожку

42h: отформатировать и проверить дорожку

62h: проверить дорожку

46h: установить номер тома

66h: считать номер тома

47h: установить флаг доступа

67h: прочитать флаг доступа

68h: определить тип носителя (DOS 5.0+)

4Ah: заблокировать логический диск (Windows 95)

6Ah: разблокировать логический диск (Windows 95)

4Bh: заблокировать физический диск (Windows 95)

6Bh: разблокировать физический диск (Windows 95)

6Ch: определить флаг блокировки (Windows 95)

6Dh: перечислить открытые файлы (Windows 95)

6Eh: найти файл подкачки (Windows 95)

6Fh: получить соотношение логических и физических дисков (Windows 95)

70h: получить текущее состояние блокировки (Windows 95)

71h: получить адрес первого кластера (Windows 95)

+13h: адрес структуры (аналогично INT 21h AX = 440Dh)

17h: Определить логический диск (если установлен бит 6 атрибута)

    +01h: байт

    на входе — номер устройства

    на выходе — его номер диска (1 – А, 2 – В)

18h: Установить логический диск (если установлен бит 6 атрибута)

    +01h: байт — номер устройства. (Команды 17h и 18h позволяют DOS обращаться к одному и тому же дисководу как к устройству А: и как к устройству В:)

19h: Поддержка функций IOCTL (если установлены биты 6 и 7 атрибута)

Для написания своего драйвера блочного устройства можно пользоваться схемой, аналогичной символьному драйверу из предыдущей главы. Единственное важное отличие — процедура инициализации должна будет подготовить и заполнить ВРВ, а также сообщить DOS число устройств, для которых действует этот драйвер.





Начало  Назад