aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--scumm/costume.cpp2
-rw-r--r--scumm/gfx.cpp2
-rw-r--r--scumm/resource_v3.cpp2
3 files changed, 3 insertions, 3 deletions
diff --git a/scumm/costume.cpp b/scumm/costume.cpp
index 9d83621220..04147bf167 100644
--- a/scumm/costume.cpp
+++ b/scumm/costume.cpp
@@ -86,7 +86,7 @@ byte CostumeRenderer::mainRoutine(int slot, int frame) {
byte newAmiCost;
int ex1, ex2;
- newAmiCost = (_vm->_gameId == GID_MONKEY2 || _vm->_gameId == GID_INDY4) && (_vm->_features & GF_AMIGA);
+ newAmiCost = (_vm->_gameId == GID_MONKEY2 || _vm->_gameId == GID_INDY4) && ((_vm->_features & GF_AMIGA) || (_vm->_features & GF_16COLOR));
CHECK_HEAP
_maskval = 0xF;
diff --git a/scumm/gfx.cpp b/scumm/gfx.cpp
index 95b9eff0d4..fc6280531f 100644
--- a/scumm/gfx.cpp
+++ b/scumm/gfx.cpp
@@ -1025,7 +1025,7 @@ bool Gdi::decompressBitmap(byte *bgbak_ptr, byte *smap_ptr, int numLinesToProces
byte code = *smap_ptr++;
assert(numLinesToProcess);
- if (_vm->_features & GF_AMIGA)
+ if ((_vm->_features & GF_AMIGA) || (_vm->_features & GF_16COLOR))
_palette_mod = 16;
else
_palette_mod = 0;
diff --git a/scumm/resource_v3.cpp b/scumm/resource_v3.cpp
index 92f718b8c4..b64ae5ad30 100644
--- a/scumm/resource_v3.cpp
+++ b/scumm/resource_v3.cpp
@@ -39,7 +39,7 @@ void Scumm_v3::readIndexFile() {
warning("The magic id doesn't match (0x%X)\n", magic);
_numGlobalObjects = _fileHandle.readUint16LE();
- _fileHandle.seek(_numGlobalObjects, SEEK_CUR); // Skip object flags
+ _fileHandle.seek(_numGlobalObjects * 4, SEEK_CUR);
_numRooms = _fileHandle.readByte();
_fileHandle.seek(_numRooms * 3, SEEK_CUR);
_numCostumes = _fileHandle.readByte();