X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=include%2Fpce.h;h=d7cf0a6950de62ca5d98a585287a32b2ab2d1e9d;hb=78daf84f1269ca2ae0c935946b4e336641f889b2;hp=912e0157be786a34f971fc378567f477bfb38b05;hpb=9e1d39a409b02cba9277ec1231863a2c7f99b100;p=cc65 diff --git a/include/pce.h b/include/pce.h index 912e0157b..d7cf0a695 100644 --- a/include/pce.h +++ b/include/pce.h @@ -2,11 +2,11 @@ /* */ /* pce.h */ /* */ -/* PC-Engine system specific definitions */ +/* PC-Engine system-specific definitions */ /* */ /* */ /* */ -/* (C) 2015 Groepaz/Hitmen */ +/* (C) 2015, Groepaz/Hitmen */ /* */ /* */ /* This software is provided 'as-is', without any expressed or implied */ @@ -36,18 +36,22 @@ # error This module may only be used when compiling for the PCE! #endif -/* FIXME: the respective characters are not present in the VGA charset (yet) */ -#define CH_CROSS 0x10 +#define CH_HLINE 1 +#define CH_VLINE 2 +#define CH_CROSS 3 +#define CH_ULCORNER 4 +#define CH_URCORNER 5 +#define CH_LLCORNER 6 +#define CH_LRCORNER 7 +#define CH_TTEE 8 +#define CH_BTEE 9 +#define CH_LTEE 10 +#define CH_RTEE 11 -#define CH_RTEE 0x17 -#define CH_LTEE 0x0f +#define CH_ENTER 13 +#define CH_PI 18 -#define CH_ULCORNER 0x10 -#define CH_URCORNER 0x10 -#define CH_LLCORNER 0x10 -#define CH_LRCORNER 0x10 - -/* Color defines (CBM compatible, for conio) */ +/* Color defines (CBM-compatible, for conio) */ #define COLOR_BLACK 0x00 #define COLOR_WHITE 0x01 #define COLOR_RED 0x02 @@ -65,31 +69,42 @@ #define COLOR_LIGHTBLUE 0x0E #define COLOR_GRAY3 0x0F -#define CLOCKS_PER_SEC 50 // FIXME: is this correct? -#define CLK_TCK 50 // FIXME: is this correct? - #define TV_NTSC 0 #define TV_PAL 1 #define TV_OTHER 2 +/* Masks for joy_read */ +#define JOY_UP_MASK 0x10 +#define JOY_DOWN_MASK 0x40 +#define JOY_LEFT_MASK 0x80 +#define JOY_RIGHT_MASK 0x20 +#define JOY_BTN_1_MASK 0x01 +#define JOY_BTN_2_MASK 0x02 +#define JOY_BTN_3_MASK 0x04 +#define JOY_BTN_4_MASK 0x08 + +#define JOY_BTN_I_MASK JOY_BTN_1_MASK +#define JOY_BTN_II_MASK JOY_BTN_2_MASK +#define JOY_SELECT_MASK JOY_BTN_3_MASK +#define JOY_RUN_MASK JOY_BTN_4_MASK + +#define JOY_BTN_I(v) ((v) & JOY_BTN_I_MASK) +#define JOY_BTN_II(v) ((v) & JOY_BTN_II_MASK) +#define JOY_SELECT(v) ((v) & JOY_SELECT_MASK) +#define JOY_RUN(v) ((v) & JOY_RUN_MASK) + /* No support for dynamically loadable drivers */ -#define DYN_DRV 0 +#define DYN_DRV 0 /* The addresses of the static drivers */ -extern void pce_stdjoy_joy[]; /* Referred to by joy_static_stddrv[] */ - -#define JOY_FIRE_B 5 -#define JOY_START 6 -#define JOY_SELECT 7 +extern void pce_stdjoy_joy[]; /* Referred to by joy_static_stddrv[] */ -/* FIXME: not implemented */ -void waitvblank (void); -/* Wait for the vertical blanking */ +void waitvsync (void); +/* Wait for start of the next frame */ -/* FIXME: not implemented */ -unsigned char get_tv (void); +/* NOTE: all PCEs are NTSC. */ +#define get_tv() TV_NTSC /* Return the video mode the machine is using. */ - /* End of pce.h */ #endif