aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
Diffstat (limited to 'engines')
-rw-r--r--engines/parallaction/sound.h3
-rw-r--r--engines/parallaction/sound_br.cpp8
2 files changed, 9 insertions, 2 deletions
diff --git a/engines/parallaction/sound.h b/engines/parallaction/sound.h
index 087e00fdaa..6890c1d2b5 100644
--- a/engines/parallaction/sound.h
+++ b/engines/parallaction/sound.h
@@ -182,6 +182,7 @@ public:
class SoundMan_br : public SoundManImpl {
protected:
+ Parallaction_br *_vm;
Audio::Mixer *_mixer;
Common::String _musicFile;
@@ -191,6 +192,8 @@ protected:
virtual void pause(bool p) = 0;
public:
+ SoundMan_br(Parallaction_br *vm);
+
virtual void execute(int command, const char *parm);
void setMusicFile(const char *parm);
};
diff --git a/engines/parallaction/sound_br.cpp b/engines/parallaction/sound_br.cpp
index 269ab0d7cb..40a05d1bdd 100644
--- a/engines/parallaction/sound_br.cpp
+++ b/engines/parallaction/sound_br.cpp
@@ -392,7 +392,7 @@ void MidiPlayer_MSC::timerCallback(void *p) {
player->updateTimer();
}
-DosSoundMan_br::DosSoundMan_br(Parallaction_br *vm, MidiDriver *driver) {
+DosSoundMan_br::DosSoundMan_br(Parallaction_br *vm, MidiDriver *driver) : SoundMan_br(vm) {
_midiPlayer = new MidiPlayer_MSC(driver);
assert(_midiPlayer);
}
@@ -419,7 +419,7 @@ void DosSoundMan_br::pause(bool p) {
_midiPlayer->pause(p);
}
-AmigaSoundMan_br::AmigaSoundMan_br(Parallaction_br *vm) {
+AmigaSoundMan_br::AmigaSoundMan_br(Parallaction_br *vm) : SoundMan_br(vm) {
_musicStream = 0;
}
@@ -457,6 +457,10 @@ void AmigaSoundMan_br::pause(bool p) {
_mixer->pauseHandle(_musicHandle, p);
}
+SoundMan_br::SoundMan_br(Parallaction_br *vm) : _vm(vm) {
+ _mixer = _vm->_mixer;
+}
+
void SoundMan_br::setMusicFile(const char *name) {
_musicFile = name;
}