aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohannes Schickel2009-06-25 01:29:55 +0000
committerJohannes Schickel2009-06-25 01:29:55 +0000
commit049c9b0c8685a15c0f9d8504b3cc814ea636b965 (patch)
tree67b38d721bc4f6e1825ad69c04a1808826f7eb19
parent0ec0b1d4981e227fddd03bf7d5be7077a445baae (diff)
downloadscummvm-rg350-049c9b0c8685a15c0f9d8504b3cc814ea636b965.tar.gz
scummvm-rg350-049c9b0c8685a15c0f9d8504b3cc814ea636b965.tar.bz2
scummvm-rg350-049c9b0c8685a15c0f9d8504b3cc814ea636b965.zip
Add config option for Kyra1 16 color, it'll only use dithering when "16_color" is set to true.
svn-id: r41847
-rw-r--r--engines/kyra/kyra_lok.cpp5
-rw-r--r--engines/kyra/kyra_v1.cpp2
-rw-r--r--engines/kyra/kyra_v1.h3
3 files changed, 7 insertions, 3 deletions
diff --git a/engines/kyra/kyra_lok.cpp b/engines/kyra/kyra_lok.cpp
index 4042317f20..e5ca52abcc 100644
--- a/engines/kyra/kyra_lok.cpp
+++ b/engines/kyra/kyra_lok.cpp
@@ -157,7 +157,7 @@ KyraEngine_LoK::~KyraEngine_LoK() {
}
Common::Error KyraEngine_LoK::init() {
- if (_flags.platform == Common::kPlatformPC98 && _flags.useHiResOverlay)
+ if (_flags.platform == Common::kPlatformPC98 && _flags.useHiResOverlay && ConfMan.getBool("16_color"))
_screen = new Screen_LoK_16(this, _system);
else
_screen = new Screen_LoK(this, _system);
@@ -909,6 +909,9 @@ void KyraEngine_LoK::registerDefaultSettings() {
// Most settings already have sensible defaults. This one, however, is
// specific to the Kyra engine.
ConfMan.registerDefault("walkspeed", 2);
+
+ if (_flags.platform == Common::kPlatformPC98 && _flags.useHiResOverlay)
+ ConfMan.registerDefault("16_color", false);
}
void KyraEngine_LoK::readSettings() {
diff --git a/engines/kyra/kyra_v1.cpp b/engines/kyra/kyra_v1.cpp
index 9c5fe04085..80872877d5 100644
--- a/engines/kyra/kyra_v1.cpp
+++ b/engines/kyra/kyra_v1.cpp
@@ -94,8 +94,6 @@ void KyraEngine_v1::pauseEngineIntern(bool pause) {
}
Common::Error KyraEngine_v1::init() {
- registerDefaultSettings();
-
// Setup mixer
_mixer->setVolumeForSoundType(Audio::Mixer::kSFXSoundType, ConfMan.getInt("sfx_volume"));
_mixer->setVolumeForSoundType(Audio::Mixer::kMusicSoundType, ConfMan.getInt("music_volume"));
diff --git a/engines/kyra/kyra_v1.h b/engines/kyra/kyra_v1.h
index 549511a6b1..5ece70e3f1 100644
--- a/engines/kyra/kyra_v1.h
+++ b/engines/kyra/kyra_v1.h
@@ -181,13 +181,16 @@ protected:
// Engine APIs
virtual Common::Error init();
virtual Common::Error go() = 0;
+
virtual Common::Error run() {
Common::Error err;
+ registerDefaultSettings();
err = init();
if (err != Common::kNoError)
return err;
return go();
}
+
virtual ::GUI::Debugger *getDebugger();
virtual bool hasFeature(EngineFeature f) const;
virtual void pauseEngineIntern(bool pause);