From: Richard Burgess <> Date: Mon, 5 Dec 1994 18:48:16 +0000 (+0000) Subject: autocommit for file dated 1994-12-05 18:48:16 X-Git-Url: https://pd.if.org/git/?p=mmurtl;a=commitdiff_plain;h=bad464cac04614b85376cf89c05b7e7e4df6b166 autocommit for file dated 1994-12-05 18:48:16 --- diff --git a/ossource/rs232.h b/ossource/rs232.h new file mode 100644 index 0000000..7b1a7de --- /dev/null +++ b/ossource/rs232.h @@ -0,0 +1,65 @@ +/* RS232.H */ + +#define MIN_BAUD 150l +#define MAX_BAUD 38400l +#define NO_PAR 0 +#define EV_PAR 1 +#define OD_PAR 2 + +#define ErcRecvTimeout 800 /* Recv Buffer Empty */ +#define ErcXmitTimeout 801 /* Xmit Buffer never Emptied */ +#define ErcRcvBufOvr 802 /* Receive buffer overrun */ +#define ErcBadPort 803 /* Invalid port on OpenCommC */ +#define ErcRcvBufOvr 805 /* Buffer full!!! */ +#define ErcNotOpen 807 /* Channel not open... */ +#define ErcChannelOpen 809 /* It's already open... */ +#define ErcNotOwner 812 /* It's opened by someone else... */ +#define ErcBadBaud 820 /* 150-38400 */ +#define ErcBadParity 821 /* 0, 1 or 2 */ +#define ErcBadDataBits 822 /* Must be 5-8 */ +#define ErcBadStopBits 823 /* Must be 1 or 2 */ +#define ErcBadIOBase 824 /* if 0 */ +#define ErcBadCommIRQ 825 /* < 3 */ +#define ErcBadInitSize 827 /* At least 40 bytes for this version */ + + +struct statRecC{ + unsigned long commJob; /* Owner of this comms port, 0 for not in use */ + unsigned long LastErc; /* Result of last device operation */ + unsigned long LastTotal; /* Total bytes moved in last operation */ + unsigned long Baudrate; /* Baudrate for this port, 150 - 38400 */ + unsigned char parity; /* Parity for this port, 0=none, 1=even, 2=odd */ + unsigned char databits; /* nDatabits for this port, 5-8 */ + unsigned char stopbits; /* stop bits for this port, 1 or 2 */ + unsigned char IRQNum; /* IRQNum for this channel */ + unsigned long IOBase; /* IO base address for hardware */ + unsigned long XBufSize; /* Size of Xmit buffer */ + unsigned long RBufSize; /* Size of Recv Buffer */ + unsigned long XTimeOut; /* Xmit Timeout in 10ms increments */ + unsigned long RTimeOut; /* Recv Timeout in 10ms increments */ + unsigned long resvd[6]; /* out to 64 bytes */ + }; + +/* Device Driver interface commands (Op numbers) */ + +#define CmdReadRec 1 /* Read one or more bytes */ +#define CmdWriteRec 2 /* Write one or more bytes */ +#define CmdOpenC 10 /* Open Comm Channel */ +#define CmdCloseC 11 /* Close Comm Channel */ +#define CmdDiscardRcv 12 /* Trash input buffer */ +#define CmdSetRTO 13 /* Set Recv timeout 10ms incs in dLBA */ +#define CmdSetXTO 14 /* Set Xmit timeout 10ms incs in dLBA */ +#define CmdSetDTR 15 /* Set DTR (On) */ +#define CmdSetRTS 16 /* Set CTS (On) */ +#define CmdReSetDTR 17 /* Set DTR (On) */ +#define CmdReSetRTS 18 /* Set CTS (On) */ +#define CmdBreak 19 /* Send BREAK (10ms incs in dLBA) */ +#define CmdGetDC 20 /* Returns byte TRUE to pData if CD ON */ +#define CmdGetDSR 21 /* Returns byte TRUE to pData if DSR ON */ +#define CmdGetCTS 22 /* Returns byte TRUE to pData if CTS ON */ +#define CmdGetRI 23 /* Returns byte TRUE to pData if RI ON */ +#define CmdReadB 31 /* Recv a single byte */ +#define CmdWriteB 32 /* Xmit a single byte */ + + +/*********************** END of COMMDRV.H *****************************/