return;
}
- if (STREQ(Address, "PC"))
+ if (!STREQ(Address, "PC"))
cpu8051.pc = Ascii2Hex(Address, strlen(Address));
if (NumberInst)
for (Row = 0; Row < NumberInst ; Row++) {
Address += cpu8051_Disasm(Address, TextTmp);
printf("%s\n", TextTmp);
+
+ if (Address > 0xFFFF)
+ return;
}
}
" Display Registers content... DR",
" Execute..................... EM [address"
" [number of instructions]]",
- " Help........................ H",
+ " Help........................ H or ?",
" Modify External Data Memory. ME address value",
" Modify Internal Data Memory. MI address value",
" Modify Program Memory....... MP address value",
goto syntax_error;
break;
case 'H':
- if (STREQ(Command, "H") && (strlen(Parameter1) == 0) &&
+ case '?':
+ if ((STREQ(Command, "H") || STREQ(Command, "?")) &&
+ (strlen(Parameter1) == 0) &&
(strlen(Parameter2) == 0)) {
Index = 0;
while (Menu[Index] != 0)