-- File: RS232CEnvironment.mesa
-- LastEdited: August 4, 1980  3:38 PM   By: Victor Schwartz
-- LastEdited: May 9, 1983 1:46 pm   By: Andrew Birrell  
-- This DEFINITIONS module defines basic, (hopefully) unchanging TYPEs required both by the RS232C channel (RS232C) and the RS232C device face (RS232CFace).  There location here prevents interdependencies.

DIRECTORY
  PrincOps USING [ByteBltBlock];

RS232CEnvironment: DEFINITIONS =
  BEGIN
  AutoRecognitionOutcome: TYPE = RECORD [[0..15]];
  CharLength: TYPE = [5..8];
  CompletionHandle: TYPE [2];
  Correspondent: TYPE = RECORD [[0..255]];
  LineSpeed: TYPE = {
    bps50, bps75, bps110, bps134p5, bps150, bps300, bps600, bps1200, bps2400,
    bps3600, bps4800, bps7200, bps9600};
  LineType: TYPE = {
    bitSynchronous, byteSynchronous, asynchronous, autoRecognition};
  Parity: TYPE = {none, odd, even, one, zero};
  PhysicalRecordHandle: TYPE = POINTER TO PhysicalRecord;
  PhysicalRecord: TYPE = RECORD [header, body, trailer: Block];
  StopBits: TYPE = [1..2];
  SyncCount: TYPE = [0..7];
  SyncChar: TYPE = [0..256);
  Block: TYPE = PrincOps.ByteBltBlock;
  END. -- RS232CEnvironment
LOG
Time: January 22, 1980  10:37 AM	By: Victor Schwartz	Action: Created file
Time: August 4, 1980  3:36 PM	By: Victor Schwartz	Action: Change CompletionHandle to an EXPORTed type, opaque to the client.
Time: May 6, 1983 3:20 pm	By: Andrew Birrell	Action: Cedar nucleus conversion.