aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README1
-rw-r--r--base/gameDetector.cpp6
-rw-r--r--base/gameDetector.h2
-rw-r--r--base/main.cpp2
-rw-r--r--doc/05_01.tex1
-rw-r--r--scumm/scumm.cpp2
6 files changed, 12 insertions, 2 deletions
diff --git a/README b/README
index 6a77db34a7..66f74dfd57 100644
--- a/README
+++ b/README
@@ -375,6 +375,7 @@ arguments - see the next section.
--aspect-ratio Enable aspect ratio correction
--render-mode=MODE Enable additional render modes (cga, ega, hercGreen
hercAmber, amiga)
+ --force-1x-overlay Make inner GUI 320x200
--alt-intro Use alternative intro for CD versions of Beneath a
Steel Sky and Flight of the Amazon Queen
diff --git a/base/gameDetector.cpp b/base/gameDetector.cpp
index 861c696651..7a4fe72680 100644
--- a/base/gameDetector.cpp
+++ b/base/gameDetector.cpp
@@ -98,6 +98,7 @@ static const char USAGE_STRING[] =
" --aspect-ratio Enable aspect ratio correction\n"
" --render-mode=MODE Enable additional render modes (cga, ega, hercGreen,\n"
" hercAmber, amiga)\n"
+ " --force-1x-overlay Make inner GUI 320x200\n"
"\n"
#if !defined(DISABLE_SKY) || !defined(DISABLE_QUEEN)
" --alt-intro Use alternative intro for CD versions of Beneath a\n"
@@ -205,6 +206,7 @@ GameDetector::GameDetector() {
#endif
_dumpScripts = false;
+ _force1xOverlay = false;
memset(&_game, 0, sizeof(_game));
_plugin = 0;
@@ -489,6 +491,10 @@ void GameDetector::parseCommandLine(int argc, char **argv) {
ConfMan.set("render_mode", option, kTransientDomain);
END_OPTION
+ DO_LONG_OPTION_BOOL("force-1x-overlay")
+ _force1xOverlay = true;
+ END_OPTION
+
DO_LONG_OPTION("savepath")
// TODO: Verify whether the path is valid
ConfMan.set("savepath", option, kTransientDomain);
diff --git a/base/gameDetector.h b/base/gameDetector.h
index 41ccf39040..dc9dc1ed6f 100644
--- a/base/gameDetector.h
+++ b/base/gameDetector.h
@@ -59,6 +59,8 @@ public:
bool _dumpScripts;
+ bool _force1xOverlay;
+
void setTarget(const String &name);
public:
diff --git a/base/main.cpp b/base/main.cpp
index c8a3c82474..b6a7b92b2b 100644
--- a/base/main.cpp
+++ b/base/main.cpp
@@ -224,7 +224,7 @@ static bool launcherDialog(GameDetector &detector, OSystem &system) {
system.setGraphicsMode(ConfMan.get("gfx_mode").c_str());
// Make GUI 640 x 400
- system.initSize(320, 200, 2);
+ system.initSize(320, 200, (detector._force1xOverlay ? 1 : 2));
system.endGFXTransaction();
diff --git a/doc/05_01.tex b/doc/05_01.tex
index 189b47d2b4..5f91f8db5b 100644
--- a/doc/05_01.tex
+++ b/doc/05_01.tex
@@ -41,6 +41,7 @@ Usage: scummvm [OPTIONS]... [GAME]\\
--aspect-ratio &Enable aspect ratio correction\\
--render-mode=MODE &Enable additional render modes (cga, ega, hercGreen, hercAmber, amiga)\\
\\
+ --force-1x-overlay &Make inner GUI 320x200\\
--alt-intro &Use alternative intro for CD versions of Beneath a\\
&Steel Sky and Flight of the Amazon Queen\\
--copy-protection &Enable copy protection in SCUMM games, when\\
diff --git a/scumm/scumm.cpp b/scumm/scumm.cpp
index 05e9e2f51d..9606704edf 100644
--- a/scumm/scumm.cpp
+++ b/scumm/scumm.cpp
@@ -1166,7 +1166,7 @@ int ScummEngine::init(GameDetector &detector) {
_features |= GF_DEFAULT_TO_1X_SCALER;
_system->setGraphicsMode("1x");
} else {
- _system->initSize(_screenWidth, _screenHeight, 2);
+ _system->initSize(_screenWidth, _screenHeight, (detector._force1xOverlay ? 1 : 2));
if (_features & GF_DEFAULT_TO_1X_SCALER)
_system->setGraphicsMode("1x");
}