Mercurial > repos > blastem
diff gdb_remote.c @ 2133:8554751f17b5
Remove use of get_native_pointer in 68K instruction decoding in preparation for word RAM interleaving
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Thu, 17 Mar 2022 22:41:42 -0700 |
parents | f80c6111e1ae |
children | 3350b3c8faa8 |
line wrap: on
line diff
--- a/gdb_remote.c Thu Mar 17 22:40:49 2022 -0700 +++ b/gdb_remote.c Thu Mar 17 22:41:42 2022 -0700 @@ -186,12 +186,7 @@ } m68kinst inst; genesis_context *gen = context->system; - uint16_t * pc_ptr = get_native_pointer(pc, (void **)context->mem_pointers, &context->options->gen); - if (!pc_ptr) { - fatal_error("Entered gdb remote debugger stub at address %X\n", pc); - } - uint16_t * after_pc = m68k_decode(pc_ptr, &inst, pc & 0xFFFFFF); - uint32_t after = pc + (after_pc-pc_ptr)*2; + uint32_t after = m68k_decode(m68k_instruction_fetch, context, &inst, pc & 0xFFFFFF); if (inst.op == M68K_RTS) { after = (read_dma_value(context->aregs[7]/2) << 16) | read_dma_value(context->aregs[7]/2 + 1); @@ -414,12 +409,7 @@ case 'S': { m68kinst inst; genesis_context *gen = context->system; - uint16_t * pc_ptr = get_native_pointer(pc, (void **)context->mem_pointers, &context->options->gen); - if (!pc_ptr) { - fatal_error("Entered gdb remote debugger stub at address %X\n", pc); - } - uint16_t * after_pc = m68k_decode(pc_ptr, &inst, pc & 0xFFFFFF); - uint32_t after = pc + (after_pc-pc_ptr)*2; + uint32_t after = m68k_decode(m68k_instruction_fetch, context, &inst, pc & 0xFFFFFF); if (inst.op == M68K_RTS) { after = (read_dma_value(context->aregs[7]/2) << 16) | read_dma_value(context->aregs[7]/2 + 1);