]> git.sur5r.net Git - cc65/blobdiff - include/pce.h
added waitvblank and fixed get_tv
[cc65] / include / pce.h
index 8135679a2d6de26913370e63a979d3d741768c22..74b6409e189803412087f4eb1760a60ac332648c 100644 (file)
@@ -1,74 +1,92 @@
-#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
+/* FIXME: the respective characters are not present in the VGA charset (yet) */
+#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
+
+/* 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
+
+/* 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[] */
+
+#define JOY_FIRE_B              5
+#define JOY_START               6
+#define JOY_SELECT              7
+
+/* FIXME: not implemented */
+void waitvblank (void);
+/* Wait for the vertical blanking */
+
+/* all PCE 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);
-*/