diff options
author | Walter van Niftrik | 2010-01-17 06:16:39 +0000 |
---|---|---|
committer | Walter van Niftrik | 2010-01-17 06:16:39 +0000 |
commit | d80606b397dee02bd81d82a0785009902db73099 (patch) | |
tree | f9a19fd2cebfa621dd3d07641f0db063785c261d | |
parent | bea8d931ff91d43e6369620a3a8b593a13a09bb5 (diff) | |
download | scummvm-rg350-d80606b397dee02bd81d82a0785009902db73099.tar.gz scummvm-rg350-d80606b397dee02bd81d82a0785009902db73099.tar.bz2 scummvm-rg350-d80606b397dee02bd81d82a0785009902db73099.zip |
SCI: Cleanup
svn-id: r47338
-rw-r--r-- | engines/sci/sound/softseq/midi.cpp | 72 |
1 files changed, 36 insertions, 36 deletions
diff --git a/engines/sci/sound/softseq/midi.cpp b/engines/sci/sound/softseq/midi.cpp index 879c1449a8..42a812063c 100644 --- a/engines/sci/sound/softseq/midi.cpp +++ b/engines/sci/sound/softseq/midi.cpp @@ -103,7 +103,7 @@ private: byte _sysExBuf[kMaxSysExSize]; }; -MidiPlayer_Midi::MidiPlayer_Midi() : _playSwitch(true), _masterVolume(15), _isMt32(false), _hasReverb(false), _isOldPatchFormat(false) { +MidiPlayer_Midi::MidiPlayer_Midi() : _playSwitch(true), _masterVolume(15), _isMt32(false), _hasReverb(false), _isOldPatchFormat(true) { MidiDriverType midiType = MidiDriver::detectMusicDriver(MDT_MIDI); _driver = createMidi(midiType); @@ -502,50 +502,51 @@ int MidiPlayer_Midi::open(ResourceManager *resMan) { return retval; } - if (_isMt32) { - resetMt32(); - setMt32Volume(80); + // By default use no mapping + for (uint i = 0; i < 128; i++) { + _percussionMap[i] = i; + _patchMap[i] = i; + _velocityMap[0][i] = i; + _keyShift[i] = 0; + _volAdjust[i] = 0; + _velocityMapIdx[i] = 0; } Resource *res = NULL; - if (!_isMt32) { - res = resMan->findResource(ResourceId(kResourceTypePatch, 4), 0); - if (!res) - warning("Failed to locate GM patch, attempting to load MT-32 patch"); - - // Detect the format of patch 1, so that we know what play mask to use - Resource *resPatch1 = resMan->findResource(ResourceId(kResourceTypePatch, 1), 0); - if (!resPatch1) - _isOldPatchFormat = false; - else - _isOldPatchFormat = !isMt32GmPatch(resPatch1->data, resPatch1->size); - } + if (_isMt32) { + // MT-32 + resetMt32(); + setMt32Volume(80); - if (!res) { res = resMan->findResource(ResourceId(kResourceTypePatch, 1), 0); - if (!res) - error("Failed to load MT-32 patch"); - } - if (isMt32GmPatch(res->data, res->size)) { - readMt32GmPatch(res->data, res->size); - strncpy((char *)_goodbyeMsg, " ScummVM ", 20); - } else { - if (!_isMt32) { - warning("MT-32 to GM translation not yet supported"); + if (res) { + if (isMt32GmPatch(res->data, res->size)) { + readMt32GmPatch(res->data, res->size); + strncpy((char *)_goodbyeMsg, " ScummVM ", 20); + } else { + readMt32Patch(res->data, res->size); + } + } else { + error("Failed to load MT-32 patch"); + // TODO Load data from MT32.DRV } + } else { + // General MIDI + res = resMan->findResource(ResourceId(kResourceTypePatch, 4), 0); - readMt32Patch(res->data, res->size); + if (res) { + readMt32GmPatch(res->data, res->size); - // No mapping - for (uint i = 0; i < 128; i++) { - _percussionMap[i] = i; - _patchMap[i] = i; - _velocityMap[0][i] = i; - _keyShift[i] = 0; - _volAdjust[i] = 0; - _velocityMapIdx[i] = 0; + // Detect the format of patch 1, so that we know what play mask to use + res = resMan->findResource(ResourceId(kResourceTypePatch, 1), 0); + if (!res) + _isOldPatchFormat = false; + else + _isOldPatchFormat = !isMt32GmPatch(res->data, res->size); + } else { + warning("MT-32 to GM translation not yet supported"); } } @@ -578,7 +579,6 @@ void MidiPlayer_Midi::sysEx(const byte *msg, uint16 length) { byte MidiPlayer_Midi::getPlayId(SciVersion soundVersion) { switch (soundVersion) { case SCI_VERSION_0_EARLY: - return 0x00; // TODO case SCI_VERSION_0_LATE: return 0x01; default: |