aboutsummaryrefslogtreecommitdiff
path: root/scumm
diff options
context:
space:
mode:
authorTravis Howell2003-12-15 14:54:35 +0000
committerTravis Howell2003-12-15 14:54:35 +0000
commitbee21ec3f8d04511c46e898542f1153ccba2dc8b (patch)
treed432a92ce09bffa9ad557da7f83e46b72a314634 /scumm
parentaa2173868b387edb82e2409b3e15005e83fc07ce (diff)
downloadscummvm-rg350-bee21ec3f8d04511c46e898542f1153ccba2dc8b.tar.gz
scummvm-rg350-bee21ec3f8d04511c46e898542f1153ccba2dc8b.tar.bz2
scummvm-rg350-bee21ec3f8d04511c46e898542f1153ccba2dc8b.zip
Add extra color table entry for v1 games, for inventory/sentence color.
svn-id: r11653
Diffstat (limited to 'scumm')
-rw-r--r--scumm/charset.cpp2
-rw-r--r--scumm/gfx.cpp2
-rw-r--r--scumm/saveload.cpp7
-rw-r--r--scumm/script_v2.cpp4
-rw-r--r--scumm/scummvm.cpp6
-rw-r--r--scumm/verbs.cpp2
6 files changed, 10 insertions, 13 deletions
diff --git a/scumm/charset.cpp b/scumm/charset.cpp
index d4c8b4b893..abf97bc5e0 100644
--- a/scumm/charset.cpp
+++ b/scumm/charset.cpp
@@ -931,7 +931,7 @@ void CharsetRendererV3::setColor(byte color)
_color = color;
_shadowColor = (_vm->_features & GF_FMTOWNS) ? 8 : 0;
// FM Towns version of Loom uses old colour method as well
- if (_vm->_features & GF_16COLOR || _vm->_gameId == GID_LOOM) {
+ if ((_vm->_version >= 2) && (_vm->_features & GF_16COLOR || _vm->_gameId == GID_LOOM)) {
_dropShadow = ((_color & 0xF0) != 0);
_color &= 0x0f;
} else if (_vm->_features & GF_OLD256) {
diff --git a/scumm/gfx.cpp b/scumm/gfx.cpp
index 471525ffec..4bf3af464b 100644
--- a/scumm/gfx.cpp
+++ b/scumm/gfx.cpp
@@ -2631,6 +2631,7 @@ void ScummEngine::setupV1ManiacPalette() {
setPalColor(13, 84, 252, 84);
setPalColor(14, 84, 84, 252);
setPalColor(15, 84, 84, 84);
+ setPalColor(16, 252, 84, 252);
}
void ScummEngine::setupV1ZakPalette() {
@@ -2650,6 +2651,7 @@ void ScummEngine::setupV1ZakPalette() {
setPalColor(13, 84, 252, 84);
setPalColor(14, 84, 84, 252);
setPalColor(15, 168, 168, 168);
+ setPalColor(16, 252, 84, 252);
}
void ScummEngine::setPaletteFromPtr(const byte *ptr) {
diff --git a/scumm/saveload.cpp b/scumm/saveload.cpp
index 986657f936..f9fbdc9430 100644
--- a/scumm/saveload.cpp
+++ b/scumm/saveload.cpp
@@ -178,12 +178,9 @@ bool ScummEngine::loadState(int slot, bool compat, SaveFileManager *mgr) {
// ever add options for using different 16-colour palettes.
if (_version == 1) {
- if (_gameId == GID_MANIAC) {
+ if (_gameId == GID_MANIAC)
setupV1ManiacPalette();
- if (_demoMode)
- setPalColor(15, 252, 84, 252);
-
- } else
+ else
setupV1ZakPalette();
} else if (_features & GF_16COLOR) {
if ((_features & GF_AMIGA) || (_features & GF_ATARI_ST))
diff --git a/scumm/script_v2.cpp b/scumm/script_v2.cpp
index 279d179d70..0f898f216a 100644
--- a/scumm/script_v2.cpp
+++ b/scumm/script_v2.cpp
@@ -825,7 +825,7 @@ void ScummEngine_v2::o2_verbOps() {
vs->verbid = verb;
if (_version == 1) {
if (_gameId == GID_MANIAC && _demoMode)
- vs->color = 15;
+ vs->color = 16;
else
vs->color = 5;
@@ -1026,7 +1026,7 @@ void ScummEngine_v2::o2_drawSentence() {
_string[2].ypos = virtscr[2].topline;
_string[2].xpos = 0;
if (_version == 1)
- _string[2].color = 4;
+ _string[2].color = 16;
else
_string[2].color = 13;
diff --git a/scumm/scummvm.cpp b/scumm/scummvm.cpp
index c8f0915189..a986821294 100644
--- a/scumm/scummvm.cpp
+++ b/scumm/scummvm.cpp
@@ -1019,11 +1019,9 @@ void ScummEngine::scummInit() {
for (i = 0; i < 256; i++)
_roomPalette[i] = i;
if (_version == 1) {
- if (_gameId == GID_MANIAC) {
+ if (_gameId == GID_MANIAC)
setupV1ManiacPalette();
- if (_demoMode)
- setPalColor(15, 252, 84, 252);
- } else
+ else
setupV1ZakPalette();
} else if (_features & GF_16COLOR) {
for (i = 0; i < 16; i++)
diff --git a/scumm/verbs.cpp b/scumm/verbs.cpp
index a2ac184317..628df63457 100644
--- a/scumm/verbs.cpp
+++ b/scumm/verbs.cpp
@@ -40,7 +40,7 @@ void ScummEngine::initV2MouseOver() {
int arrow_color, color, hi_color;
if (_version == 1) {
- color = 4;
+ color = 16;
hi_color = 7;
arrow_color = 6;
} else {