aboutsummaryrefslogtreecommitdiff
path: root/engines/kyra/sound_towns.cpp
diff options
context:
space:
mode:
authorAlejandro Marzini2010-08-16 00:21:07 +0000
committerAlejandro Marzini2010-08-16 00:21:07 +0000
commitb0409d673921163085d2e2fa440911080a7cf884 (patch)
tree81b1bb895db6baed7881ca5cbc7ff3a830286189 /engines/kyra/sound_towns.cpp
parent503578ac1087b91dcb912fd7918454de73538b34 (diff)
parentb49761b6eae3a0aadefef4c4ffee6a7b583cc3ac (diff)
downloadscummvm-rg350-b0409d673921163085d2e2fa440911080a7cf884.tar.gz
scummvm-rg350-b0409d673921163085d2e2fa440911080a7cf884.tar.bz2
scummvm-rg350-b0409d673921163085d2e2fa440911080a7cf884.zip
Merge trunk, from r51777 to r52105
svn-id: r52108
Diffstat (limited to 'engines/kyra/sound_towns.cpp')
-rw-r--r--engines/kyra/sound_towns.cpp20
1 files changed, 11 insertions, 9 deletions
diff --git a/engines/kyra/sound_towns.cpp b/engines/kyra/sound_towns.cpp
index 8d01d47262..d27b075906 100644
--- a/engines/kyra/sound_towns.cpp
+++ b/engines/kyra/sound_towns.cpp
@@ -65,7 +65,9 @@ bool SoundTowns::init() {
if (!loadInstruments())
return false;
- _driver->cdaSetVolume(1, 118, 118);
+ _driver->intf()->callback(68);
+ _driver->intf()->callback(70, 0x33);
+ _driver->setOutputVolume(1, 118, 118);
return true;
}
@@ -91,7 +93,7 @@ void SoundTowns::playTrack(uint8 track) {
beginFadeOut();
if (_musicEnabled == 2 && trackNum != -1) {
- _driver->cdaSetVolume(1, 118, 118);
+ _driver->setOutputVolume(1, 118, 118);
g_system->getAudioCDManager()->play(trackNum + 1, loop ? -1 : 1, 0, 0);
g_system->getAudioCDManager()->updateCD();
_cdaPlaying = true;
@@ -229,24 +231,24 @@ void SoundTowns::stopAllSoundEffects() {
void SoundTowns::beginFadeOut() {
if (_cdaPlaying) {
for (int i = 118; i > 103; i--) {
- _driver->cdaSetVolume(1, i, i);
+ _driver->setOutputVolume(1, i, i);
_vm->delay(2 * _vm->tickLength());
}
for (int i = 103; i > 83; i -= 2) {
- _driver->cdaSetVolume(1, i, i);
+ _driver->setOutputVolume(1, i, i);
_vm->delay(2 * _vm->tickLength());
}
for (int i = 83; i > 58; i -= 2) {
- _driver->cdaSetVolume(1, i, i);
+ _driver->setOutputVolume(1, i, i);
_vm->delay(_vm->tickLength());
}
for (int i = 58; i > 0; i--)
- _driver->cdaSetVolume(1, i, i);
+ _driver->setOutputVolume(1, i, i);
- _driver->cdaSetVolume(1, 0, 0);
+ _driver->setOutputVolume(1, 0, 0);
} else {
if (_lastTrack == -1)
@@ -335,9 +337,9 @@ void SoundTowns::playEuphonyTrack(uint32 offset, int loop) {
for (int i = 0; i < 32; i++)
_driver->chanOrdr(i, *src++);
for (int i = 0; i < 32; i++)
- _driver->chanLevel(i, *src++);
+ _driver->chanVolumeShift(i, *src++);
for (int i = 0; i < 32; i++)
- _driver->chanTranspose(i, *src++);
+ _driver->chanNoteShift(i, *src++);
src = _musicTrackData + 1748;
for (int i = 0; i < 6; i++)