Mercurial > repos > blastem
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); |