From 93bdde93170ee9b75acaa7e6dfef7c1a6e33599a Mon Sep 17 00:00:00 2001 From: Filippos Karapetis Date: Sun, 27 Dec 2009 02:29:58 +0000 Subject: The state selector is only available in SCI0 games svn-id: r46610 --- engines/sci/sfx/music.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/engines/sci/sfx/music.cpp b/engines/sci/sfx/music.cpp index 7989c30144..b40d51487a 100644 --- a/engines/sci/sfx/music.cpp +++ b/engines/sci/sfx/music.cpp @@ -363,7 +363,8 @@ void SciMusic::onTimer() { // FIXME: is there any other place this can be triggered properly? SegManager *segMan = ((SciEngine *)g_engine)->getEngineState()->_segMan; PUT_SEL32V(segMan, _playList[i]->soundObj, signal, SIGNAL_OFFSET); - PUT_SEL32V(segMan, _playList[i]->soundObj, state, kSndStatusStopped); + if (_soundVersion <= SCI_VERSION_0_LATE) + PUT_SEL32V(segMan, _playList[i]->soundObj, state, kSndStatusStopped); } else { _playList[i]->ticker = (uint16)(_pMixer->getSoundElapsedTime( _playList[i]->hCurrentAud) * 0.06); @@ -670,7 +671,8 @@ void MidiParser_SCI::parseNextEvent(EventInfo &info) { } else { _pSnd->status = kSndStatusStopped; PUT_SEL32V(segMan, _pSnd->soundObj, signal, 0xFFFF); - PUT_SEL32V(segMan, _pSnd->soundObj, state, kSndStatusStopped); + if (_soundVersion <= SCI_VERSION_0_LATE) + PUT_SEL32V(segMan, _pSnd->soundObj, state, kSndStatusStopped); debugC(2, kDebugLevelSound, "signal EOT"); } } -- cgit v1.2.3