/* pardev definitions */
typedef unsigned short int16;
typedef unsigned long int32;

/* change the following when you parallel-card is on a different address */
#define LPTADDR 0x278

#define INTERRUPT void interrupt
#define NULLVIFP (INTERRUPT (*)())0

/* PARnet packet header */
typedef struct
       { int16 port;
         int16 chksum;
         int32 length;
       } Header;

/* in listen.c */
int parint(int dev);

/* in parkern.asm */
extern void paraddress(int16,int16);
extern int pardataready(void);
extern int parread(unsigned char *,int16);
extern int parwrite(int16, unsigned char *,int16);
extern int parreadV();
extern int parwriteV();

/* in pardev.c */
extern void par_init(int16,int16);
extern int par_stop(void);

/* in parvec.asm */
extern INTERRUPT parisr(void);
extern int16 get16(char *);
extern int32 get32(char *);
extern char *put16(char *, int16);
extern char *put32(char *, int32);
