diff options
author | Walter van Niftrik | 2010-01-26 19:25:33 +0000 |
---|---|---|
committer | Walter van Niftrik | 2010-01-26 19:25:33 +0000 |
commit | 9861b04b935b84424b5b7950a2398dbfb44a99f9 (patch) | |
tree | 59a341fbe00b6cc9b4e51134ec2e746445183eff /engines/sci/sound/midiparser_sci.cpp | |
parent | d6bb432a92c3600a5201217316aa7ed0321c898c (diff) | |
download | scummvm-rg350-9861b04b935b84424b5b7950a2398dbfb44a99f9.tar.gz scummvm-rg350-9861b04b935b84424b5b7950a2398dbfb44a99f9.tar.bz2 scummvm-rg350-9861b04b935b84424b5b7950a2398dbfb44a99f9.zip |
SCI: Add driver for Yamaha FB-01. Cleanup.
svn-id: r47571
Diffstat (limited to 'engines/sci/sound/midiparser_sci.cpp')
-rw-r--r-- | engines/sci/sound/midiparser_sci.cpp | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/engines/sci/sound/midiparser_sci.cpp b/engines/sci/sound/midiparser_sci.cpp index eab4d51489..79a3660931 100644 --- a/engines/sci/sound/midiparser_sci.cpp +++ b/engines/sci/sound/midiparser_sci.cpp @@ -87,6 +87,16 @@ bool MidiParser_SCI::loadMusic(SoundResource::Track *track, MusicEntry *psnd, in _loopTick = 0; _channelsUsed = 0; + if (_soundVersion <= SCI_VERSION_0_LATE) { + // Set initial voice count + for (int i = 0; i < 16; ++i) { + byte voiceCount = 0; + if (channelFilterMask & (1 << i)) + voiceCount = psnd->soundRes->getInitialVoiceCount(i); + _driver->send(0xB0 | i, 0x4B, voiceCount); + } + } + // Send a velocity off signal to all channels for (int i = 0; i < 16; ++i) { _driver->send(0xB0 | i, 0x4E, 0); // Reset velocity |