aboutsummaryrefslogtreecommitdiff
path: root/engines/sky/music/adlibmusic.cpp
diff options
context:
space:
mode:
authorWalter van Niftrik2015-05-29 00:17:50 -0400
committerMatthew Hoops2015-07-07 20:19:45 -0400
commitf7c785b37b5fb00029ebb04362f8a733f556e3dd (patch)
tree91199d4716e2fd11dfc84592884bad1dea16d01f /engines/sky/music/adlibmusic.cpp
parent22d985f3c265162419ab8c65dd47b48ac385f463 (diff)
downloadscummvm-rg350-f7c785b37b5fb00029ebb04362f8a733f556e3dd.tar.gz
scummvm-rg350-f7c785b37b5fb00029ebb04362f8a733f556e3dd.tar.bz2
scummvm-rg350-f7c785b37b5fb00029ebb04362f8a733f556e3dd.zip
SKY: Implement original music volume handling
Diffstat (limited to 'engines/sky/music/adlibmusic.cpp')
-rw-r--r--engines/sky/music/adlibmusic.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/engines/sky/music/adlibmusic.cpp b/engines/sky/music/adlibmusic.cpp
index c13d6150ec..3607dfbd13 100644
--- a/engines/sky/music/adlibmusic.cpp
+++ b/engines/sky/music/adlibmusic.cpp
@@ -40,7 +40,7 @@ AdLibMusic::AdLibMusic(Audio::Mixer *pMixer, Disk *pDisk) : MusicBase(pMixer, pD
error("Failed to create OPL");
_opl->start(new Common::Functor0Mem<void, AdLibMusic>(this, &AdLibMusic::onTimer), 50);
- _mixer->playStream(Audio::Mixer::kMusicSoundType, &_soundHandle, this, -1, Audio::Mixer::kMaxChannelVolume, 0, DisposeAfterUse::NO, true);
+ _mixer->playStream(Audio::Mixer::kPlainSoundType, &_soundHandle, this, -1, Audio::Mixer::kMaxChannelVolume, 0, DisposeAfterUse::NO, true);
}
AdLibMusic::~AdLibMusic() {
@@ -93,8 +93,8 @@ void AdLibMusic::startDriver() {
void AdLibMusic::setVolume(uint16 param) {
_musicVolume = param;
- // FIXME: This is bad. There's no real volume control here.
- _mixer->setVolumeForSoundType(Audio::Mixer::kMusicSoundType, 2 * param);
+ for (uint8 cnt = 0; cnt < _numberOfChannels; cnt++)
+ _channels[cnt]->updateVolume(_musicVolume);
}
bool AdLibMusic::isStereo() const {