aboutsummaryrefslogtreecommitdiff
path: root/engines/scumm
diff options
context:
space:
mode:
authorJohannes Schickel2012-10-01 01:51:04 +0200
committerJohannes Schickel2012-10-01 03:10:44 +0200
commitabe637b0f52cc0da583928ab0e3dac1460afff20 (patch)
tree469a23ba5fee271787fff5e84ffdff780a40b916 /engines/scumm
parent1c024519d538c34431362678c925ea99958ddb6b (diff)
downloadscummvm-rg350-abe637b0f52cc0da583928ab0e3dac1460afff20.tar.gz
scummvm-rg350-abe637b0f52cc0da583928ab0e3dac1460afff20.tar.bz2
scummvm-rg350-abe637b0f52cc0da583928ab0e3dac1460afff20.zip
AUDIO: Add support for Sam&Max's OPL3 output in our SCUMM AdLib driver.
This is an initial implementation and does not implement the differences in voice allocation.
Diffstat (limited to 'engines/scumm')
-rw-r--r--engines/scumm/scumm.cpp2
1 files changed, 2 insertions, 0 deletions
diff --git a/engines/scumm/scumm.cpp b/engines/scumm/scumm.cpp
index 2c79fb8de0..6a4fe238a1 100644
--- a/engines/scumm/scumm.cpp
+++ b/engines/scumm/scumm.cpp
@@ -1858,6 +1858,8 @@ void ScummEngine::setupMusic(int midi) {
if (_sound->_musicType == MDT_ADLIB || _sound->_musicType == MDT_TOWNS || multi_midi) {
adlibMidiDriver = MidiDriver::createMidi(MidiDriver::detectDevice(_sound->_musicType == MDT_TOWNS ? MDT_TOWNS : MDT_ADLIB));
adlibMidiDriver->property(MidiDriver::PROP_OLD_ADLIB, (_game.features & GF_SMALL_HEADER) ? 1 : 0);
+ // Try to use OPL3 mode for Sam&Max when possible.
+ adlibMidiDriver->property(MidiDriver::PROP_SCUMM_OPL3, (_game.id == GID_SAMNMAX) ? 1 : 0);
} else if (_sound->_musicType == MDT_PCSPK) {
adlibMidiDriver = new PcSpkDriver(_mixer);
}