Mercurial > repos > blastem
comparison z80_to_x86.h @ 1376:70d88d9bfe13
Implemented Z80 NMI
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Sun, 28 May 2017 21:02:47 -0700 |
parents | 5c8b1c33ca10 |
children | 4e5797b3935a |
comparison
equal
deleted
inserted
replaced
1375:b68732dcbf00 | 1376:70d88d9bfe13 |
---|---|
74 void * system; | 74 void * system; |
75 uint32_t int_enable_cycle; | 75 uint32_t int_enable_cycle; |
76 uint16_t pc; | 76 uint16_t pc; |
77 uint32_t int_pulse_start; | 77 uint32_t int_pulse_start; |
78 uint32_t int_pulse_end; | 78 uint32_t int_pulse_end; |
79 uint32_t nmi_start; | |
79 uint8_t breakpoint_flags[(16 * 1024)/sizeof(uint8_t)]; | 80 uint8_t breakpoint_flags[(16 * 1024)/sizeof(uint8_t)]; |
80 uint8_t * bp_handler; | 81 uint8_t * bp_handler; |
81 uint8_t * bp_stub; | 82 uint8_t * bp_stub; |
82 uint8_t * interp_code[256]; | 83 uint8_t * interp_code[256]; |
83 z80_ctx_fun next_int_pulse; | 84 z80_ctx_fun next_int_pulse; |
84 uint8_t reset; | 85 uint8_t reset; |
85 uint8_t busreq; | 86 uint8_t busreq; |
86 uint8_t busack; | 87 uint8_t busack; |
88 uint8_t int_is_nmi; | |
87 uint8_t ram_code_flags[]; | 89 uint8_t ram_code_flags[]; |
88 }; | 90 }; |
89 | 91 |
90 void translate_z80_stream(z80_context * context, uint32_t address); | 92 void translate_z80_stream(z80_context * context, uint32_t address); |
91 void init_z80_opts(z80_options * options, memmap_chunk const * chunks, uint32_t num_chunks, memmap_chunk const * io_chunks, uint32_t num_io_chunks, uint32_t clock_divider, uint32_t io_address_mask); | 93 void init_z80_opts(z80_options * options, memmap_chunk const * chunks, uint32_t num_chunks, memmap_chunk const * io_chunks, uint32_t num_io_chunks, uint32_t clock_divider, uint32_t io_address_mask); |
101 void z80_run(z80_context * context, uint32_t target_cycle); | 103 void z80_run(z80_context * context, uint32_t target_cycle); |
102 void z80_assert_reset(z80_context * context, uint32_t cycle); | 104 void z80_assert_reset(z80_context * context, uint32_t cycle); |
103 void z80_clear_reset(z80_context * context, uint32_t cycle); | 105 void z80_clear_reset(z80_context * context, uint32_t cycle); |
104 void z80_assert_busreq(z80_context * context, uint32_t cycle); | 106 void z80_assert_busreq(z80_context * context, uint32_t cycle); |
105 void z80_clear_busreq(z80_context * context, uint32_t cycle); | 107 void z80_clear_busreq(z80_context * context, uint32_t cycle); |
108 void z80_assert_nmi(z80_context *context, uint32_t cycle); | |
106 uint8_t z80_get_busack(z80_context * context, uint32_t cycle); | 109 uint8_t z80_get_busack(z80_context * context, uint32_t cycle); |
107 void z80_adjust_cycles(z80_context * context, uint32_t deduction); | 110 void z80_adjust_cycles(z80_context * context, uint32_t deduction); |
108 | 111 |
109 #endif //Z80_TO_X86_H_ | 112 #endif //Z80_TO_X86_H_ |
110 | 113 |