aboutsummaryrefslogtreecommitdiff
path: root/engines/sci/sfx/music.cpp
diff options
context:
space:
mode:
authorMartin Kiewitz2009-12-27 12:17:43 +0000
committerMartin Kiewitz2009-12-27 12:17:43 +0000
commite6ad7523c8acdd1bf0fc37e841da627f568d6fcd (patch)
tree5eaae52fd2aacf594d6a6b0097ab211c15f7d258 /engines/sci/sfx/music.cpp
parent19cb4ad6e02927607af851d08d1b176cbb1f8bea (diff)
downloadscummvm-rg350-e6ad7523c8acdd1bf0fc37e841da627f568d6fcd.tar.gz
scummvm-rg350-e6ad7523c8acdd1bf0fc37e841da627f568d6fcd.tar.bz2
scummvm-rg350-e6ad7523c8acdd1bf0fc37e841da627f568d6fcd.zip
SCI/newmusic: now adding digital sample data as separate channel for sci0 games (not yet playing)
svn-id: r46629
Diffstat (limited to 'engines/sci/sfx/music.cpp')
-rw-r--r--engines/sci/sfx/music.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/engines/sci/sfx/music.cpp b/engines/sci/sfx/music.cpp
index d6f00478bc..eb64cdee1f 100644
--- a/engines/sci/sfx/music.cpp
+++ b/engines/sci/sfx/music.cpp
@@ -304,13 +304,13 @@ void SciMusic::soundInitSnd(MusicEntry *pSnd) {
if (track) {
// if MIDI device is selected but there is no digital track in sound resource
// try to use adlib's digital sample if possible
- if (_midiType <= MD_MT32 && track->nDigital == 0xFF && _bMultiMidi) {
- if (pSnd->soundRes->getTrackByType(SoundResource::TRACKTYPE_ADLIB)->nDigital != 0xFF)
+ if (_midiType <= MD_MT32 && track->digitalChannelNr == -1 && _bMultiMidi) {
+ if (pSnd->soundRes->getTrackByType(SoundResource::TRACKTYPE_ADLIB)->digitalChannelNr != -1)
track = pSnd->soundRes->getTrackByType(SoundResource::TRACKTYPE_ADLIB);
}
// play digital sample
- if (track->nDigital != 0xFF) {
- byte *channelData = track->channels[track->nDigital].data;
+ if (track->digitalChannelNr != -1) {
+ byte *channelData = track->channels[track->digitalChannelNr].data;
int rate = READ_LE_UINT16(channelData);
uint32 size = READ_LE_UINT16(channelData + 2);
assert(READ_LE_UINT16(channelData + 4) == 0); // Possibly a compression flag