Add a 1 clock delay to vblank.

This commit is contained in:
Christian Speckner 2016-12-11 01:26:49 +01:00
parent 137c5b5e54
commit 18c31ebc2b
1 changed files with 9 additions and 5 deletions

View File

@ -45,7 +45,8 @@ enum Delay: uInt8 {
hmm = 2,
hmbl = 2,
hmclr = 2,
refp = 1
refp = 1,
vblank = 1
};
enum DummyRegisters: uInt8 {
@ -355,16 +356,14 @@ bool TIA::poke(uInt16 address, uInt8 value)
break;
case VBLANK:
myLinesSinceChange = 0;
myInput0.vblank(value);
myInput1.vblank(value);
myFrameManager.setVblank(value & 0x02);
for (PaddleReader& paddleReader : myPaddleReaders)
paddleReader.vblank(value, myTimestamp);
myDelayQueue.push(VBLANK, value, Delay::vblank);
break;
case AUDV0:
@ -1107,6 +1106,11 @@ void TIA::delayedWrite(uInt8 address, uInt8 value)
{
switch (address)
{
case VBLANK:
myLinesSinceChange = 0;
myFrameManager.setVblank(value & 0x02);
break;
case HMOVE:
myLinesSinceChange = 0;