summaryrefslogtreecommitdiff
path: root/m68k_core.h
diff options
context:
space:
mode:
authorMichael Pavone <pavone@retrodev.com>2015-07-26 16:51:03 -0700
committerMichael Pavone <pavone@retrodev.com>2015-07-26 16:51:03 -0700
commit38c7278727cb3dd65d9e5dc98e69dd306b12c476 (patch)
tree616c527669fcab6828bcb71949e3ccd3f054c75d /m68k_core.h
parent2c702a302754c4eb4a4c2aeabd9e533b0efd2bde (diff)
parent6cd1ab5ac4004b9e9433c5d16a6ed7fa049cf767 (diff)
Merge
Diffstat (limited to 'm68k_core.h')
-rw-r--r--m68k_core.h11
1 files changed, 6 insertions, 5 deletions
diff --git a/m68k_core.h b/m68k_core.h
index 370aa1e..421302f 100644
--- a/m68k_core.h
+++ b/m68k_core.h
@@ -11,7 +11,7 @@
//#include "68kinst.h"
struct m68kinst;
-#define NUM_MEM_AREAS 4
+#define NUM_MEM_AREAS 8
#define NATIVE_MAP_CHUNKS (64*1024)
#define NATIVE_CHUNK_SIZE ((16 * 1024 * 1024 / NATIVE_MAP_CHUNKS)/2)
#define MAX_NATIVE_SIZE 255
@@ -34,6 +34,7 @@ typedef struct {
code_ptr write_32_highfirst;
code_ptr do_sync;
code_ptr trap;
+ code_ptr odd_address;
start_fun start_context;
code_ptr retrans_stub;
code_ptr native_addr;
@@ -59,16 +60,16 @@ typedef struct {
uint16_t reserved;
native_map_slot *native_code_map;
- void *options;
- uint8_t ram_code_flags[32/8];
+ m68k_options *options;
void *system;
+ uint8_t ram_code_flags[];
} m68k_context;
void translate_m68k(m68k_options * opts, struct m68kinst * inst);
void translate_m68k_stream(uint32_t address, m68k_context * context);
void start_68k_context(m68k_context * context, uint32_t address);
-void init_m68k_opts(m68k_options * opts, memmap_chunk * memmap, uint32_t num_chunks);
-void init_68k_context(m68k_context * context, native_map_slot * native_code_map, void * opts);
+void init_m68k_opts(m68k_options * opts, memmap_chunk * memmap, uint32_t num_chunks, uint32_t clock_divider);
+m68k_context * init_68k_context(m68k_options * opts);
void m68k_reset(m68k_context * context);
void insert_breakpoint(m68k_context * context, uint32_t address, uint8_t * bp_handler);
void remove_breakpoint(m68k_context * context, uint32_t address);