home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Turbo Toolbox
/
Turbo_Toolbox.iso
/
1990
/
08
/
grdlagen
/
fio.
< prev
next >
Wrap
Text File
|
1990-05-15
|
4KB
|
111 lines
(*********************************************************)
(* FIO *)
(* Kurzuebersicht ueber den Inhalt *)
(* des FIO-Moduls bei TopSpeed-M2 *)
CONST MaxOpenFiles = 15;
DiskFull = 0F0H ;
StandardInput = 0 ;
StandardOutput = 1 ;
ErrorOutput = 2 ;
AuxDevice = 3 ;
PrinterDevice = 4 ;
BufferOverhead = SIZE(BufRec)-1;
TYPE
File = CARDINAL;
BufRec = RECORD
RWPos,
EOB,
BufSize : CARDINAL;
Buffer : ARRAY[0..0] OF SHORTCARD;
END;
PathStr = ARRAY[0..64] OF CHAR;
PathTail = ARRAY[0..12] OF CHAR;
FileAttr = SET OF (readonly,hidden,system,
volume,directory,archive);
DirEntry = RECORD
rsvd : ARRAY[0..20] OF SHORTCARD;
attr : FileAttr;
time : CARDINAL;
date : CARDINAL;
size : LONGCARD;
Name : PathTail;
END;
VAR
IOcheck : BOOLEAN;
EOF : BOOLEAN;
Separators : Str.CHARSET;
OK : BOOLEAN;
ChopOff : BOOLEAN;
Eng : BOOLEAN;
PROCEDURE IOresult() : CARDINAL;
PROCEDURE Open (Name: ARRAY OF CHAR) : File;
PROCEDURE Create(Name: ARRAY OF CHAR) : File;
PROCEDURE Append(Name: ARRAY OF CHAR) : File;
PROCEDURE Close (F: File);
PROCEDURE Size (F: File) : LONGCARD;
PROCEDURE GetPos(F: File) : LONGCARD;
PROCEDURE Seek (F: File; Pos: LONGCARD);
PROCEDURE Truncate(F: File);
PROCEDURE Exists(Name: ARRAY OF CHAR) : BOOLEAN;
PROCEDURE Erase (Name: ARRAY OF CHAR);
PROCEDURE Rename(Name,NewName : ARRAY OF CHAR);
PROCEDURE AssignBuffer(F : File; VAR Buf: ARRAY OF BYTE);
PROCEDURE ChDir (Name: ARRAY OF CHAR);
PROCEDURE MkDir (Name: ARRAY OF CHAR);
PROCEDURE RmDir (Name: ARRAY OF CHAR);
PROCEDURE GetDir(Drive: SHORTCARD; VAR Name: ARRAY OF CHAR);
PROCEDURE ReadFirstEntry(DirName : ARRAY OF CHAR;
Attr : FileAttr;
VAR D : DirEntry) : BOOLEAN;
PROCEDURE ReadNextEntry (VAR D : DirEntry) : BOOLEAN;
PROCEDURE WrChar (F: File; V: CHAR );
PROCEDURE WrBool (F: File; V: BOOLEAN ; Length: INTEGER);
PROCEDURE WrShtInt (F: File; V: SHORTINT ; Length: INTEGER);
PROCEDURE WrInt (F: File; V: INTEGER ; Length: INTEGER);
PROCEDURE WrLngInt (F: File; V: LONGINT ; Length: INTEGER);
PROCEDURE WrShtCard(F: File; V: SHORTCARD; Length: INTEGER);
PROCEDURE WrCard (F: File; V: CARDINAL ; Length: INTEGER);
PROCEDURE WrLngCard(F: File; V: LONGCARD ; Length: INTEGER);
PROCEDURE WrShtHex (F: File; V: SHORTCARD; Length: INTEGER);
PROCEDURE WrHex (F: File; V: CARDINAL ; Length: INTEGER);
PROCEDURE WrLngHex (F: File; V: LONGCARD ; Length: INTEGER);
PROCEDURE WrReal (F: File; V: REAL ;
Precision: CARDINAL; Length: INTEGER);
PROCEDURE WrLngReal(F: File; V: LONGREAL ;
Precision: CARDINAL; Length: INTEGER);
PROCEDURE WrStr (F: File; V: ARRAY OF CHAR);
PROCEDURE WrStrAdj (F: File; S: ARRAY OF CHAR;
Length: INTEGER);
PROCEDURE WrLn (F: File);
PROCEDURE WrCharRep(F: File; V: CHAR; Count: CARDINAL );
PROCEDURE WrBin (F: File;
Buf: ARRAY OF BYTE; Count: CARDINAL);
PROCEDURE RdChar (F: File) : CHAR;
PROCEDURE RdBool (F: File) : BOOLEAN;
PROCEDURE RdShtInt (F: File) : SHORTINT;
PROCEDURE RdInt (F: File) : INTEGER;
PROCEDURE RdLngInt (F: File) : LONGINT;
PROCEDURE RdShtCard(F: File) : SHORTCARD;
PROCEDURE RdCard (F: File) : CARDINAL;
PROCEDURE RdLngCard(F: File) : LONGCARD;
PROCEDURE RdShtHex (F: File) : SHORTCARD;
PROCEDURE RdHex (F: File) : CARDINAL;
PROCEDURE RdLngHex (F: File) : LONGCARD;
PROCEDURE RdReal (F: File) : REAL;
PROCEDURE RdLngReal(F: File) : LONGREAL;
PROCEDURE RdItem (F: File; VAR V: ARRAY OF CHAR);
PROCEDURE RdStr (F: File; VAR V: ARRAY OF CHAR);
PROCEDURE RdBin (F: File;
VAR Buf: ARRAY OF BYTE;
Count: CARDINAL) : CARDINAL;
(*********************************************************)
(* Ende FIO *)