Commit Graph
10 Commits
Author SHA1 Message Date
Coen Rampen 66bb075f1c AGOS: Add E2/WW AdLib and MT-32 SFX and enhancements
This adds support for the AdLib and MT-32 sound effects in Elvira 2 and
Waxworks. It adds an option to the UI to toggle between sampled and
synthesized SFX. It also adds the following enhancements:
- AdLib OPL3 mode for Elvira 2, Waxworks and Simon 1 floppy demo. This can be
selected using a new UI option.
- Mixed AdLib/MIDI mode for Elvira 2 and Waxworks.
- Implemented "monophonic chords", a feature of the original MIDI code which
would play only the highest note of a chord on AdLib. Most noticable in the
Waxworks music.
- Added UI option to select Simon 1 DOS music tempos.
- Rewrite of the AdLib and MT-32 drivers to remove duplication and make use of
features of the standard multisource drivers.
- Refactored MidiPlayer to standardize interface and remove code moved to the
drivers and parsers.
2022-05-09 17:19:44 +02:00
Eugene Sandulenko abea37c9bb ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Orgad Shaneh 8c81b5026a AGOS: Use nullptr
Using clang-tidy modernize-use-nullptr
2021-11-14 15:51:59 +02:00
D G Turner 3a0ed17e66 AGOS: Fix Accolade MIDI Driver Compilation Breakage
These were broken by the last PR merge which included a cpp file in a
way which will not build reliably. This splits the Accolade MIDI driver
structure definitions into headers allowing these to be included
instead.

Also, minor cleanup by removal of unused header includes.
2019-06-03 19:35:48 +01:00
Ori Avtalion 5e49800901 AGOS: Reduce audio header dependencies 2016-04-14 16:48:02 +03:00
Martin Kiewitz a4d3ad396c AGOS: Accolade music driver: fix memory leak
in factory
2015-07-03 00:57:25 +02:00
Martin Kiewitz bfa7d89500 AGOS: Accolade music: read driver data in factory
moved driver reading code into factory of both Accolade music drivers
2015-07-03 00:52:36 +02:00
Martin Kiewitz 5f77bcc74c AGOS: Accolade MT32: General MIDI mapping
- renamed _MT32 to _nativeMT32
this name doesn't really make sense, because MUNT isn't a native
MT32, but the name is common to the other engines
- implement MT32 -> General MIDI mapping in case no MT32 is
available
- implement dialog screen, so that user is told about General MIDI
mapping and that it may sound awful
2015-06-21 10:06:12 +02:00
Martin Kiewitz 3f9c44c743 AGOS: Accolade AdLib/MT32 driver naming cleanup 2015-06-21 03:23:01 +02:00
Martin Kiewitz d24c68c739 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
2015-06-21 00:45:45 +02:00