aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorJohannes Schickel2010-09-15 22:00:43 +0000
committerJohannes Schickel2010-09-15 22:00:43 +0000
commitb9a74a7915246c57a43c8999c4d29f534bfe4cf1 (patch)
treee71e7c17e0c5e8970d19ce73d985e7f2242761ce /engines
parent6588398ce6fab85e287b10c2781d3797d7639cb9 (diff)
downloadscummvm-rg350-b9a74a7915246c57a43c8999c4d29f534bfe4cf1.tar.gz
scummvm-rg350-b9a74a7915246c57a43c8999c4d29f534bfe4cf1.tar.bz2
scummvm-rg350-b9a74a7915246c57a43c8999c4d29f534bfe4cf1.zip
KYRA: Send GM reset on startup.
svn-id: r52737
Diffstat (limited to 'engines')
-rw-r--r--engines/kyra/sound_midi.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/engines/kyra/sound_midi.cpp b/engines/kyra/sound_midi.cpp
index 57da51ab5a..c24ce5a95b 100644
--- a/engines/kyra/sound_midi.cpp
+++ b/engines/kyra/sound_midi.cpp
@@ -134,10 +134,14 @@ MidiOutput::MidiOutput(OSystem *system, MidiDriver *output, bool isMT32, bool de
static const byte sysEx2[] = { 3, 4, 3, 4, 3, 4, 3, 4, 4 };
static const byte sysEx3[] = { 0, 3, 2 };
- sendSysEx(0x7F, 0x00, 0x00, sysEx1, 1);
- sendSysEx(0x10, 0x00, 0x0D, sysEx1, 9);
- sendSysEx(0x10, 0x00, 0x04, sysEx2, 9);
- sendSysEx(0x10, 0x00, 0x01, sysEx3, 3);
+ if (_isMT32) {
+ sendSysEx(0x7F, 0x00, 0x00, sysEx1, 1);
+ sendSysEx(0x10, 0x00, 0x0D, sysEx1, 9);
+ sendSysEx(0x10, 0x00, 0x04, sysEx2, 9);
+ sendSysEx(0x10, 0x00, 0x01, sysEx3, 3);
+ } else {
+ _output->sendGMReset();
+ }
memset(_channels, 0, sizeof(_channels));
for (int i = 0; i < 16; ++i) {