DIRECTORY TTYPortEnvironment USING [CharacterLength, LineSpeed, Parity, StopBits]; TTYPort: DEFINITIONS = BEGIN CharsAvailable: PROCEDURE [channel: ChannelHandle] RETURNS [number: CARDINAL]; Create: PROCEDURE [lineNumber: CARDINAL] RETURNS [ChannelHandle]; Delete: PROCEDURE [channel: ChannelHandle]; Get: PROCEDURE [channel: ChannelHandle] RETURNS [data: CHARACTER, status: TransferStatus]; GetStatus: PROCEDURE [channel: ChannelHandle] RETURNS [stat: DeviceStatus]; Put: PROCEDURE [channel: ChannelHandle, data: CHARACTER] RETURNS [status: TransferStatus]; Quiesce: PROCEDURE [channel: ChannelHandle]; SendBreak: PROCEDURE [channel: ChannelHandle]; SetParameter: PROCEDURE [channel: ChannelHandle, parameter: Parameter]; StatusWait: PROCEDURE [channel: ChannelHandle, stat: DeviceStatus] RETURNS [newstat: DeviceStatus]; ChannelAlreadyExists, ChannelQuiesced, InvalidLineNumber, NoTTYPortHardware: ERROR; nullChannelHandle: ChannelHandle = NIL; ChannelHandle: TYPE = REF ChannelStatus; ChannelStatus: TYPE; TransferStatus: TYPE = { success, parityError, asynchFramingError, dataLost, breakDetected, aborted, abortedByDelete}; DeviceStatus: TYPE = RECORD [ aborted: BOOLEAN, breakDetected: BOOLEAN, --latched dataTerminalReady: BOOLEAN, readyToGet: BOOLEAN, readyToPut: BOOLEAN, requestToSend: BOOLEAN]; Parameter: TYPE = RECORD [ SELECT parameter: * FROM breakDetectedClear => [breakDetectedClear: BOOLEAN], characterLength => [characterLength: CharacterLength], clearToSend => [clearToSend: BOOLEAN], dataSetReady => [dataSetReady: BOOLEAN], lineSpeed => [lineSpeed: LineSpeed], parity => [parity: Parity], stopBits => [stopBits: StopBits], ENDCASE]; CharacterLength: TYPE = TTYPortEnvironment.CharacterLength; LineSpeed: TYPE = TTYPortEnvironment.LineSpeed; Parity: TYPE = TTYPortEnvironment.Parity; StopBits: TYPE = TTYPortEnvironment.StopBits; END. -- TTYPort <TTYPort.mesa Copyright (C) Xerox Corporation 1982, 1985. All rights reserved. last edited: 11-Aug-81 11:49:53 By: Luniewski 27-Aug-82 11:41:57 By: Loretta 5-Apr-83 21:21:26 By: Johnsson Tim Diebert: November 16, 1985 7:42:24 pm PST Procedures, alphabetically SIGNALs and ERRORs Constants Type Definitions ʳ˜šœ ™ Jšœ@™@Jšœ™Jšœ!™!Jšœ™Jšœ™Jšœ-™-—J˜J˜šÏk ˜ Jšœœ0˜H—J˜JšÐlnœ œ˜˜Jšœ™—˜JšÏnœ œœ œ˜NJšŸœ œœœ˜AJšŸœ œ˜+šŸœ œ˜'Jšœ œ˜2—JšŸ œ œœ˜KšŸœ œ œ˜8Jšœ˜!—JšŸœ œ˜,JšŸ œ œ˜.JšŸ œ œ0˜GšŸ œ œ-˜BJšœ˜ ——˜Jšœ™—˜˜LJšœ˜——˜Jšœ ™ —˜Jšœ#œ˜'—˜Jšœ™—˜Jšœœœ˜(Jšœœ˜—˜šœœ˜J˜KJ˜——˜šœœœ˜Jšœ œ˜JšœœÏc ˜"Jšœœ˜Jšœ œ˜Jšœ œ˜Jšœœ˜——˜šœ œœ˜Jšœ˜Jšœ+œ˜4J˜6Jšœœ˜&Jšœœ˜(J˜$J˜J˜!Jšœ˜ ——˜Jšœœ&˜;Jšœ œ ˜/Jšœœ˜)Jšœ œ˜-—˜Jšœ  ˜—J˜J˜J˜J˜—…—b Q