|
|
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: 3524 (0xdc4)
Types: TextFile
Names: »IO.ENV«
└─⟦623820077⟧ Bits:30010493 DVBS1.SW50070.rel.1.0-2 SW500700 MegaSwitch Development Toolset Rel 1.0 DISK 2/2
└─⟦this⟧ »PAXENV\IO.ENV«
ioenv;
(***********************************************************************)
(* *)
(* IOENVIRONMENT *)
(* *)
(* DATE AUTHOR CHANGES *)
(* *)
(* 89.01.17 tog first version *)
(* 90.01.14 jkk merged with RC3502 ioenv *)
(* 91.03.12 tog inname on RC5000 has family parameter *)
(* *)
(***********************************************************************)
const
linelength = 80;
$if target=RC5000
firstindex = 20;
$elseif fln>0
firstindex=6+alfalength;
$else
firstindex=alfalength;
$endif
lastindex = firstindex + linelength - 1;
type
opbuffer = record
$if target=RC5000
dummy1, dummy2: integer;
$elseif fln>0
first,
last,
next:integer;
$endif
name: array(1..12) of char;
chars: array(firstindex..lastindex) of char;
end;
zone = record
driver: ^mailbox;
answer: ^mailbox;
dataready: mailbox;
free: mailbox;
cur: reference;
$IF target=RC5000
u2val: integer;
state: integer;
$ELSE
u2val:byte;
state:byte;
$ENDIF
readstate: integer;
nextp: integer;
lastpos: integer;
end;
procedure inchar (var z: zone; var t: char);
EXTERNAL;
procedure inhex (var z: zone; var num: integer);
EXTERNAL;
procedure ininteger (var z: zone; var num: integer);
EXTERNAL;
$IF target<>RC5000
procedure inname(var z: zone;var name: alfa);
EXTERNAL;
$ELSE
procedure inname(var z: zone;var name: string);
EXTERNAL;
$ENDIF
procedure opanswer (var msg: reference; var z: zone);
EXTERNAL;
procedure openopzone (var z: zone; driv, answ: ^mailbox;
bufs: integer; var home: pool; v1, v2, v3, v4: byte);
EXTERNAL;
procedure opin (var z: zone);
EXTERNAL;
function optest (var z: zone): boolean;
EXTERNAL;
procedure opwait (var z: zone; var inputpool: pool);
EXTERNAL;
procedure outchar (var z: zone; t: char);
EXTERNAL;
procedure outend (var z: zone);
EXTERNAL;
procedure outfill (var z: zone; filler: char; rep: integer);
EXTERNAL;
procedure outhex (var z: zone; num, pos: integer);
EXTERNAL;
procedure outinteger (var z: zone; num, pos: integer);
EXTERNAL;
procedure outnl (var z: zone);
EXTERNAL;
procedure printmessage(var z: zone; var r: reference;
firstindex, lastindex, words_per_line: integer);
EXTERNAL;
$IF target<>RC5000
procedure indouble(var z:zone;var d:double);
EXTERNAL;
procedure outaddr(var z:zone;a:addr);
EXTERNAL;
procedure outalfa(var z:zone;inspect text:alfa);
EXTERNAL;
procedure outdouble(var z:zone;num:double;pos:integer);
EXTERNAL;
procedure outdate(var z:zone;date:coded_date);
EXTERNAL;
procedure outtime(var z:zone;time:coded_time);
EXTERNAL;
$ELSE
procedure outstring (var z: zone; textstring: string);
EXTERNAL;
procedure outdate (var z: zone; inspect date: coded_date);
EXTERNAL;
procedure outtime (var z: zone; inspect time: coded_time);
EXTERNAL;
$ENDIF
. (* end ioenv *)