comparison m68k_core.h @ 1111:2eb54e24914e

Mostly working changes to allow support for multiple emulated system types in main blastem program
author Michael Pavone <pavone@retrodev.com>
date Mon, 19 Dec 2016 13:28:18 -0800
parents c15896605bf2
children 8f14767661fa
comparison
equal deleted inserted replaced
1110:d1eed3b1121c 1111:2eb54e24914e
70 uint8_t should_return; 70 uint8_t should_return;
71 uint8_t ram_code_flags[]; 71 uint8_t ram_code_flags[];
72 } m68k_context; 72 } m68k_context;
73 73
74 typedef m68k_context *(*m68k_reset_handler)(m68k_context *context); 74 typedef m68k_context *(*m68k_reset_handler)(m68k_context *context);
75 typedef m68k_context *(*m68k_debug_handler)(m68k_context *context, uint32_t pc);
75 76
76 void translate_m68k_stream(uint32_t address, m68k_context * context); 77 void translate_m68k_stream(uint32_t address, m68k_context * context);
77 void start_68k_context(m68k_context * context, uint32_t address); 78 void start_68k_context(m68k_context * context, uint32_t address);
78 void resume_68k(m68k_context *context); 79 void resume_68k(m68k_context *context);
79 void init_m68k_opts(m68k_options * opts, memmap_chunk * memmap, uint32_t num_chunks, uint32_t clock_divider); 80 void init_m68k_opts(m68k_options * opts, memmap_chunk * memmap, uint32_t num_chunks, uint32_t clock_divider);
80 m68k_context * init_68k_context(m68k_options * opts, m68k_reset_handler reset_handler); 81 m68k_context * init_68k_context(m68k_options * opts, m68k_reset_handler reset_handler);
81 void m68k_reset(m68k_context * context); 82 void m68k_reset(m68k_context * context);
82 void m68k_options_free(m68k_options *opts); 83 void m68k_options_free(m68k_options *opts);
83 void insert_breakpoint(m68k_context * context, uint32_t address, uint8_t * bp_handler); 84 void insert_breakpoint(m68k_context * context, uint32_t address, m68k_debug_handler bp_handler);
84 void remove_breakpoint(m68k_context * context, uint32_t address); 85 void remove_breakpoint(m68k_context * context, uint32_t address);
85 m68k_context * m68k_handle_code_write(uint32_t address, m68k_context * context); 86 m68k_context * m68k_handle_code_write(uint32_t address, m68k_context * context);
86 uint32_t get_instruction_start(m68k_options *opts, native_map_slot * native_code_map, uint32_t address); 87 uint32_t get_instruction_start(m68k_options *opts, native_map_slot * native_code_map, uint32_t address);
87 uint16_t m68k_get_ir(m68k_context *context); 88 uint16_t m68k_get_ir(m68k_context *context);
88 void m68k_print_regs(m68k_context * context); 89 void m68k_print_regs(m68k_context * context);