aboutsummaryrefslogtreecommitdiff
path: root/simon
diff options
context:
space:
mode:
authorTravis Howell2003-07-18 15:37:06 +0000
committerTravis Howell2003-07-18 15:37:06 +0000
commitdc25058c3e633cf5ac4a369833224d878a05bac4 (patch)
treeda1d7a7539a7b5915d8e52ecac8f31e4946eb9b1 /simon
parent9c026748f394eb0b085ee363ba8c1299be325806 (diff)
downloadscummvm-rg350-dc25058c3e633cf5ac4a369833224d878a05bac4.tar.gz
scummvm-rg350-dc25058c3e633cf5ac4a369833224d878a05bac4.tar.bz2
scummvm-rg350-dc25058c3e633cf5ac4a369833224d878a05bac4.zip
Add game specific scaler override to sky
Add game specific scaler and full screen override to simon svn-id: r9067
Diffstat (limited to 'simon')
-rw-r--r--simon/simon.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/simon/simon.cpp b/simon/simon.cpp
index 7541faa0fc..3358267dfb 100644
--- a/simon/simon.cpp
+++ b/simon/simon.cpp
@@ -24,6 +24,7 @@
#include "simon/intern.h"
#include "simon/vga.h"
#include "sound/mididrv.h"
+#include "common/config-file.h"
#include "common/file.h"
#include "common/gameDetector.h"
#include <errno.h>
@@ -173,6 +174,8 @@ Engine *Engine_SIMON_create(GameDetector *detector, OSystem *syst) {
SimonEngine::SimonEngine(GameDetector *detector, OSystem *syst)
: Engine(detector, syst), midi (syst) {
+ OSystem::Property prop;
+
MidiDriver *driver = detector->createMidi();
_vc_ptr = 0;
@@ -454,6 +457,18 @@ SimonEngine::SimonEngine(GameDetector *detector, OSystem *syst)
_debugLevel = detector->_debugLevel;
_language = detector->_language;
_noSubtitles = detector->_noSubtitles;
+
+ // Override global scaler with any game-specific define
+ if (g_config->get("gfx_mode")) {
+ prop.gfx_mode = detector->parseGraphicsMode(g_config->get("gfx_mode"));
+ _system->property(OSystem::PROP_SET_GFX_MODE, &prop);
+ }
+
+ // Override global scaler with any game-specific define
+ if (g_config->getBool("fullscreen", false)) {
+ if (!_system->property(OSystem::PROP_GET_FULLSCREEN, 0))
+ _system->property(OSystem::PROP_TOGGLE_FULLSCREEN, 0);
+ }
}
SimonEngine::~SimonEngine() {