aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorTravis Howell2008-12-27 07:17:46 +0000
committerTravis Howell2008-12-27 07:17:46 +0000
commit109d55f8d331ec8d70442d20eccc7046c8901b27 (patch)
treec5e49ef5887375c70d5b99ece046af782e6a255d /engines
parent2d3c506d9a38a7b377aa39f83d30f6080bafbd62 (diff)
downloadscummvm-rg350-109d55f8d331ec8d70442d20eccc7046c8901b27.tar.gz
scummvm-rg350-109d55f8d331ec8d70442d20eccc7046c8901b27.tar.bz2
scummvm-rg350-109d55f8d331ec8d70442d20eccc7046c8901b27.zip
Add more stubs for MBC.
svn-id: r35570
Diffstat (limited to 'engines')
-rw-r--r--engines/scumm/he/resource_he.cpp4
-rw-r--r--engines/scumm/he/script_v100he.cpp22
-rw-r--r--engines/scumm/he/wiz_he.cpp1
3 files changed, 27 insertions, 0 deletions
diff --git a/engines/scumm/he/resource_he.cpp b/engines/scumm/he/resource_he.cpp
index d7cd672a52..74789bcc1e 100644
--- a/engines/scumm/he/resource_he.cpp
+++ b/engines/scumm/he/resource_he.cpp
@@ -1666,6 +1666,10 @@ int ScummEngine_v72he::getSoundResourceSize(int id) {
}
void ScummEngine_v80he::createSound(int snd1id, int snd2id) {
+ // HACK: Unsupported sound format
+ if (_game.id == GID_MOONBASE)
+ return;
+
byte *snd1Ptr, *snd2Ptr;
byte *sbng1Ptr, *sbng2Ptr;
byte *sdat1Ptr, *sdat2Ptr;
diff --git a/engines/scumm/he/script_v100he.cpp b/engines/scumm/he/script_v100he.cpp
index f1a202e22c..1df53a78fc 100644
--- a/engines/scumm/he/script_v100he.cpp
+++ b/engines/scumm/he/script_v100he.cpp
@@ -669,6 +669,28 @@ void ScummEngine_v100he::o100_arrayOps() {
copyArray(array, a1_dim2start, a1_dim2end, a1_dim1start, a1_dim1end, array2, a2_dim2start, a2_dim2end, a2_dim1start, a2_dim1end);
}
break;
+ case 132:
+ // TODO: Used by Moonbase Commander
+ fetchScriptWord();
+ fetchScriptWord();
+ pop();
+ pop();
+ pop();
+ pop();
+ pop();
+ pop();
+ pop();
+ pop();
+ pop();
+ dim1end = pop();
+ dim1start = pop();
+ dim2end = pop();
+ dim2start = pop();
+ id = readVar(array);
+ if (id == 0) {
+ defineArray(array, kDwordArray, dim2start, dim2end, dim1start, dim1end);
+ }
+ break;
case 133:
b = pop();
c = pop();
diff --git a/engines/scumm/he/wiz_he.cpp b/engines/scumm/he/wiz_he.cpp
index f47c59fc29..c661812d09 100644
--- a/engines/scumm/he/wiz_he.cpp
+++ b/engines/scumm/he/wiz_he.cpp
@@ -2275,6 +2275,7 @@ int Wiz::isWizPixelNonTransparent(int resNum, int state, int x, int y, int flags
break;
case 4:
// TODO: Unknown image type
+ ret = 1;
debug(0, "isWizPixelNonTransparent: Unhandled wiz compression type %d", c);
break;
case 5: