aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--common/util.cpp1
-rw-r--r--common/util.h4
-rw-r--r--scumm/help.cpp13
-rw-r--r--scumm/scumm.cpp7
-rw-r--r--scumm/scumm.h1
-rw-r--r--scumm/sound.cpp2
-rw-r--r--scumm/vars.cpp2
-rw-r--r--tools/md5table.c2
8 files changed, 15 insertions, 17 deletions
diff --git a/common/util.cpp b/common/util.cpp
index 03c9865859..85ed26fb55 100644
--- a/common/util.cpp
+++ b/common/util.cpp
@@ -181,6 +181,7 @@ const PlatformDescription g_platforms[] = {
{"pc", "dos", "DOS", kPlatformPC},
{"windows", "win", "Windows", kPlatformWindows},
{"acorn", "acorn", "Acorn", kPlatformAcorn},
+ {"segacd", "segacd", "SegaCD", kPlatformSegaCD},
{0, 0, "Default", kPlatformUnknown}
};
diff --git a/common/util.h b/common/util.h
index 762811a4eb..31c22658aa 100644
--- a/common/util.h
+++ b/common/util.h
@@ -141,9 +141,9 @@ enum Platform {
kPlatformNES = 6,
kPlatformC64 = 7,
kPlatformLinux = 8,
- kPlatformAcorn = 9
+ kPlatformAcorn = 9,
+ kPlatformSegaCD = 10
/*
- kPlatformSEGA,
kPlatformPCEngine
*/
};
diff --git a/scumm/help.cpp b/scumm/help.cpp
index 3ff29c2851..4c4f5a4d02 100644
--- a/scumm/help.cpp
+++ b/scumm/help.cpp
@@ -20,9 +20,12 @@
*/
#include "common/stdafx.h"
+
+#include "common/str.h"
+#include "common/util.h"
+
#include "scumm/help.h"
#include "scumm/scumm.h"
-#include "common/str.h"
namespace Scumm {
@@ -40,7 +43,6 @@ int ScummHelp::numPages(byte gameId) {
case GID_LOOM256:
case GID_MONKEY_EGA:
case GID_MONKEY_VGA:
- case GID_MONKEY_SEGA:
case GID_MONKEY:
case GID_MONKEY2:
case GID_INDY4:
@@ -64,8 +66,8 @@ int ScummHelp::numPages(byte gameId) {
#define ADD_TEXT(d) ADD_BIND("",d)
#define ADD_LINE ADD_BIND("","")
-void ScummHelp::updateStrings(byte gameId, byte version, int page,
- String &title, String *&key, String *&dsc) {
+void ScummHelp::updateStrings(byte gameId, byte version, Common::Platform platform,
+ int page, String &title, String *&key, String *&dsc) {
key = new String[HELP_NUM_LINES];
dsc = new String[HELP_NUM_LINES];
int i = 0;
@@ -206,7 +208,6 @@ void ScummHelp::updateStrings(byte gameId, byte version, int page,
ADD_BIND("f", "turn oFf");
break;
case GID_MONKEY:
- case GID_MONKEY_SEGA:
case GID_MONKEY2:
case GID_INDY4:
case GID_TENTACLE:
@@ -219,7 +220,7 @@ void ScummHelp::updateStrings(byte gameId, byte version, int page,
ADD_BIND("u", "Use");
ADD_BIND("s", "puSh");
ADD_BIND("y", "pull (Yank)");
- if (gameId == GID_MONKEY_SEGA) {
+ if (platform == Common::kPlatformSegaCD) {
// FIXME look at scripts to figure all options out...
// keys 1->4 seem to do something as well
ADD_BIND("6", "Highlight prev dialogue");
diff --git a/scumm/scumm.cpp b/scumm/scumm.cpp
index c8aee8a287..439ef6d62e 100644
--- a/scumm/scumm.cpp
+++ b/scumm/scumm.cpp
@@ -649,8 +649,8 @@ static const ScummGameSettings multiple_versions_md5_settings[] = {
{"e17db1ddf91b39ca6bbc8ad3ed19e883", "The Secret of Monkey Island (FM-TOWNS Jp)", GID_MONKEY, 5, 0, /*MDT_PCSPK |*/ MDT_ADLIB,
GF_USE_KEY | GF_AUDIOTRACKS, Common::kPlatformFMTowns},
- {"c13225cb1bbd3bc9fe578301696d8021", "The Secret of Monkey Island (SegaCD)", GID_MONKEY_SEGA, 5, 0, MDT_NONE,
- GF_USE_KEY | GF_AUDIOTRACKS, Common::kPlatformPC},
+ {"c13225cb1bbd3bc9fe578301696d8021", "The Secret of Monkey Island (SegaCD)", GID_MONKEY, 5, 0, MDT_NONE,
+ GF_USE_KEY | GF_AUDIOTRACKS, Common::kPlatformSegaCD},
{"3de99ef0523f8ca7958faa3afccd035a", "Spy Fox 1: Dry Cereal (Updated)", GID_HEGAME, 6, 100, MDT_NONE,
GF_USE_KEY | GF_NEW_COSTUMES, Common::kPlatformWindows},
@@ -1813,9 +1813,6 @@ int ScummEngine::init(GameDetector &detector) {
VAR(85) = 1;
}
- if (_gameId == GID_MONKEY || _gameId == GID_MONKEY_SEGA)
- _scummVars[74] = 1225;
-
if (_imuse) {
_imuse->setBase(res.address[rtSound]);
}
diff --git a/scumm/scumm.h b/scumm/scumm.h
index f604699904..6a3453f38d 100644
--- a/scumm/scumm.h
+++ b/scumm/scumm.h
@@ -206,7 +206,6 @@ enum ScummGameId {
GID_CMI,
GID_MANIAC,
GID_ZAK,
- GID_MONKEY_SEGA,
GID_HEGAME, // Generic name for all HE games with default behaviour
GID_PUTTDEMO,
GID_FBEAR,
diff --git a/scumm/sound.cpp b/scumm/sound.cpp
index 3542df7203..27362c31c9 100644
--- a/scumm/sound.cpp
+++ b/scumm/sound.cpp
@@ -281,7 +281,7 @@ void Sound::playSound(int soundID) {
// I'll add some code to test that theory for now.
// Check if the resource has already been demangled
- if ((_vm->_gameId == GID_MONKEY_SEGA) && (ptr[0] != 1)) {
+ if ((_vm->_platform == Common::kPlatformSegaCD) && (ptr[0] != 1)) {
for (int i = 0; i < size; i++) {
ptr[i] ^= 0x16;
if (ptr[i] >= 0x7F) {
diff --git a/scumm/vars.cpp b/scumm/vars.cpp
index 51ef325c4b..f40481b0bd 100644
--- a/scumm/vars.cpp
+++ b/scumm/vars.cpp
@@ -551,7 +551,7 @@ void ScummEngine_v5::initScummVars() {
VAR(VAR_CURRENT_LIGHTS) = LIGHTMODE_actor_base | LIGHTMODE_actor_color | LIGHTMODE_screen;
}
- if (_gameId == GID_MONKEY || _gameId == GID_MONKEY_SEGA)
+ if (_gameId == GID_MONKEY)
_scummVars[74] = 1225;
}
diff --git a/tools/md5table.c b/tools/md5table.c
index dde2c6397a..95b92e90c4 100644
--- a/tools/md5table.c
+++ b/tools/md5table.c
@@ -78,7 +78,7 @@ static const StringMap platformMap[] = {
{ "FM-TOWNS", "kPlatformFMTowns" },
{ "Mac", "kPlatformMacintosh" },
{ "NES", "kPlatformNES" },
- { "SEGA", "kPlatformUnknown" },
+ { "SEGA", "kPlatformSegaCD" },
{ "Windows", "kPlatformWindows" },
{ "All?", "kPlatformUnknown" },