[Scummvm-cvs-logs] SF.net SVN: scummvm:[47424] scummvm/trunk/engines/sci/sound
m_kiewitz at users.sourceforge.net
m_kiewitz at users.sourceforge.net
Thu Jan 21 23:33:35 CET 2010
Revision: 47424
http://scummvm.svn.sourceforge.net/scummvm/?rev=47424&view=rev
Author: m_kiewitz
Date: 2010-01-21 22:33:35 +0000 (Thu, 21 Jan 2010)
Log Message:
-----------
SCI: fixing iceman intro again (dont set datainc immediately but after delta)
Modified Paths:
--------------
scummvm/trunk/engines/sci/sound/midiparser_sci.cpp
scummvm/trunk/engines/sci/sound/midiparser_sci.h
Modified: scummvm/trunk/engines/sci/sound/midiparser_sci.cpp
===================================================================
--- scummvm/trunk/engines/sci/sound/midiparser_sci.cpp 2010-01-21 22:20:16 UTC (rev 47423)
+++ scummvm/trunk/engines/sci/sound/midiparser_sci.cpp 2010-01-21 22:33:35 UTC (rev 47424)
@@ -55,6 +55,8 @@
_signalSet = false;
_signalToSet = 0;
+ _dataincAdd = false;
+ _dataincToAdd = 0;
_channelsUsed = 0;
}
@@ -118,6 +120,12 @@
_channelsUsed |= (1 << info.channel());
// Set signal AFTER waiting for delta, otherwise we would set signal too soon resulting in all sorts of bugs
+ if (_dataincAdd) {
+ _dataincAdd = false;
+ _pSnd->dataInc += _dataincToAdd;
+ _pSnd->signal = 0x7f + _pSnd->dataInc;
+ debugC(2, kDebugLevelSound, "datainc %04x", _dataincToAdd);
+ }
if (_signalSet) {
_signalSet = false;
_pSnd->signal = _signalToSet;
@@ -178,16 +186,15 @@
jumpToTick(_loopTick, false, false);
break;
case kUpdateCue:
+ _dataincAdd = true;
switch (_soundVersion) {
case SCI_VERSION_0_EARLY:
case SCI_VERSION_0_LATE:
- _pSnd->dataInc += info.basic.param2;
- _signalSet = true;
- _signalToSet = 0x7f + _pSnd->dataInc;
+ _dataincToAdd = info.basic.param2;
break;
case SCI_VERSION_1_EARLY:
case SCI_VERSION_1_LATE:
- _pSnd->dataInc++;
+ _dataincToAdd = 1;
break;
default:
break;
Modified: scummvm/trunk/engines/sci/sound/midiparser_sci.h
===================================================================
--- scummvm/trunk/engines/sci/sound/midiparser_sci.h 2010-01-21 22:20:16 UTC (rev 47423)
+++ scummvm/trunk/engines/sci/sound/midiparser_sci.h 2010-01-21 22:33:35 UTC (rev 47424)
@@ -84,6 +84,8 @@
bool _signalSet;
int16 _signalToSet;
+ bool _dataincAdd;
+ int16 _dataincToAdd;
// A 16-bit mask, containing the channels used
// by the currently parsed song
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list