/* */
/* */
/* */
-/* (C) 2000 Mark Keates <markk@dendrite.co.uk> */
-/* Freddy Offenga <taf_offenga@yahoo.com> */
-/* Christian Groessler <cpg@aladdin.de> */
+/* (C) 2000-2006 Mark Keates <markk@dendrite.co.uk> */
+/* Freddy Offenga <taf_offenga@yahoo.com> */
+/* Christian Groessler <chris@groessler.org> */
/* */
/* */
/* This software is provided 'as-is', without any expressed or implied */
/* Character codes */
#define CH_DELCHR 0xFE /* delete char under the cursor */
+#define CH_ENTER 0x9B
#define CH_ESC 0x1B
#define CH_CURS_UP 28
#define CH_CURS_DOWN 29
#define CH_RTEE 0x04
#define CH_CROSS 0x13
#define CH_HLINE 0x12
-#define CH_VLINE 0x16
+#define CH_VLINE 0x7C
/* color defines */
#define ATARIDOS 0
#define SPARTADOS 1
#define OSADOS 2
-#define MYDOS 3 /* detection currently not implemented */
-#define NODOS 255 /* detection currently not implemented */
+#define MYDOS 3
+#define XDOS 4
+#define NODOS 255
/* Define hardware */
#include <_gtia.h>
};
#define DCB (*(struct __dcb *)0x300)
+/* I/O control block */
+struct __iocb {
+ unsigned char handler; /* handler index number (0xff free) */
+ unsigned char drive; /* device number (drive) */
+ unsigned char command; /* command */
+ unsigned char status; /* status of last operation */
+ void *buffer; /* pointer to buffer */
+ void *put_byte; /* pointer to device's PUT BYTE routine */
+ unsigned int buflen; /* length of buffer */
+ unsigned char aux1; /* 1st auxiliary byte */
+ unsigned char aux2; /* 2nd auxiliary byte */
+ unsigned char aux3; /* 3rd auxiliary byte */
+ unsigned char aux4; /* 4th auxiliary byte */
+ unsigned char aux5; /* 5th auxiliary byte */
+ unsigned char spare; /* spare byte */
+};
+#define ZIOCB (*(struct __iocb *)0x20) /* zero page IOCB */
+#define IOCB (*(struct __iocb *)0x340) /* system IOCB buffers */
+
/* End of atari.h */
#endif /* #ifndef _ATARI_H */