+/* This defines the status record and pertinent data masks\r
+ for values form the parallel port driver.\r
+*/\r
+\r
+struct statRecL{\r
+ unsigned long lptJob; /* Owner of this lpt port, 0 for not in use */\r
+ unsigned long LastErc; /* Result of last device operation */\r
+ unsigned long LastTotal; /* Total bytes moved in last operation */\r
+ unsigned char status; /* Status Byte - Bits defined in Parallel.h */\r
+ unsigned long BufCnt; /* Bytes left in buffer to send */\r
+ unsigned char resvd1; /* */\r
+ unsigned char resvd2; /* */\r
+ unsigned char resvd3; /* */\r
+ unsigned char IRQNum; /* IRQNum for this channel */\r
+ unsigned long IOBase; /* IO base address for hardware */\r
+ unsigned long XBufSize; /* Size of Xmit buffer */\r
+ unsigned long XTimeOut; /* Xmit Timeout in 10ms increments */\r
+ unsigned long resvd4; /* Recv Timeout in 10ms increments */\r
+ unsigned long resvd[6]; /* out to 64 bytes */\r
+ };\r
+\r
+/* Device Driver interface commands (Op numbers)\r
+ NOTE: No "Read" commands are defined for this driver.\r
+ This is a WRITE-ONLY device.\r
+*/\r
+\r
+#define CmdWriteRec 2 /* Write one or more bytes */\r
+#define CmdOpenL 10 /* Open Comm Channel */\r
+#define CmdCloseL 11 /* Close Comm Channel */\r
+#define CmdCloseLU 12 /* Close Comm Channel UNCONDITIONALLY */\r
+#define CmdSetXTO 14 /* Set Xmit timeout 10ms incs in dLBA */\r
+#define CmdWriteB 32 /* write a single byte */\r
+\r
+#define LPTBUSY 0x80 /* 1 = NOT Busy */\r
+#define LPTACK 0x40 /* 1 = Acknowledge */\r
+#define LPTPAPER 0x20 /* 1 = Out of paper */\r
+#define LPTSELECT 0x10 /* 1 = Selected */\r
+#define LPTIOERR 0x08 /* 1 = I/O Error */\r
+\r
+#define ErcBadOpNum 503 /* Standard Device error for bad cmd number */\r
+#define ErcXmitTimeoutL 901 /* Xmit Buffer never Emptied */\r
+#define ErcDataNotSent 902 /* Xmit buffer not empty */\r
+#define ErcNotOpenL 907 /* Channel not open... */\r
+#define ErcChannelOpenL 909 /* It's already open... */\r
+#define ErcNotOwnerL 912 /* It's opened by someone else... */\r
+#define ErcBadIOBaseL 924 /* if 0 */\r
+#define ErcBadInitSizeL 927 /* At least 40 bytes for this version */\r