aboutsummaryrefslogtreecommitdiff
path: root/scumm
diff options
context:
space:
mode:
authorEugene Sandulenko2005-03-15 21:15:37 +0000
committerEugene Sandulenko2005-03-15 21:15:37 +0000
commitb8ee09d21b21cfe42a12e1b92651495826080ea2 (patch)
tree98e91ef1fd3d14013e71909758a3d3279c92a2b8 /scumm
parent968e900a0fdf825f31cdd9a89e40b55df3b76633 (diff)
downloadscummvm-rg350-b8ee09d21b21cfe42a12e1b92651495826080ea2.tar.gz
scummvm-rg350-b8ee09d21b21cfe42a12e1b92651495826080ea2.tar.bz2
scummvm-rg350-b8ee09d21b21cfe42a12e1b92651495826080ea2.zip
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
Diffstat (limited to 'scumm')
-rw-r--r--scumm/gfx.cpp8
-rw-r--r--scumm/script_v2.cpp5
2 files changed, 5 insertions, 8 deletions
diff --git a/scumm/gfx.cpp b/scumm/gfx.cpp
index b3807d85fe..d0cc1a297c 100644
--- a/scumm/gfx.cpp
+++ b/scumm/gfx.cpp
@@ -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;
}
diff --git a/scumm/script_v2.cpp b/scumm/script_v2.cpp
index 6532999659..a509a01f91 100644
--- a/scumm/script_v2.cpp
+++ b/scumm/script_v2.cpp
@@ -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;