comparison z80_to_x86.h @ 626:7c46891a29b1

Properly handle Z80 breakpoints on self-modifying code and setting Z80 breakpoints before the Z80 program has been loaded
author Michael Pavone <pavone@retrodev.com>
date Thu, 19 Jun 2014 19:50:16 -0700
parents 140af5509ce7
children c5820734a5b6
comparison
equal deleted inserted replaced
625:6aa2a8ab9c70 626:7c46891a29b1
1 /* 1 /*
2 Copyright 2013 Michael Pavone 2 Copyright 2013 Michael Pavone
3 This file is part of BlastEm. 3 This file is part of BlastEm.
4 BlastEm is free software distributed under the terms of the GNU General Public License version 3 or greater. See COPYING for full license text. 4 BlastEm is free software distributed under the terms of the GNU General Public License version 3 or greater. See COPYING for full license text.
5 */ 5 */
6 #ifndef Z80_TO_X86_H_ 6 #ifndef Z80_TO_X86_H_
7 #define Z80_TO_X86_H_ 7 #define Z80_TO_X86_H_
8 #include "z80inst.h" 8 #include "z80inst.h"
53 native_map_slot * banked_code_map; 53 native_map_slot * banked_code_map;
54 void * options; 54 void * options;
55 void * system; 55 void * system;
56 uint8_t ram_code_flags[(8 * 1024)/128/8]; 56 uint8_t ram_code_flags[(8 * 1024)/128/8];
57 uint32_t int_enable_cycle; 57 uint32_t int_enable_cycle;
58 uint8_t breakpoint_flags[(16 * 1024)/sizeof(uint8_t)];
59 uint8_t * bp_handler;
60 uint8_t * bp_stub;
58 uint16_t pc; 61 uint16_t pc;
59 } z80_context; 62 } z80_context;
60 63
61 void translate_z80_stream(z80_context * context, uint32_t address); 64 void translate_z80_stream(z80_context * context, uint32_t address);
62 void init_x86_z80_opts(x86_z80_options * options); 65 void init_x86_z80_opts(x86_z80_options * options);