diff --git a/gui/launcher.cpp b/gui/launcher.cpp index 01fd021f161..e6e3ba0a400 100644 --- a/gui/launcher.cpp +++ b/gui/launcher.cpp @@ -95,6 +95,9 @@ protected: PopUpWidget *_gfxPopUp; CheckboxWidget *_fullscreenCheckbox; CheckboxWidget *_aspectCheckbox; + + CheckboxWidget *_multiMidiCheckbox; + CheckboxWidget *_mt32Checkbox; }; EditGameDialog::EditGameDialog(const String &domain, GameSettings target) @@ -215,6 +218,17 @@ EditGameDialog::EditGameDialog(const String &domain, GameSettings target) tab->addTab("Audio"); yoffset = vBorder; + // Multi midi setting + _multiMidiCheckbox = new CheckboxWidget(tab, 10, yoffset, 280, 16, "Mixed Adlib/MIDI mode"); + _multiMidiCheckbox->setState(ConfMan.getBool("multi_midi", _domain)); + yoffset += 16; + + // Native mt32 setting + _mt32Checkbox = new CheckboxWidget(tab, 10, yoffset, 280, 16, "True Roland MT-32 (disable GM emulation)"); + _mt32Checkbox->setState(ConfMan.getBool("native_mt32", _domain)); + yoffset += 16; + + // TODO: Volume/driver/midi/... settings @@ -242,6 +256,8 @@ void EditGameDialog::handleCommand(CommandSender *sender, uint32 cmd, uint32 dat ConfMan.set("description", _descriptionWidget->getLabel(), newDomain); ConfMan.set("fullscreen", _fullscreenCheckbox->getState(), newDomain); ConfMan.set("aspect_ratio", _aspectCheckbox->getState(), newDomain); + ConfMan.set("multi_midi", _multiMidiCheckbox->getState(), newDomain); + ConfMan.set("native_mt32", _mt32Checkbox->getState(), newDomain); Common::Language lang = (Common::Language)_langPopUp->getSelectedTag(); if (lang < 0) diff --git a/gui/options.cpp b/gui/options.cpp index 7d608a99657..0ab7d5fc0e2 100644 --- a/gui/options.cpp +++ b/gui/options.cpp @@ -157,19 +157,17 @@ GlobalOptionsDialog::GlobalOptionsDialog(GameDetector &detector) _sfxVolumeLabel->setFlags(WIDGET_CLEARBG); yoffset += 16; -#if 1 - // TODO: cd drive setting - // TODO: multi midi setting - // TODO: native mt32 setting + // Multi midi setting _multiMidiCheckbox = new CheckboxWidget(tab, 10, yoffset, 280, 16, "Mixed Adlib/MIDI mode"); _multiMidiCheckbox->setState(ConfMan.getBool("multi_midi")); yoffset += 16; + // Native mt32 setting _mt32Checkbox = new CheckboxWidget(tab, 10, yoffset, 280, 16, "True Roland MT-32 (disable GM emulation)"); _mt32Checkbox->setState(ConfMan.getBool("native_mt32")); yoffset += 16; -#endif + // TODO: cd drive setting // // 3) The miscellaneous tab @@ -268,6 +266,8 @@ void GlobalOptionsDialog::handleCommand(CommandSender *sender, uint32 cmd, uint3 ConfMan.set("sfx_volume", _sfxVolumeSlider->getValue()); ConfMan.set("fullscreen", _fullscreenCheckbox->getState()); ConfMan.set("aspect_ratio", _aspectCheckbox->getState()); + ConfMan.set("multi_midi", _multiMidiCheckbox->getState()); + ConfMan.set("native_mt32", _mt32Checkbox->getState()); const MidiDriverDescription *md = getAvailableMidiDrivers(); for (; md->name; md++) {