aboutsummaryrefslogtreecommitdiff
path: root/engines/scumm/imuse/mac_m68k.cpp
diff options
context:
space:
mode:
authorJohannes Schickel2012-09-20 01:57:53 +0200
committerJohannes Schickel2012-09-20 02:13:03 +0200
commit6ea51e8c4564004ce995f4a8e1c80fdd76562c8f (patch)
treeebd3f930dec44554bc7032d81e50a0c2005e5686 /engines/scumm/imuse/mac_m68k.cpp
parent58f542d4342a3dc92e0bb6f7847493d32d1594ea (diff)
downloadscummvm-rg350-6ea51e8c4564004ce995f4a8e1c80fdd76562c8f.tar.gz
scummvm-rg350-6ea51e8c4564004ce995f4a8e1c80fdd76562c8f.tar.bz2
scummvm-rg350-6ea51e8c4564004ce995f4a8e1c80fdd76562c8f.zip
SCUMM: Implement support for special sfx in MI2 Mac.
This also increases the savegame version, since it introduces a new Instrument subclass.
Diffstat (limited to 'engines/scumm/imuse/mac_m68k.cpp')
-rw-r--r--engines/scumm/imuse/mac_m68k.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/engines/scumm/imuse/mac_m68k.cpp b/engines/scumm/imuse/mac_m68k.cpp
index 9d6bdd0544..4d7a6a64c0 100644
--- a/engines/scumm/imuse/mac_m68k.cpp
+++ b/engines/scumm/imuse/mac_m68k.cpp
@@ -111,6 +111,7 @@ void MacM68kDriver::send(uint32 d) {
}
void MacM68kDriver::sysEx_customInstrument(byte channel, uint32 type, const byte *instr) {
+ assert(false);
}
MidiChannel *MacM68kDriver::allocateChannel() {
@@ -416,6 +417,10 @@ void MacM68kDriver::MidiChannel_MacM68k::priority(byte value) {
}
void MacM68kDriver::MidiChannel_MacM68k::sysEx_customInstrument(uint32 type, const byte *instr) {
+ assert(instr);
+ if (type == 'MAC ') {
+ _instrument = _owner->getInstrument(*instr + kSysExBase);
+ }
}
void MacM68kDriver::MidiChannel_MacM68k::init(MacM68kDriver *owner, byte channel) {