- [CHG] mode berserk passa a per Fast Tape. sistema de Opcions.
- [NEW] Opció per a parar execució al acabar de carregar una cinta. - [NEW] Opció per a parar l'execució al trobar una instrucció del Z80 no vàlida - [NEW] Savestate del Fernando Martin, per a provar més ràpid. - [NEW] Treballant en el sistema d'anàlisi visual del codi
This commit is contained in:
19
z80.cpp
19
z80.cpp
@@ -9,6 +9,7 @@ namespace z80
|
||||
static uint8_t memtag[65536];
|
||||
static uint32_t t = 0;
|
||||
static uint16_t current_opcode_address = 0;
|
||||
bool options[Z80_NUM_OPTIONS] = { true };
|
||||
|
||||
int (*in_ports[256])(int);
|
||||
void (*out_ports[256])(int, int);
|
||||
@@ -1032,9 +1033,8 @@ namespace z80
|
||||
|
||||
void INVALID(uint8_t opcode)
|
||||
{
|
||||
// [TODO]
|
||||
printf("INVALID OPCODE AT: %04x\n", current_opcode_address);
|
||||
z80debug::stop();
|
||||
if (options[Z80_OPTION_STOP_ON_INVALID]) z80debug::stop();
|
||||
}
|
||||
|
||||
void reset(uint8_t* mem)
|
||||
@@ -2738,4 +2738,19 @@ namespace z80
|
||||
|
||||
uint8_t getMemTag(const uint16_t addr) { return memtag[addr]; };
|
||||
|
||||
const bool getOption(const int option)
|
||||
{
|
||||
return options[option];
|
||||
}
|
||||
|
||||
void setOption(const int option, const bool value)
|
||||
{
|
||||
options[option] = value;
|
||||
}
|
||||
|
||||
void toggleOption(const int option)
|
||||
{
|
||||
options[option] = !options[option];
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user