aboutsummaryrefslogtreecommitdiff
path: root/sound/mods/tfmx.cpp
diff options
context:
space:
mode:
authorNorbert Lange2009-08-01 16:10:00 +0000
committerNorbert Lange2009-08-01 16:10:00 +0000
commit27ee1eb33179aa2cae92a9790867bfa5eaa0e471 (patch)
tree7bcd54e8db2a86bf73df5755ad8ae85d0ca4e456 /sound/mods/tfmx.cpp
parent1becc072f91994425abc9d9e8a3759fc45f63017 (diff)
downloadscummvm-rg350-27ee1eb33179aa2cae92a9790867bfa5eaa0e471.tar.gz
scummvm-rg350-27ee1eb33179aa2cae92a9790867bfa5eaa0e471.tar.bz2
scummvm-rg350-27ee1eb33179aa2cae92a9790867bfa5eaa0e471.zip
refactored and commented player_va4 a bit
fix waitcommand in Tfmx try making tfmxplayer compile again svn-id: r42976
Diffstat (limited to 'sound/mods/tfmx.cpp')
-rw-r--r--sound/mods/tfmx.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/sound/mods/tfmx.cpp b/sound/mods/tfmx.cpp
index 55e2481aea..a9adf27a25 100644
--- a/sound/mods/tfmx.cpp
+++ b/sound/mods/tfmx.cpp
@@ -213,7 +213,7 @@ void Tfmx::effects(ChannelContext &channel) {
}
void Tfmx::macroRun(ChannelContext &channel) {
- bool deferWait = false;
+ bool deferWait = channel.deferWait;
for (;;) {
const byte *const macroPtr = (byte *)(_resource.getMacroPtr(channel.macroOffset) + channel.macroStep);
++channel.macroStep;
@@ -276,7 +276,7 @@ void Tfmx::macroRun(ChannelContext &channel) {
case 0x04: // Wait. Parameters: Ticks to wait(W).
// TODO: some unkown Parameter? (macroPtr[1] & 1)
channel.macroWait = READ_BE_UINT16(&macroPtr[2]);
- return;
+ break;
case 0x10: // Loop Key Up. Parameters: Loopcount, MacroStep(W)
if (channel.keyUp)
@@ -401,7 +401,7 @@ void Tfmx::macroRun(ChannelContext &channel) {
// TODO: MI loads 24 bit, but thats useless?
const uint16 temp = /* ((int8)macroPtr[1] << 16) | */ READ_BE_UINT16(&macroPtr[2]);
if (macroPtr[1] || (temp & 1))
- warning("Tfmx: Problematic value for sampleloop: %i", (macroPtr[1] << 16) | temp);
+ warning("Tfmx: Problematic value for sampleloop: %06X", (macroPtr[1] << 16) | temp);
channel.sampleStart += temp & 0xFFFE;
channel.sampleLen -= (temp / 2) /* & 0x7FFF */;
Paula::setChannelSampleStart(channel.paulaChannel, _resource.getSamplePtr(channel.sampleStart));
@@ -871,7 +871,7 @@ void Tfmx::doMacro(int note, int macro, int relVol, int finetune, int channelNo)
startPaula();
}
-void Tfmx::stopMacroEffect(int channel) {
+void Tfmx::stopMacroEffect(int channel) {
assert(0 <= channel && channel < kNumVoices);
Common::StackLock lock(_mutex);
unlockMacroChannel(_channelCtx[channel]);