diff options
-rw-r--r-- | README | 1 | ||||
-rw-r--r-- | base/commandLine.cpp | 1 | ||||
-rw-r--r-- | engines/sci/sci.cpp | 2 | ||||
-rw-r--r-- | gui/launcher.cpp | 3 | ||||
-rw-r--r-- | gui/options.cpp | 6 | ||||
-rw-r--r-- | gui/options.h | 1 | ||||
-rw-r--r-- | gui/themes/default.inc | 6 | ||||
-rw-r--r-- | gui/themes/scummclassic.zip | bin | 73968 -> 33760 bytes | |||
-rw-r--r-- | gui/themes/scummclassic/classic_layout.stx | 3 | ||||
-rw-r--r-- | gui/themes/scummclassic/classic_layout_lowres.stx | 3 | ||||
-rw-r--r-- | gui/themes/scummmodern.zip | bin | 181827 -> 140489 bytes | |||
-rw-r--r-- | gui/themes/scummmodern/scummmodern_layout.stx | 3 | ||||
-rw-r--r-- | gui/themes/scummmodern/scummmodern_layout_lowres.stx | 3 |
13 files changed, 30 insertions, 2 deletions
@@ -1949,6 +1949,7 @@ The following keywords are recognized: fullscreen bool Fullscreen mode aspect_ratio bool Enable aspect ratio correction + sci_undither bool Remove dithering artifacts from early SCI EGA games gfx_mode string Graphics mode (normal, 2x, 3x, 2xsai, super2xsai, supereagle, advmame2x, advmame3x, hq2x, hq3x, tv2x, dotmatrix) diff --git a/base/commandLine.cpp b/base/commandLine.cpp index 6ee3ef382d..31ecab470a 100644 --- a/base/commandLine.cpp +++ b/base/commandLine.cpp @@ -157,6 +157,7 @@ void registerDefaults() { // Graphics ConfMan.registerDefault("fullscreen", false); ConfMan.registerDefault("aspect_ratio", false); + ConfMan.registerDefault("sci_undither", false); ConfMan.registerDefault("gfx_mode", "normal"); ConfMan.registerDefault("render_mode", "default"); ConfMan.registerDefault("desired_screen_aspect_ratio", "auto"); diff --git a/engines/sci/sci.cpp b/engines/sci/sci.cpp index 0df75d53fb..03b8b659bc 100644 --- a/engines/sci/sci.cpp +++ b/engines/sci/sci.cpp @@ -180,7 +180,7 @@ Common::Error SciEngine::run() { g_eventRec.registerRandomSource(_rng, "sci"); // Assign default values to the config manager, in case settings are missing - ConfMan.registerDefault("sci_undither", "true"); + ConfMan.registerDefault("sci_undither", "false"); ConfMan.registerDefault("sci_originalsaveload", "false"); ConfMan.registerDefault("native_fb01", "false"); diff --git a/gui/launcher.cpp b/gui/launcher.cpp index 2592eecd97..eae7f0b364 100644 --- a/gui/launcher.cpp +++ b/gui/launcher.cpp @@ -341,7 +341,8 @@ void EditGameDialog::open() { e = ConfMan.hasKey("gfx_mode", _domain) || ConfMan.hasKey("render_mode", _domain) || ConfMan.hasKey("fullscreen", _domain) || - ConfMan.hasKey("aspect_ratio", _domain); + ConfMan.hasKey("aspect_ratio", _domain) || + ConfMan.hasKey("sci_undither", _domain); _globalGraphicsOverride->setState(e); e = ConfMan.hasKey("music_driver", _domain) || diff --git a/gui/options.cpp b/gui/options.cpp index 558a89386b..dbd6ee5b5a 100644 --- a/gui/options.cpp +++ b/gui/options.cpp @@ -98,6 +98,7 @@ void OptionsDialog::init() { _renderModePopUp = 0; _fullscreenCheckbox = 0; _aspectCheckbox = 0; + _unditheringCheckbox = 0; _enableAudioSettings = false; _midiPopUp = 0; _oplPopUp = 0; @@ -192,6 +193,7 @@ void OptionsDialog::open() { // Aspect ratio setting _aspectCheckbox->setState(ConfMan.getBool("aspect_ratio", _domain)); #endif // SMALL_SCREEN_DEVICE + _unditheringCheckbox->setState(ConfMan.getBool("sci_undither", _domain)); } // Audio options @@ -297,6 +299,7 @@ void OptionsDialog::close() { if (_enableGraphicSettings) { ConfMan.setBool("fullscreen", _fullscreenCheckbox->getState(), _domain); ConfMan.setBool("aspect_ratio", _aspectCheckbox->getState(), _domain); + ConfMan.setBool("sci_undither", _unditheringCheckbox->getState(), _domain); bool isSet = false; @@ -320,6 +323,7 @@ void OptionsDialog::close() { } else { ConfMan.removeKey("fullscreen", _domain); ConfMan.removeKey("aspect_ratio", _domain); + ConfMan.removeKey("sci_undither", _domain); ConfMan.removeKey("gfx_mode", _domain); ConfMan.removeKey("render_mode", _domain); } @@ -506,6 +510,7 @@ void OptionsDialog::setGraphicSettingsState(bool enabled) { _fullscreenCheckbox->setEnabled(enabled); _aspectCheckbox->setEnabled(enabled); #endif + _unditheringCheckbox->setEnabled(enabled); } void OptionsDialog::setAudioSettingsState(bool enabled) { @@ -645,6 +650,7 @@ void OptionsDialog::addGraphicControls(GuiObject *boss, const Common::String &pr // Aspect ratio checkbox _aspectCheckbox = new CheckboxWidget(boss, prefix + "grAspectCheckbox", _("Aspect ratio correction"), _("Correct aspect ratio for 320x200 games")); + _unditheringCheckbox = new CheckboxWidget(boss, prefix + "grUnditherCheckbox", _("Remove SCI dithering"), _("Remove dithering artifacts from early SCI EGA games")); _enableGraphicSettings = true; } diff --git a/gui/options.h b/gui/options.h index c05f263d00..91e6457576 100644 --- a/gui/options.h +++ b/gui/options.h @@ -96,6 +96,7 @@ private: PopUpWidget *_gfxPopUp; CheckboxWidget *_fullscreenCheckbox; CheckboxWidget *_aspectCheckbox; + CheckboxWidget *_unditheringCheckbox; StaticTextWidget *_renderModePopUpDesc; PopUpWidget *_renderModePopUp; diff --git a/gui/themes/default.inc b/gui/themes/default.inc index 46ac4a1365..1e1a495585 100644 --- a/gui/themes/default.inc +++ b/gui/themes/default.inc @@ -177,6 +177,9 @@ "<widget name='grFullscreenCheckbox' " "type='Checkbox' " "/> " +"<widget name='grUnditherCheckbox' " +"type='Checkbox' " +"/> " "</layout> " "</dialog> " "<dialog name='GlobalOptions_Audio' overlays='Dialog.GlobalOptions.TabWidget'> " @@ -969,6 +972,9 @@ "<widget name='grFullscreenCheckbox' " "type='Checkbox' " "/> " +"<widget name='grUnditherCheckbox' " +"type='Checkbox' " +"/> " "</layout> " "</dialog> " "<dialog name='GlobalOptions_Audio' overlays='Dialog.GlobalOptions.TabWidget'> " diff --git a/gui/themes/scummclassic.zip b/gui/themes/scummclassic.zip Binary files differindex 2507572e40..0940d7854e 100644 --- a/gui/themes/scummclassic.zip +++ b/gui/themes/scummclassic.zip diff --git a/gui/themes/scummclassic/classic_layout.stx b/gui/themes/scummclassic/classic_layout.stx index 74b8bf4b2c..20301192cf 100644 --- a/gui/themes/scummclassic/classic_layout.stx +++ b/gui/themes/scummclassic/classic_layout.stx @@ -218,6 +218,9 @@ <widget name = 'grFullscreenCheckbox' type = 'Checkbox' /> + <widget name = 'grUnditherCheckbox' + type = 'Checkbox' + /> </layout> </dialog> diff --git a/gui/themes/scummclassic/classic_layout_lowres.stx b/gui/themes/scummclassic/classic_layout_lowres.stx index 65083f4bce..7cfe1a3157 100644 --- a/gui/themes/scummclassic/classic_layout_lowres.stx +++ b/gui/themes/scummclassic/classic_layout_lowres.stx @@ -216,6 +216,9 @@ <widget name = 'grFullscreenCheckbox' type = 'Checkbox' /> + <widget name = 'grUnditherCheckbox' + type = 'Checkbox' + /> </layout> </dialog> diff --git a/gui/themes/scummmodern.zip b/gui/themes/scummmodern.zip Binary files differindex 1023e82ff9..cfad02b21f 100644 --- a/gui/themes/scummmodern.zip +++ b/gui/themes/scummmodern.zip diff --git a/gui/themes/scummmodern/scummmodern_layout.stx b/gui/themes/scummmodern/scummmodern_layout.stx index 51f1ce6c6f..74cae93fe9 100644 --- a/gui/themes/scummmodern/scummmodern_layout.stx +++ b/gui/themes/scummmodern/scummmodern_layout.stx @@ -233,6 +233,9 @@ <widget name = 'grFullscreenCheckbox' type = 'Checkbox' /> + <widget name = 'grUnditherCheckbox' + type = 'Checkbox' + /> </layout> </dialog> diff --git a/gui/themes/scummmodern/scummmodern_layout_lowres.stx b/gui/themes/scummmodern/scummmodern_layout_lowres.stx index bd7b5fd8ea..39e33c0d9c 100644 --- a/gui/themes/scummmodern/scummmodern_layout_lowres.stx +++ b/gui/themes/scummmodern/scummmodern_layout_lowres.stx @@ -214,6 +214,9 @@ <widget name = 'grFullscreenCheckbox' type = 'Checkbox' /> + <widget name = 'grUnditherCheckbox' + type = 'Checkbox' + /> </layout> </dialog> |