From 8adaf00407538f09d5d0cf306c4100611a5aa8af Mon Sep 17 00:00:00 2001 From: Eric Fry Date: Tue, 28 Apr 2020 22:03:04 +1000 Subject: Add support for printing a byte from memory in native debugger. Add stubs for GDB commands qThreadExtraInfo and qP --- debug.c | 6 ++++++ gdb_remote.c | 4 ++++ 2 files changed, 10 insertions(+) diff --git a/debug.c b/debug.c index f58cbc1..12aa074 100644 --- a/debug.c +++ b/debug.c @@ -158,6 +158,9 @@ void debugger_print(m68k_context *context, char format_char, char *param, uint32 uint32_t p_addr = strtol(param+(param[0] == '0' ? 2 : 1), &after, 16); if (after[0] == '.' && after[1] == 'l') { value = m68k_read_long(p_addr, context); + } else if (after[0] == '.' && after[1] == 'b') { + value = m68k_read_word(p_addr, context); + value &= 0xFF; } else { value = m68k_read_word(p_addr, context); } @@ -166,6 +169,9 @@ void debugger_print(m68k_context *context, char format_char, char *param, uint32 uint32_t p_addr = param[1] == 'a' ? context->aregs[reg] : context->dregs[reg]; if (param[4] == '.' && param[5] == 'l') { value = m68k_read_long(p_addr, context); + } else if (param[4] == '.' && param[5] == 'b') { + value = m68k_read_word(p_addr, context); + value &= 0xFF; } else { value = m68k_read_word(p_addr, context); } diff --git a/gdb_remote.c b/gdb_remote.c index 6cf1d67..cdc73a5 100644 --- a/gdb_remote.c +++ b/gdb_remote.c @@ -401,6 +401,10 @@ void gdb_run_command(m68k_context * context, uint32_t pc, char * command) gdb_send_command("m1"); } else if (!strcmp("sThreadInfo", command + 1)) { gdb_send_command("l"); + } else if (!memcmp("ThreadExtraInfo", command+1, strlen("ThreadExtraInfo"))) { + gdb_send_command(""); + } else if (command[1] == 'P') { + gdb_send_command(""); } else { goto not_impl; } -- cgit v1.2.3