aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorFilippos Karapetis2009-12-23 16:43:24 +0000
committerFilippos Karapetis2009-12-23 16:43:24 +0000
commitf716942919af0de50023188060592d648ceeb8ce (patch)
treeba5c82b6b5e1ec07825935eeda6736166478194f /engines
parent9fb61bce1309dd63bc9ff4a4abff7409ece4c645 (diff)
downloadscummvm-rg350-f716942919af0de50023188060592d648ceeb8ce.tar.gz
scummvm-rg350-f716942919af0de50023188060592d648ceeb8ce.tar.bz2
scummvm-rg350-f716942919af0de50023188060592d648ceeb8ce.zip
SCI/new music code: Added a sanity check to avoid changing some selectors that don't exist in SCI0
svn-id: r46505
Diffstat (limited to 'engines')
-rw-r--r--engines/sci/sfx/soundcmd.cpp9
1 files changed, 5 insertions, 4 deletions
diff --git a/engines/sci/sfx/soundcmd.cpp b/engines/sci/sfx/soundcmd.cpp
index 47a56ee818..a30a2cb6b8 100644
--- a/engines/sci/sfx/soundcmd.cpp
+++ b/engines/sci/sfx/soundcmd.cpp
@@ -408,10 +408,11 @@ void SoundCommandParser::cmdPlayHandle(reg_t obj, int16 value) {
PUT_SEL32V(_segMan, obj, handle, 0x1234);
PUT_SEL32V(_segMan, obj, signal, 0);
- PUT_SEL32V(_segMan, obj, min, 0);
- PUT_SEL32V(_segMan, obj, sec, 0);
- PUT_SEL32V(_segMan, obj, frame, 0);
-
+ if (_hasNodePtr) {
+ PUT_SEL32V(_segMan, obj, min, 0);
+ PUT_SEL32V(_segMan, obj, sec, 0);
+ PUT_SEL32V(_segMan, obj, frame, 0);
+ }
_music->_playList[slot]->loop = GET_SEL32V(_segMan, obj, loop) == 0xFFFF ? 1 : 0;
_music->_playList[slot]->prio = GET_SEL32V(_segMan, obj, priority);
_music->_playList[slot]->volume = GET_SEL32V(_segMan, obj, vol);