diff options
-rw-r--r-- | engines/sci/sfx/music.cpp | 2 | ||||
-rw-r--r-- | engines/sci/sfx/soundcmd.cpp | 6 |
2 files changed, 4 insertions, 4 deletions
diff --git a/engines/sci/sfx/music.cpp b/engines/sci/sfx/music.cpp index f919fc8fdc..07a5ed29a6 100644 --- a/engines/sci/sfx/music.cpp +++ b/engines/sci/sfx/music.cpp @@ -640,7 +640,7 @@ void MidiParser_SCI::parseNextEvent(EventInfo &info) { info.ext.data = _position._play_pos; _position._play_pos += info.length; if (info.ext.type == 0x2F) {// end of track reached - int16 loop = GET_SEL32V(_segMan, _pSnd->soundObj, loop); + uint16 loop = GET_SEL32V(_segMan, _pSnd->soundObj, loop); if (loop == 0xFFFF) { jumpToTick(_loopTick); PUT_SEL32V(_segMan, _pSnd->soundObj, loop, loop--); diff --git a/engines/sci/sfx/soundcmd.cpp b/engines/sci/sfx/soundcmd.cpp index 9afeed5340..edb6b7bc44 100644 --- a/engines/sci/sfx/soundcmd.cpp +++ b/engines/sci/sfx/soundcmd.cpp @@ -689,7 +689,7 @@ void SoundCommandParser::cmdUpdateCues(reg_t obj, int16 value) { } if (!GET_SEL32(_segMan, obj, nodePtr).isNull()) { - int16 signal = GET_SEL32V(_segMan, obj, signal); + uint16 signal = GET_SEL32V(_segMan, obj, signal); int16 dataInc = GET_SEL32V(_segMan, obj, dataInc); switch (signal) { @@ -767,7 +767,7 @@ void SoundCommandParser::cmdSetHandlePriority(reg_t obj, int16 value) { return; } - if (value == 0xFFFF) { + if (value == -1) { //pSnd->prio=0;field_15B=0 PUT_SEL32V(_segMan, obj, flags, GET_SEL32V(_segMan, obj, flags) & 0xFD); } else { @@ -780,7 +780,7 @@ void SoundCommandParser::cmdSetHandlePriority(reg_t obj, int16 value) { void SoundCommandParser::cmdSetHandleLoop(reg_t obj, int16 value) { if (!GET_SEL32(_segMan, obj, nodePtr).isNull()) { - PUT_SEL32V(_segMan, obj, loop, value == 0xFFFF ? 0xFFFF : 1); + PUT_SEL32V(_segMan, obj, loop, value == -1 ? 0xFFFF : 1); #ifdef USE_OLD_MUSIC_FUNCTIONS SongHandle handle = FROBNICATE_HANDLE(obj); _state->sfx_song_set_loops(handle, value); |