TamPorts:
CEDAR
DEFINITIONS
= BEGIN
Word: TYPE = TamDefs.Word;
CharToLevel: PROC [ch: CHAR] RETURNS [level: Ports.Level];
SetPVal: PROC [p: Ports.Port, port: NAT, value: CARD];
GetPVal:
PROC [p: Ports.Port, port:
NAT]
RETURNS [value:
CARD];
HasXs:
PUBLIC
PROC [p: Ports.Port, port:
NAT]
RETURNS [xval:
BOOL];
SetP: PROC [p: Ports.Port, port: NAT, value: CARD];
SetPWord: PROC [p: Ports.Port, port: NAT, value: Word];
ClrP: PROC [p: Ports.Port, port: NAT, xit: BOOL ← FALSE];
CheckP: PROC [p: Ports.Port, port: NAT, value: CARD];
SetX: PROC [p: Ports.Port, port: NAT];
PortToBool: PROC [p: Ports.Port, port: NAT] RETURNS [BOOL];
PortToNat:
PROC [p: Ports.Port, port:
NAT]
RETURNS [
NAT];
PortToCard: PROC [p: Ports.Port, port: NAT] RETURNS [CARD];
PortToWord: PROC [p: Ports.Port, port: NAT] RETURNS [Word];
RopeToLS: PROC [str: Rope.ROPE, ret: Ports.LevelSequence];
GoClock: PROC [p: Ports.Port, clock: NAT, eval: PROC [memory: BOOL ← TRUE], cycles: NAT ← 1, extraEval: BOOL ← FALSE];
END.