]> git.sur5r.net Git - cc65/blobdiff - include/pce.h
Merge pull request #629 from blackystardust/master
[cc65] / include / pce.h
index 6f18ba5010562797b36f235cb03fd08d01fd736a..7744d0148f63a5095f94f298870e012c969fb82f 100644 (file)
 #  error This module may only be used when compiling for the PCE!
 #endif
 
-#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_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_ENTER                  13
-#define CH_PI                     18
+#define CH_ENTER                13
+#define CH_PI                   18
 
 /* Color defines (CBM compatible, for conio) */
 #define COLOR_BLACK             0x00
 #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_SELECT              6
-#define JOY_RUN                 7
+extern void pce_stdjoy_joy[];   /* Referred to by joy_static_stddrv[] */
 
-void waitvblank (void);
-/* Wait for the vertical blanking */
+void waitvsync (void);
+/* Wait for start of the next frame */
 
 /* NOTE: all PCE are NTSC */
-#define get_tv() TV_NTSC
+#define get_tv()                TV_NTSC
 /* Return the video mode the machine is using. */
 
 /* End of pce.h */