diff options
author | Martin Kiewitz | 2009-12-25 13:52:40 +0000 |
---|---|---|
committer | Martin Kiewitz | 2009-12-25 13:52:40 +0000 |
commit | c03e7c8586429a8f65cf815c13024a38b1557377 (patch) | |
tree | 60de3a5ad5153bd91d71412726fd055f89786169 | |
parent | f5567d4605759c06f6ad24b2cc0b53b6d030247c (diff) | |
download | scummvm-rg350-c03e7c8586429a8f65cf815c13024a38b1557377.tar.gz scummvm-rg350-c03e7c8586429a8f65cf815c13024a38b1557377.tar.bz2 scummvm-rg350-c03e7c8586429a8f65cf815c13024a38b1557377.zip |
SCI/newmusic: find slot again after destroying it fixes kq6cd, lb2cd, added debug output
svn-id: r46553
-rw-r--r-- | engines/sci/sfx/soundcmd.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/engines/sci/sfx/soundcmd.cpp b/engines/sci/sfx/soundcmd.cpp index 61a49ef4d2..9227bb275c 100644 --- a/engines/sci/sfx/soundcmd.cpp +++ b/engines/sci/sfx/soundcmd.cpp @@ -399,6 +399,8 @@ void SoundCommandParser::cmdPlayHandle(reg_t obj, int16 value) { if (_music->_playList[slot]->resnum != number) { // another sound loaded into struct cmdDisposeHandle(obj, value); cmdInitHandle(obj, value); + // Find slot again :) + slot = _music->findListSlot(obj); } if (_hasNodePtr) { @@ -686,6 +688,7 @@ void SoundCommandParser::cmdUpdateCues(reg_t obj, int16 value) { case SI_ABSOLUTE_CUE: debugC(2, kDebugLevelSound, "--- [CUE] %04x:%04x Absolute Cue: %d\n", PRINT_REG(obj), signal); + printf("abs-signal %04X\n", signal); PUT_SEL32V(_segMan, obj, signal, signal); break; @@ -697,6 +700,7 @@ void SoundCommandParser::cmdUpdateCues(reg_t obj, int16 value) { * below, with proper storage of dataInc and * signal in the iterator code. */ PUT_SEL32V(_segMan, obj, dataInc, signal); + printf("rel-signal %04X\n", signal); if (_soundVersion == SCI_VERSION_1_EARLY) PUT_SEL32V(_segMan, obj, signal, signal); else |