comparison z80_to_x86.h @ 591:966b46c68942

Get Z80 core back into compileable state
author Michael Pavone <pavone@retrodev.com>
date Wed, 17 Dec 2014 09:53:51 -0800
parents ea80559c67cb
children 4ff7bbb3943b
comparison
equal deleted inserted replaced
590:ea80559c67cb 591:966b46c68942
23 23
24 typedef struct { 24 typedef struct {
25 cpu_options gen; 25 cpu_options gen;
26 code_ptr save_context_scratch; 26 code_ptr save_context_scratch;
27 code_ptr load_context_scratch; 27 code_ptr load_context_scratch;
28 code_ptr read_8;
29 code_ptr write_8;
28 code_ptr write_8_noinc; 30 code_ptr write_8_noinc;
31 code_ptr read_16;
32 code_ptr write_16_highfirst;
33 code_ptr write_16_lowfirst;
29 34
30 uint32_t flags; 35 uint32_t flags;
31 int8_t regs[Z80_UNUSED]; 36 int8_t regs[Z80_UNUSED];
37 int8_t bank_reg;
38 int8_t bank_pointer;
32 } z80_options; 39 } z80_options;
33 40
34 typedef struct { 41 typedef struct {
35 void * native_pc; 42 void * native_pc;
36 uint16_t sp; 43 uint16_t sp;
60 } z80_context; 67 } z80_context;
61 68
62 void translate_z80_stream(z80_context * context, uint32_t address); 69 void translate_z80_stream(z80_context * context, uint32_t address);
63 void init_x86_z80_opts(z80_options * options, memmap_chunk * chunks, uint32_t num_chunks); 70 void init_x86_z80_opts(z80_options * options, memmap_chunk * chunks, uint32_t num_chunks);
64 void init_z80_context(z80_context * context, z80_options * options); 71 void init_z80_context(z80_context * context, z80_options * options);
65 uint8_t * z80_get_native_address(z80_context * context, uint32_t address); 72 code_ptr z80_get_native_address(z80_context * context, uint32_t address);
66 uint8_t * z80_get_native_address_trans(z80_context * context, uint32_t address); 73 code_ptr z80_get_native_address_trans(z80_context * context, uint32_t address);
67 z80_context * z80_handle_code_write(uint32_t address, z80_context * context); 74 z80_context * z80_handle_code_write(uint32_t address, z80_context * context);
68 void z80_run(z80_context * context); 75 void z80_run(z80_context * context);
69 void z80_reset(z80_context * context); 76 void z80_reset(z80_context * context);
70 void zinsert_breakpoint(z80_context * context, uint16_t address, uint8_t * bp_handler); 77 void zinsert_breakpoint(z80_context * context, uint16_t address, uint8_t * bp_handler);
71 void zremove_breakpoint(z80_context * context, uint16_t address); 78 void zremove_breakpoint(z80_context * context, uint16_t address);