/*
*
* The following structure contains the registers that are used to interface
* with the operating system via the QDOSx functions.
*
*/
struct REGS
   {
   long D0,D1,D2,D3;
   char *A0,*A1,*A2,*A3;
   };
/**
*
* Error codes returned by QDOS
*
*/
#define ERR_NC -1   /* operation not complete */
#define ERR_NJ -2   /* not a valid job */
#define ERR_OM -3   /* out of memory */
#define ERR_OR -4   /* our of range */
#define ERR_BO -5   /* buffer overflow */
#define ERR_NO -6   /* channel not open */
#define ERR_NF -7   /* file or device not found */
#define ERR_EX -8   /* file already exists */
#define ERR_IU -9   /* file or device in use */
#define ERR_EF -10   /* end of file */
#define ERR_DF -11   /* drive full */
#define ERR_BN -12   /* bad device name */
#define ERR_TE -13   /* transmission error */
#define ERR_FF -14   /* format failed */
#define ERR_BP -15   /* bad parameter */
#define ERR_FE -16   /* file error */
#define ERR_XP -17   /* error in expression */
#define ERR_OV -18   /* arithmetic overflow */
#define ERR_NI -19   /* not implemented */
#define ERR_RO -20   /* read only */
#define ERR_BL -21   /* bad line in BASIC */

/*
* the following structure defines the standard QDOS file header
*/

struct FS_HEADR 
   {
   long length;      /* file length      */
   char access;      /* file access type   */
   char type;        /* file type      */
   char info[8];     /* type dependent info   */
   short name_sz;    /* size of name      */
   char name[36];    /* name area      */
   char reserved[12];/* reserved for time & date   */
   };
