diff options
author | Michael Pavone <pavone@retrodev.com> | 2015-01-03 21:54:41 -0800 |
---|---|---|
committer | Michael Pavone <pavone@retrodev.com> | 2015-01-03 21:54:41 -0800 |
commit | bb5e4d5126fb6c6b64ef84615ec9e5e15848575d (patch) | |
tree | e247a152038eb4ba1c6998fec1a765cfae7656ce /blastem.c | |
parent | 78a4b6f68e5e53c42fdd62c0269fe5862ce73a32 (diff) |
Fake busack when Z80 is disabled
Diffstat (limited to 'blastem.c')
-rw-r--r-- | blastem.c | 6 |
1 files changed, 5 insertions, 1 deletions
@@ -514,6 +514,8 @@ m68k_context * io_write(uint32_t location, m68k_context * context, uint8_t value dputs("bus requesting Z80"); if (z80_enabled) { z80_assert_busreq(gen->z80, context->current_cycle); + } else { + gen->z80->busack = 1; } } else { if (gen->z80->busreq) { @@ -528,6 +530,8 @@ m68k_context * io_write(uint32_t location, m68k_context * context, uint8_t value } if (z80_enabled) { z80_clear_busreq(gen->z80, context->current_cycle); + } else { + gen->z80->busack = 0; } } } else if (location == 0x1200) { @@ -616,7 +620,7 @@ uint8_t io_read(uint32_t location, m68k_context * context) } } else { if (location == 0x1100) { - value = z80_enabled ? !z80_get_busack(gen->z80, context->current_cycle) : 0; + value = z80_enabled ? !z80_get_busack(gen->z80, context->current_cycle) : !gen->z80->busack; dprintf("Byte read of BUSREQ returned %d @ %d (reset: %d)\n", value, context->current_cycle, gen->z80->reset); } else if (location == 0x1200) { value = !gen->z80->reset; |