home *** CD-ROM | disk | FTP | other *** search
/ Turbo Toolbox / Turbo_Toolbox.iso / 1990 / 08 / grdlagen / fio. < prev    next >
Text File  |  1990-05-15  |  4KB  |  111 lines

  1. (*********************************************************)
  2. (*                       FIO                             *)
  3. (*           Kurzuebersicht ueber den Inhalt             *)
  4. (*            des FIO-Moduls bei TopSpeed-M2             *)
  5.  
  6. CONST MaxOpenFiles = 15;
  7.       DiskFull       = 0F0H ;
  8.       StandardInput  = 0 ;
  9.       StandardOutput = 1 ;
  10.       ErrorOutput    = 2 ;
  11.       AuxDevice      = 3 ;
  12.       PrinterDevice  = 4 ;
  13.       BufferOverhead = SIZE(BufRec)-1;
  14.  
  15. TYPE
  16.   File = CARDINAL;
  17.   BufRec =  RECORD
  18.               RWPos,
  19.               EOB,
  20.               BufSize : CARDINAL;
  21.               Buffer  : ARRAY[0..0] OF SHORTCARD;
  22.             END;
  23.   PathStr  = ARRAY[0..64] OF CHAR;
  24.   PathTail = ARRAY[0..12] OF CHAR;
  25.   FileAttr = SET OF (readonly,hidden,system,
  26.                      volume,directory,archive);
  27.   DirEntry = RECORD
  28.                rsvd : ARRAY[0..20] OF SHORTCARD;
  29.                attr : FileAttr;
  30.                time : CARDINAL;
  31.                date : CARDINAL;
  32.                size : LONGCARD;
  33.                Name : PathTail;
  34.              END;
  35.  
  36.  
  37.  
  38. VAR
  39.   IOcheck : BOOLEAN;
  40.   EOF     : BOOLEAN;
  41.   Separators  : Str.CHARSET;
  42.   OK          : BOOLEAN;
  43.   ChopOff     : BOOLEAN;
  44.   Eng         : BOOLEAN;
  45.  
  46.  
  47. PROCEDURE IOresult() : CARDINAL;
  48. PROCEDURE Open  (Name: ARRAY OF CHAR) : File;
  49. PROCEDURE Create(Name: ARRAY OF CHAR) : File;
  50. PROCEDURE Append(Name: ARRAY OF CHAR) : File;
  51. PROCEDURE Close (F: File);
  52. PROCEDURE Size  (F: File) : LONGCARD;
  53. PROCEDURE GetPos(F: File) : LONGCARD;
  54. PROCEDURE Seek  (F: File; Pos: LONGCARD);
  55. PROCEDURE Truncate(F: File);
  56. PROCEDURE Exists(Name: ARRAY OF CHAR) : BOOLEAN;
  57. PROCEDURE Erase (Name: ARRAY OF CHAR);
  58. PROCEDURE Rename(Name,NewName : ARRAY OF CHAR);
  59. PROCEDURE AssignBuffer(F : File; VAR Buf: ARRAY OF BYTE);
  60. PROCEDURE ChDir (Name: ARRAY OF CHAR);
  61. PROCEDURE MkDir (Name: ARRAY OF CHAR);
  62. PROCEDURE RmDir (Name: ARRAY OF CHAR);
  63. PROCEDURE GetDir(Drive: SHORTCARD; VAR Name: ARRAY OF CHAR);
  64. PROCEDURE ReadFirstEntry(DirName : ARRAY OF CHAR;
  65.                          Attr    : FileAttr;
  66.                          VAR D   : DirEntry) : BOOLEAN;
  67. PROCEDURE ReadNextEntry (VAR D   : DirEntry) : BOOLEAN;
  68. PROCEDURE WrChar   (F: File; V: CHAR );
  69. PROCEDURE WrBool   (F: File; V: BOOLEAN  ; Length: INTEGER);
  70. PROCEDURE WrShtInt (F: File; V: SHORTINT ; Length: INTEGER);
  71. PROCEDURE WrInt    (F: File; V: INTEGER  ; Length: INTEGER);
  72. PROCEDURE WrLngInt (F: File; V: LONGINT  ; Length: INTEGER);
  73. PROCEDURE WrShtCard(F: File; V: SHORTCARD; Length: INTEGER);
  74. PROCEDURE WrCard   (F: File; V: CARDINAL ; Length: INTEGER);
  75. PROCEDURE WrLngCard(F: File; V: LONGCARD ; Length: INTEGER);
  76. PROCEDURE WrShtHex (F: File; V: SHORTCARD; Length: INTEGER);
  77. PROCEDURE WrHex    (F: File; V: CARDINAL ; Length: INTEGER);
  78. PROCEDURE WrLngHex (F: File; V: LONGCARD ; Length: INTEGER);
  79. PROCEDURE WrReal   (F: File; V: REAL     ;
  80.                     Precision: CARDINAL; Length: INTEGER);
  81. PROCEDURE WrLngReal(F: File; V: LONGREAL ;
  82.                     Precision: CARDINAL; Length: INTEGER);
  83. PROCEDURE WrStr    (F: File; V: ARRAY OF CHAR);
  84. PROCEDURE WrStrAdj (F: File; S: ARRAY OF CHAR;
  85.                     Length: INTEGER);
  86. PROCEDURE WrLn     (F: File);
  87. PROCEDURE WrCharRep(F: File; V: CHAR; Count: CARDINAL );
  88. PROCEDURE WrBin    (F: File;
  89.                     Buf: ARRAY OF BYTE; Count: CARDINAL);
  90. PROCEDURE RdChar   (F: File) : CHAR;
  91. PROCEDURE RdBool   (F: File) : BOOLEAN;
  92. PROCEDURE RdShtInt (F: File) : SHORTINT;
  93. PROCEDURE RdInt    (F: File) : INTEGER;
  94. PROCEDURE RdLngInt (F: File) : LONGINT;
  95. PROCEDURE RdShtCard(F: File) : SHORTCARD;
  96. PROCEDURE RdCard   (F: File) : CARDINAL;
  97. PROCEDURE RdLngCard(F: File) : LONGCARD;
  98. PROCEDURE RdShtHex (F: File) : SHORTCARD;
  99. PROCEDURE RdHex    (F: File) : CARDINAL;
  100. PROCEDURE RdLngHex (F: File) : LONGCARD;
  101. PROCEDURE RdReal   (F: File) : REAL;
  102. PROCEDURE RdLngReal(F: File) : LONGREAL;
  103. PROCEDURE RdItem   (F: File; VAR V: ARRAY OF CHAR);
  104. PROCEDURE RdStr    (F: File; VAR V: ARRAY OF CHAR);
  105. PROCEDURE RdBin    (F: File;
  106.                     VAR Buf: ARRAY OF BYTE;
  107.                     Count: CARDINAL) : CARDINAL;
  108.  
  109. (*********************************************************)
  110. (*                       Ende FIO                        *)
  111.