Работа с диском на физическом уровне 85
Процедура FreeListDisk. С помощью этой процедуры из динамической памяти удаляется связанный список дисковых описателей, ранее созданный процедурой GetListDisk. Заголовок:
Procedure FreeListDisk(var List: PListDisk) ;
Функция ChanqeDiskette. Возвращает логический признак, указывающий, изменялось ли положение запора на приводе гибкого диска с момента последней операции чтения/записи (True — менялось). Эта информация сохраняется контроллером ГД и возвращается функцией 22 прерывания $13. Заголовок функции:
Function ChangeDiskette(Disk: Byte): Boolean;
Процедура GetAbsSector. Осуществляет чтение содержимого нужного физического сектора диска. Заголовок:
Procedure GetAbsSector(Disk,Head: Byte; CSec: Word;
var Buffer).
Параметры вызова функции соответствуют параметрам обращения к прерыванию $13: Disk — номер физического диска (0 = 1—й ГД, 1 = 2—й ГД, $80 = 1-й ЖД, $81 = 2-й ЖД); Head — номер головки (поверхности); нумерация начинается с нуля; CSec — номер цилиндра и сектора в виде 16—разрядного упакованного слова (нумерация цилиндров начинается с нуля, а секторов — с единицы); Buffer — переменная длиной 512 байт, в которую помещается содержимое прочитанного сектора.
Эта процедура использует прерывание BIOS $13. Она игнорирует логические разделы ЖД.
Функция GetCluster. Возвращает номер кластера для указанного номера сектора. Заголовок:
Function GetCluster (Disk: Byte; Sector: Word): Word.
Здесь Disk — номер диска; Sector — номер сектора.
Функция возвращает значение 0, если задан неверный номер сектора (меньше номера первого сектора архивной области диска или больше максимально возможного для данного диска).
Функция GetDefaultDrv. Возвращает номер диска, который установлен в ДОС как диск по умолчанию (текущий диск). Заголовок:
Function GetDefaultDrv: Byte.
Процедура GetDirItem. Возвращает элемент каталога для указанного файла. Заголовок:
Function GetDirItem(FileName: String; var Item: Dir_Type).
Здесь FileName — строковое выражение, содержащее имя файла (можно задавать имя с предшествующим ему маршрутом поиска); Item —