Added TGI_COLOR_... macros to be used both for hires and lores. Introduced color mapping on lores to allow for common color macros.

git-svn-id: svn://svn.cc65.org/cc65/trunk@4992 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
ol.sc
2011-04-25 11:16:56 +00:00
parent 98fdd6f792
commit 012e3e456a
3 changed files with 87 additions and 79 deletions

View File

@@ -49,65 +49,63 @@
/* Color Defines */
#define COLOR_BLACK 0x00
#define COLOR_GREEN 0x01
#define COLOR_VIOLET 0x02
#define COLOR_WHITE 0x03
#define COLOR_BLACK2 0x04
#define COLOR_ORANGE 0x05
#define COLOR_BLUE 0x06
#define COLOR_WHITE2 0x07
/* Color defines */
#define COLOR_BLACK 0x00
#define COLOR_WHITE 0x01
#define LORES_BLACK 0x00
#define LORES_MAGENTA 0x01
#define LORES_DARKBLUE 0x02
#define LORES_VIOLET 0x03
#define LORES_DARKGREEN 0x04
#define LORES_GRAY 0x05
#define LORES_BLUE 0x06
#define LORES_CYAN 0x07
#define LORES_BROWN 0x08
#define LORES_ORANGE 0x09
#define LORES_GRAY2 0x0A
#define LORES_PINK 0x0B
#define LORES_GREEN 0x0C
#define LORES_YELLOW 0x0D
#define LORES_AQUA 0x0E
#define LORES_WHITE 0x0F
/* TGI color defines */
#define TGI_COLOR_BLACK 0x00
#define TGI_COLOR_GREEN 0x01
#define TGI_COLOR_VIOLET 0x02
#define TGI_COLOR_WHITE 0x03
#define TGI_COLOR_BLACK2 0x04
#define TGI_COLOR_ORANGE 0x05
#define TGI_COLOR_BLUE 0x06
#define TGI_COLOR_WHITE2 0x07
#define TGI_COLOR_MAGENTA TGI_COLOR_BLACK2
#define TGI_COLOR_DARKBLUE TGI_COLOR_WHITE2
#define TGI_COLOR_DARKGREEN 0x08
#define TGI_COLOR_GRAY 0x09
#define TGI_COLOR_CYAN 0x0A
#define TGI_COLOR_BROWN 0x0B
#define TGI_COLOR_GRAY2 0x0C
#define TGI_COLOR_PINK 0x0D
#define TGI_COLOR_YELLOW 0x0E
#define TGI_COLOR_AQUA 0x0F
/* Characters codes */
#define CH_ENTER 0x0D
#define CH_ESC 0x1B
#define CH_CURS_LEFT 0x08
#define CH_CURS_RIGHT 0x15
#define CH_ENTER 0x0D
#define CH_ESC 0x1B
#define CH_CURS_LEFT 0x08
#define CH_CURS_RIGHT 0x15
#define CH_ULCORNER '+'
#define CH_URCORNER '+'
#define CH_LLCORNER '+'
#define CH_LRCORNER '+'
#define CH_TTEE '+'
#define CH_BTEE '+'
#define CH_LTEE '+'
#define CH_RTEE '+'
#define CH_CROSS '+'
#define CH_ULCORNER '+'
#define CH_URCORNER '+'
#define CH_LLCORNER '+'
#define CH_LRCORNER '+'
#define CH_TTEE '+'
#define CH_BTEE '+'
#define CH_LTEE '+'
#define CH_RTEE '+'
#define CH_CROSS '+'
/* Return codes for get_ostype */
#define APPLE_UNKNOWN 0x00
#define APPLE_II 0x10 /* Apple ][ */
#define APPLE_IIPLUS 0x11 /* Apple ][+ */
#define APPLE_IIIEM 0x20 /* Apple /// (emulation) */
#define APPLE_IIE 0x30 /* Apple //e */
#define APPLE_IIEENH 0x31 /* Apple //e (enhanced) */
#define APPLE_IIECARD 0x40 /* Apple //e Option Card */
#define APPLE_IIC 0x50 /* Apple //c */
#define APPLE_IIC35 0x51 /* Apple //c (3.5 ROM) */
#define APPLE_IICEXP 0x53 /* Apple //c (Mem. Exp.) */
#define APPLE_IICREV 0x54 /* Apple //c (Rev. Mem. Exp.) */
#define APPLE_IICPLUS 0x55 /* Apple //c Plus */
#define APPLE_IIGS 0x80 /* Apple IIgs */
#define APPLE_IIGS1 0x81 /* Apple IIgs (ROM 1) */
#define APPLE_IIGS3 0x83 /* Apple IIgs (ROM 3) */
#define APPLE_UNKNOWN 0x00
#define APPLE_II 0x10 /* Apple ][ */
#define APPLE_IIPLUS 0x11 /* Apple ][+ */
#define APPLE_IIIEM 0x20 /* Apple /// (emulation) */
#define APPLE_IIE 0x30 /* Apple //e */
#define APPLE_IIEENH 0x31 /* Apple //e (enhanced) */
#define APPLE_IIECARD 0x40 /* Apple //e Option Card */
#define APPLE_IIC 0x50 /* Apple //c */
#define APPLE_IIC35 0x51 /* Apple //c (3.5 ROM) */
#define APPLE_IICEXP 0x53 /* Apple //c (Mem. Exp.) */
#define APPLE_IICREV 0x54 /* Apple //c (Rev. Mem. Exp.) */
#define APPLE_IICPLUS 0x55 /* Apple //c Plus */
#define APPLE_IIGS 0x80 /* Apple IIgs */
#define APPLE_IIGS1 0x81 /* Apple IIgs (ROM 1) */
#define APPLE_IIGS3 0x83 /* Apple IIgs (ROM 3) */
extern unsigned char _dos_type;
/* Valid _dos_type values:
@@ -140,8 +138,8 @@ extern unsigned char _dos_type;
/* The file stream implementation and the POSIX I/O functions will use the
* following variables to determine the file type and the aux type to use.
*/
extern unsigned char _filetype; /* Default 6 */
extern unsigned int _auxtype; /* Default 0 */
extern unsigned char _filetype; /* Default 6 */
extern unsigned int _auxtype; /* Default 0 */
@@ -168,12 +166,12 @@ int __fastcall__ rootdir (unsigned char drive, char* buf);
* ProDOS 8 drive. Returns 0 on success and -1 on error.
*/
#define ser_apple2_slot(num) ser_ioctl (0, (void*) (num))
#define ser_apple2_slot(num) ser_ioctl (0, (void*) (num))
/* Select a slot number from 1 to 7 prior to ser_open.
* The default slot number is 2.
*/
#define tgi_apple2_mix(onoff) tgi_ioctl (0, (void*) (onoff))
#define tgi_apple2_mix(onoff) tgi_ioctl (0, (void*) (onoff))
/* If onoff is 1, graphics/text mixed mode is enabled.
* If onoff is 0, graphics/text mixed mode is disabled.
*/
@@ -182,9 +180,9 @@ int __fastcall__ rootdir (unsigned char drive, char* buf);
* to be overlaid by macros with the same names, saving the function call
* overhead.
*/
#define _textcolor(color) COLOR_WHITE
#define _bgcolor(color) COLOR_BLACK
#define _bordercolor(color) COLOR_BLACK
#define _textcolor(color) COLOR_WHITE
#define _bgcolor(color) COLOR_BLACK
#define _bordercolor(color) COLOR_BLACK