From 48d6afdd1c9aaafc5b8ce59c584e360d89571a5b Mon Sep 17 00:00:00 2001 From: Michael Pavone Date: Sun, 2 Mar 2014 16:34:29 -0800 Subject: Initial stab at separating the generic parts of the 68K core from the host-cpu specific parts. --- m68k_internal.h | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 m68k_internal.h (limited to 'm68k_internal.h') diff --git a/m68k_internal.h b/m68k_internal.h new file mode 100644 index 0000000..f73db3f --- /dev/null +++ b/m68k_internal.h @@ -0,0 +1,28 @@ +/* + Copyright 2014 Michael Pavone + This file is part of BlastEm. + BlastEm is free software distributed under the terms of the GNU General Public License version 3 or greater. See COPYING for full license text. +*/ +#ifndef M68K_INTERNAL_H_ +#define M68K_INTERNAL_H_ + +#include "68kinst.h" + +//functions implemented in host CPU specfic file +void translate_out_of_bounds(code_info *code); +void check_code_prologue(code_info *code); + +//functions implemented in m68k_core.c +int8_t native_reg(m68k_op_info * op, m68k_options * opts); +size_t reg_offset(m68k_op_info *op); +void print_regs_exit(m68k_context * context); +void m68k_read_size(m68k_options *opts, uint8_t size); +void m68k_write_size(m68k_options *opts, uint8_t size); +code_ptr get_native_address(native_map_slot * native_code_map, uint32_t address); +void map_native_address(m68k_context * context, uint32_t address, code_ptr native_addr, uint8_t size, uint8_t native_size); +uint8_t get_native_inst_size(m68k_options * opts, uint32_t address); +uint8_t m68k_is_terminal(m68kinst * inst); +void m68k_handle_deferred(m68k_context * context); +code_ptr get_native_address_trans(m68k_context * context, uint32_t address); + +#endif //M68K_INTERNAL_H_ -- cgit v1.2.3