-#define CH_CROSS 0x10
-
-#define CH_RTEE 0x17
-#define CH_LTEE 0x0f
-
-#define CH_ULCORNER 0x10
-#define CH_URCORNER 0x10
-#define CH_LLCORNER 0x10
-#define CH_LRCORNER 0x10
-
-
-#define TV_NTSC 0
-#define TV_PAL 1
-#define get_tv() 0
-
-#define CLOCKS_PER_SEC 50 // ???
-#define CLK_TCK 50 // ?!?
-
-//#ifndef CH_ENTER
-#define CH_ENTER '\n'
-//#endif
-
-#define CH_STOP 0x08
-
-#define CH_F1 0x14
-#define CH_F3 0x15
-#define CH_F5 0x16
-#define CH_F7 0x17
-
-#define CH_CURS_UP 0x01
-#define CH_CURS_DOWN 0x02
-
-#ifndef CH_CURS_LEFT
-#define CH_CURS_LEFT 0x03
+/*****************************************************************************/
+/* */
+/* pce.h */
+/* */
+/* PC-Engine system-specific definitions */
+/* */
+/* */
+/* */
+/* (C) 2015, Groepaz/Hitmen */
+/* */
+/* */
+/* This software is provided 'as-is', without any expressed or implied */
+/* warranty. In no event will the authors be held liable for any damages */
+/* arising from the use of this software. */
+/* */
+/* Permission is granted to anyone to use this software for any purpose, */
+/* including commercial applications, and to alter it and redistribute it */
+/* freely, subject to the following restrictions: */
+/* */
+/* 1. The origin of this software must not be misrepresented; you must not */
+/* claim that you wrote the original software. If you use this software */
+/* in a product, an acknowledgment in the product documentation would be */
+/* appreciated but is not required. */
+/* 2. Altered source versions must be plainly marked as such, and must not */
+/* be misrepresented as being the original software. */
+/* 3. This notice may not be removed or altered from any source */
+/* distribution. */
+/* */
+/*****************************************************************************/
+
+#ifndef _PCE_H
+#define _PCE_H
+
+/* Check for errors */
+#if !defined(__PCE__)
+# error This module may only be used when compiling for the PCE!
#endif
-#ifndef CH_CURS_RIGHT
-#define CH_CURS_RIGHT 0x04
+#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
+
+/* Color defines (CBM-compatible, for conio) */
+#define COLOR_BLACK 0x00
+#define COLOR_WHITE 0x01
+#define COLOR_RED 0x02
+#define COLOR_CYAN 0x03
+#define COLOR_VIOLET 0x04
+#define COLOR_GREEN 0x05
+#define COLOR_BLUE 0x06
+#define COLOR_YELLOW 0x07
+#define COLOR_ORANGE 0x08
+#define COLOR_BROWN 0x09
+#define COLOR_LIGHTRED 0x0A
+#define COLOR_GRAY1 0x0B
+#define COLOR_GRAY2 0x0C
+#define COLOR_LIGHTGREEN 0x0D
+#define COLOR_LIGHTBLUE 0x0E
+#define COLOR_GRAY3 0x0F
+
+#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
+
+/* The addresses of the static drivers */
+extern void pce_stdjoy_joy[]; /* Referred to by joy_static_stddrv[] */
+
+void waitvsync (void);
+/* Wait for start of the next frame */
+
+/* NOTE: all PCEs are NTSC. */
+#define get_tv() TV_NTSC
+/* Return the video mode the machine is using. */
+
+/* End of pce.h */
#endif
-
-#define CH_ESC 8
-
-#define CH_DEL 20
-
-/* Color defines */
-#define COLOR_BLACK 0x00
-#define COLOR_WHITE 0x01
-#define COLOR_RED 0x02
-#define COLOR_CYAN 0x03
-#define COLOR_VIOLET 0x04
-#define COLOR_GREEN 0x05
-#define COLOR_BLUE 0x06
-#define COLOR_YELLOW 0x07
-#define COLOR_ORANGE 0x08
-#define COLOR_BROWN 0x09
-#define COLOR_LIGHTRED 0x0A
-#define COLOR_GRAY1 0x0B
-#define COLOR_GRAY2 0x0C
-#define COLOR_LIGHTGREEN 0x0D
-#define COLOR_LIGHTBLUE 0x0E
-#define COLOR_GRAY3 0x0F
-
-#define JOY_FIRE_B 5
-#define JOY_START 6
-#define JOY_SELECT 7
-
-/*
-void __fastcall__ waitvblank(void);
-
-unsigned char __fastcall__ cpeekcharxy(unsigned char x,unsigned char y);
-unsigned char __fastcall__ cpeekchar(void);
-unsigned char __fastcall__ cpeekcolxy(unsigned char x,unsigned char y);
-unsigned char __fastcall__ cpeekcol(void);
-*/