-- Copyright (C) 1983 by Xerox Corporation. All rights reserved. -- PhoneFace.mesa, HGM, 31-Oct-83 12:10:12 DIRECTORY Device USING [Type]; PhoneFace: DEFINITIONS = BEGIN phoneLine: Device.Type = LOOPHOLE[15]; -- BootChannelSPP requires this to be an Ethernet krockDeivceOffsetForBooting: CARDINAL = 1000H; maxLines: CARDINAL = 16; Line: TYPE = [0..maxLines); GetLineCount: PROCEDURE RETURNS [lines: CARDINAL]; -- 0 if none TurnOn: PROCEDURE [interruptBits: WORD]; TurnOff: PROCEDURE; ResetLine: PROCEDURE [line: Line]; GetPacketsMissed: PROCEDURE [line: Line] RETURNS [CARDINAL]; QueueOutput: PROCEDURE [ line: Line, iocb: IOCB, buffer: LONG POINTER, bytes: CARDINAL]; GetSendStatus: PROCEDURE [iocb: IOCB] RETURNS [status: Status]; QueueInput: PROCEDURE [ line: Line, iocb: IOCB, buffer: LONG POINTER, bytes: CARDINAL]; GetRecvStatus: PROCEDURE [iocb: IOCB] RETURNS [status: Status]; GetPacketLength: PROCEDURE [iocb: IOCB] RETURNS [bytes: CARDINAL]; Status: TYPE = { pending, ok, underrun, -- Output FIFO went empty before end of packet was set overrun, -- Input data arrived when FIFO was full packetTooLong, -- Input packet didn't fit into buffer crc, otherError}; IOCB: TYPE = LONG POINTER TO ControlBlockRecord; ControlBlockRecord: TYPE; controlBlockSize: READONLY CARDINAL; END.