aboutsummaryrefslogtreecommitdiff
path: root/engines/tsage/sound.cpp
diff options
context:
space:
mode:
authorPaul Gilbert2011-07-04 19:14:39 +1000
committerPaul Gilbert2011-07-04 19:14:39 +1000
commitad181a810c5856eae7e472cc358006333f9b348a (patch)
tree7c2067065cd22231fb2f648f4bf52f38b169c797 /engines/tsage/sound.cpp
parent6c1e565db9a3089a5a87a42c886b7fffd9db9dcd (diff)
downloadscummvm-rg350-ad181a810c5856eae7e472cc358006333f9b348a.tar.gz
scummvm-rg350-ad181a810c5856eae7e472cc358006333f9b348a.tar.bz2
scummvm-rg350-ad181a810c5856eae7e472cc358006333f9b348a.zip
TSAGE: Replace usage of deprecated Adlib OPL functions
Diffstat (limited to 'engines/tsage/sound.cpp')
-rw-r--r--engines/tsage/sound.cpp11
1 files changed, 7 insertions, 4 deletions
diff --git a/engines/tsage/sound.cpp b/engines/tsage/sound.cpp
index 8dd584ef24..e26b3d1544 100644
--- a/engines/tsage/sound.cpp
+++ b/engines/tsage/sound.cpp
@@ -2485,7 +2485,10 @@ AdlibSoundDriver::AdlibSoundDriver(): SoundDriver() {
_mixer = _vm->_mixer;
_sampleRate = _mixer->getOutputRate();
- _opl = makeAdLibOPL(_sampleRate);
+ _opl = OPL::Config::create();
+ assert(_opl);
+ _opl->init(_sampleRate);
+
_mixer->playStream(Audio::Mixer::kPlainSoundType, &_soundHandle, this, -1, Audio::Mixer::kMaxChannelVolume, 0, DisposeAfterUse::NO, true);
Common::set_to(_channelVoiced, _channelVoiced + ADLIB_CHANNEL_COUNT, false);
@@ -2504,7 +2507,7 @@ AdlibSoundDriver::AdlibSoundDriver(): SoundDriver() {
AdlibSoundDriver::~AdlibSoundDriver() {
DEALLOCATE(_patchData);
_mixer->stopHandle(_soundHandle);
- OPLDestroy(_opl);
+ delete _opl;
}
bool AdlibSoundDriver::open() {
@@ -2622,7 +2625,7 @@ void AdlibSoundDriver::flush() {
while (!_queue.empty()) {
RegisterValue v = _queue.pop();
- OPLWriteReg(_opl, v._regNum, v._value);
+ _opl->writeReg(v._regNum, v._value);
}
}
@@ -2760,7 +2763,7 @@ void AdlibSoundDriver::update(int16 *buf, int len) {
}
samplesLeft -= count;
len -= count;
- YM3812UpdateOne(_opl, buf, count);
+ _opl->readBuffer(buf, count);
if (samplesLeft == 0) {
flush();
samplesLeft = _sampleRate / 50;