mirror of
https://github.com/libretro/scummvm.git
synced 2024-12-18 15:48:48 +00:00
Properly wipe out animation trails in MM NES. It appeared that it
just uses different constants for VAR_CURRENT_LIGHTS. So now it uses proper double buffering as well svn-id: r17159
This commit is contained in:
parent
968e900a0f
commit
b8ee09d21b
@ -214,10 +214,7 @@ void ScummEngine::initScreens(int b, int h) {
|
||||
}
|
||||
}
|
||||
|
||||
if (_features & GF_NES) // FIXME: is it really one-buffer?
|
||||
initVirtScreen(kMainVirtScreen, 0, b, _screenWidth, h - b, false, true);
|
||||
else
|
||||
initVirtScreen(kMainVirtScreen, 0, b, _screenWidth, h - b, true, true);
|
||||
initVirtScreen(kMainVirtScreen, 0, b, _screenWidth, h - b, true, true);
|
||||
initVirtScreen(kTextVirtScreen, 0, 0, _screenWidth, b, false, false);
|
||||
initVirtScreen(kVerbVirtScreen, 0, h, _screenWidth, _screenHeight - h, false, false);
|
||||
|
||||
@ -1884,8 +1881,7 @@ void Gdi::drawStripNES(byte *dst, int dstPitch, int stripnr, int height) {
|
||||
// debug(0,"NES room data %i (not 128) pixels high!\n",height);
|
||||
height = 16;
|
||||
}
|
||||
if (x > 63)
|
||||
{
|
||||
if (x > 63) {
|
||||
debug(0,"NES tried to render invalid strip %i",stripnr);
|
||||
return;
|
||||
}
|
||||
|
@ -1274,9 +1274,10 @@ void ScummEngine_v2::o2_lights() {
|
||||
// 0 Darkness
|
||||
// 1 Flashlight
|
||||
// 2 Lighted area
|
||||
if (a == 2)
|
||||
// 11 and 12 are used by NES version
|
||||
if (a == 2 || a == 11)
|
||||
VAR(VAR_CURRENT_LIGHTS) = 11;
|
||||
else if (a == 1)
|
||||
else if (a == 1 || a == 12)
|
||||
VAR(VAR_CURRENT_LIGHTS) = 4;
|
||||
else
|
||||
VAR(VAR_CURRENT_LIGHTS) = 0;
|
||||
|
Loading…
Reference in New Issue
Block a user