Fix playfield signal during hblank.

This commit is contained in:
Christian Speckner 2018-02-08 20:53:42 +01:00
parent b30fa0df98
commit b8af22cd67
3 changed files with 9 additions and 1 deletions

View File

@ -204,6 +204,12 @@ void Playfield::tick(uInt32 x)
collision = currentPixel ? myCollisionMaskEnabled : myCollisionMaskDisabled;
}
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
void Playfield::nextLine()
{
collision = myCollisionMaskDisabled;
}
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
void Playfield::applyColors()
{

View File

@ -59,6 +59,8 @@ class Playfield : public Serializable
void tick(uInt32 x);
void nextLine();
bool isOn() const { return (collision & 0x8000); }
uInt8 getColor() const;

View File

@ -1271,7 +1271,6 @@ void TIA::nextLine()
cloneLastLine();
}
myPlayfield.tick(0);
myHctr = 0;
if (!myMovementInProgress && myLinesSinceChange < 2) myLinesSinceChange++;
@ -1285,6 +1284,7 @@ void TIA::nextLine()
myPlayer0.nextLine();
myPlayer1.nextLine();
myBall.nextLine();
myPlayfield.nextLine();
if (myFrameManager->isRendering() && myFrameManager->getY() == 0) flushLineCache();