<> <> <> RavenSlotDriver: DEFINITIONS = BEGIN HyperStore: PROC [ sourcePtr: LONG POINTER TO WORD, destOffset: LONG CARDINAL, wordCount: LONG CARDINAL ]; <> <<>> FallenOffTheEndOfHyperspace: ERROR; <<>> PrintPage: PROC [ slowMargin, fastMargin: NAT, numberOfLines, scanLineLength: NAT, paperSource: PaperSource, paperStacking: PaperStacking ] RETURNS [SuccessCode]; SuccessCode: TYPE = {ok, warning, error}; <> <> <<>> BadParameters: ERROR; DisplayBadStatusInMP: PUBLIC PROC[s:RavenSlotDriver.PrinterStatus]; <> GetStatus: PROC RETURNS [PrinterStatus]; Display: PROC [c0, c1: CHAR]; <> PaperSource: TYPE = MACHINE DEPENDENT {bottom(0), top(1)}; PaperStacking: TYPE = MACHINE DEPENDENT {aligned(0), offset(1)}; PrinterStatus: TYPE = MACHINE DEPENDENT { noStatus(0B), statusRQtimeout(1B), key0(60B), key1(61B), key2(62B), key3(63B), key4(64B), key5(65B), key6(66B), key7(67B), key8(70B), key9(71B), keyClear(72B), keyTest(73B), keyOnLine(74B), keyOffLine(75B), (76B), (77B), warming(100B), standBy(101B), feederFault(102B), (103B), registrationJam(104B), fuserJam(105B), noExit(106B), (107B), interlockOpen(110B), fuserCold(111B), feeding(112B), readyToFeed(113B), displayAcknowledge(114B), parityError(115B), illegalCharacter(116B), illegalSequence(117B), (120B), noPaper(121B), pageSync(122B), pageAtOutputTray(123B), lowToner(124B), goingOffLine(125B), offLine(126B), (127B), outputTrayFull(130B), goingToSleep(131B), statusOverRun(177B) }; outputTrayFullFlag:BOOLEAN; -- look at these for warnings lowTonerFlag:BOOLEAN; END.