diff options
| author | Paweł Kołodziejski | 2003-12-25 11:14:05 +0000 |
|---|---|---|
| committer | Paweł Kołodziejski | 2003-12-25 11:14:05 +0000 |
| commit | 1abfe5d63f11d954278b9d987bde78770629fe78 (patch) | |
| tree | 0c462c9e2b489a26be63385b047b90c063ff2e9a /scumm/sound.cpp | |
| parent | 9482d3b5a2c6516867011cf22ce07d83df8be1f9 (diff) | |
| download | scummvm-rg350-1abfe5d63f11d954278b9d987bde78770629fe78.tar.gz scummvm-rg350-1abfe5d63f11d954278b9d987bde78770629fe78.tar.bz2 scummvm-rg350-1abfe5d63f11d954278b9d987bde78770629fe78.zip | |
start sound call directly digital imuse, only script part handled by mainloop of scumm script
svn-id: r11906
Diffstat (limited to 'scumm/sound.cpp')
| -rw-r--r-- | scumm/sound.cpp | 27 |
1 files changed, 8 insertions, 19 deletions
diff --git a/scumm/sound.cpp b/scumm/sound.cpp index bdb6bdc2d0..ca384df0d7 100644 --- a/scumm/sound.cpp +++ b/scumm/sound.cpp @@ -66,16 +66,9 @@ Sound::~Sound() { } void Sound::addSoundToQueue(int sound) { - if (!(_scumm->_features & GF_DIGI_IMUSE)) { - _scumm->VAR(_scumm->VAR_LAST_SOUND) = sound; - _scumm->ensureResourceLoaded(rtSound, sound); - addSoundToQueue2(sound); - } else { - // WARNING ! This may break something, maybe this sould be put inside if (_gameID == GID_FT || _gameID == GID_FTDEMO) ? - // But why addSoundToQueue should not queue sound ? - _scumm->ensureResourceLoaded(rtSound, sound); - addSoundToQueue2(sound); - } + _scumm->VAR(_scumm->VAR_LAST_SOUND) = sound; + _scumm->ensureResourceLoaded(rtSound, sound); + addSoundToQueue2(sound); } void Sound::addSoundToQueue2(int sound) { @@ -107,17 +100,13 @@ void Sound::processSoundQues() { data[j] = _soundQue[i + j]; i += num; -#if 0 - debug(1, "processSoundQues(%d,%d,%d,%d,%d,%d,%d,%d,%d)", - data[0] >> 8, - data[0] & 0xFF, - data[1], data[2], data[3], data[4], data[5], data[6], data[7] - ); -#endif - + debug(5, "processSoundQues(%d,%d,%d,%d,%d,%d,%d,%d,%d)", + data[0] >> 8, data[0] & 0xFF, + data[1], data[2], data[3], data[4], data[5], data[6], data[7]); + if (_scumm->_features & GF_DIGI_IMUSE) { if (_scumm->_imuseDigital) - _scumm->_imuseDigital->doCommand(data[0], data[1], data[2], data[3], data[4], + _scumm->_imuseDigital->parseScriptQues(data[0], data[1], data[2], data[3], data[4], data[5], data[6], data[7]); } else if (_scumm->_imuse) { _scumm->VAR(_scumm->VAR_SOUNDRESULT) = (short)_scumm->_imuse->doCommand (num, data); |
