/* HEADER - P_PRDRV.H Copyright (C) Psion PLC 1991-92 VER DATE BY DESCRIPTION ===== ======== === =========== 1.00F 26/04/90 NSM First relase 1.10F 07/07/92 NSM Second release */ #ifndef P_PRDRV_H #define P_PRDRV_H #include typedef struct { unsigned char topmarg; /* Number of lines in page's top margin */ unsigned char bodylen; /* Total number of lines to print on the page */ unsigned char lftmarg; /* Spaces in page's left margin */ unsigned char bodywid; /* Total number of characters to print on each line */ } P_LAYOUT_DATA; typedef struct { unsigned char escapon; /* Escape processing enabled/disbaled */ unsigned char escchar; /* Escape character */ } P_ESCAPE_DATA; #define P_PRNFLG_ESCAPE 1 /* Set if escape processing is enabled */ #define P_PRNFLG_LAYOUT 2 /* Set if layout processing is enabled */ #define P_PRNTYP_PAR 0 /* Parallel port type */ #define P_PRNTYP_SER 1 /* Serial port type */ #define P_PRNTYP_FIL 2 /* File port type */ typedef struct { unsigned char port_type; /* P_PRNTYP_XXX */ unsigned char nstack; /* number of devices in stack */ unsigned char flags; /* P_PRNFLG_XXX bits */ unsigned char escchar; /* Escape character */ P_LAYOUT_DATA ld; /* Page layout */ } P_PRN_INTF; typedef struct { P_PRN_INTF *pintf; /* Interfacing information */ char *label; /* user label */ char *pname; /* port name */ unsigned char *psetbuf; /* port setup data */ char *driver; /* name of .prd file or NULL for no driver */ } P_PRN_CRK; #ifdef __cplusplus extern "C" { #endif extern int p_prnset(int,void *,int); extern int p_prnget(int,void *); extern int p_prncur(int); extern int p_prnbld(void *,P_PRN_CRK *); extern void p_prncrk(void *,P_PRN_CRK *); #ifdef __cplusplus } #endif #endif // P_PRDRV_H