home *** CD-ROM | disk | FTP | other *** search
- {*DOS.TDL of TSC - Copyright 1986-88 by Supratech Inc.}
- {** A special format file for providing DOS unit definitions to the
- TSC program. It is needed if DOS unit will be used.
- **}
-
- UNIT DOS;
- INTERFACE
- CONST
- FCARRY = $0001;
- FPARITY = $0004;
- FAUXILIARY = $0010;
- FZERO = $0040;
- FSIGN = $0080;
- FOVERFLOW = $0800;
-
- FMCLOSED = $D7B0;
- FMINPUT = $D7B1;
- FMOUTPUT = $D7B2;
- FMINOUT = $D7B3;
-
- READONLY = $01;
- HIDDEN = $02;
- SYSFILE = $04;
- VOLUMEID = $08;
- DIRECTORY = $10;
- ARCHIVE = $20;
- ANYFILE = $3F;
- TYPE
- 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;
-
- FILEREC =
- RECORD
- HANDLE : WORD;
- MODE : WORD;
- RECSIZE : WORD;
- PRIVATE : ARRAY[1..26] 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;
-
- SEARCHREC =
- RECORD
- FILL : ARRAY[1..21] OF BYTE;
- ATTR : BYTE;
- TIME : LONGINT;
- SIZE : LONGINT;
- NAME : STRING[12];
- END;
-
- DATETIME =
- RECORD
- YEAR, MONTH, DAY, HOUR, MIN, SEC : WORD;
- END;
- VAR
- DOSERROR : INTEGER;
-
- PROCEDURE INTR(INTNO : BYTE; VAR REGS : REGISTERS);
- PROCEDURE MSDOS(VAR REGS : REGISTERS);
- PROCEDURE GETDATE(VAR YEAR, MONTH, DAY, DAYOFWEEK : WORD);
- PROCEDURE SETDATE(YEAR, MONTH, DAY : WORD);
- PROCEDURE GETTIME(VAR HOUR, MINUTE, SECOND, SEC100 : WORD);
- PROCEDURE SETTIME(HOUR, MINUTE, SECOND, SEC100 : WORD);
- FUNCTION DISKFREE(DRIVE : BYTE) : LONGINT;
- FUNCTION DISKSIZE(DRIVE : BYTE) : LONGINT;
-
- {$IFDEF NEVER}
- {**** special handling of next four procedures in ProcCall() ****}
- PROCEDURE GETFATTR(VAR FILE*; VAR ATTR : WORD);
- PROCEDURE SETFATTR(VAR FILE*; ATTR : WORD);
- PROCEDURE GETFTIME(VAR FILE*; VAR TIME : LONGINT);
- PROCEDURE SETFTIME(VAR FILE*; TIME : LONGINT);
- {**** above four procedures are different than others ****}
- {$ENDIF}
-
- PROCEDURE FINDFIRST(PATH : STRING; ATTR : WORD; VAR F : SEARCHREC);
- PROCEDURE FINDNEXT(VAR F : SEARCHREC);
- PROCEDURE UNPACKTIME(P : LONGINT; VAR T : DATETIME);
- PROCEDURE PACKTIME(VAR T : DATETIME; VAR P : LONGINT);
- PROCEDURE GETINTVEC(INTNO : BYTE; VAR VECTOR : POINTER);
- PROCEDURE SETINTVEC(INTNO : BYTE; VECTOR : POINTER);
- PROCEDURE KEEP(EXITCODE : WORD);
- PROCEDURE EXEC(PATH, CMDLINE : STRING);
- FUNCTION DOSEXITCODE : WORD;
-
- IMPLEMENTATION
- END.
-
- ENDLIB {must be the last legal symbol read}
-
- {*----- end of DOS.TDL -----}