diff options
author | Max Horn | 2010-03-11 23:39:51 +0000 |
---|---|---|
committer | Max Horn | 2010-03-11 23:39:51 +0000 |
commit | 9b837d66d4647a7642a761cefe5798d30a21504a (patch) | |
tree | e5e96cd1a48850a699f0e77a748d415921f7b18e /backends/platform/PalmOS | |
parent | 5886a0cc7715c874919a7056dfb6b65d3be19dce (diff) | |
download | scummvm-rg350-9b837d66d4647a7642a761cefe5798d30a21504a.tar.gz scummvm-rg350-9b837d66d4647a7642a761cefe5798d30a21504a.tar.bz2 scummvm-rg350-9b837d66d4647a7642a761cefe5798d30a21504a.zip |
Replace Audio::MixerImpl::setOutputRate with a new 'sampleRate' param to the MixerImpl constructor
svn-id: r48238
Diffstat (limited to 'backends/platform/PalmOS')
-rw-r--r-- | backends/platform/PalmOS/Src/be_base.cpp | 4 | ||||
-rw-r--r-- | backends/platform/PalmOS/Src/be_base.h | 2 | ||||
-rw-r--r-- | backends/platform/PalmOS/Src/be_os5.h | 2 | ||||
-rw-r--r-- | backends/platform/PalmOS/Src/os5_sound.cpp | 22 |
4 files changed, 14 insertions, 16 deletions
diff --git a/backends/platform/PalmOS/Src/be_base.cpp b/backends/platform/PalmOS/Src/be_base.cpp index 66dd823df0..b3caee105d 100644 --- a/backends/platform/PalmOS/Src/be_base.cpp +++ b/backends/platform/PalmOS/Src/be_base.cpp @@ -110,9 +110,7 @@ void OSystem_PalmBase::initBackend() { // Create and hook up the mixer, if none exists yet (we check for this to // allow subclasses to provide their own). if (_mixerMgr == 0) { - _mixerMgr = new Audio::MixerImpl(this); - setSoundCallback(0, _mixerMgr); -// setSoundCallback(Audio::Mixer::mixCallback, _mixerMgr); + setupMixer(); } // Create and hook up the timer manager, if none exists yet (we check for diff --git a/backends/platform/PalmOS/Src/be_base.h b/backends/platform/PalmOS/Src/be_base.h index 30130ebfff..1885114ace 100644 --- a/backends/platform/PalmOS/Src/be_base.h +++ b/backends/platform/PalmOS/Src/be_base.h @@ -117,7 +117,7 @@ private: void simulate_mouse(Common::Event &event, Int8 iHoriz, Int8 iVert, Coord *xr, Coord *yr); virtual void sound_handler() = 0; - virtual bool setSoundCallback(SoundProc proc, void *param) = 0; + virtual bool setupMixer() = 0; virtual void clearSoundCallback() = 0; protected: diff --git a/backends/platform/PalmOS/Src/be_os5.h b/backends/platform/PalmOS/Src/be_os5.h index 692e304007..2040c7faea 100644 --- a/backends/platform/PalmOS/Src/be_os5.h +++ b/backends/platform/PalmOS/Src/be_os5.h @@ -140,7 +140,7 @@ private: virtual SndStreamVariableBufferCallback sound_callback(); virtual void sound_handler(); - virtual bool setSoundCallback(SoundProc proc, void *param); + virtual bool setupMixer(); void clearSoundCallback(); protected: diff --git a/backends/platform/PalmOS/Src/os5_sound.cpp b/backends/platform/PalmOS/Src/os5_sound.cpp index 1898f6ae90..73ab64c0d5 100644 --- a/backends/platform/PalmOS/Src/os5_sound.cpp +++ b/backends/platform/PalmOS/Src/os5_sound.cpp @@ -66,7 +66,6 @@ void OSystem_PalmOS5::sound_handler() { _soundEx.dataP = MemPtrNew(_soundEx.size); _mixerMgr->mixCallback((byte *)_soundEx.dataP, _soundEx.size); -// ((SoundProc)_sound.proc)(_sound.param, (byte *)_soundEx.dataP, _soundEx.size); _soundEx.set = true; } }// TODO : no Sound API case @@ -76,10 +75,18 @@ SndStreamVariableBufferCallback OSystem_PalmOS5::sound_callback() { return sndCallback; } -bool OSystem_PalmOS5::setSoundCallback(SoundProc proc, void *param) { +bool OSystem_PalmOS5::setupMixer() { Err e; Boolean success = false; + uint32 samplesPerSec; + if (ConfMan.hasKey("output_rate")) + samplesPerSec = ConfMan.getInt("output_rate"); + else + samplesPerSec = SAMPLES_PER_SEC; + + _mixerMgr = new Audio::MixerImpl(this, samplesPerSec); + if (!_sound.active) { if (gVars->fmQuality != FM_QUALITY_INI) { ConfMan.setBool("FM_medium_quality", (gVars->fmQuality == FM_QUALITY_MED)); @@ -89,8 +96,8 @@ bool OSystem_PalmOS5::setSoundCallback(SoundProc proc, void *param) { #if defined (COMPILE_OS5) CALLBACK_INIT(_soundEx); #endif - _sound.proc = proc; - _sound.param = param; + _sound.proc = 0; + _sound.param = _mixerMgr; _sound.active = true; // always true when we call this function, false when sound is off _soundEx.handle = 0; @@ -98,12 +105,6 @@ bool OSystem_PalmOS5::setSoundCallback(SoundProc proc, void *param) { _soundEx.set = false; _soundEx.dataP = NULL; // set by the handler - uint32 samplesPerSec; - if (ConfMan.hasKey("output_rate")) - samplesPerSec = ConfMan.getInt("output_rate"); - else - samplesPerSec = SAMPLES_PER_SEC; - // try to create sound stream if (OPTIONS_TST(kOptPalmSoundAPI)) { e = SndStreamCreateExtended( @@ -133,7 +134,6 @@ bool OSystem_PalmOS5::setSoundCallback(SoundProc proc, void *param) { } // if not true some scenes (indy3 256,...) may freeze (ESC to skip) - _mixerMgr->setOutputRate(samplesPerSec); _mixerMgr->setReady(true); return true; |