From 43d5bc8fc16f049949f1430f14127e6e19776580 Mon Sep 17 00:00:00 2001 From: William McBrine Date: Tue, 4 Dec 2018 13:35:03 -0500 Subject: [PATCH] The ACS tables are somewhat redundant, so break them out into /common. --- common/acs437.h | 35 +++++++++++++++++++++++++++++++++ common/acsgr.h | 35 +++++++++++++++++++++++++++++++++ common/acsuni.h | 35 +++++++++++++++++++++++++++++++++ dos/pdcdisp.c | 37 +---------------------------------- os2/pdcdisp.c | 37 +---------------------------------- sdl1/pdcdisp.c | 50 ++---------------------------------------------- sdl2/pdcdisp.c | 50 ++---------------------------------------------- wincon/pdcdisp.c | 50 ++---------------------------------------------- x11/pdcdisp.c | 25 ++++++------------------ 9 files changed, 119 insertions(+), 235 deletions(-) create mode 100644 common/acs437.h create mode 100644 common/acsgr.h create mode 100644 common/acsuni.h diff --git a/common/acs437.h b/common/acs437.h new file mode 100644 index 00000000..24cbd785 --- /dev/null +++ b/common/acs437.h @@ -0,0 +1,35 @@ +/* ACS definitions originally by jshumate@wrdis01.robins.af.mil -- these + match code page 437 and compatible pages (CP850, CP852, etc.) */ + +chtype acs_map[128] = +{ + PDC_ACS(0), PDC_ACS(1), PDC_ACS(2), PDC_ACS(3), PDC_ACS(4), + PDC_ACS(5), PDC_ACS(6), PDC_ACS(7), PDC_ACS(8), PDC_ACS(9), + PDC_ACS(10), PDC_ACS(11), PDC_ACS(12), PDC_ACS(13), PDC_ACS(14), + PDC_ACS(15), PDC_ACS(16), PDC_ACS(17), PDC_ACS(18), PDC_ACS(19), + PDC_ACS(20), PDC_ACS(21), PDC_ACS(22), PDC_ACS(23), PDC_ACS(24), + PDC_ACS(25), PDC_ACS(26), PDC_ACS(27), PDC_ACS(28), PDC_ACS(29), + PDC_ACS(30), PDC_ACS(31), ' ', '!', '"', '#', '$', '%', '&', '\'', + '(', ')', '*', + + PDC_ACS(0x1a), PDC_ACS(0x1b), PDC_ACS(0x18), PDC_ACS(0x19), + + '/', + + 0xdb, + + '1', '2', '3', '4', '5', '6', '7', '8', '9', ':', ';', '<', '=', + '>', '?', '@', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', + 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', + 'X', 'Y', 'Z', '[', '\\', ']', '^', '_', + + PDC_ACS(0x04), 0xb1, + + 'b', 'c', 'd', 'e', + + 0xf8, 0xf1, 0xb0, PDC_ACS(0x0f), 0xd9, 0xbf, 0xda, 0xc0, 0xc5, 0x2d, + 0x2d, 0xc4, 0x2d, 0x5f, 0xc3, 0xb4, 0xc1, 0xc2, 0xb3, 0xf3, 0xf2, + 0xe3, 0xd8, 0x9c, 0xf9, + + PDC_ACS(127) +}; diff --git a/common/acsgr.h b/common/acsgr.h new file mode 100644 index 00000000..674ddc55 --- /dev/null +++ b/common/acsgr.h @@ -0,0 +1,35 @@ +/* ACS Unicode mapping with punchouts for box characters et al. */ + +chtype acs_map[128] = +{ + PDC_ACS(0), PDC_ACS(1), PDC_ACS(2), PDC_ACS(3), PDC_ACS(4), + PDC_ACS(5), PDC_ACS(6), PDC_ACS(7), PDC_ACS(8), PDC_ACS(9), + PDC_ACS(10), PDC_ACS(11), PDC_ACS(12), PDC_ACS(13), PDC_ACS(14), + PDC_ACS(15), PDC_ACS(16), PDC_ACS(17), PDC_ACS(18), PDC_ACS(19), + PDC_ACS(20), PDC_ACS(21), PDC_ACS(22), PDC_ACS(23), PDC_ACS(24), + PDC_ACS(25), PDC_ACS(26), PDC_ACS(27), PDC_ACS(28), PDC_ACS(29), + PDC_ACS(30), PDC_ACS(31), ' ', '!', '"', '#', '$', '%', '&', '\'', + '(', ')', '*', + + 0x2192, 0x2190, 0x2191, 0x2193, + + '/', + + ACS_BLOCK, + + '1', '2', '3', '4', '5', '6', '7', '8', '9', ':', ';', '<', '=', + '>', '?', '@', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', + 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', + 'X', 'Y', 'Z', '[', '\\', ']', '^', '_', + + 0x2666, 0x2592, + + 'b', 'c', 'd', 'e', + + 0x00b0, 0x00b1, 0x2591, 0x00a4, ACS_LRCORNER, ACS_URCORNER, + ACS_ULCORNER, ACS_LLCORNER, ACS_PLUS, ACS_S1, ACS_S3, ACS_HLINE, + ACS_S7, ACS_S9, ACS_LTEE, ACS_RTEE, ACS_BTEE, ACS_TTEE, ACS_VLINE, + 0x2264, 0x2265, 0x03c0, 0x2260, 0x00a3, 0x00b7, + + PDC_ACS(127) +}; diff --git a/common/acsuni.h b/common/acsuni.h new file mode 100644 index 00000000..2fdad8a1 --- /dev/null +++ b/common/acsuni.h @@ -0,0 +1,35 @@ +/* ACS Unicode mapping */ + +chtype acs_map[128] = +{ + PDC_ACS(0), PDC_ACS(1), PDC_ACS(2), PDC_ACS(3), PDC_ACS(4), + PDC_ACS(5), PDC_ACS(6), PDC_ACS(7), PDC_ACS(8), PDC_ACS(9), + PDC_ACS(10), PDC_ACS(11), PDC_ACS(12), PDC_ACS(13), PDC_ACS(14), + PDC_ACS(15), PDC_ACS(16), PDC_ACS(17), PDC_ACS(18), PDC_ACS(19), + PDC_ACS(20), PDC_ACS(21), PDC_ACS(22), PDC_ACS(23), PDC_ACS(24), + PDC_ACS(25), PDC_ACS(26), PDC_ACS(27), PDC_ACS(28), PDC_ACS(29), + PDC_ACS(30), PDC_ACS(31), ' ', '!', '"', '#', '$', '%', '&', '\'', + '(', ')', '*', + + 0x2192, 0x2190, 0x2191, 0x2193, + + '/', + + 0x2588, + + '1', '2', '3', '4', '5', '6', '7', '8', '9', ':', ';', '<', '=', + '>', '?', '@', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', + 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', + 'X', 'Y', 'Z', '[', '\\', ']', '^', '_', + + 0x2666, 0x2592, + + 'b', 'c', 'd', 'e', + + 0x00b0, 0x00b1, 0x2591, 0x00a4, 0x2518, 0x2510, 0x250c, 0x2514, + 0x253c, 0x23ba, 0x23bb, 0x2500, 0x23bc, 0x23bd, 0x251c, 0x2524, + 0x2534, 0x252c, 0x2502, 0x2264, 0x2265, 0x03c0, 0x2260, 0x00a3, + 0x00b7, + + PDC_ACS(127) +}; diff --git a/dos/pdcdisp.c b/dos/pdcdisp.c index 63aa3c12..1d88fcba 100644 --- a/dos/pdcdisp.c +++ b/dos/pdcdisp.c @@ -1,42 +1,7 @@ /* Public Domain Curses */ #include "pdcdos.h" - -/* ACS definitions originally by jshumate@wrdis01.robins.af.mil -- these - match code page 437 and compatible pages (CP850, CP852, etc.) */ - -chtype acs_map[128] = -{ - PDC_ACS(0), PDC_ACS(1), PDC_ACS(2), PDC_ACS(3), PDC_ACS(4), - PDC_ACS(5), PDC_ACS(6), PDC_ACS(7), PDC_ACS(8), PDC_ACS(9), - PDC_ACS(10), PDC_ACS(11), PDC_ACS(12), PDC_ACS(13), PDC_ACS(14), - PDC_ACS(15), PDC_ACS(16), PDC_ACS(17), PDC_ACS(18), PDC_ACS(19), - PDC_ACS(20), PDC_ACS(21), PDC_ACS(22), PDC_ACS(23), PDC_ACS(24), - PDC_ACS(25), PDC_ACS(26), PDC_ACS(27), PDC_ACS(28), PDC_ACS(29), - PDC_ACS(30), PDC_ACS(31), ' ', '!', '"', '#', '$', '%', '&', '\'', - '(', ')', '*', - - PDC_ACS(0x1a), PDC_ACS(0x1b), PDC_ACS(0x18), PDC_ACS(0x19), - - '/', - - 0xdb, - - '1', '2', '3', '4', '5', '6', '7', '8', '9', ':', ';', '<', '=', - '>', '?', '@', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', - 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', - 'X', 'Y', 'Z', '[', '\\', ']', '^', '_', - - PDC_ACS(0x04), 0xb1, - - 'b', 'c', 'd', 'e', - - 0xf8, 0xf1, 0xb0, PDC_ACS(0x0f), 0xd9, 0xbf, 0xda, 0xc0, 0xc5, 0x2d, - 0x2d, 0xc4, 0x2d, 0x5f, 0xc3, 0xb4, 0xc1, 0xc2, 0xb3, 0xf3, 0xf2, - 0xe3, 0xd8, 0x9c, 0xf9, - - PDC_ACS(127) -}; +#include "../common/acs437.h" /* position hardware cursor at (y, x) */ diff --git a/os2/pdcdisp.c b/os2/pdcdisp.c index 99db086e..bc230172 100644 --- a/os2/pdcdisp.c +++ b/os2/pdcdisp.c @@ -1,42 +1,7 @@ /* Public Domain Curses */ #include "pdcos2.h" - -/* ACS definitions originally by jshumate@wrdis01.robins.af.mil -- these - match code page 437 and compatible pages (CP850, CP852, etc.) */ - -chtype acs_map[128] = -{ - PDC_ACS(0), PDC_ACS(1), PDC_ACS(2), PDC_ACS(3), PDC_ACS(4), - PDC_ACS(5), PDC_ACS(6), PDC_ACS(7), PDC_ACS(8), PDC_ACS(9), - PDC_ACS(10), PDC_ACS(11), PDC_ACS(12), PDC_ACS(13), PDC_ACS(14), - PDC_ACS(15), PDC_ACS(16), PDC_ACS(17), PDC_ACS(18), PDC_ACS(19), - PDC_ACS(20), PDC_ACS(21), PDC_ACS(22), PDC_ACS(23), PDC_ACS(24), - PDC_ACS(25), PDC_ACS(26), PDC_ACS(27), PDC_ACS(28), PDC_ACS(29), - PDC_ACS(30), PDC_ACS(31), ' ', '!', '"', '#', '$', '%', '&', '\'', - '(', ')', '*', - - PDC_ACS(0x1a), PDC_ACS(0x1b), PDC_ACS(0x18), PDC_ACS(0x19), - - '/', - - 0xdb, - - '1', '2', '3', '4', '5', '6', '7', '8', '9', ':', ';', '<', '=', - '>', '?', '@', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', - 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', - 'X', 'Y', 'Z', '[', '\\', ']', '^', '_', - - PDC_ACS(0x04), 0xb1, - - 'b', 'c', 'd', 'e', - - 0xf8, 0xf1, 0xb0, PDC_ACS(0x0f), 0xd9, 0xbf, 0xda, 0xc0, 0xc5, 0x2d, - 0x2d, 0xc4, 0x2d, 0x5f, 0xc3, 0xb4, 0xc1, 0xc2, 0xb3, 0xf3, 0xf2, - 0xe3, 0xd8, 0x9c, 0xf9, - - PDC_ACS(127) -}; +#include "../common/acs437.h" ULONG pdc_last_blink; static bool blinked_off = FALSE; diff --git a/sdl1/pdcdisp.c b/sdl1/pdcdisp.c index 24bbc539..e8c908da 100644 --- a/sdl1/pdcdisp.c +++ b/sdl1/pdcdisp.c @@ -5,58 +5,12 @@ #include #include -chtype acs_map[128] = -{ - PDC_ACS(0), PDC_ACS(1), PDC_ACS(2), PDC_ACS(3), PDC_ACS(4), - PDC_ACS(5), PDC_ACS(6), PDC_ACS(7), PDC_ACS(8), PDC_ACS(9), - PDC_ACS(10), PDC_ACS(11), PDC_ACS(12), PDC_ACS(13), PDC_ACS(14), - PDC_ACS(15), PDC_ACS(16), PDC_ACS(17), PDC_ACS(18), PDC_ACS(19), - PDC_ACS(20), PDC_ACS(21), PDC_ACS(22), PDC_ACS(23), PDC_ACS(24), - PDC_ACS(25), PDC_ACS(26), PDC_ACS(27), PDC_ACS(28), PDC_ACS(29), - PDC_ACS(30), PDC_ACS(31), ' ', '!', '"', '#', '$', '%', '&', '\'', - '(', ')', '*', - #ifdef PDC_WIDE - 0x2192, 0x2190, 0x2191, 0x2193, +# include "../common/acsgr.h" #else - PDC_ACS(0x1a), PDC_ACS(0x1b), PDC_ACS(0x18), PDC_ACS(0x19), +# include "../common/acs437.h" #endif - '/', - -#ifdef PDC_WIDE - ACS_BLOCK, -#else - 0xdb, -#endif - - '1', '2', '3', '4', '5', '6', '7', '8', '9', ':', ';', '<', '=', - '>', '?', '@', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', - 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', - 'X', 'Y', 'Z', '[', '\\', ']', '^', '_', - -#ifdef PDC_WIDE - 0x2666, 0x2592, -#else - PDC_ACS(0x04), 0xb1, -#endif - - 'b', 'c', 'd', 'e', - -#ifdef PDC_WIDE - 0x00b0, 0x00b1, 0x2591, 0x00a4, ACS_LRCORNER, ACS_URCORNER, - ACS_ULCORNER, ACS_LLCORNER, ACS_PLUS, ACS_S1, ACS_S3, ACS_HLINE, - ACS_S7, ACS_S9, ACS_LTEE, ACS_RTEE, ACS_BTEE, ACS_TTEE, ACS_VLINE, - 0x2264, 0x2265, 0x03c0, 0x2260, 0x00a3, 0x00b7, -#else - 0xf8, 0xf1, 0xb0, PDC_ACS(0x0f), 0xd9, 0xbf, 0xda, 0xc0, 0xc5, 0x2d, - 0x2d, 0xc4, 0x2d, 0x5f, 0xc3, 0xb4, 0xc1, 0xc2, 0xb3, 0xf3, 0xf2, - 0xe3, 0xd8, 0x9c, 0xf9, -#endif - - PDC_ACS(127) -}; - Uint32 pdc_lastupdate = 0; #define MAXRECT 200 /* maximum number of rects to queue up before diff --git a/sdl2/pdcdisp.c b/sdl2/pdcdisp.c index 5ea2dd55..55dd8c38 100644 --- a/sdl2/pdcdisp.c +++ b/sdl2/pdcdisp.c @@ -5,58 +5,12 @@ #include #include -chtype acs_map[128] = -{ - PDC_ACS(0), PDC_ACS(1), PDC_ACS(2), PDC_ACS(3), PDC_ACS(4), - PDC_ACS(5), PDC_ACS(6), PDC_ACS(7), PDC_ACS(8), PDC_ACS(9), - PDC_ACS(10), PDC_ACS(11), PDC_ACS(12), PDC_ACS(13), PDC_ACS(14), - PDC_ACS(15), PDC_ACS(16), PDC_ACS(17), PDC_ACS(18), PDC_ACS(19), - PDC_ACS(20), PDC_ACS(21), PDC_ACS(22), PDC_ACS(23), PDC_ACS(24), - PDC_ACS(25), PDC_ACS(26), PDC_ACS(27), PDC_ACS(28), PDC_ACS(29), - PDC_ACS(30), PDC_ACS(31), ' ', '!', '"', '#', '$', '%', '&', '\'', - '(', ')', '*', - #ifdef PDC_WIDE - 0x2192, 0x2190, 0x2191, 0x2193, +# include "../common/acsgr.h" #else - PDC_ACS(0x1a), PDC_ACS(0x1b), PDC_ACS(0x18), PDC_ACS(0x19), +# include "../common/acs437.h" #endif - '/', - -#ifdef PDC_WIDE - ACS_BLOCK, -#else - 0xdb, -#endif - - '1', '2', '3', '4', '5', '6', '7', '8', '9', ':', ';', '<', '=', - '>', '?', '@', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', - 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', - 'X', 'Y', 'Z', '[', '\\', ']', '^', '_', - -#ifdef PDC_WIDE - 0x2666, 0x2592, -#else - PDC_ACS(0x04), 0xb1, -#endif - - 'b', 'c', 'd', 'e', - -#ifdef PDC_WIDE - 0x00b0, 0x00b1, 0x2591, 0x00a4, ACS_LRCORNER, ACS_URCORNER, - ACS_ULCORNER, ACS_LLCORNER, ACS_PLUS, ACS_S1, ACS_S3, ACS_HLINE, - ACS_S7, ACS_S9, ACS_LTEE, ACS_RTEE, ACS_BTEE, ACS_TTEE, ACS_VLINE, - 0x2264, 0x2265, 0x03c0, 0x2260, 0x00a3, 0x00b7, -#else - 0xf8, 0xf1, 0xb0, PDC_ACS(0x0f), 0xd9, 0xbf, 0xda, 0xc0, 0xc5, 0x2d, - 0x2d, 0xc4, 0x2d, 0x5f, 0xc3, 0xb4, 0xc1, 0xc2, 0xb3, 0xf3, 0xf2, - 0xe3, 0xd8, 0x9c, 0xf9, -#endif - - PDC_ACS(127) -}; - Uint32 pdc_lastupdate = 0; #define MAXRECT 200 /* maximum number of rects to queue up before diff --git a/wincon/pdcdisp.c b/wincon/pdcdisp.c index 00c31369..f6a133e2 100644 --- a/wincon/pdcdisp.c +++ b/wincon/pdcdisp.c @@ -5,58 +5,12 @@ #include #include -chtype acs_map[128] = -{ - PDC_ACS(0), PDC_ACS(1), PDC_ACS(2), PDC_ACS(3), PDC_ACS(4), - PDC_ACS(5), PDC_ACS(6), PDC_ACS(7), PDC_ACS(8), PDC_ACS(9), - PDC_ACS(10), PDC_ACS(11), PDC_ACS(12), PDC_ACS(13), PDC_ACS(14), - PDC_ACS(15), PDC_ACS(16), PDC_ACS(17), PDC_ACS(18), PDC_ACS(19), - PDC_ACS(20), PDC_ACS(21), PDC_ACS(22), PDC_ACS(23), PDC_ACS(24), - PDC_ACS(25), PDC_ACS(26), PDC_ACS(27), PDC_ACS(28), PDC_ACS(29), - PDC_ACS(30), PDC_ACS(31), ' ', '!', '"', '#', '$', '%', '&', '\'', - '(', ')', '*', - #ifdef PDC_WIDE - 0x2192, 0x2190, 0x2191, 0x2193, +# include "../common/acsuni.h" #else - PDC_ACS(0x1a), PDC_ACS(0x1b), PDC_ACS(0x18), PDC_ACS(0x19), +# include "../common/acs437.h" #endif - '/', - -#ifdef PDC_WIDE - 0x2588, -#else - 0xdb, -#endif - - '1', '2', '3', '4', '5', '6', '7', '8', '9', ':', ';', '<', '=', - '>', '?', '@', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', - 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', - 'X', 'Y', 'Z', '[', '\\', ']', '^', '_', - -#ifdef PDC_WIDE - 0x2666, 0x2592, -#else - PDC_ACS(0x04), 0xb1, -#endif - - 'b', 'c', 'd', 'e', - -#ifdef PDC_WIDE - 0x00b0, 0x00b1, 0x2591, 0x00a4, 0x2518, 0x2510, 0x250c, 0x2514, - 0x253c, 0x23ba, 0x23bb, 0x2500, 0x23bc, 0x23bd, 0x251c, 0x2524, - 0x2534, 0x252c, 0x2502, 0x2264, 0x2265, 0x03c0, 0x2260, 0x00a3, - 0x00b7, -#else - 0xf8, 0xf1, 0xb0, PDC_ACS(0x0f), 0xd9, 0xbf, 0xda, 0xc0, 0xc5, 0x2d, - 0x2d, 0xc4, 0x2d, 0x5f, 0xc3, 0xb4, 0xc1, 0xc2, 0xb3, 0xf3, 0xf2, - 0xe3, 0xd8, 0x9c, 0xf9, -#endif - - PDC_ACS(127) -}; - DWORD pdc_last_blink; static bool blinked_off = FALSE; diff --git a/x11/pdcdisp.c b/x11/pdcdisp.c index dafcd8b7..e5ae04e4 100644 --- a/x11/pdcdisp.c +++ b/x11/pdcdisp.c @@ -4,6 +4,10 @@ #include +#ifdef PDC_WIDE +# include "../common/acsuni.h" +#else + chtype acs_map[128] = { PDC_ACS(0), PDC_ACS(1), PDC_ACS(2), PDC_ACS(3), PDC_ACS(4), @@ -15,49 +19,32 @@ chtype acs_map[128] = PDC_ACS(30), PDC_ACS(31), ' ', '!', '"', '#', '$', '%', '&', '\'', '(', ')', '*', -#ifdef PDC_WIDE - 0x2192, 0x2190, 0x2191, 0x2193, -#else '>', '<', '^', 'v', -#endif '/', -#ifdef PDC_WIDE - 0x2588, -#else PDC_ACS(0), -#endif '1', '2', '3', '4', '5', '6', '7', '8', '9', ':', ';', '<', '=', '>', '?', '@', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '[', '\\', ']', '^', '_', -#ifdef PDC_WIDE - 0x2666, 0x2592, -#else PDC_ACS(1), PDC_ACS(2), -#endif 'b', 'c', 'd', 'e', -#ifdef PDC_WIDE - 0x00b0, 0x00b1, 0x2591, 0x00a4, 0x2518, 0x2510, 0x250c, 0x2514, - 0x253c, 0x23ba, 0x23bb, 0x2500, 0x23bc, 0x23bd, 0x251c, 0x2524, - 0x2534, 0x252c, 0x2502, 0x2264, 0x2265, 0x03c0, 0x2260, 0x00a3, - 0x00b7, -#else PDC_ACS(7), PDC_ACS(8), '#', 0xa4, PDC_ACS(11), PDC_ACS(12), PDC_ACS(13), PDC_ACS(14), PDC_ACS(15), PDC_ACS(16), PDC_ACS(17), PDC_ACS(18), PDC_ACS(19), PDC_ACS(20), PDC_ACS(21), PDC_ACS(22), PDC_ACS(23), PDC_ACS(24), PDC_ACS(25), PDC_ACS(26), PDC_ACS(27), PDC_ACS(28), PDC_ACS(29), PDC_ACS(30), 0xb7, -#endif PDC_ACS(127) }; +#endif + int PDC_display_cursor(int oldrow, int oldcol, int newrow, int newcol, int visibility) {