From 9d3136fb71858a73a9f4aef8e33e0e444610cb5e Mon Sep 17 00:00:00 2001 From: Johannes Schickel Date: Sun, 12 Mar 2006 17:08:46 +0000 Subject: [PATCH] Corrects former commit which deleted sound file loading after the scene with malcolm and kallak. Also corrects callback50() which seem to improve the sound a bit in the kallak writing scene. svn-id: r21238 --- engines/kyra/kyra.cpp | 1 + engines/kyra/sound_adlib.cpp | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/engines/kyra/kyra.cpp b/engines/kyra/kyra.cpp index 74505b4adf2..97644c02625 100644 --- a/engines/kyra/kyra.cpp +++ b/engines/kyra/kyra.cpp @@ -646,6 +646,7 @@ void KyraEngine::startup() { error("Could not load \"_NPC.EMC\" script"); } + snd_playTheme(1); enterNewScene(_currentCharacter->sceneId, _currentCharacter->facing, 0, 0, 1); if (_abortIntroFlag && _skipFlag) { diff --git a/engines/kyra/sound_adlib.cpp b/engines/kyra/sound_adlib.cpp index c74d9a0f1a7..b15a8514a05 100644 --- a/engines/kyra/sound_adlib.cpp +++ b/engines/kyra/sound_adlib.cpp @@ -844,7 +844,7 @@ void AdlibDriver::setupDuration(uint8 duration, OutputState &state) { debugC(9, kDebugLevelSound, "setupDuration(%d, %d)", duration, &state - _outputTables); _continueFlag = duration; if (state.unk11) { - state.unk5 = duration + (getRandomNr() & state.unk11 & 0xFF); + state.unk5 = duration + (getRandomNr() & state.unk11); return; } if (state.unk12) { @@ -1666,7 +1666,7 @@ int AdlibDriver::updateCallback50(uint8 *&dataptr, OutputState &state, uint8 val _unk4 = 0; // Amplitude Modulation Depth / Vibrato Depth / Rhythm - writeOPL(0xBD, value & _unkOutputByte2); + writeOPL(0xBD, _unkOutputByte2 & 0xC0); return 0; }