|
|
DataMuseum.dkPresents historical artifacts from the history of: DANOSI |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DANOSI Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - download
Length: 988 (0x3dc)
Types: TextFile
Names: »BYTEIO.PAS«
└─⟦e2123b2a1⟧ Bits:30010498 DVBS1.SW2103.src.1.8-1 Pascal TOOLS JTAS 1989-04-26 LEIF NIELSEN E.d.
└─⟦this⟧ »UNITS\BYTEIO.PAS«
UNIT ByteIO;\r
INTERFACE\r
VAR\r
Source, Destination : FILE;\r
\r
FUNCTION GetByte: byte;\r
{ GetByte retrievs one byte from the untyped file Source. }\r
\r
{============================================================================}\r
IMPLEMENTATION\r
CONST\r
RecSize = 128;\r
BufSize = 160;\r
BufPos : word = RecSize;\r
BufNo : word = BufSize;\r
RecsRead : word = 1;\r
VAR\r
InputBuffer : ARRAY [1..BufSize, 1..RecSize] OF byte;\r
\r
FUNCTION GetByte: byte;\r
BEGIN\r
BufPos := BufPos + 1;\r
IF BufPos > RecSize THEN\r
BEGIN\r
BufPos := 1;\r
BufNo := BufNo + 1;\r
IF BufNo > BufSize THEN\r
BEGIN\r
BufNo := 1;\r
IF RecsRead > 0 THEN BlockRead(Source,InputBuffer,BufSize,RecsRead);\r
IF RecsRead <= 0 THEN InputBuffer[1,1] := 26;\r
END;\r
END;\r
GetByte := InputBuffer[ BufNo, BufPos ];\r
END; { GetByte }\r
\r
END.\r