aboutsummaryrefslogtreecommitdiff
path: root/engines/scumm
diff options
context:
space:
mode:
authorTravis Howell2010-01-26 08:31:27 +0000
committerTravis Howell2010-01-26 08:31:27 +0000
commit326d64d07d528ce630698583b7f2fcb3db76e05d (patch)
treece9c0044063222926146e62f4f7a67cb744f7659 /engines/scumm
parentfd5e26806e29e44a16d7ef443921f5765dcb11e1 (diff)
downloadscummvm-rg350-326d64d07d528ce630698583b7f2fcb3db76e05d.tar.gz
scummvm-rg350-326d64d07d528ce630698583b7f2fcb3db76e05d.tar.bz2
scummvm-rg350-326d64d07d528ce630698583b7f2fcb3db76e05d.zip
Let's Explore the Jungle with Buzzy uses VAR_PLATFORM variabletoo, but with different values.
svn-id: r47562
Diffstat (limited to 'engines/scumm')
-rw-r--r--engines/scumm/detection_tables.h5
-rw-r--r--engines/scumm/he/intern_he.h2
-rw-r--r--engines/scumm/scumm.cpp2
-rw-r--r--engines/scumm/vars.cpp14
4 files changed, 19 insertions, 4 deletions
diff --git a/engines/scumm/detection_tables.h b/engines/scumm/detection_tables.h
index d312aa5725..71a11bc146 100644
--- a/engines/scumm/detection_tables.h
+++ b/engines/scumm/detection_tables.h
@@ -287,9 +287,11 @@ static const GameSettings gameVariantsTable[] = {
// Changed o_getResourceSize to cover all resource types
{"farm", "", 0, GID_HEGAME, 6, 73, MDT_NONE, GF_USE_KEY, UNK, GUIO_NOMIDI},
- {"jungle", "", 0, GID_HEGAME, 6, 73, MDT_NONE, GF_USE_KEY, UNK, GUIO_NOMIDI},
{"puttzoo", "", 0, GID_HEGAME, 6, 73, MDT_NONE, GF_USE_KEY, UNK, GUIO_NOMIDI},
+ // Added VAR_PLATFORM variable
+ {"jungle", "", 0, GID_HEGAME, 6, 74, MDT_NONE, GF_USE_KEY, UNK, GUIO_NOMIDI},
+
// Humongous Entertainment Scumm Version 8.0 ? Scummsrc.80
{"freddi2", "", 0, GID_HEGAME, 6, 80, MDT_NONE, GF_USE_KEY, UNK, GUIO_NOMIDI},
{"pajama", "", 0, GID_HEGAME, 6, 80, MDT_NONE, GF_USE_KEY, UNK, GUIO_NOMIDI},
@@ -382,6 +384,7 @@ static const GameSettings gameVariantsTable[] = {
{"", "HE 71", 0, GID_HEGAME, 6, 71, MDT_NONE, GF_USE_KEY, UNK, GUIO_NOMIDI},
{"", "HE 72", 0, GID_HEGAME, 6, 72, MDT_NONE, GF_USE_KEY, UNK, GUIO_NOMIDI},
{"", "HE 73", 0, GID_HEGAME, 6, 73, MDT_NONE, GF_USE_KEY, UNK, GUIO_NOMIDI},
+ {"", "HE 74", 0, GID_HEGAME, 6, 74, MDT_NONE, GF_USE_KEY, UNK, GUIO_NOMIDI},
{"", "HE 80", 0, GID_HEGAME, 6, 80, MDT_NONE, GF_USE_KEY, UNK, GUIO_NOMIDI},
{"", "HE 85", 0, GID_HEGAME, 6, 85, MDT_NONE, GF_USE_KEY, UNK, GUIO_NOMIDI},
{"", "HE 90", 0, GID_HEGAME, 6, 90, MDT_NONE, GF_USE_KEY, UNK, GUIO_NOMIDI},
diff --git a/engines/scumm/he/intern_he.h b/engines/scumm/he/intern_he.h
index 2f7f539ee3..8b145e0515 100644
--- a/engines/scumm/he/intern_he.h
+++ b/engines/scumm/he/intern_he.h
@@ -344,6 +344,7 @@ protected:
byte VAR_POLYGONS_ONLY;
byte VAR_MOUSE_STATE; // Used in checkExecVerbs();
+ byte VAR_PLATFORM;
};
class ScummEngine_v80he : public ScummEngine_v72he {
@@ -385,7 +386,6 @@ protected:
void o80_drawLine();
void o80_pickVarRandom();
- byte VAR_PLATFORM;
byte VAR_PLATFORM_VERSION;
byte VAR_CURRENT_CHARSET;
byte VAR_KEY_STATE;
diff --git a/engines/scumm/scumm.cpp b/engines/scumm/scumm.cpp
index a286f5a162..bc3715052b 100644
--- a/engines/scumm/scumm.cpp
+++ b/engines/scumm/scumm.cpp
@@ -798,6 +798,7 @@ ScummEngine_v72he::ScummEngine_v72he(OSystem *syst, const DetectorResult &dr)
VAR_NUM_CHARSETS = 0xFF;
VAR_POLYGONS_ONLY = 0xFF;
VAR_MOUSE_STATE = 0xFF;
+ VAR_PLATFORM = 0xFF;
}
ScummEngine_v80he::ScummEngine_v80he(OSystem *syst, const DetectorResult &dr)
@@ -808,7 +809,6 @@ ScummEngine_v80he::ScummEngine_v80he(OSystem *syst, const DetectorResult &dr)
_sndTmrOffs = 0;
_sndDataSize = 0;
- VAR_PLATFORM = 0xFF;
VAR_PLATFORM_VERSION = 0xFF;
VAR_CURRENT_CHARSET = 0xFF;
VAR_KEY_STATE = 0xFF;
diff --git a/engines/scumm/vars.cpp b/engines/scumm/vars.cpp
index f2031d197a..2b8a9bd4bb 100644
--- a/engines/scumm/vars.cpp
+++ b/engines/scumm/vars.cpp
@@ -298,12 +298,15 @@ void ScummEngine_v72he::setupScummVars() {
if (_game.heversion <= 73) {
VAR_NUM_SOUND_CHANNELS = 56;
}
+
+ if (_game.heversion >= 74) {
+ VAR_PLATFORM = 78;
+ }
}
void ScummEngine_v80he::setupScummVars() {
ScummEngine_v72he::setupScummVars();
- VAR_PLATFORM = 78;
VAR_PLATFORM_VERSION = 79;
VAR_CURRENT_CHARSET = 80;
VAR_SOUNDCODE_TMR = 84;
@@ -650,6 +653,15 @@ void ScummEngine_v72he::resetScummVars() {
VAR(VAR_NUM_IMAGES) = _numImages - 1;
VAR(VAR_NUM_CHARSETS) = _numCharsets - 1;
VAR(VAR_NUM_GLOBAL_OBJS) = _numGlobalObjects - 1;
+
+ if (_game.heversion == 74) {
+ // Uses different values, compared to later HE80+ games.
+ if (_game.platform == Common::kPlatformMacintosh) {
+ VAR(VAR_PLATFORM) = 3;
+ } else {
+ VAR(VAR_PLATFORM) = 2;
+ }
+ }
}
void ScummEngine_v80he::resetScummVars() {