summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Pavone <pavone@retrodev.com>2014-12-26 15:46:53 -0800
committerMichael Pavone <pavone@retrodev.com>2014-12-26 15:46:53 -0800
commitf9dade6a1ea8e660735a684ce9b80168e50064f7 (patch)
treefaa898f5069950b8ed5e0e1de33ae0ae52d02f99
parente8a9c14ec2e0b75eb1aef1c2a77936c6f7fd8326 (diff)
Set int_cycle to CYCLE_NEVER in sync_z80 so that the interrupt routine isn't taken inappropriately now that the kludge in handle_cycle_limit_int has been removed
-rw-r--r--blastem.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/blastem.c b/blastem.c
index c704ef2..13b3429 100644
--- a/blastem.c
+++ b/blastem.c
@@ -195,6 +195,8 @@ void sync_z80(z80_context * z_context, uint32_t mclks)
while (z_context->current_cycle < z_context->sync_cycle) {
if (z_context->iff1 && z_context->current_cycle < (vint_cycle + Z80_VINT_DURATION)) {
z_context->int_cycle = vint_cycle < z_context->int_enable_cycle ? z_context->int_enable_cycle : vint_cycle;
+ } else {
+ z_context->int_cycle = CYCLE_NEVER;
}
z_context->target_cycle = z_context->sync_cycle < z_context->int_cycle ? z_context->sync_cycle : z_context->int_cycle;
dprintf("Running Z80 from cycle %d to cycle %d. Native PC: %p\n", z_context->current_cycle, z_context->sync_cycle, z_context->native_pc);