Fixed key definitions (were removed from apple2.h)

git-svn-id: svn://svn.cc65.org/cc65/trunk@2917 b7a2c559-68d2-44c3-8de9-860c34a00d81
This commit is contained in:
cuz
2004-03-13 21:35:47 +00:00
parent a5eb81c76b
commit 175cba5701

View File

@@ -44,6 +44,8 @@ static char GetKeyUpdate (void);
/* Data */ /* Data */
/*****************************************************************************/ /*****************************************************************************/
/* Color definitions */ /* Color definitions */
#if defined(__PLUS4__) || defined(__C16__) #if defined(__PLUS4__) || defined(__C16__)
# define COLOR_BORDER (BCOLOR_DARKBLUE | CATTR_LUMA6) # define COLOR_BORDER (BCOLOR_DARKBLUE | CATTR_LUMA6)
@@ -53,7 +55,7 @@ static char GetKeyUpdate (void);
# define COLOR_FRAMEHIGH COLOR_BLACK # define COLOR_FRAMEHIGH COLOR_BLACK
# define COLOR_FRAMELOW COLOR_GRAY2 # define COLOR_FRAMELOW COLOR_GRAY2
#else #else
# ifdef COLOR_GRAY3 # if defined(COLOR_GRAY3)
# define COLOR_BORDER COLOR_BLACK # define COLOR_BORDER COLOR_BLACK
# define COLOR_BACKGROUND COLOR_BLACK # define COLOR_BACKGROUND COLOR_BLACK
# define COLOR_TEXTHIGH COLOR_WHITE # define COLOR_TEXTHIGH COLOR_WHITE
@@ -61,7 +63,7 @@ static char GetKeyUpdate (void);
# define COLOR_FRAMEHIGH COLOR_WHITE # define COLOR_FRAMEHIGH COLOR_WHITE
# define COLOR_FRAMELOW COLOR_GRAY3 # define COLOR_FRAMELOW COLOR_GRAY3
# else # else
# ifdef __APPLE2__ # if defined(__APPLE2__) || defined(__APPLE2ENH__)
# define COLOR_BORDER COLOR_BLACK # define COLOR_BORDER COLOR_BLACK
# define COLOR_BACKGROUND COLOR_BLACK # define COLOR_BACKGROUND COLOR_BLACK
# define COLOR_TEXTHIGH COLOR_BLACK # define COLOR_TEXTHIGH COLOR_BLACK
@@ -85,7 +87,7 @@ static char GetKeyUpdate (void);
# define MAX_X 80 # define MAX_X 80
# define MAX_Y 25 # define MAX_Y 25
# define DUMP_BYTES 16 # define DUMP_BYTES 16
#elif defined(__APPLE2__) || defined(__ATARI__) #elif defined(__APPLE2__) || defined(__APPLE2ENH__) || defined(__ATARI__)
# define MAX_X 40 # define MAX_X 40
# define MAX_Y 24 # define MAX_Y 24
# define DUMP_BYTES 8 # define DUMP_BYTES 8
@@ -95,7 +97,10 @@ static char GetKeyUpdate (void);
# define DUMP_BYTES 8 # define DUMP_BYTES 8
#endif #endif
/* Replacement key definitions */
#if defined(__APPLE2__) || defined(__APPLE2ENH__)
# define CH_DEL ('H' - 'A' + 1) /* Ctrl+H */
#endif
/* Defines for opcodes */ /* Defines for opcodes */
#define OPC_BRK 0x00 #define OPC_BRK 0x00
@@ -168,13 +173,14 @@ static TextDesc HelpText [] = {
{ 1, 7, "+ Page down" }, { 1, 7, "+ Page down" },
{ 1, 8, "- Page up" }, { 1, 8, "- Page up" },
{ 1, 9, "Cursor Move up/down" }, { 1, 9, "Cursor Move up/down" },
{ 1, 10, "c Continue" }, { 1, 10, "a/z Move up/down" },
{ 1, 11, "f Follow instruction" }, { 1, 11, "c Continue" },
{ 1, 12, "o Goto origin" }, { 1, 12, "f Follow instruction" },
{ 1, 13, "p Use as new PC value" }, { 1, 13, "o Goto origin" },
{ 1, 14, "q Quit" }, { 1, 14, "p Use as new PC value" },
{ 1, 15, "r Redraw screen" }, { 1, 15, "q Quit" },
{ 1, 16, "s Skip next instruction" }, { 1, 16, "r Redraw screen" },
{ 1, 17, "s Skip next instruction" },
}; };
@@ -514,7 +520,7 @@ static char Input (char* Prompt, char* Buf, unsigned char Count)
Buf [i] = c; Buf [i] = c;
cputcxy (x1 + i, MAX_Y-1, c); cputcxy (x1 + i, MAX_Y-1, c);
++i; ++i;
} else if (i > 0 && c == CH_DEL) { } else if (i > 0 && c == CH_DEL) {
--i; --i;
cputcxy (x1 + i, MAX_Y-1, ' '); cputcxy (x1 + i, MAX_Y-1, ' ');
gotoxy (x1 + i, MAX_Y-1); gotoxy (x1 + i, MAX_Y-1);
@@ -884,11 +890,17 @@ static char AsmHandler (void)
brk_pc = AsmAddr; brk_pc = AsmAddr;
break; break;
case 'a':
#ifdef CH_CURS_UP
case CH_CURS_UP: case CH_CURS_UP:
#endif
AsmAddr = AsmBack (AsmAddr, 1); AsmAddr = AsmBack (AsmAddr, 1);
break; break;
case 'z':
#ifdef CH_CURS_DOWN
case CH_CURS_DOWN: case CH_CURS_DOWN:
#endif
AsmAddr += DbgDisAsmLen (AsmAddr); AsmAddr += DbgDisAsmLen (AsmAddr);
break; break;
@@ -1012,20 +1024,26 @@ static char StackHandler (void)
StackHome (); StackHome ();
break; break;
case 'a':
#ifdef CH_CURS_UP:
case CH_CURS_UP: case CH_CURS_UP:
--StackAddr; #endif
break; --StackAddr;
break;
case CH_CURS_DOWN: case 'z':
++StackAddr; #ifdef CH_CURS_DOWN
break; case CH_CURS_DOWN:
#endif
++StackAddr;
break;
default: default:
return c; return c;
} }
/* Update the window contents */ /* Update the window contents */
UpdateStack (); UpdateStack ();
} }
} }
@@ -1046,9 +1064,9 @@ static unsigned UpdateCStack (void)
unsigned char y; unsigned char y;
for (y = CStackFrame.fd_y2-1; y > CStackFrame.fd_y1; --y) { for (y = CStackFrame.fd_y2-1; y > CStackFrame.fd_y1; --y) {
gotoxy (x, y); gotoxy (x, y);
cputhex16 (* (unsigned*)mem); cputhex16 (* (unsigned*)mem);
mem += 2; mem += 2;
} }
cputsxy (CStackFrame.fd_x1+1, CStackFrame.fd_y2-1, "->"); cputsxy (CStackFrame.fd_x1+1, CStackFrame.fd_y2-1, "->");
return mem; return mem;
@@ -1081,35 +1099,41 @@ static char CStackHandler (void)
while (1) { while (1) {
/* Read and handle input */ /* Read and handle input */
switch (c = GetKeyUpdate ()) { switch (c = GetKeyUpdate ()) {
case '+': case '+':
CStackAddr += BytesPerPage; CStackAddr += BytesPerPage;
break; break;
case '-': case '-':
CStackAddr -= BytesPerPage; CStackAddr -= BytesPerPage;
break; break;
case 'o': case 'o':
CStackHome (); CStackHome ();
break; break;
case CH_CURS_UP: case 'a':
CStackAddr -= 2; #ifdef CH_CURS_UP
break; case CH_CURS_UP:
#endif
CStackAddr -= 2;
break;
case CH_CURS_DOWN: case 'z':
CStackAddr += 2; #ifdef CH_CURS_DOWN
break; case CH_CURS_DOWN:
#endif
CStackAddr += 2;
break;
default: default:
return c; return c;
} }
/* Update the window contents */ /* Update the window contents */
UpdateCStack (); UpdateCStack ();
} }
} }
@@ -1175,11 +1199,17 @@ static char DumpHandler (void)
DumpHome (); DumpHome ();
break; break;
case 'a':
#ifdef CH_CURS_UP
case CH_CURS_UP: case CH_CURS_UP:
DumpAddr -= 8; #endif
break; DumpAddr -= 8;
break;
case CH_CURS_DOWN: case 'z':
#ifdef CH_CURS_DOWN
case CH_CURS_DOWN:
#endif
DumpAddr += 8; DumpAddr += 8;
break; break;