From 86f847115fb31c395aae31b7cb7057d5e5a3cedd Mon Sep 17 00:00:00 2001 From: Christian Speckner Date: Wed, 31 Jan 2024 21:07:11 +0100 Subject: [PATCH] Fix life display in solaris. --- src/emucore/tia/Player.cxx | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/emucore/tia/Player.cxx b/src/emucore/tia/Player.cxx index 9eac6107a..0925f25ee 100644 --- a/src/emucore/tia/Player.cxx +++ b/src/emucore/tia/Player.cxx @@ -94,6 +94,15 @@ void Player::nusiz(uInt8 value, bool hblank) myDecodes = DrawCounterDecodes::get().playerDecodes()[myDecodesOffset]; + // Changing NUSIZ can trigger a decode in the same cycle + // (https://github.com/stella-emu/stella/issues/1012) + if (!myIsRendering && myDecodes[(myCounter + TIAConstants::H_PIXEL - 1) % TIAConstants::H_PIXEL]) { + myIsRendering = true; + mySampleCounter = 0; + myRenderCounter = renderCounterOffset; + myCopy = myDecodes[myCounter - 1]; + } + if ( myDecodes != oldDecodes && myIsRendering &&