program t66_files; { t66 -- FILE types: `text' and `file of T'. CALC.PAS:144 is MCFile : file of CellRec; -- File to store sheets in A file variable is our own control block (FileVarSize = 4 bytes: the DOS handle and a mode word), because this runtime does unbuffered INT 21h I/O where TP3 keeps a 128-byte buffer inside the variable - a recorded divergence. `file of T' parses its element type for the RECORD size a Read/Write moves (here 2 bytes, an Integer); `text' is one byte per element. This increment is the TYPES and the variable layout only. The file operations - Assign, Reset, Rewrite, Close, EndOfFile, IoResult, and read/write with a leading file argument - are the next one, and are loud (unknown identifier) until then, not silently wrong. } var t : text; g : file of Integer; begin writeln ('files declared') end.