Модуль DOS

>Модуль Dos реализует ряд очень полезных программ операционной системы и обработки файлов. Ни одна из программ модуля Dos не определена в стандартом Паскале и поэтому они размещены в собственном модуле.

 

Константы

Константы регистра флагов

Следующие константы используются для проверки отдельных битов флага в регистре Flags после вызова Intr или MSDOS:

const

FCarry= $0001;   FAuxiliary = $0010; FSign = $0080; 

FParity= $0004;  FZero = $0040;      FOverFlow = $0800;

Константы режима доступа к файлу

const

fmClosed =$D7BO; {Маска режима файл закрыт}

fmInput =$D7B1; {Маска режима открыт для чтения} 

fmOutput =$D7B2; {Маска режима открыт для записи}

fmInOut =$D7B3; {Маска режима открыт для чтения и записи}

Константы атрибутов файла

const

Readonly = $01;{Маска только для чтения}

Hidden = $02;{Маска скрытого файла}

SysFile = $04;{Маска системного файла} 

VolumelD = $08;{Маска заголовка тома} 

Directory= $10;{Маска каталога}

Archive = $20;{Маска архивного, файла} 

AnyFile = $3F;{Маска любого файла}

 

Типы

type

{Типизированные и нетипизированные файлы} 

FileRec = record 

Handle : Word; 

Mode : Word; 

RecSize : Word;

Private : array [1..6] of Byte; 

UserData : array [1..16] of Byte;

Name : array [0..79] of Char;

end ;

{Текстовые файлы} 

TextBuf = array [0..127] of Char;

TextRec = record

Handle

Word;

Mode

Word;

BufSize

Word;

Private

Word;

BufPos

Word;

BufEnd

Word;

BufPtr

TextBuf ;

OpenFunc

Pointer;

InOutFunc

Pointer;

FlushFunc

Pointer;

CloseFunc

Pointer;

UserData

array [1..16] of Byte;

Name

array [0..79] of Char;

Buffer

TextBuf ;

end;

 

Registers = record 

case Integer of

0: (AX, BX, CX, DX, BP, SI, DI, DS, ES, Flags: Word);

1: (AL, AH, BL, BH, CL, CH, DL, DH: Byte); 

end;

DataTime = record

Year, Month, Day, Hour, Min, Sec: Integer; 

end;

SearchRec = record

File: array [1..21] of Byte;

Attr: Byte;

Time: Longlnt;

Size: Longlnt;

Name: String [12] ;

end;

DirStr = String [67];{Диск и каталог}

NarneStr = String [8] ;{Имя файла}

ExtStr = String [4];{Расширение файла}

ComStr = String [127] ;{Командная строка}

PathStr = String [79];{Полный маршрут поиска файла}