diff options
author | Martin Kiewitz | 2015-06-21 00:45:45 +0200 |
---|---|---|
committer | Martin Kiewitz | 2015-06-21 00:45:45 +0200 |
commit | d24c68c739dadd1404d937f9a21d93e8841a09ee (patch) | |
tree | be811b96fb4e31b732709d0741cde6be120c1688 /engines/agos/agos.cpp | |
parent | 4a88c69b5dedc4acac8bcb9609c1cf44c497c4ff (diff) | |
download | scummvm-rg350-d24c68c739dadd1404d937f9a21d93e8841a09ee.tar.gz scummvm-rg350-d24c68c739dadd1404d937f9a21d93e8841a09ee.tar.bz2 scummvm-rg350-d24c68c739dadd1404d937f9a21d93e8841a09ee.zip |
AGOS: implement Accolade AdLib + MT32 music drivers
- both known variants are supported (INSTR.DAT + MUSIC.DRV)
- INSTR.DAT/MUSIC.DRV holds channel mapping, instrument mapping, etc.
- fixed bug inside S1D MidiParser, that ruined some instrument changes
0xFC header was seen as 2 byte header, but it's 4 bytes in Elvira 2
and 5 bytes in Waxworks / Simon 1 demo
- dynamic channel allocation for the MUSIC.DRV adlib driver is not
implemented atm, simply because at least the demos of Waxworks and
Simon 1 do not use this feature
- sound effects of Waxworks are not implemented atm
- note: the game "Altered Destiny" uses Accolade INSTR.DAT variant too
Diffstat (limited to 'engines/agos/agos.cpp')
-rw-r--r-- | engines/agos/agos.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/engines/agos/agos.cpp b/engines/agos/agos.cpp index 6eda2eb9aa..8952e649fd 100644 --- a/engines/agos/agos.cpp +++ b/engines/agos/agos.cpp @@ -585,7 +585,9 @@ Common::Error AGOSEngine::init() { ((getFeatures() & GF_TALKIE) && getPlatform() == Common::kPlatformAcorn) || (getPlatform() == Common::kPlatformDOS)) { - int ret = _midi->open(getGameType()); + bool isDemo = (getFeatures() & GF_DEMO) ? true : false; + + int ret = _midi->open(getGameType(), isDemo); if (ret) warning("MIDI Player init failed: \"%s\"", MidiDriver::getErrorName(ret)); |