aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--engines/scumm/player_v4a.cpp22
-rw-r--r--sound/mods/tfmx.cpp9
2 files changed, 18 insertions, 13 deletions
diff --git a/engines/scumm/player_v4a.cpp b/engines/scumm/player_v4a.cpp
index dabbd5f950..3866775f33 100644
--- a/engines/scumm/player_v4a.cpp
+++ b/engines/scumm/player_v4a.cpp
@@ -32,17 +32,17 @@
namespace Scumm {
-Player_V4A::Player_V4A(ScummEngine *scumm, Audio::Mixer *mixer) :
- _vm(scumm),
- _mixer(mixer),
- _tfmxMusic(_mixer->getOutputRate(), true),
- _tfmxSfx(_mixer->getOutputRate(), true),
- _musicHandle(),
- _sfxHandle(),
- _musicId(),
- _sfxSlots(),
- _initState(0),
- _signal(0) {
+Player_V4A::Player_V4A(ScummEngine *scumm, Audio::Mixer *mixer)
+ : _vm(scumm),
+ _mixer(mixer),
+ _tfmxMusic(_mixer->getOutputRate(), true),
+ _tfmxSfx(_mixer->getOutputRate(), true),
+ _musicHandle(),
+ _sfxHandle(),
+ _musicId(),
+ _sfxSlots(),
+ _initState(0),
+ _signal(0) {
assert(scumm);
assert(mixer);
diff --git a/sound/mods/tfmx.cpp b/sound/mods/tfmx.cpp
index e8febe96a4..07173f4939 100644
--- a/sound/mods/tfmx.cpp
+++ b/sound/mods/tfmx.cpp
@@ -48,7 +48,12 @@ const uint16 Tfmx::noteIntervalls[64] = {
214, 202, 191, 180 };
Tfmx::Tfmx(int rate, bool stereo)
-: Paula(stereo, rate), _resource(), _resourceSample(), _playerCtx() {
+ : Paula(stereo, rate),
+ _resource(),
+ _resourceSample(),
+ _playerCtx(),
+ _deleteResource(false) {
+
_playerCtx.stopWithLastPattern = false;
for (int i = 0; i < kNumVoices; ++i)
@@ -114,7 +119,7 @@ void Tfmx::interrupt() {
--channel.macroWait;
}
- Paula::setChannelPeriod(channel.paulaChannel, channel.period);
+ Paula::setChannelPeriod(i, channel.period);
if (channel.macroSfxRun >= 0)
channel.macroSfxRun = 1;