From 3119be2a1e0d174b7ff4ee7bf485bab3122d26a6 Mon Sep 17 00:00:00 2001 From: mrdudz Date: Thu, 16 Jul 2015 17:33:00 +0200 Subject: [PATCH] added some cbm-like gfx chars to draw lines and boxes --- include/pce.h | 26 +++++----- libsrc/pce/readme.txt | 2 - libsrc/pce/vga.inc | 112 +++++++++++++++++++++++++++++++++++++----- 3 files changed, 114 insertions(+), 26 deletions(-) diff --git a/include/pce.h b/include/pce.h index 74b6409e1..27f70de0f 100644 --- a/include/pce.h +++ b/include/pce.h @@ -36,16 +36,20 @@ # 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_ULCORNER 0x10 -#define CH_URCORNER 0x10 -#define CH_LLCORNER 0x10 -#define CH_LRCORNER 0x10 +#define CH_ENTER 13 +#define CH_PI 18 /* Color defines (CBM compatible, for conio) */ #define COLOR_BLACK 0x00 @@ -79,14 +83,12 @@ extern void pce_stdjoy_joy[]; /* Referred to by joy_static_stddrv[] */ #define JOY_START 6 #define JOY_SELECT 7 -/* FIXME: not implemented */ void waitvblank (void); /* Wait for the vertical blanking */ -/* all PCE are NTSC */ +/* NOTE: all PCE are NTSC */ #define get_tv() TV_NTSC /* Return the video mode the machine is using. */ - /* End of pce.h */ #endif diff --git a/libsrc/pce/readme.txt b/libsrc/pce/readme.txt index 7dd857f21..243a07417 100644 --- a/libsrc/pce/readme.txt +++ b/libsrc/pce/readme.txt @@ -6,8 +6,6 @@ joystick support should get verified on real hw - the masks for buttons may be wrong. - 6 button gamepads are different and need slightly different code -some graphical petscii chars should get added to the charset - interruptor support in crt0 (and cfg) is missing - clock() should be hooked to a VBL interrupt diff --git a/libsrc/pce/vga.inc b/libsrc/pce/vga.inc index 2f9408f9a..b5c4b27fd 100644 --- a/libsrc/pce/vga.inc +++ b/libsrc/pce/vga.inc @@ -2,18 +2,106 @@ ; VGA charset for the PC-Engine conio implementation .byte $00, $00, $00, $00, $00, $00, $00, $00 - .byte $7E, $81, $A5, $81, $BD, $99, $81, $7E - .byte $7E, $FF, $DB, $FF, $C3, $E7, $FF, $7E - .byte $6C, $FE, $FE, $FE, $7C, $38, $10, $00 - .byte $10, $38, $7C, $FE, $7C, $38, $10, $00 - .byte $38, $7C, $38, $FE, $FE, $7C, $38, $7C - .byte $10, $10, $38, $7C, $FE, $7C, $38, $7C - .byte $00, $00, $18, $3C, $3C, $18, $00, $00 - .byte $FF, $FF, $E7, $C3, $C3, $E7, $FF, $FF - .byte $00, $3C, $66, $42, $42, $66, $3C, $00 - .byte $FF, $C3, $99, $BD, $BD, $99, $C3, $FF - .byte $0F, $07, $0F, $7D, $CC, $CC, $CC, $78 - .byte $3C, $66, $66, $66, $3C, $18, $7E, $18 + ;;.byte $7E, $81, $A5, $81, $BD, $99, $81, $7E + .byte %00000000 + .byte %00000000 + .byte %00000000 + .byte %11111111 + .byte %00000000 + .byte %00000000 + .byte %00000000 + .byte %00000000 + ;;.byte $7E, $FF, $DB, $FF, $C3, $E7, $FF, $7E + .byte %00010000 + .byte %00010000 + .byte %00010000 + .byte %00010000 + .byte %00010000 + .byte %00010000 + .byte %00010000 + .byte %00010000 + ;;.byte $6C, $FE, $FE, $FE, $7C, $38, $10, $00 + .byte %00010000 + .byte %00010000 + .byte %00010000 + .byte %11111111 + .byte %00010000 + .byte %00010000 + .byte %00010000 + .byte %00010000 + ;;.byte $10, $38, $7C, $FE, $7C, $38, $10, $00 + .byte %00000000 + .byte %00000000 + .byte %00000000 + .byte %00011111 + .byte %00010000 + .byte %00010000 + .byte %00010000 + .byte %00010000 + ;;.byte $38, $7C, $38, $FE, $FE, $7C, $38, $7C + .byte %00000000 + .byte %00000000 + .byte %00000000 + .byte %11110000 + .byte %00010000 + .byte %00010000 + .byte %00010000 + .byte %00010000 + ;;.byte $10, $10, $38, $7C, $FE, $7C, $38, $7C + .byte %00010000 + .byte %00010000 + .byte %00010000 + .byte %00011111 + .byte %00000000 + .byte %00000000 + .byte %00000000 + .byte %00000000 + ;;.byte $00, $00, $18, $3C, $3C, $18, $00, $00 + .byte %00010000 + .byte %00010000 + .byte %00010000 + .byte %11110000 + .byte %00000000 + .byte %00000000 + .byte %00000000 + .byte %00000000 + ;;.byte $FF, $FF, $E7, $C3, $C3, $E7, $FF, $FF + .byte %00000000 + .byte %00000000 + .byte %00000000 + .byte %11111111 + .byte %00010000 + .byte %00010000 + .byte %00010000 + .byte %00010000 + ;;.byte $00, $3C, $66, $42, $42, $66, $3C, $00 + .byte %00010000 + .byte %00010000 + .byte %00010000 + .byte %11111111 + .byte %00000000 + .byte %00000000 + .byte %00000000 + .byte %00000000 + ;;.byte $FF, $C3, $99, $BD, $BD, $99, $C3, $FF + .byte %00010000 + .byte %00010000 + .byte %00010000 + .byte %00011111 + .byte %00010000 + .byte %00010000 + .byte %00010000 + .byte %00010000 + ;;.byte $0F, $07, $0F, $7D, $CC, $CC, $CC, $78 + .byte %00010000 + .byte %00010000 + .byte %00010000 + .byte %11110000 + .byte %00010000 + .byte %00010000 + .byte %00010000 + .byte %00010000 + .byte $3C, $66, $66, $66, $3C, $18, $7E, $18 .byte $3F, $33, $3F, $30, $30, $70, $F0, $E0 .byte $7F, $63, $7F, $63, $63, $67, $E6, $C0 .byte $99, $5A, $3C, $E7, $E7, $3C, $5A, $99 -- 2.39.2