Removed interrupt and address commands; update LCD display in continue loop

Change-Id: I3bc1b887a49f76c39ad8aeaeda4249808cc32228
This commit is contained in:
David Banks 2015-06-11 21:39:07 +01:00
parent 015dbac541
commit 151fd2af82

View File

@ -71,9 +71,9 @@ char *modeStrings[7] = {
"Undefined", "Undefined",
}; };
#define VERSION "0.11" #define VERSION "0.20"
#define NUMCMDS 20 #define NUMCMDS 18
#define MAXBKPTS 8 #define MAXBKPTS 8
int numbkpts = 0; int numbkpts = 0;
@ -100,8 +100,6 @@ unsigned int modes[MAXBKPTS] = {
char *cmdStrings[NUMCMDS] = { char *cmdStrings[NUMCMDS] = {
"help", "help",
"reset", "reset",
"interrupt",
"address",
"step", "step",
"trace", "trace",
"blist", "blist",
@ -326,12 +324,6 @@ void doCmdReset(char *params) {
hwCmd(CMD_RESET, 0); hwCmd(CMD_RESET, 0);
} }
void doCmdInterrupt(char *params) {
setSingle(1);
doCmdAddr();
}
void doCmdTrace(char *params) { void doCmdTrace(char *params) {
long i; long i;
sscanf(params, "%ld", &i); sscanf(params, "%ld", &i);
@ -485,6 +477,7 @@ void shiftBreakpointRegister(unsigned int addr, unsigned int mode) {
void doCmdContinue(char *params) { void doCmdContinue(char *params) {
int i; int i;
int status; int status;
unsigned int i_addr;
// Step the 6502, otherwise the breakpoint happends again immediately // Step the 6502, otherwise the breakpoint happends again immediately
hwCmd(CMD_STEP, 0); hwCmd(CMD_STEP, 0);
@ -510,6 +503,10 @@ void doCmdContinue(char *params) {
log0("6502 free running...\n"); log0("6502 free running...\n");
int cont = 1; int cont = 1;
do { do {
// Update the LCD display
i_addr = hwRead16(OFFSET_IAL);
lcdAddr(i_addr);
status = STATUS_DIN; status = STATUS_DIN;
if (status & BW_ACTIVE_MASK) { if (status & BW_ACTIVE_MASK) {
cont = logDetails(); cont = logDetails();
@ -548,8 +545,6 @@ void initialize() {
void (*cmdFuncs[NUMCMDS])(char *params) = { void (*cmdFuncs[NUMCMDS])(char *params) = {
doCmdHelp, doCmdHelp,
doCmdReset, doCmdReset,
doCmdInterrupt,
doCmdAddr,
doCmdStep, doCmdStep,
doCmdTrace, doCmdTrace,
doCmdBList, doCmdBList,