aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xbackends/PalmOS/Src/cd_aeroplayer.cpp2
-rw-r--r--backends/PalmOS/Src/cd_pockettunes.cpp2
-rw-r--r--base/engine.cpp9
-rw-r--r--base/engine.h6
-rw-r--r--base/gameDetector.cpp7
-rw-r--r--base/gameDetector.h3
-rw-r--r--base/main.cpp16
-rw-r--r--base/plugins.cpp11
-rw-r--r--base/plugins.h9
-rw-r--r--common/config-manager.h4
-rw-r--r--common/savefile.cpp2
-rw-r--r--engines/cine/cine.cpp16
-rw-r--r--engines/cine/cine.h4
-rw-r--r--engines/gob/gob.cpp17
-rw-r--r--engines/gob/gob.h4
-rw-r--r--engines/kyra/kyra.cpp12
-rw-r--r--engines/kyra/kyra.h6
-rw-r--r--engines/lure/lure.cpp7
-rw-r--r--engines/lure/lure.h2
-rw-r--r--engines/queen/queen.cpp7
-rw-r--r--engines/queen/queen.h3
-rw-r--r--engines/saga/game.cpp5
-rw-r--r--engines/saga/gfx.cpp4
-rw-r--r--engines/saga/gfx.h2
-rw-r--r--engines/saga/saga.cpp10
-rw-r--r--engines/saga/saga.h6
-rw-r--r--engines/scumm/cursor.cpp4
-rw-r--r--engines/scumm/debugger.cpp2
-rw-r--r--engines/scumm/he/intern_he.h16
-rw-r--r--engines/scumm/intern.h18
-rw-r--r--engines/scumm/plugin.cpp37
-rw-r--r--engines/scumm/scumm.cpp62
-rw-r--r--engines/scumm/scumm.h6
-rw-r--r--engines/simon/game.cpp3
-rw-r--r--engines/simon/simon.cpp5
-rw-r--r--engines/simon/simon.h4
-rw-r--r--engines/sky/sky.cpp7
-rw-r--r--engines/sky/sky.h4
-rw-r--r--engines/sword1/sword1.cpp10
-rw-r--r--engines/sword1/sword1.h5
-rw-r--r--engines/sword2/sword2.cpp13
-rw-r--r--engines/sword2/sword2.h6
42 files changed, 171 insertions, 207 deletions
diff --git a/backends/PalmOS/Src/cd_aeroplayer.cpp b/backends/PalmOS/Src/cd_aeroplayer.cpp
index 949963bcd0..d70bf572c9 100755
--- a/backends/PalmOS/Src/cd_aeroplayer.cpp
+++ b/backends/PalmOS/Src/cd_aeroplayer.cpp
@@ -30,7 +30,7 @@
AeroCDPlayer::AeroCDPlayer(OSystem *sys) {
_sys = sys;
- StrCopy(gameP, ConfMan.getActiveDomain().c_str());
+ StrCopy(gameP, ConfMan.getActiveDomainName().c_str());
}
bool AeroCDPlayer::init() {
diff --git a/backends/PalmOS/Src/cd_pockettunes.cpp b/backends/PalmOS/Src/cd_pockettunes.cpp
index b979ed0b44..75574b9802 100644
--- a/backends/PalmOS/Src/cd_pockettunes.cpp
+++ b/backends/PalmOS/Src/cd_pockettunes.cpp
@@ -28,7 +28,7 @@
PckTunesCDPlayer::PckTunesCDPlayer(OSystem *sys) {
_sys = sys;
- StrCopy(gameP, ConfMan.getActiveDomain().c_str());
+ StrCopy(gameP, ConfMan.getActiveDomainName().c_str());
}
bool PckTunesCDPlayer::init() {
diff --git a/base/engine.cpp b/base/engine.cpp
index f64b1ec68c..a01a7df533 100644
--- a/base/engine.cpp
+++ b/base/engine.cpp
@@ -24,7 +24,6 @@
#include <malloc.h>
#endif
#include "base/engine.h"
-#include "base/gameDetector.h"
#include "common/config-manager.h"
#include "common/file.h"
#include "common/timer.h"
@@ -37,7 +36,9 @@
Engine *g_engine = 0;
Engine::Engine(OSystem *syst)
- : _system(syst), _gameDataPath(ConfMan.get("path")) {
+ : _system(syst),
+ _gameDataPath(ConfMan.get("path")),
+ _targetName(ConfMan.getActiveDomainName()){
g_engine = this;
_mixer = new Audio::Mixer();
@@ -55,9 +56,9 @@ Engine::~Engine() {
g_engine = NULL;
}
-void Engine::initCommonGFX(GameDetector &detector, bool defaultTo1XScaler) {
+void Engine::initCommonGFX(bool defaultTo1XScaler) {
const Common::ConfigManager::Domain *transientDomain = ConfMan.getDomain(Common::ConfigManager::kTransientDomain);
- const Common::ConfigManager::Domain *gameDomain = ConfMan.getDomain(detector._targetName);
+ const Common::ConfigManager::Domain *gameDomain = ConfMan.getActiveDomain();
assert(transientDomain);
diff --git a/base/engine.h b/base/engine.h
index a786a73cc3..6cf4158e15 100644
--- a/base/engine.h
+++ b/base/engine.h
@@ -25,7 +25,6 @@
#include "common/scummsys.h"
#include "common/str.h"
-class GameDetector;
class OSystem;
namespace Audio {
class Mixer;
@@ -42,6 +41,7 @@ public:
Common::Timer * _timer;
protected:
+ const Common::String _targetName; // target name for saves
const Common::String _gameDataPath;
Common::SaveFileManager *_saveFileMan;
@@ -56,7 +56,7 @@ public:
* Init the engine.
* @return 0 for success, else an error code.
*/
- virtual int init(GameDetector &detector) = 0;
+ virtual int init() = 0;
/**
* Start the main engine loop.
@@ -69,7 +69,7 @@ public:
/** Specific for each engine: prepare error string. */
virtual void errorString(const char *buf_input, char *buf_output);
- void initCommonGFX(GameDetector &detector, bool defaultTo1XScaler);
+ void initCommonGFX(bool defaultTo1XScaler);
/** On some systems, check if the game appears to be run from CD. */
void checkCD();
diff --git a/base/gameDetector.cpp b/base/gameDetector.cpp
index ad74752fcf..dbe9e7fb16 100644
--- a/base/gameDetector.cpp
+++ b/base/gameDetector.cpp
@@ -578,11 +578,10 @@ void GameDetector::processSettings(Common::String &target, Common::StringMap &se
void GameDetector::setTarget(const String &target) {
- _targetName = target;
ConfMan.setActiveDomain(target);
// Make sure the gameid is set in the config manager, and that it is lowercase.
- String gameid(_targetName);
+ String gameid(target);
if (ConfMan.hasKey("gameid"))
gameid = ConfMan.get("gameid");
gameid.toLowercase();
@@ -592,7 +591,7 @@ void GameDetector::setTarget(const String &target) {
const Plugin *GameDetector::detectMain() {
const Plugin *plugin = 0;
- if (_targetName.empty()) {
+ if (ConfMan.getActiveDomainName().empty()) {
warning("No game was specified...");
return 0;
}
@@ -602,7 +601,7 @@ const Plugin *GameDetector::detectMain() {
if (plugin == 0) {
printf("Failed game detection\n");
- warning("%s is an invalid target. Use the --list-targets option to list targets", _targetName.c_str());
+ warning("%s is an invalid target. Use the --list-targets option to list targets", ConfMan.getActiveDomainName().c_str());
return 0;
}
diff --git a/base/gameDetector.h b/base/gameDetector.h
index dc09262368..1c474a8946 100644
--- a/base/gameDetector.h
+++ b/base/gameDetector.h
@@ -27,7 +27,6 @@
#include "common/str.h"
#include "common/config-manager.h"
-class GameDetector;
class OSystem;
class Plugin;
@@ -69,8 +68,6 @@ public:
void processSettings(Common::String &target, Common::StringMap &settings);
const Plugin *detectMain();
- String _targetName;
-
public:
static GameDescriptor findGame(const String &gameName, const Plugin **plugin = NULL);
diff --git a/base/main.cpp b/base/main.cpp
index 1b01bdcbd5..b2bae600fe 100644
--- a/base/main.cpp
+++ b/base/main.cpp
@@ -157,7 +157,7 @@ static bool launcherDialog(GameDetector &detector, OSystem &system) {
return (dlg.runModal() != -1);
}
-static int runGame(const Plugin *plugin, GameDetector &detector, OSystem &system, const Common::String &edebuglevels) {
+static int runGame(const Plugin *plugin, OSystem &system, const Common::String &edebuglevels) {
// We add it here, so MD5-based detection will be able to
// read mixed case files
if (ConfMan.hasKey("path"))
@@ -166,12 +166,12 @@ static int runGame(const Plugin *plugin, GameDetector &detector, OSystem &system
Common::File::addDefaultDirectory(".");
// Create the game engine
- Engine *engine = plugin->createInstance(&detector, &system);
+ Engine *engine = plugin->createInstance(&system);
if (!engine) {
// TODO: Show an error dialog or so?
//GUI::MessageDialog alert("ScummVM could not find any game in the specified directory!");
//alert.runModal();
- warning("Failed to instantiate engine for target %s", detector._targetName.c_str());
+ warning("Failed to instantiate engine for target %s", ConfMan.getActiveDomainName().c_str());
return 0;
}
@@ -179,13 +179,13 @@ static int runGame(const Plugin *plugin, GameDetector &detector, OSystem &system
Common::enableSpecialDebugLevelList(edebuglevels);
// Set the window caption to the game name
- Common::String caption(ConfMan.get("description", detector._targetName));
+ Common::String caption(ConfMan.get("description"));
Common::String desc = GameDetector::findGame(ConfMan.get("gameid")).description;
if (caption.empty() && !desc.empty())
caption = desc;
if (caption.empty())
- caption = detector._targetName;
+ caption = ConfMan.getActiveDomainName(); // Use the domain (=target) name
if (!caption.empty()) {
system.setWindowCaption(caption.c_str());
}
@@ -208,7 +208,7 @@ static int runGame(const Plugin *plugin, GameDetector &detector, OSystem &system
int result;
// Init the engine (this might change the screen parameters
- result = engine->init(detector);
+ result = engine->init();
// Run the game engine if the initialization was successful.
if (result == 0) {
@@ -314,7 +314,7 @@ extern "C" int scummvm_main(int argc, char *argv[]) {
setupDummyPalette(system);
// Unless a game was specified, show the launcher dialog
- if (detector._targetName.empty()) {
+ if (ConfMan.getActiveDomainName().empty()) {
running = launcherDialog(detector, system);
// Discard any command line options. Those that affect the graphics
@@ -335,7 +335,7 @@ extern "C" int scummvm_main(int argc, char *argv[]) {
// to save memory
PluginManager::instance().unloadPluginsExcept(plugin);
- int result = runGame(plugin, detector, system, specialDebug);
+ int result = runGame(plugin, system, specialDebug);
if (result == 0)
break;
diff --git a/base/plugins.cpp b/base/plugins.cpp
index 80f19bd775..8cb1e1e6ae 100644
--- a/base/plugins.cpp
+++ b/base/plugins.cpp
@@ -23,13 +23,12 @@
#include "common/stdafx.h"
#include "backends/fs/fs.h"
-#include "base/gameDetector.h"
#include "base/plugins.h"
#include "base/engine.h"
#include "common/util.h"
/** Type of factory functions which make new Engine objects. */
-typedef Engine *(*EngineFactory)(GameDetector *detector, OSystem *syst);
+typedef Engine *(*EngineFactory)(OSystem *syst);
typedef const char *(*NameFunc)();
typedef GameDescriptor (*GameIDQueryFunc)(const char *gameid);
@@ -117,9 +116,9 @@ public:
const char *getName() const { return _plugin->_name; }
- Engine *createInstance(GameDetector *detector, OSystem *syst) const {
+ Engine *createInstance(OSystem *syst) const {
assert(_plugin->_ef);
- return (*_plugin->_ef)(detector, syst);
+ return (*_plugin->_ef)(syst);
}
GameList getSupportedGames() const { return _plugin->_games; }
@@ -158,9 +157,9 @@ public:
const char *getName() const { return _name.c_str(); }
- Engine *createInstance(GameDetector *detector, OSystem *syst) const {
+ Engine *createInstance(OSystem *syst) const {
assert(_ef);
- return (*_ef)(detector, syst);
+ return (*_ef)(syst);
}
GameList getSupportedGames() const { return _games; }
diff --git a/base/plugins.h b/base/plugins.h
index 8e5efcf2ea..5b758221a2 100644
--- a/base/plugins.h
+++ b/base/plugins.h
@@ -31,7 +31,6 @@
class Engine;
class FSList;
-class GameDetector;
class OSystem;
/** List of games. */
@@ -85,7 +84,7 @@ public:
virtual GameDescriptor findGame(const char *gameid) const = 0;
virtual DetectedGameList detectGames(const FSList &fslist) const = 0;
- virtual Engine *createInstance(GameDetector *detector, OSystem *syst) const = 0;
+ virtual Engine *createInstance(OSystem *syst) const = 0;
};
@@ -107,7 +106,7 @@ public:
* - DetectedGameList Engine_##ID##_detectGames(const FSList &fslist)
* -> scans through the given file list (usually the contents of a directory),
* and attempts to detects games present in that location.
- * - Engine *Engine_##ID##_create(GameDetector *detector, OSystem *syst)
+ * - Engine *Engine_##ID##_create(OSystem *syst)
* -> factory function, create an instance of the Engine class.
*
* @todo add some means to query the plugin API version etc.
@@ -131,7 +130,7 @@ public:
PLUGIN_EXPORT const char *PLUGIN_name() { return name; } \
PLUGIN_EXPORT GameList PLUGIN_gameIDList() { return Engine_##ID##_gameIDList(); } \
PLUGIN_EXPORT GameDescriptor PLUGIN_findGameID(const char *gameid) { return Engine_##ID##_findGameID(gameid); } \
- PLUGIN_EXPORT Engine *PLUGIN_createEngine(GameDetector *detector, OSystem *syst) { return Engine_##ID##_create(detector, syst); } \
+ PLUGIN_EXPORT Engine *PLUGIN_createEngine(OSystem *syst) { return Engine_##ID##_create(syst); } \
PLUGIN_EXPORT DetectedGameList PLUGIN_detectGames(const FSList &fslist) { return Engine_##ID##_detectGames(fslist); } \
} \
void dummyFuncToAllowTrailingSemicolon()
@@ -146,7 +145,7 @@ class PluginRegistrator {
friend class StaticPlugin;
public:
typedef GameDescriptor (*GameIDQueryFunc)(const char *gameid);
- typedef Engine *(*EngineFactory)(GameDetector *detector, OSystem *syst);
+ typedef Engine *(*EngineFactory)(OSystem *syst);
typedef DetectedGameList (*DetectFunc)(const FSList &fslist);
protected:
diff --git a/common/config-manager.h b/common/config-manager.h
index 10313f64d5..d2336a289f 100644
--- a/common/config-manager.h
+++ b/common/config-manager.h
@@ -142,7 +142,9 @@ public:
void flushToDisk();
void setActiveDomain(const String &domName);
- const String & getActiveDomain() const { return _activeDomainName; }
+ Domain * getActiveDomain() { return _activeDomain; }
+ const Domain * getActiveDomain() const { return _activeDomain; }
+ const String & getActiveDomainName() const { return _activeDomainName; }
// void addDomain(const String &domName);
void removeGameDomain(const String &domName);
diff --git a/common/savefile.cpp b/common/savefile.cpp
index 1cdc29bfb3..5124ef8958 100644
--- a/common/savefile.cpp
+++ b/common/savefile.cpp
@@ -48,7 +48,7 @@ const char *SaveFileManager::getSavePath() const {
// Work around a bug (#999122) in the original 0.6.1 release of
// ScummVM, which would insert a bad savepath value into config files.
if (0 == strcmp(dir, "None")) {
- ConfMan.removeKey("savepath", ConfMan.getActiveDomain());
+ ConfMan.removeKey("savepath", ConfMan.getActiveDomainName());
ConfMan.flushToDisk();
dir = ConfMan.get("savepath").c_str();
}
diff --git a/engines/cine/cine.cpp b/engines/cine/cine.cpp
index 2e3d042aab..9f504b76f0 100644
--- a/engines/cine/cine.cpp
+++ b/engines/cine/cine.cpp
@@ -28,7 +28,6 @@
#include "common/config-manager.h"
#include "common/system.h"
-#include "base/gameDetector.h"
#include "base/plugins.h"
#include "backends/fs/fs.h"
@@ -111,15 +110,15 @@ DetectedGameList Engine_CINE_detectGames(const FSList &fslist) {
return detectedGames;
}
-Engine *Engine_CINE_create(GameDetector *detector, OSystem *syst) {
- return new Cine::CineEngine(detector, syst);
+Engine *Engine_CINE_create(OSystem *syst) {
+ return new Cine::CineEngine(syst);
}
REGISTER_PLUGIN(CINE, "CINE Engine");
namespace Cine {
-CineEngine::CineEngine(GameDetector *detector, OSystem *syst) : Engine(syst) {
+CineEngine::CineEngine(OSystem *syst) : Engine(syst) {
Common::addSpecialDebugLevel(kCineDebugScript, "Script", "Script debug level");
// Setup mixer
@@ -132,9 +131,12 @@ CineEngine::CineEngine(GameDetector *detector, OSystem *syst) : Engine(syst) {
const Cine::GameSettings *g;
+ const char *gameid = ConfMan.get("gameid").c_str();
for (g = Cine::cine_settings; g->gameid; ++g)
- if (!scumm_stricmp(g->gameid, detector->_targetName.c_str()))
+ if (!scumm_stricmp(g->gameid, gameid)) {
_gameId = g->id;
+ break;
+ }
gameType = _gameId;
}
@@ -146,10 +148,10 @@ void CineEngine::errorString(const char *buf1, char *buf2) {
strcpy(buf2, buf1);
}
-int CineEngine::init(GameDetector &detector) {
+int CineEngine::init() {
// Initialize backend
_system->beginGFXTransaction();
- initCommonGFX(detector, false);
+ initCommonGFX(false);
_system->initSize(320, 200);
_system->endGFXTransaction();
diff --git a/engines/cine/cine.h b/engines/cine/cine.h
index dac07c63b0..40e730fd70 100644
--- a/engines/cine/cine.h
+++ b/engines/cine/cine.h
@@ -58,12 +58,12 @@ class CineEngine : public Engine {
void errorString(const char *buf_input, char *buf_output);
protected:
- int init(GameDetector & detector);
+ int init();
int go();
void shutdown();
public:
- CineEngine(GameDetector *detector, OSystem *syst);
+ CineEngine(OSystem *syst);
virtual ~CineEngine();
int getGameId() {
return _gameId;
diff --git a/engines/gob/gob.cpp b/engines/gob/gob.cpp
index 3538e01b65..4a968bb4b3 100644
--- a/engines/gob/gob.cpp
+++ b/engines/gob/gob.cpp
@@ -21,7 +21,6 @@
*/
#include "common/stdafx.h"
-#include "base/gameDetector.h"
#include "base/plugins.h"
#include "backends/fs/fs.h"
#include "common/config-manager.h"
@@ -127,7 +126,7 @@ static const PlainGameDescriptor gob_list[] = {
#define MAX_TIME_DELTA 100
-GobEngine::GobEngine(GameDetector *detector, OSystem * syst, uint32 features)
+GobEngine::GobEngine(OSystem * syst, uint32 features)
: Engine(syst) {
// Setup mixer
if (!_mixer->isReady()) {
@@ -189,7 +188,7 @@ void GobEngine::shutdown() {
_system->quit();
}
-int GobEngine::init(GameDetector &detector) {
+int GobEngine::init() {
_game = new Game(this);
_snd = new Snd(this);
_video = new Video(this);
@@ -223,7 +222,7 @@ int GobEngine::init(GameDetector &detector) {
_music = new Music(this);
_system->beginGFXTransaction();
- initCommonGFX(detector, false);
+ initCommonGFX(false);
_system->initSize(320, 200);
_system->endGFXTransaction();
@@ -339,7 +338,7 @@ DetectedGameList Engine_GOB_detectGames(const FSList &fslist) {
return detectedGames;
}
-Engine *Engine_GOB_create(GameDetector * detector, OSystem *syst) {
+Engine *Engine_GOB_create(OSystem *syst) {
// Detect game features based on MD5
uint8 md5sum[16];
char md5str[32 + 1];
@@ -358,12 +357,8 @@ Engine *Engine_GOB_create(GameDetector * detector, OSystem *syst) {
// TODO
// Fallback. Maybe we will be able to determine game type from game
// data contents
- Common::String realGame;
+ Common::String realGame(ConfMan.get("gameid"));
uint32 features;
- if (ConfMan.hasKey("gameid"))
- realGame = ConfMan.get("gameid");
- else
- realGame = detector->_targetName;
if (!scumm_stricmp(realGame.c_str(), "gob2"))
features = GF_GOB2;
else
@@ -385,7 +380,7 @@ Engine *Engine_GOB_create(GameDetector * detector, OSystem *syst) {
printf("Unknown MD5 (%s)! Please report the details (language, platform, etc.) of this game to the ScummVM team\n", md5str);
}
- return new GobEngine(detector, syst, features);
+ return new GobEngine(syst, features);
}
REGISTER_PLUGIN(GOB, "Gob Engine");
diff --git a/engines/gob/gob.h b/engines/gob/gob.h
index a3e53787d4..8d2bb1271a 100644
--- a/engines/gob/gob.h
+++ b/engines/gob/gob.h
@@ -85,10 +85,10 @@ class GobEngine : public Engine {
protected:
int go();
- int init(GameDetector &detector);
+ int init();
public:
- GobEngine(GameDetector * detector, OSystem * syst, uint32 features);
+ GobEngine(OSystem *syst, uint32 features);
virtual ~GobEngine();
void shutdown();
diff --git a/engines/kyra/kyra.cpp b/engines/kyra/kyra.cpp
index 48d58796d1..328d407768 100644
--- a/engines/kyra/kyra.cpp
+++ b/engines/kyra/kyra.cpp
@@ -24,7 +24,6 @@
#include "backends/fs/fs.h"
-#include "base/gameDetector.h"
#include "base/plugins.h"
#include "common/config-manager.h"
@@ -205,15 +204,15 @@ DetectedGameList Engine_KYRA_detectGames(const FSList &fslist) {
return detectedGames;
}
-Engine *Engine_KYRA_create(GameDetector *detector, OSystem *system) {
- return new KyraEngine(detector, system);
+Engine *Engine_KYRA_create(OSystem *system) {
+ return new KyraEngine(system);
}
REGISTER_PLUGIN(KYRA, "Legend of Kyrandia Engine");
namespace Kyra {
-KyraEngine::KyraEngine(GameDetector *detector, OSystem *system)
+KyraEngine::KyraEngine(OSystem *system)
: Engine(system) {
_seq_Forest = _seq_KallakWriting = _seq_KyrandiaLogo = _seq_KallakMalcolm =
_seq_MalcolmTree = _seq_WestwoodLogo = _seq_Demo1 = _seq_Demo2 = _seq_Demo3 =
@@ -326,9 +325,9 @@ KyraEngine::KyraEngine(GameDetector *detector, OSystem *system)
}
}
-int KyraEngine::init(GameDetector &detector) {
+int KyraEngine::init() {
_system->beginGFXTransaction();
- initCommonGFX(detector, false);
+ initCommonGFX(false);
//for debug reasons (see Screen::updateScreen)
//_system->initSize(640, 200);
_system->initSize(320, 200);
@@ -506,7 +505,6 @@ int KyraEngine::init(GameDetector &detector) {
_mousePressFlag = false;
- _targetName = detector._targetName;
_menuDirectlyToLoad = false;
_lastMusicCommand = 0;
diff --git a/engines/kyra/kyra.h b/engines/kyra/kyra.h
index 13f51c3111..d5a26f9c19 100644
--- a/engines/kyra/kyra.h
+++ b/engines/kyra/kyra.h
@@ -246,7 +246,7 @@ public:
MUSIC_INTRO = 0
};
- KyraEngine(GameDetector *detector, OSystem *system);
+ KyraEngine(OSystem *system);
~KyraEngine();
void errorString(const char *buf_input, char *buf_output);
@@ -476,7 +476,7 @@ public:
protected:
int go();
- int init(GameDetector &detector);
+ int init();
void startup();
void mainLoop();
@@ -781,8 +781,6 @@ protected:
bool _configSounds;
uint8 _configVoice;
- Common::String _targetName;
-
int _curMusicTheme;
int _newMusicTheme;
int16 _lastMusicCommand;
diff --git a/engines/lure/lure.cpp b/engines/lure/lure.cpp
index 7a617052d5..84d035b318 100644
--- a/engines/lure/lure.cpp
+++ b/engines/lure/lure.cpp
@@ -24,7 +24,6 @@
#include "backends/fs/fs.h"
-#include "base/gameDetector.h"
#include "base/plugins.h"
#include "common/config-manager.h"
@@ -155,7 +154,7 @@ DetectedGameList Engine_LURE_detectGames(const FSList &fslist) {
return detectedGames;
}
-Engine *Engine_LURE_create(GameDetector *detector, OSystem *system) {
+Engine *Engine_LURE_create(OSystem *system) {
return new LureEngine(system);
}
@@ -252,9 +251,9 @@ void LureEngine::detectGame() {
}
}
-int LureEngine::init(GameDetector &detector) {
+int LureEngine::init() {
_system->beginGFXTransaction();
- initCommonGFX(detector, false);
+ initCommonGFX(false);
_system->initSize(FULL_SCREEN_WIDTH, FULL_SCREEN_HEIGHT);
_system->endGFXTransaction();
diff --git a/engines/lure/lure.h b/engines/lure/lure.h
index 489c45b893..d980b97bb2 100644
--- a/engines/lure/lure.h
+++ b/engines/lure/lure.h
@@ -58,7 +58,7 @@ public:
LureEngine(OSystem *system);
~LureEngine();
- virtual int init(GameDetector &detector);
+ virtual int init();
virtual int go();
virtual void errorString(const char *buf_input, char *buf_output);
void quitGame();
diff --git a/engines/queen/queen.cpp b/engines/queen/queen.cpp
index d1219fb59e..c87ccd6695 100644
--- a/engines/queen/queen.cpp
+++ b/engines/queen/queen.cpp
@@ -24,7 +24,6 @@
#include "backends/fs/fs.h"
-#include "base/gameDetector.h"
#include "base/plugins.h"
#include "common/config-manager.h"
@@ -129,7 +128,7 @@ DetectedGameList Engine_QUEEN_detectGames(const FSList &fslist) {
return detectedGames;
}
-Engine *Engine_QUEEN_create(GameDetector *detector, OSystem *syst) {
+Engine *Engine_QUEEN_create(OSystem *syst) {
return new Queen::QueenEngine(syst);
}
@@ -404,9 +403,9 @@ int QueenEngine::go() {
return 0;
}
-int QueenEngine::init(GameDetector &detector) {
+int QueenEngine::init() {
_system->beginGFXTransaction();
- initCommonGFX(detector, false);
+ initCommonGFX(false);
_system->initSize(GAME_SCREEN_WIDTH, GAME_SCREEN_HEIGHT);
_system->endGFXTransaction();
diff --git a/engines/queen/queen.h b/engines/queen/queen.h
index 3b7f448ea0..2077f42a34 100644
--- a/engines/queen/queen.h
+++ b/engines/queen/queen.h
@@ -25,7 +25,6 @@
#include "base/engine.h"
-class GameDetector;
namespace Common {
class InSaveFile;
}
@@ -136,7 +135,7 @@ protected:
void errorString(const char *buf_input, char *buf_output);
int go();
- int init(GameDetector &detector);
+ int init();
int _talkSpeed;
diff --git a/engines/saga/game.cpp b/engines/saga/game.cpp
index 4154173f33..10c009b8f1 100644
--- a/engines/saga/game.cpp
+++ b/engines/saga/game.cpp
@@ -31,7 +31,6 @@
#include "common/hashmap.h"
#include "common/config-manager.h"
#include "base/plugins.h"
-#include "base/gameDetector.h"
#include "backends/fs/fs.h"
#include "saga/rscfile.h"
@@ -84,8 +83,8 @@ DetectedGameList Engine_SAGA_detectGames(const FSList &fslist) {
return Saga::GAME_detectGames(fslist);
}
-Engine *Engine_SAGA_create(GameDetector *detector, OSystem *syst) {
- return new Saga::SagaEngine(detector, syst);
+Engine *Engine_SAGA_create(OSystem *syst) {
+ return new Saga::SagaEngine(syst);
}
REGISTER_PLUGIN(SAGA, "SAGA Engine");
diff --git a/engines/saga/gfx.cpp b/engines/saga/gfx.cpp
index cdb445df8d..940eb01927 100644
--- a/engines/saga/gfx.cpp
+++ b/engines/saga/gfx.cpp
@@ -36,9 +36,9 @@
namespace Saga {
-Gfx::Gfx(SagaEngine *vm, OSystem *system, int width, int height, GameDetector &detector) : _vm(vm), _system(system) {
+Gfx::Gfx(SagaEngine *vm, OSystem *system, int width, int height) : _vm(vm), _system(system) {
_system->beginGFXTransaction();
- _vm->initCommonGFX(detector, (width > 320));
+ _vm->initCommonGFX(width > 320);
_system->initSize(width, height);
_system->endGFXTransaction();
diff --git a/engines/saga/gfx.h b/engines/saga/gfx.h
index ff96cbf081..2c0f4df600 100644
--- a/engines/saga/gfx.h
+++ b/engines/saga/gfx.h
@@ -134,7 +134,7 @@ class SagaEngine;
class Gfx {
public:
- Gfx(SagaEngine *vm, OSystem *system, int width, int height, GameDetector &detector);
+ Gfx(SagaEngine *vm, OSystem *system, int width, int height);
~Gfx();
Surface *getBackBuffer() {
return &_backBuffer;
diff --git a/engines/saga/saga.cpp b/engines/saga/saga.cpp
index f0d4184f64..2a8f0e1802 100644
--- a/engines/saga/saga.cpp
+++ b/engines/saga/saga.cpp
@@ -23,7 +23,6 @@
*/
#include "common/stdafx.h"
-#include "base/gameDetector.h"
#include "common/file.h"
#include "common/config-manager.h"
@@ -58,9 +57,8 @@ namespace Saga {
#define MAX_TIME_DELTA 100
-SagaEngine::SagaEngine(GameDetector *detector, OSystem *syst)
- : Engine(syst),
- _targetName(detector->_targetName) {
+SagaEngine::SagaEngine(OSystem *syst)
+ : Engine(syst) {
_leftMouseButtonPressed = _rightMouseButtonPressed = false;
@@ -148,7 +146,7 @@ void SagaEngine::errorString(const char *buf1, char *buf2) {
strcpy(buf2, buf1);
}
-int SagaEngine::init(GameDetector &detector) {
+int SagaEngine::init() {
_soundVolume = ConfMan.getInt("sfx_volume") / 25;
_musicVolume = ConfMan.getInt("music_volume") / 25;
_subtitlesEnabled = ConfMan.getBool("subtitles");
@@ -186,7 +184,7 @@ int SagaEngine::init(GameDetector &detector) {
_previousTicks = _system->getMillis();
// Initialize graphics
- _gfx = new Gfx(this, _system, getDisplayWidth(), getDisplayHeight(), detector);
+ _gfx = new Gfx(this, _system, getDisplayWidth(), getDisplayHeight());
// Graphics driver should be initialized before console
_console = new Console(this);
diff --git a/engines/saga/saga.h b/engines/saga/saga.h
index 0ba23b4948..450b21ec71 100644
--- a/engines/saga/saga.h
+++ b/engines/saga/saga.h
@@ -573,9 +573,9 @@ class SagaEngine : public Engine {
protected:
int go();
- int init(GameDetector &detector);
+ int init();
public:
- SagaEngine(GameDetector * detector, OSystem * syst);
+ SagaEngine(OSystem *syst);
virtual ~SagaEngine();
void shutDown() { _quit = true; }
@@ -666,8 +666,6 @@ public:
}
private:
- Common::String _targetName;
-
uint _saveFilesMaxCount;
uint _saveFilesCount;
SaveFileData _saveFiles[MAX_SAVES];
diff --git a/engines/scumm/cursor.cpp b/engines/scumm/cursor.cpp
index 1d64c42328..6e86ad5644 100644
--- a/engines/scumm/cursor.cpp
+++ b/engines/scumm/cursor.cpp
@@ -93,8 +93,8 @@ static const byte default_v6_cursor[] = {
0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, 0x00,0x0F,0x00, 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,
};
-ScummEngine_v5::ScummEngine_v5(GameDetector *detector, OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst)
- : ScummEngine(detector, syst, gs, md5sum, subst) {
+ScummEngine_v5::ScummEngine_v5(OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst)
+ : ScummEngine(syst, gs, md5sum, subst) {
for (int i = 0; i < 4; i++) {
memcpy(_cursorImages[i], default_cursor_images[i], 32);
diff --git a/engines/scumm/debugger.cpp b/engines/scumm/debugger.cpp
index 98359f084c..0f37947467 100644
--- a/engines/scumm/debugger.cpp
+++ b/engines/scumm/debugger.cpp
@@ -82,7 +82,7 @@ ScummDebugger::ScummDebugger(ScummEngine *s)
DVar_Register("scumm_roomresource", &_vm->_roomResource, DVAR_INT, 0);
DVar_Register("scumm_vars", &_vm->_scummVars, DVAR_INTARRAY, _vm->_numVariables);
- DVar_Register("scumm_gamename", &_vm->_targetName, DVAR_STRING, 0);
+// DVar_Register("scumm_gamename", &_vm->_targetName, DVAR_STRING, 0);
DVar_Register("scumm_exename", &_vm->_baseName, DVAR_STRING, 0);
DVar_Register("scumm_gameid", &_vm->_game.id, DVAR_BYTE, 0);
diff --git a/engines/scumm/he/intern_he.h b/engines/scumm/he/intern_he.h
index da349d004a..0fd51d5d8d 100644
--- a/engines/scumm/he/intern_he.h
+++ b/engines/scumm/he/intern_he.h
@@ -51,7 +51,7 @@ protected:
Common::File _hFileTable[17];
public:
- ScummEngine_v60he(GameDetector *detector, OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst) : ScummEngine_v6(detector, syst, gs, md5sum, subst) {}
+ ScummEngine_v60he(OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst) : ScummEngine_v6(syst, gs, md5sum, subst) {}
virtual void scummInit();
@@ -116,7 +116,7 @@ protected:
bool _skipProcessActors;
public:
- ScummEngine_v70he(GameDetector *detector, OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst);
+ ScummEngine_v70he(OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst);
~ScummEngine_v70he();
Wiz *_wiz;
@@ -182,7 +182,7 @@ protected:
class ScummEngine_v71he : public ScummEngine_v70he {
public:
- ScummEngine_v71he(GameDetector *detector, OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst);
+ ScummEngine_v71he(OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst);
protected:
virtual void saveOrLoad(Serializer *s);
@@ -237,7 +237,7 @@ protected:
WizParameters _wizParams;
public:
- ScummEngine_v72he(GameDetector *detector, OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst);
+ ScummEngine_v72he(OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst);
virtual void scummInit();
@@ -348,7 +348,7 @@ protected:
int32 _heSndResId, _curSndId, _sndPtrOffs, _sndTmrOffs;
public:
- ScummEngine_v80he(GameDetector *detector, OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst);
+ ScummEngine_v80he(OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst);
protected:
virtual void setupOpcodes();
@@ -421,7 +421,7 @@ protected:
int32 _curSpriteGroupId;
public:
- ScummEngine_v90he(GameDetector *detector, OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst);
+ ScummEngine_v90he(OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst);
~ScummEngine_v90he();
virtual void scummInit();
@@ -518,7 +518,7 @@ protected:
class ScummEngine_v99he : public ScummEngine_v90he {
public:
- ScummEngine_v99he(GameDetector *detector, OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst) : ScummEngine_v90he(detector, syst, gs, md5sum, subst) {}
+ ScummEngine_v99he(OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst) : ScummEngine_v90he(syst, gs, md5sum, subst) {}
virtual void scummInit();
@@ -549,7 +549,7 @@ protected:
const OpcodeEntryV100he *_opcodesV100he;
public:
- ScummEngine_v100he(GameDetector *detector, OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst) : ScummEngine_v99he(detector, syst, gs, md5sum, subst) {}
+ ScummEngine_v100he(OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst) : ScummEngine_v99he(syst, gs, md5sum, subst) {}
protected:
virtual void setupOpcodes();
diff --git a/engines/scumm/intern.h b/engines/scumm/intern.h
index d31dbf298d..530f3a36ed 100644
--- a/engines/scumm/intern.h
+++ b/engines/scumm/intern.h
@@ -50,7 +50,7 @@ protected:
byte _cursorHotspots[2 * 4];
public:
- ScummEngine_v5(GameDetector *detector, OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst);
+ ScummEngine_v5(OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst);
protected:
virtual void setupOpcodes();
@@ -193,7 +193,7 @@ protected:
*/
class ScummEngine_v4 : public ScummEngine_v5 {
public:
- ScummEngine_v4(GameDetector *detector, OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst);
+ ScummEngine_v4(OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst);
virtual void scummInit();
@@ -212,7 +212,7 @@ protected:
*/
class ScummEngine_v3 : public ScummEngine_v4 {
public:
- ScummEngine_v3(GameDetector *detector, OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst);
+ ScummEngine_v3(OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst);
protected:
virtual void readRoomsOffsets();
@@ -224,7 +224,7 @@ protected:
*/
class ScummEngine_v3old : public ScummEngine_v3 {
public:
- ScummEngine_v3old(GameDetector *detector, OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst);
+ ScummEngine_v3old(OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst);
protected:
virtual void readResTypeList(int id, const char *name);
@@ -257,7 +257,7 @@ protected:
int8 _mouseOverBoxV2;
public:
- ScummEngine_v2(GameDetector *detector, OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst);
+ ScummEngine_v2(OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst);
virtual void scummInit();
@@ -403,7 +403,7 @@ protected:
int _currentMode;
public:
- ScummEngine_c64(GameDetector *detector, OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst);
+ ScummEngine_c64(OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst);
virtual void scummInit();
@@ -555,7 +555,7 @@ protected:
public:
- ScummEngine_v6(GameDetector *detector, OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst);
+ ScummEngine_v6(OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst);
virtual void scummInit();
@@ -784,7 +784,7 @@ protected:
#ifndef DISABLE_SCUMM_7_8
class ScummEngine_v7 : public ScummEngine_v6 {
public:
- ScummEngine_v7(GameDetector *detector, OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst);
+ ScummEngine_v7(OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst);
~ScummEngine_v7();
struct LangIndexNode {
@@ -865,7 +865,7 @@ protected:
ObjectNameId *_objectIDMap;
public:
- ScummEngine_v8(GameDetector *detector, OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst);
+ ScummEngine_v8(OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst);
~ScummEngine_v8();
protected:
diff --git a/engines/scumm/plugin.cpp b/engines/scumm/plugin.cpp
index ac9bcfc0bd..f1087040b7 100644
--- a/engines/scumm/plugin.cpp
+++ b/engines/scumm/plugin.cpp
@@ -25,7 +25,6 @@
#include "backends/fs/fs.h"
-#include "base/gameDetector.h"
#include "base/plugins.h"
#include "common/config-manager.h"
@@ -1618,7 +1617,7 @@ DetectedGameList Engine_SCUMM_detectGames(const FSList &fslist) {
*
* This is heavily based on our MD5 detection scheme.
*/
-Engine *Engine_SCUMM_create(GameDetector *detector, OSystem *syst) {
+Engine *Engine_SCUMM_create(OSystem *syst) {
Engine *engine;
const char *gameid = ConfMan.get("gameid").c_str();
@@ -1811,65 +1810,65 @@ Engine *Engine_SCUMM_create(GameDetector *detector, OSystem *syst) {
case 1:
case 2:
if (game.id == GID_MANIAC && game.platform == Common::kPlatformC64)
- engine = new ScummEngine_c64(detector, syst, game, md5sum, subst);
+ engine = new ScummEngine_c64(syst, game, md5sum, subst);
else
- engine = new ScummEngine_v2(detector, syst, game, md5sum, subst);
+ engine = new ScummEngine_v2(syst, game, md5sum, subst);
break;
case 3:
if (game.features & GF_OLD_BUNDLE)
- engine = new ScummEngine_v3old(detector, syst, game, md5sum, subst);
+ engine = new ScummEngine_v3old(syst, game, md5sum, subst);
else
- engine = new ScummEngine_v3(detector, syst, game, md5sum, subst);
+ engine = new ScummEngine_v3(syst, game, md5sum, subst);
break;
case 4:
- engine = new ScummEngine_v4(detector, syst, game, md5sum, subst);
+ engine = new ScummEngine_v4(syst, game, md5sum, subst);
break;
case 5:
- engine = new ScummEngine_v5(detector, syst, game, md5sum, subst);
+ engine = new ScummEngine_v5(syst, game, md5sum, subst);
break;
case 6:
switch (game.heversion) {
#ifndef DISABLE_HE
case 100:
- engine = new ScummEngine_v100he(detector, syst, game, md5sum, subst);
+ engine = new ScummEngine_v100he(syst, game, md5sum, subst);
break;
case 99:
- engine = new ScummEngine_v99he(detector, syst, game, md5sum, subst);
+ engine = new ScummEngine_v99he(syst, game, md5sum, subst);
break;
case 98:
case 95:
case 90:
- engine = new ScummEngine_v90he(detector, syst, game, md5sum, subst);
+ engine = new ScummEngine_v90he(syst, game, md5sum, subst);
break;
case 80:
- engine = new ScummEngine_v80he(detector, syst, game, md5sum, subst);
+ engine = new ScummEngine_v80he(syst, game, md5sum, subst);
break;
case 73:
case 72:
- engine = new ScummEngine_v72he(detector, syst, game, md5sum, subst);
+ engine = new ScummEngine_v72he(syst, game, md5sum, subst);
break;
case 71:
- engine = new ScummEngine_v71he(detector, syst, game, md5sum, subst);
+ engine = new ScummEngine_v71he(syst, game, md5sum, subst);
break;
case 70:
- engine = new ScummEngine_v70he(detector, syst, game, md5sum, subst);
+ engine = new ScummEngine_v70he(syst, game, md5sum, subst);
break;
#endif
#ifndef PALMOS_68K
case 61:
- engine = new ScummEngine_v60he(detector, syst, game, md5sum, subst);
+ engine = new ScummEngine_v60he(syst, game, md5sum, subst);
break;
#endif
default:
- engine = new ScummEngine_v6(detector, syst, game, md5sum, subst);
+ engine = new ScummEngine_v6(syst, game, md5sum, subst);
}
break;
#ifndef DISABLE_SCUMM_7_8
case 7:
- engine = new ScummEngine_v7(detector, syst, game, md5sum, subst);
+ engine = new ScummEngine_v7(syst, game, md5sum, subst);
break;
case 8:
- engine = new ScummEngine_v8(detector, syst, game, md5sum, subst);
+ engine = new ScummEngine_v8(syst, game, md5sum, subst);
break;
#endif
default:
diff --git a/engines/scumm/scumm.cpp b/engines/scumm/scumm.cpp
index ed846fa7b9..949c35f0d1 100644
--- a/engines/scumm/scumm.cpp
+++ b/engines/scumm/scumm.cpp
@@ -25,7 +25,6 @@
#include "backends/fs/fs.h"
-#include "base/gameDetector.h"
#include "base/plugins.h"
#include "common/config-manager.h"
@@ -81,7 +80,7 @@ namespace Scumm {
ScummEngine *g_scumm = 0;
-ScummEngine::ScummEngine(GameDetector *detector, OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst)
+ScummEngine::ScummEngine(OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst)
: Engine(syst),
_game(gs),
_substResFileName(subst),
@@ -89,8 +88,7 @@ ScummEngine::ScummEngine(GameDetector *detector, OSystem *syst, const GameSettin
_currentScript(0xFF), // Let debug() work on init stage
gdi(this),
res(this),
- _pauseDialog(0), _mainMenuDialog(0), _versionDialog(0),
- _targetName(detector->_targetName) {
+ _pauseDialog(0), _mainMenuDialog(0), _versionDialog(0) {
// Copy MD5 checksum
memcpy(_gameMD5, md5sum, 16);
@@ -677,22 +675,22 @@ ScummEngine::~ScummEngine() {
delete _debugger;
}
-ScummEngine_v4::ScummEngine_v4(GameDetector *detector, OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst)
- : ScummEngine_v5(detector, syst, gs, md5sum, subst) {
+ScummEngine_v4::ScummEngine_v4(OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst)
+ : ScummEngine_v5(syst, gs, md5sum, subst) {
_resourceHeaderSize = 6;
}
-ScummEngine_v3::ScummEngine_v3(GameDetector *detector, OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst)
- : ScummEngine_v4(detector, syst, gs, md5sum, subst) {
+ScummEngine_v3::ScummEngine_v3(OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst)
+ : ScummEngine_v4(syst, gs, md5sum, subst) {
}
-ScummEngine_v3old::ScummEngine_v3old(GameDetector *detector, OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst)
- : ScummEngine_v3(detector, syst, gs, md5sum, subst) {
+ScummEngine_v3old::ScummEngine_v3old(OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst)
+ : ScummEngine_v3(syst, gs, md5sum, subst) {
_resourceHeaderSize = 4;
}
-ScummEngine_v2::ScummEngine_v2(GameDetector *detector, OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst)
- : ScummEngine_v3old(detector, syst, gs, md5sum, subst) {
+ScummEngine_v2::ScummEngine_v2(OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst)
+ : ScummEngine_v3old(syst, gs, md5sum, subst) {
VAR_SENTENCE_VERB = 0xFF;
VAR_SENTENCE_OBJECT1 = 0xFF;
@@ -705,14 +703,14 @@ ScummEngine_v2::ScummEngine_v2(GameDetector *detector, OSystem *syst, const Game
VAR_CLICK_OBJECT = 0xFF;
}
-ScummEngine_c64::ScummEngine_c64(GameDetector *detector, OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst)
- : ScummEngine_v2(detector, syst, gs, md5sum, subst) {
+ScummEngine_c64::ScummEngine_c64(OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst)
+ : ScummEngine_v2(syst, gs, md5sum, subst) {
_currentMode = 0;
}
-ScummEngine_v6::ScummEngine_v6(GameDetector *detector, OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst)
- : ScummEngine(detector, syst, gs, md5sum, subst) {
+ScummEngine_v6::ScummEngine_v6(OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst)
+ : ScummEngine(syst, gs, md5sum, subst) {
_blastObjectQueuePos = 0;
memset(_blastObjectQueue, 0, sizeof(_blastObjectQueue));
_blastTextQueuePos = 0;
@@ -733,8 +731,8 @@ ScummEngine_v6::ScummEngine_v6(GameDetector *detector, OSystem *syst, const Game
}
#ifndef DISABLE_HE
-ScummEngine_v70he::ScummEngine_v70he(GameDetector *detector, OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst)
- : ScummEngine_v60he(detector, syst, gs, md5sum, subst) {
+ScummEngine_v70he::ScummEngine_v70he(OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst)
+ : ScummEngine_v60he(syst, gs, md5sum, subst) {
if (_game.platform == Common::kPlatformMacintosh && (_game.heversion >= 72 && _game.heversion <= 73))
_resExtractor = new MacResExtractor(this);
else
@@ -765,16 +763,16 @@ ScummEngine_v70he::~ScummEngine_v70he() {
free(_storedFlObjects);
}
-ScummEngine_v71he::ScummEngine_v71he(GameDetector *detector, OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst)
- : ScummEngine_v70he(detector, syst, gs, md5sum, subst) {
+ScummEngine_v71he::ScummEngine_v71he(OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst)
+ : ScummEngine_v70he(syst, gs, md5sum, subst) {
_auxBlocksNum = 0;
memset(_auxBlocks, 0, sizeof(_auxBlocks));
_auxEntriesNum = 0;
memset(_auxEntries, 0, sizeof(_auxEntries));
}
-ScummEngine_v72he::ScummEngine_v72he(GameDetector *detector, OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst)
- : ScummEngine_v71he(detector, syst, gs, md5sum, subst) {
+ScummEngine_v72he::ScummEngine_v72he(OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst)
+ : ScummEngine_v71he(syst, gs, md5sum, subst) {
VAR_NUM_ROOMS = 0xFF;
VAR_NUM_SCRIPTS = 0xFF;
VAR_NUM_SOUNDS = 0xFF;
@@ -784,8 +782,8 @@ ScummEngine_v72he::ScummEngine_v72he(GameDetector *detector, OSystem *syst, cons
VAR_POLYGONS_ONLY = 0xFF;
}
-ScummEngine_v80he::ScummEngine_v80he(GameDetector *detector, OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst)
- : ScummEngine_v72he(detector, syst, gs, md5sum, subst) {
+ScummEngine_v80he::ScummEngine_v80he(OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst)
+ : ScummEngine_v72he(syst, gs, md5sum, subst) {
_heSndResId = 0;
_curSndId = 0;
_sndPtrOffs = 0;
@@ -797,8 +795,8 @@ ScummEngine_v80he::ScummEngine_v80he(GameDetector *detector, OSystem *syst, cons
VAR_COLOR_DEPTH = 0xFF;
}
-ScummEngine_v90he::ScummEngine_v90he(GameDetector *detector, OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst)
- : ScummEngine_v80he(detector, syst, gs, md5sum, subst) {
+ScummEngine_v90he::ScummEngine_v90he(OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst)
+ : ScummEngine_v80he(syst, gs, md5sum, subst) {
_sprite = new Sprite(this);
VAR_NUM_SPRITE_GROUPS = 0xFF;
@@ -822,8 +820,8 @@ ScummEngine_v90he::~ScummEngine_v90he() {
#endif
#ifndef DISABLE_SCUMM_7_8
-ScummEngine_v7::ScummEngine_v7(GameDetector *detector, OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst)
- : ScummEngine_v6(detector, syst, gs, md5sum, subst) {
+ScummEngine_v7::ScummEngine_v7(OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst)
+ : ScummEngine_v6(syst, gs, md5sum, subst) {
_verbCharset = 0;
_existLanguageFile = false;
_languageBuffer = NULL;
@@ -836,8 +834,8 @@ ScummEngine_v7::~ScummEngine_v7() {
free(_languageIndex);
}
-ScummEngine_v8::ScummEngine_v8(GameDetector *detector, OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst)
- : ScummEngine_v7(detector, syst, gs, md5sum, subst) {
+ScummEngine_v8::ScummEngine_v8(OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst)
+ : ScummEngine_v7(syst, gs, md5sum, subst) {
_objectIDMap = 0;
}
@@ -850,7 +848,7 @@ ScummEngine_v8::~ScummEngine_v8() {
#pragma mark --- Initialization ---
#pragma mark -
-int ScummEngine::init(GameDetector &detector) {
+int ScummEngine::init() {
// Initialize backend
_system->beginGFXTransaction();
@@ -867,7 +865,7 @@ int ScummEngine::init(GameDetector &detector) {
_system->initSize(_screenWidth, _screenHeight, (ConfMan.getBool("force_1x_overlay") ? 1 : 2));
defaultTo1XScaler = (_screenWidth > 320);
}
- initCommonGFX(detector, defaultTo1XScaler);
+ initCommonGFX(defaultTo1XScaler);
_system->endGFXTransaction();
// On some systems it's not safe to run CD audio games from the CD.
diff --git a/engines/scumm/scumm.h b/engines/scumm/scumm.h
index ee4ef84bf6..489e897afb 100644
--- a/engines/scumm/scumm.h
+++ b/engines/scumm/scumm.h
@@ -41,7 +41,6 @@ namespace GUI {
class Dialog;
}
using GUI::Dialog;
-class GameDetector;
namespace Common {
class InSaveFile;
class OutSaveFile;
@@ -445,14 +444,14 @@ protected:
public:
// Constructor / Destructor
- ScummEngine(GameDetector *detector, OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst);
+ ScummEngine(OSystem *syst, const GameSettings &gs, uint8 md5sum[16], SubstResFileNames subst);
virtual ~ScummEngine();
/** Startup function, main loop. */
int go();
// Init functions
- int init(GameDetector &detector);
+ int init();
virtual void setupScummVars();
virtual void initScummVars();
@@ -739,7 +738,6 @@ public:
protected:
int _resourceHeaderSize;
Common::String _baseName; // This is the name we use for opening resource files
- Common::String _targetName; // This is the game the user calls it, so use for saving
byte _resourceMapper[128];
byte *_heV7DiskOffsets;
uint32 *_heV7RoomIntOffsets;
diff --git a/engines/simon/game.cpp b/engines/simon/game.cpp
index 29d1df7bfb..0adf22cb65 100644
--- a/engines/simon/game.cpp
+++ b/engines/simon/game.cpp
@@ -24,7 +24,6 @@
#include "backends/fs/fs.h"
-#include "base/gameDetector.h"
#include "base/plugins.h"
#include "common/config-manager.h"
@@ -112,7 +111,7 @@ DetectedGameList Engine_SIMON_detectGames(const FSList &fslist) {
return Simon::GAME_detectGames(fslist);
}
-Engine *Engine_SIMON_create(GameDetector *detector, OSystem *syst) {
+Engine *Engine_SIMON_create(OSystem *syst) {
const char *gameid = ConfMan.get("gameid").c_str();
for (const ObsoleteGameID *o = obsoleteGameIDsTable; o->from; ++o) {
diff --git a/engines/simon/simon.cpp b/engines/simon/simon.cpp
index 9cade56ed5..405d2dbe7e 100644
--- a/engines/simon/simon.cpp
+++ b/engines/simon/simon.cpp
@@ -24,7 +24,6 @@
#include "backends/fs/fs.h"
-#include "base/gameDetector.h"
#include "common/config-manager.h"
#include "common/file.h"
@@ -484,7 +483,7 @@ SimonEngine::SimonEngine(OSystem *syst)
File::addDefaultDirectory(_gameDataPath + "SPEECH/");
}
-int SimonEngine::init(GameDetector &detector) {
+int SimonEngine::init() {
// Detect game
if (!initGame()) {
@@ -509,7 +508,7 @@ int SimonEngine::init(GameDetector &detector) {
_mixer->setVolumeForSoundType(Audio::Mixer::kMusicSoundType, ConfMan.getInt("music_volume"));
_system->beginGFXTransaction();
- initCommonGFX(detector, getGameType() == GType_FF);
+ initCommonGFX(getGameType() == GType_FF);
_system->initSize(_screenWidth, _screenHeight);
_system->endGFXTransaction();
diff --git a/engines/simon/simon.h b/engines/simon/simon.h
index cbe6c7935e..52a292014c 100644
--- a/engines/simon/simon.h
+++ b/engines/simon/simon.h
@@ -35,8 +35,6 @@
#include "simon/sound.h"
#include "simon/vga.h"
-class GameDetector;
-
namespace Simon {
/* Various other settings */
@@ -1044,7 +1042,7 @@ protected:
void resfile_read(void *dst, uint32 offs, uint32 size);
- int init(GameDetector &detector);
+ int init();
int go();
void openGameFile();
diff --git a/engines/sky/sky.cpp b/engines/sky/sky.cpp
index 636b12683b..f3b286a5ea 100644
--- a/engines/sky/sky.cpp
+++ b/engines/sky/sky.cpp
@@ -24,7 +24,6 @@
#include "backends/fs/fs.h"
-#include "base/gameDetector.h"
#include "base/plugins.h"
#include "common/config-manager.h"
@@ -111,7 +110,7 @@ DetectedGameList Engine_SKY_detectGames(const FSList &fslist) {
return detectedGames;
}
-Engine *Engine_SKY_create(GameDetector *detector, OSystem *syst) {
+Engine *Engine_SKY_create(OSystem *syst) {
return new Sky::SkyEngine(syst);
}
@@ -306,9 +305,9 @@ int SkyEngine::go() {
return 0;
}
-int SkyEngine::init(GameDetector &detector) {
+int SkyEngine::init() {
_system->beginGFXTransaction();
- initCommonGFX(detector, false);
+ initCommonGFX(false);
_system->initSize(320, 200);
_system->endGFXTransaction();
diff --git a/engines/sky/sky.h b/engines/sky/sky.h
index 00f16a0ea6..40b4630597 100644
--- a/engines/sky/sky.h
+++ b/engines/sky/sky.h
@@ -26,8 +26,6 @@
#include "common/stdafx.h"
#include "base/engine.h"
-class GameDetector;
-
namespace Sky {
struct SystemVars {
@@ -98,7 +96,7 @@ protected:
uint32 _lastSaveTime;
- int init(GameDetector &detector);
+ int init();
void initItemList();
void initVirgin();
diff --git a/engines/sword1/sword1.cpp b/engines/sword1/sword1.cpp
index 7db5e26e2e..6f11859a92 100644
--- a/engines/sword1/sword1.cpp
+++ b/engines/sword1/sword1.cpp
@@ -117,8 +117,8 @@ DetectedGameList Engine_SWORD1_detectGames(const FSList &fslist) {
return detectedGames;
}
-Engine *Engine_SWORD1_create(GameDetector *detector, OSystem *syst) {
- return new SwordEngine(detector, syst);
+Engine *Engine_SWORD1_create(OSystem *syst) {
+ return new SwordEngine(syst);
}
REGISTER_PLUGIN(SWORD1, "Broken Sword");
@@ -131,7 +131,7 @@ void SwordEngine::errorString(const char *buf1, char *buf2) {
strcpy(buf2, buf1);
}
-SwordEngine::SwordEngine(GameDetector *detector, OSystem *syst)
+SwordEngine::SwordEngine(OSystem *syst)
: Engine(syst) {
if (0 == scumm_stricmp(ConfMan.get("gameid").c_str(), "sword1demo"))
@@ -166,10 +166,10 @@ SwordEngine::~SwordEngine() {
delete _resMan;
}
-int SwordEngine::init(GameDetector &detector) {
+int SwordEngine::init() {
_system->beginGFXTransaction();
- initCommonGFX(detector, true);
+ initCommonGFX(true);
_system->initSize(640, 480);
_system->endGFXTransaction();
diff --git a/engines/sword1/sword1.h b/engines/sword1/sword1.h
index a41685ad75..50c0150743 100644
--- a/engines/sword1/sword1.h
+++ b/engines/sword1/sword1.h
@@ -25,7 +25,6 @@
#include "base/engine.h"
#include "common/util.h"
-#include "base/gameDetector.h"
#include "sword1/sworddefs.h"
namespace Sword1 {
@@ -71,7 +70,7 @@ struct SystemVars {
class SwordEngine : public Engine {
void errorString(const char *buf_input, char *buf_output);
public:
- SwordEngine(GameDetector *detector, OSystem *syst);
+ SwordEngine(OSystem *syst);
virtual ~SwordEngine();
static SystemVars _systemVars;
void reinitialize(void);
@@ -79,7 +78,7 @@ public:
uint32 _features;
protected:
int go();
- int init(GameDetector &detector);
+ int init();
private:
void delay(int32 amount);
diff --git a/engines/sword2/sword2.cpp b/engines/sword2/sword2.cpp
index 32ce29c0f0..0d354a3f35 100644
--- a/engines/sword2/sword2.cpp
+++ b/engines/sword2/sword2.cpp
@@ -23,7 +23,6 @@
#include "backends/fs/fs.h"
-#include "base/gameDetector.h"
#include "base/plugins.h"
#include "common/config-manager.h"
@@ -112,15 +111,15 @@ DetectedGameList Engine_SWORD2_detectGames(const FSList &fslist) {
return detectedGames;
}
-Engine *Engine_SWORD2_create(GameDetector *detector, OSystem *syst) {
- return new Sword2::Sword2Engine(detector, syst);
+Engine *Engine_SWORD2_create(OSystem *syst) {
+ return new Sword2::Sword2Engine(syst);
}
REGISTER_PLUGIN(SWORD2, "Broken Sword 2");
namespace Sword2 {
-Sword2Engine::Sword2Engine(GameDetector *detector, OSystem *syst) : Engine(syst) {
+Sword2Engine::Sword2Engine(OSystem *syst) : Engine(syst) {
// Add default file directories
Common::File::addDefaultDirectory(_gameDataPath + "CLUSTERS/");
Common::File::addDefaultDirectory(_gameDataPath + "SWORD2/");
@@ -134,8 +133,6 @@ Sword2Engine::Sword2Engine(GameDetector *detector, OSystem *syst) : Engine(syst)
else
_features = 0;
- _targetName = detector->_targetName;
-
_bootParam = ConfMan.getInt("boot_param");
_saveSlot = ConfMan.getInt("save_slot");
@@ -243,12 +240,12 @@ void Sword2Engine::setupPersistentResources() {
_resman->openResource(CUR_PLAYER_ID);
}
-int Sword2Engine::init(GameDetector &detector) {
+int Sword2Engine::init() {
// Get some falling RAM and put it in your pocket, never let it slip
// away
_system->beginGFXTransaction();
- initCommonGFX(detector, true);
+ initCommonGFX(true);
_screen = new Screen(this, 640, 480);
_system->endGFXTransaction();
diff --git a/engines/sword2/sword2.h b/engines/sword2/sword2.h
index f3aff6b0fb..31ab253830 100644
--- a/engines/sword2/sword2.h
+++ b/engines/sword2/sword2.h
@@ -36,7 +36,6 @@
#define MAX_starts 100
#define MAX_description 100
-class GameDetector;
class OSystem;
namespace Sword2 {
@@ -121,10 +120,10 @@ private:
StartUp _startList[MAX_starts];
public:
- Sword2Engine(GameDetector *detector, OSystem *syst);
+ Sword2Engine(OSystem *syst);
~Sword2Engine();
int go();
- int init(GameDetector &detector);
+ int init();
void registerDefaultSettings();
void readSettings();
@@ -138,7 +137,6 @@ public:
bool _quit;
uint32 _features;
- Common::String _targetName; // target name for saves
MemoryManager *_memory;
ResourceManager *_resman;