FDS: Improved IRQ accuracy - fixes bug in Druid - Kyoufu no Tobira
This commit is contained in:
parent
790810df9b
commit
22ce85fa9c
1 changed files with 3 additions and 1 deletions
|
@ -63,7 +63,6 @@ void FDS::ClockIrq()
|
|||
_irqCounter = _irqReloadValue;
|
||||
} else {
|
||||
_irqEnabled = false;
|
||||
_irqReloadValue = 0;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -229,6 +228,9 @@ void FDS::WriteRegister(uint16_t addr, uint8_t value)
|
|||
_irqReloadEnabled = (value & 0x01) == 0x01;
|
||||
_irqEnabled = (value & 0x02) == 0x02;
|
||||
_irqCounter = _irqReloadValue;
|
||||
if(!_irqReloadEnabled) {
|
||||
_irqReloadValue = 0;
|
||||
}
|
||||
CPU::ClearIRQSource(IRQSource::External);
|
||||
break;
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue