/* interrupt vectors */
#define PCINT   0x14
#define DOSINT  0x21

/* General definition */
#define TRUE    0
#define FALSE   1
#define SUCCESS 0
#define OK      0
#define FAIL    -1

/* TYPE definitions */
typedef char            CHAR;
typedef unsigned char   BYTE;
typedef int             INT;
typedef unsigned int    WORD;
typedef unsigned long   DWORD;
typedef void            VOID;


/* PCI Function calls */
#define F_OPEN          0xC0    /* Open port */
#define F_PUTC          0xC1    /* Put character */
#define F_GETC          0xC2    /* Get character */
#define F_WRITE         0xC3    /* Write characters */
#define F_READ          0xC4    /* Read characters */
#define F_STATUS        0xC5    /* Get port status */
#define F_DOQSPC        0xC6    /* Return available output queue space */
#define F_DIQCNT        0xC7    /* Return available data in input queue */
#define F_MAXCARD       0xC8    /* Return maximum cards installed */
#define F_MAXPORT       0xC9    /* Return maximum ports on specified card */
#define F_RESETDOQ      0xCA    /* Reset output queue */
#define F_RESETDIQ      0xCB    /* Reset input queue */
#define F_RESETPCI      0xCC    /* Reset PCI */
#define F_CLOSE         0xCD    /* Close */
#define F_GETSTATUS     0xCE    /* Control port parameters */
#define F_DTR           0xCF    /* Turn DTR on or off */
#define F_RTS           0xD0    /* Turn RTS on or off */
/*#define F_PORTTYPE    0x70    *//* serial, parallel out or parallel in */

/* for driver install checking */
#define F_INSTALL       0x14    /* Check to see if driver was installed */


INT     PciPortOpen(WORD card, WORD port, WORD cflag, WORD iflag);
INT     PciPortPutc(WORD card, WORD port, BYTE c);
INT     PciPortGetc(WORD card, WORD port);
INT     PciPortWrite(WORD card, WORD port, BYTE far *buffer, INT count);
INT     PciPortRead(WORD card, WORD port, BYTE far *buffer, INT count);
WORD    PciPortStatus(WORD card, WORD port);
INT     PciPortDoqSpace(WORD card, WORD port);
INT     PciPortDiqCount(WORD card, WORD port);
INT     PciPortMaxCard(VOID);
INT     PciPortMaxPort(WORD card);
INT     PciPortResetDoq(WORD card, WORD port);
INT     PciPortResetDiq(WORD card, WORD port);
VOID    PciPortReset(VOID);
INT     PciPortClose(WORD card, WORD port);
WORD    PciPortGetStatus(WORD card, WORD port);
INT     PciPortSetDTR(WORD card, WORD port, INT flag);
INT     PciPortSetRTS(WORD card, WORD port, INT flag);
INT     PciPortPortType(WORD card, WORD port);
INT     PciPortInstall(VOID);
/*****  END  OF  FILE  *****/
