summaryrefslogtreecommitdiff
path: root/m68k_internal.h
diff options
context:
space:
mode:
authorMichael Pavone <pavone@retrodev.com>2017-04-24 20:49:31 -0700
committerMichael Pavone <pavone@retrodev.com>2017-04-24 20:49:31 -0700
commit3f8fd3720d38bded32fdf88ed3824f9c8745a4a7 (patch)
treea89fd02a712b39a83eee336471a3752f5bb5797f /m68k_internal.h
parent8d362430c6785dcc4b9ed3a7a97acba8ebb15950 (diff)
Fix interaction between 68K debugger and instruction retranslation due to self modifying code or bank switching
Diffstat (limited to 'm68k_internal.h')
-rw-r--r--m68k_internal.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/m68k_internal.h b/m68k_internal.h
index 981cbfb..fbe26ce 100644
--- a/m68k_internal.h
+++ b/m68k_internal.h
@@ -35,6 +35,7 @@ void check_user_mode_swap_ssp_usp(m68k_options *opts);
void m68k_set_last_prefetch(m68k_options *opts, uint32_t address);
void translate_m68k_odd(m68k_options *opts, m68kinst *inst);
void m68k_trap_if_not_supervisor(m68k_options *opts, m68kinst *inst);
+void m68k_breakpoint_patch(m68k_context *context, uint32_t address, m68k_debug_handler bp_handler, code_ptr native_addr);
//functions implemented in m68k_core.c
int8_t native_reg(m68k_op_info * op, m68k_options * opts);
@@ -51,6 +52,7 @@ code_ptr get_native_address(m68k_options *opts, uint32_t address);
uint8_t m68k_is_terminal(m68kinst * inst);
code_ptr get_native_address_trans(m68k_context * context, uint32_t address);
void * m68k_retranslate_inst(uint32_t address, m68k_context * context);
+m68k_context *m68k_bp_dispatcher(m68k_context *context, uint32_t address);
//individual instructions
void translate_m68k_bcc(m68k_options * opts, m68kinst * inst);