diff options
author | Johannes Schickel | 2009-05-29 17:38:22 +0000 |
---|---|---|
committer | Johannes Schickel | 2009-05-29 17:38:22 +0000 |
commit | 874e340d25e79d067b7b5c2d72fe82c39da4a934 (patch) | |
tree | 3b59e8c276be3328a7be566b4f921a77707da3e8 /engines/kyra | |
parent | 51fc019a9b3a5433076e3882a3842f97b3e74c82 (diff) | |
download | scummvm-rg350-874e340d25e79d067b7b5c2d72fe82c39da4a934.tar.gz scummvm-rg350-874e340d25e79d067b7b5c2d72fe82c39da4a934.tar.bz2 scummvm-rg350-874e340d25e79d067b7b5c2d72fe82c39da4a934.zip |
Output a warning to the user, when he tries to play back MT32 MIDI tracks with a General MIDI device.
svn-id: r41012
Diffstat (limited to 'engines/kyra')
-rw-r--r-- | engines/kyra/sound_midi.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/engines/kyra/sound_midi.cpp b/engines/kyra/sound_midi.cpp index 218b0d161d..f798251525 100644 --- a/engines/kyra/sound_midi.cpp +++ b/engines/kyra/sound_midi.cpp @@ -29,6 +29,8 @@ #include "common/system.h" #include "common/config-manager.h" +#include "gui/message.h" + namespace Kyra { class MidiOutput : public MidiDriver { @@ -467,6 +469,19 @@ SoundMidiPC::SoundMidiPC(KyraEngine_v1 *vm, Audio::Mixer *mixer, MidiDriver *dri // file extension. if (_vm->game() == GI_KYRA1 && _type == kMidiGM) _type = kMidiMT32; + + // Display a warning about possibly wrong sound when the user only has + // a General MIDI device, but the game is setup to use Roland MT32 MIDI. + // (This will only happen in The Legend of Kyrandia 1 though, all other + // supported games include special General MIDI tracks). + if (_type == kMidiMT32 && !_nativeMT32) { + ::GUI::MessageDialog dialog("You appear to be using a General MIDI device,\n" + "but your game only supports Roland MT32 MIDI.\n" + "We try to map the Roland MT32 instruments to\n" + "General MIDI ones. After all it might happen\n" + "that a few tracks will not be correctly played."); + dialog.runModal(); + } } SoundMidiPC::~SoundMidiPC() { |