diff options
author | Jamieson Christian | 2003-09-16 11:44:48 +0000 |
---|---|---|
committer | Jamieson Christian | 2003-09-16 11:44:48 +0000 |
commit | 091b41a2787cf7eeb36732cb02aec68c66ab570c (patch) | |
tree | fa0ae6d9588b41eb2e770b69a12d2741d60f8dee /scumm/imuse_player.cpp | |
parent | 00c1fdce3aa67fae7d314ba48dfbb774879cf221 (diff) | |
download | scummvm-rg350-091b41a2787cf7eeb36732cb02aec68c66ab570c.tar.gz scummvm-rg350-091b41a2787cf7eeb36732cb02aec68c66ab570c.tar.bz2 scummvm-rg350-091b41a2787cf7eeb36732cb02aec68c66ab570c.zip |
Partial fix for Bug [636985] ZAK256: No kazoo tune
Implemented a parser for Euphony music. No
FM instrument support yet, as the FM chip used
by FM Towns is not being emulated yet. In the
meantime, a stock FM-emulated GM instrument is
being used instead.
This at least makes the Zak Towns kazoo tune
and the Loom Towns distaff audible. Emulation
of the FM Towns synth chip, or suitable
emulation using the OPL2 synth, is still
under investigation.
svn-id: r10265
Diffstat (limited to 'scumm/imuse_player.cpp')
-rw-r--r-- | scumm/imuse_player.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/scumm/imuse_player.cpp b/scumm/imuse_player.cpp index 51315e0a6c..986dfb6340 100644 --- a/scumm/imuse_player.cpp +++ b/scumm/imuse_player.cpp @@ -39,6 +39,7 @@ //////////////////////////////////////// extern MidiParser *MidiParser_createRO(); +extern MidiParser *MidiParser_createEUP(); static uint read_word(byte *a) { return (a[0] << 8) + a[1]; @@ -186,6 +187,9 @@ int Player::start_seq_sound(int sound, bool reset_vars) { if (!memcmp (ptr, "RO", 2)) { // Old style 'RO' resource _parser = MidiParser_createRO(); + } else if (!memcmp (ptr, "SO", 2)) { + // Euphony (FM Towns) resource + _parser = MidiParser_createEUP(); } else if (!memcmp(ptr, "FORM", 4)) { // Humongous Games XMIDI resource _parser = MidiParser::createParser_XMIDI(); |