diff options
author | Jean-Yves Simon | 2002-09-09 05:03:55 +0000 |
---|---|---|
committer | Jean-Yves Simon | 2002-09-09 05:03:55 +0000 |
commit | 5b8eb34406373daa7a167f89d32dbe72c3cdc005 (patch) | |
tree | aaa72cf5ef56ae5465932f6114326e6379d28699 | |
parent | c7eff375c5343d1ff597a2e7df91c3280e68d796 (diff) | |
download | scummvm-rg350-5b8eb34406373daa7a167f89d32dbe72c3cdc005.tar.gz scummvm-rg350-5b8eb34406373daa7a167f89d32dbe72c3cdc005.tar.bz2 scummvm-rg350-5b8eb34406373daa7a167f89d32dbe72c3cdc005.zip |
patch attempts to fix the MI2 music bug pointed out in bug report #551028
svn-id: r4908
-rw-r--r-- | Makefile | 6 | ||||
-rw-r--r-- | scumm/imuse.cpp | 10 |
2 files changed, 13 insertions, 3 deletions
@@ -25,15 +25,15 @@ OBJS = # Enable this if you want ScummVM to dump all scripts it runs. # This is mainly interesting for developers. -# DEFINES += -DDUMP_SCRIPTS +DEFINES += -DDUMP_SCRIPTS # Uncomment this to activate the MAD lib for compressed sound files DEFINES += -DCOMPRESSED_SOUND_FILE LIBS += -lmad # Uncomment this to activate the ALSA lib for midi -# DEFINES += -DUSE_ALSA -# LIBS += -lasound +DEFINES += -DUSE_ALSA +LIBS += -lasound # Concat DEFINES and INCLUDES to for the CPPFLAGS CPPFLAGS= $(DEFINES) $(INCLUDES) diff --git a/scumm/imuse.cpp b/scumm/imuse.cpp index 7e9bdd8b28..586c021446 100644 --- a/scumm/imuse.cpp +++ b/scumm/imuse.cpp @@ -2061,6 +2061,16 @@ void Player::parse_sysex(byte *p, uint len) len -= 2; switch (code = *p++) { + case 0: /* part on/off? */ + // This seems to do the right thing for Monkey 2, at least. + a = *p++ & 0x0F; + part = get_part(a); + if (part) { + debug(2, "%d => turning %s part %d", p[1], (p[1] == 2) ? "OFF" : "ON", a); + part->set_onoff(p[1] != 2); + } + break; + case 16: /* set instrument in part */ a = *p++ & 0x0F; if (_se->_hardware_type != *p++) |