aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEugene Sandulenko2005-03-21 01:15:30 +0000
committerEugene Sandulenko2005-03-21 01:15:30 +0000
commit11a1f9bb00b5b008417e92e4d1c3fbfa8000d96d (patch)
tree1c985f094007570cd90803347b1f1f3767e57e36
parentd1e46a542000e1a73b087a3e5afd15ca55863a70 (diff)
downloadscummvm-rg350-11a1f9bb00b5b008417e92e4d1c3fbfa8000d96d.tar.gz
scummvm-rg350-11a1f9bb00b5b008417e92e4d1c3fbfa8000d96d.tar.bz2
scummvm-rg350-11a1f9bb00b5b008417e92e4d1c3fbfa8000d96d.zip
NES palette fixes from Quietust.
Some fixes of gray background for NES. Though maybe proper approach would be to add global vars instead of checking every time. svn-id: r17190
-rw-r--r--scumm/gfx.cpp8
-rw-r--r--scumm/palette.cpp6
-rw-r--r--scumm/script_v2.cpp10
3 files changed, 17 insertions, 7 deletions
diff --git a/scumm/gfx.cpp b/scumm/gfx.cpp
index cf140a7d67..9a9b16b46b 100644
--- a/scumm/gfx.cpp
+++ b/scumm/gfx.cpp
@@ -878,12 +878,16 @@ void CharsetRenderer::restoreCharsetBg() {
}
} else {
// Clear area
- memset(screenBuf, 0, vs->h * vs->pitch);
+ if (_vm->_features & GF_NES)
+ memset(screenBuf, 0x1d, vs->h * vs->pitch);
+ else
+ memset(screenBuf, 0, vs->h * vs->pitch);
}
if (vs->hasTwoBuffers) {
// Clean out the charset mask
- memset(_vm->gdi._textSurface.pixels, CHARSET_MASK_TRANSPARENCY, _vm->gdi._textSurface.pitch * _vm->gdi._textSurface.h);
+ memset(_vm->gdi._textSurface.pixels, (_vm->_features & GF_NES) ? 0x1d :
+ CHARSET_MASK_TRANSPARENCY, _vm->gdi._textSurface.pitch * _vm->gdi._textSurface.h);
}
}
}
diff --git a/scumm/palette.cpp b/scumm/palette.cpp
index 411b4067a3..86e629f8c4 100644
--- a/scumm/palette.cpp
+++ b/scumm/palette.cpp
@@ -60,7 +60,7 @@ void ScummEngine::setupNESPalette() {
setPalColor(0x1A,0x00,0x92,0x00);
setPalColor(0x1B,0x00,0xB6,0x6D);
setPalColor(0x1C,0x00,0x92,0x92);
- setPalColor(0x1D,0x00,0x00,0x00);
+ setPalColor(0x1D,0x24,0x24,0x24);
setPalColor(0x1E,0x00,0x00,0x00);
setPalColor(0x1F,0x00,0x00,0x00);
@@ -77,7 +77,7 @@ void ScummEngine::setupNESPalette() {
setPalColor(0x2A,0x00,0xFF,0x00);
setPalColor(0x2B,0x49,0xFF,0xDB);
setPalColor(0x2C,0x00,0xFF,0xFF);
- setPalColor(0x2D,0x00,0x00,0x00);
+ setPalColor(0x2D,0x49,0x49,0x49);
setPalColor(0x2E,0x00,0x00,0x00);
setPalColor(0x2F,0x00,0x00,0x00);
@@ -94,7 +94,7 @@ void ScummEngine::setupNESPalette() {
setPalColor(0x3A,0x92,0xFF,0x6D);
setPalColor(0x3B,0x49,0xFF,0xDB);
setPalColor(0x3C,0x92,0xDB,0xFF);
- setPalColor(0x3D,0x00,0x00,0x00);
+ setPalColor(0x3D,0x92,0x92,0x92);
setPalColor(0x3E,0x00,0x00,0x00);
setPalColor(0x3F,0x00,0x00,0x00);
}
diff --git a/scumm/script_v2.cpp b/scumm/script_v2.cpp
index 1f121d44d7..bcc58c7417 100644
--- a/scumm/script_v2.cpp
+++ b/scumm/script_v2.cpp
@@ -1052,7 +1052,10 @@ void ScummEngine_v2::o2_drawSentence() {
sentenceline.bottom = virtscr[2].topline + 8;
sentenceline.left = 0;
sentenceline.right = 319;
- restoreBG(sentenceline);
+ if (_features & GF_NES)
+ restoreBG(sentenceline, 0x1d);
+ else
+ restoreBG(sentenceline);
drawString(2, (byte*)sentence);
}
@@ -1514,7 +1517,10 @@ void ScummEngine_v2::setUserState(byte state) {
rect.bottom = virtscr[2].topline + 8 * 88;
rect.left = 0;
rect.right = 319;
- restoreBG(rect);
+ if (_features & GF_NES)
+ restoreBG(rect, 0x1d);
+ else
+ restoreBG(rect);
// Draw all verbs and inventory
redrawVerbs();