aboutsummaryrefslogtreecommitdiff
path: root/audio/midiplayer.cpp
diff options
context:
space:
mode:
authorMax Horn2011-03-28 18:06:24 +0200
committerMax Horn2011-03-28 18:06:36 +0200
commit8c931fd1e8c0ced874f4cb5fe77197b39b940528 (patch)
tree798b30acf547ec6a277b5063978d99f34a1df2d0 /audio/midiplayer.cpp
parenta33ee051d05ffc5e30e4fc4728714128028e89b1 (diff)
downloadscummvm-rg350-8c931fd1e8c0ced874f4cb5fe77197b39b940528.tar.gz
scummvm-rg350-8c931fd1e8c0ced874f4cb5fe77197b39b940528.tar.bz2
scummvm-rg350-8c931fd1e8c0ced874f4cb5fe77197b39b940528.zip
AUDIO: Add Audio::MidiPlayer::createDriver(), let some engines use it
Diffstat (limited to 'audio/midiplayer.cpp')
-rw-r--r--audio/midiplayer.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/audio/midiplayer.cpp b/audio/midiplayer.cpp
index 613ad2eddd..f4a13a0438 100644
--- a/audio/midiplayer.cpp
+++ b/audio/midiplayer.cpp
@@ -61,6 +61,17 @@ MidiPlayer::~MidiPlayer() {
}
}
+void MidiPlayer::createDriver(int flags) {
+ MidiDriver::DeviceHandle dev = MidiDriver::detectDevice(flags);
+ _nativeMT32 = ((MidiDriver::getMusicType(dev) == MT_MT32) || ConfMan.getBool("native_mt32"));
+
+ _driver = MidiDriver::createMidi(dev);
+ assert(_driver);
+ if (_nativeMT32)
+ _driver->property(MidiDriver::PROP_CHANNEL_MASK, 0x03FE);
+}
+
+
void MidiPlayer::setVolume(int volume) {
volume = CLIP(volume, 0, 255);
if (_masterVolume == volume)