diff options
author | Jordi Vilalta Prat | 2009-02-15 06:10:59 +0000 |
---|---|---|
committer | Jordi Vilalta Prat | 2009-02-15 06:10:59 +0000 |
commit | fa6e10e9cec163845aa29e7940c86e9c9ab8a2bc (patch) | |
tree | ce87338830cc8c149e1de545246bcefe4f45da00 /engines/sci/sfx/mt32_GM_mapping | |
parent | 7c148ddf021c990fa866b7600f979aac9a5b26c9 (diff) | |
download | scummvm-rg350-fa6e10e9cec163845aa29e7940c86e9c9ab8a2bc.tar.gz scummvm-rg350-fa6e10e9cec163845aa29e7940c86e9c9ab8a2bc.tar.bz2 scummvm-rg350-fa6e10e9cec163845aa29e7940c86e9c9ab8a2bc.zip |
Import the SCI engine sources from the FreeSCI Glutton branch (it doesn't compile yet)
svn-id: r38192
Diffstat (limited to 'engines/sci/sfx/mt32_GM_mapping')
-rw-r--r-- | engines/sci/sfx/mt32_GM_mapping/Makefile | 15 | ||||
-rw-r--r-- | engines/sci/sfx/mt32_GM_mapping/README | 2 | ||||
-rw-r--r-- | engines/sci/sfx/mt32_GM_mapping/gm_patches.c | 198 | ||||
-rw-r--r-- | engines/sci/sfx/mt32_GM_mapping/lb2map.txt | 118 | ||||
-rw-r--r-- | engines/sci/sfx/mt32_GM_mapping/main.c | 157 | ||||
-rw-r--r-- | engines/sci/sfx/mt32_GM_mapping/mt32_timbres.c | 181 | ||||
-rw-r--r-- | engines/sci/sfx/mt32_GM_mapping/pq1map.txt | 135 | ||||
-rw-r--r-- | engines/sci/sfx/mt32_GM_mapping/qfg1map.txt | 123 |
8 files changed, 929 insertions, 0 deletions
diff --git a/engines/sci/sfx/mt32_GM_mapping/Makefile b/engines/sci/sfx/mt32_GM_mapping/Makefile new file mode 100644 index 0000000000..2d40cb25b0 --- /dev/null +++ b/engines/sci/sfx/mt32_GM_mapping/Makefile @@ -0,0 +1,15 @@ +CC =gcc +CFLAGS =-O2 -Wall +objects =main.o + +mtgm: $(objects) + $(CC) -o mtgm $(objects) + +main.o: main.c + $(CC) $(CFLAGS) -c main.c + +.PHONY: clean distclean +clean: + rm -f mtgm $(objects) +distclean: + rm -f mtgm $(objects) *~ diff --git a/engines/sci/sfx/mt32_GM_mapping/README b/engines/sci/sfx/mt32_GM_mapping/README new file mode 100644 index 0000000000..8fa94ec4fd --- /dev/null +++ b/engines/sci/sfx/mt32_GM_mapping/README @@ -0,0 +1,2 @@ +The sourcecode in this directory is not intended to be included in FreeSCI. + diff --git a/engines/sci/sfx/mt32_GM_mapping/gm_patches.c b/engines/sci/sfx/mt32_GM_mapping/gm_patches.c new file mode 100644 index 0000000000..b959a87461 --- /dev/null +++ b/engines/sci/sfx/mt32_GM_mapping/gm_patches.c @@ -0,0 +1,198 @@ +/*************************************************************************** + gm_patches.c Copyright (C) 2000 Rickard Lind + + + This program may be modified and copied freely according to the terms of + the GNU general public license (GPL), as long as the above copyright + notice and the licensing information contained herein are preserved. + + Please refer to www.gnu.org for licensing details. + + This work is provided AS IS, without warranty of any kind, expressed or + implied, including but not limited to the warranties of merchantibility, + noninfringement, and fitness for a specific purpose. The author will not + be held liable for any damage caused by this work or derivatives of it. + + By using this source code, you agree to the licensing terms as stated + above. + +***************************************************************************/ + +char *GM_Patch[128] = { +/*000*/ "Acoustic Grand Piano", +/*001*/ "Bright Acoustic Piano", +/*002*/ "Electric Grand Piano", +/*003*/ "Honky-tonk Piano", +/*004*/ "Electric Piano 1", +/*005*/ "Electric Piano 2", +/*006*/ "Harpsichord", +/*007*/ "Clavinet", +/*008*/ "Celesta", +/*009*/ "Glockenspiel", +/*010*/ "Music Box", +/*011*/ "Vibraphone", +/*012*/ "Marimba", +/*013*/ "Xylophone", +/*014*/ "Tubular Bells", +/*015*/ "Dulcimer", +/*016*/ "Drawbar Organ", +/*017*/ "Percussive Organ", +/*018*/ "Rock Organ", +/*019*/ "Church Organ", +/*020*/ "Reed Organ", +/*021*/ "Accordion", +/*022*/ "Harmonica", +/*023*/ "Tango Accordion", +/*024*/ "Acoustic Guitar (nylon)", +/*025*/ "Acoustic Guitar (steel)", +/*026*/ "Electric Guitar (jazz)", +/*027*/ "Electric Guitar (clean)", +/*028*/ "Electric Guitar (muted)", +/*029*/ "Overdriven Guitar", +/*030*/ "Distortion Guitar", +/*031*/ "Guitar Harmonics", +/*032*/ "Acoustic Bass", +/*033*/ "Electric Bass (finger)", +/*034*/ "Electric Bass (pick)", +/*035*/ "Fretless Bass", +/*036*/ "Slap Bass 1", +/*037*/ "Slap Bass 2", +/*038*/ "Synth Bass 1", +/*039*/ "Synth Bass 2", +/*040*/ "Violin", +/*041*/ "Viola", +/*042*/ "Cello", +/*043*/ "Contrabass", +/*044*/ "Tremolo Strings", +/*045*/ "Pizzicato Strings", +/*046*/ "Orchestral Harp", +/*047*/ "Timpani", +/*048*/ "String Ensemble 1", +/*049*/ "String Ensemble 2", +/*050*/ "SynthStrings 1", +/*051*/ "SynthStrings 2", +/*052*/ "Choir Aahs", +/*053*/ "Voice Oohs", +/*054*/ "Synth Voice", +/*055*/ "Orchestra Hit", +/*056*/ "Trumpet", +/*057*/ "Trombone", +/*058*/ "Tuba", +/*059*/ "Muted Trumpet", +/*060*/ "French Horn", +/*061*/ "Brass Section", +/*062*/ "SynthBrass 1", +/*063*/ "SynthBrass 2", +/*064*/ "Soprano Sax", +/*065*/ "Alto Sax", +/*066*/ "Tenor Sax", +/*067*/ "Baritone Sax", +/*068*/ "Oboe", +/*069*/ "English Horn", +/*070*/ "Bassoon", +/*071*/ "Clarinet", +/*072*/ "Piccolo", +/*073*/ "Flute", +/*074*/ "Recorder", +/*075*/ "Pan Flute", +/*076*/ "Blown Bottle", +/*077*/ "Shakuhachi", +/*078*/ "Whistle", +/*079*/ "Ocarina", +/*080*/ "Lead 1 (square)", +/*081*/ "Lead 2 (sawtooth)", +/*082*/ "Lead 3 (calliope)", +/*083*/ "Lead 4 (chiff)", +/*084*/ "Lead 5 (charang)", +/*085*/ "Lead 6 (voice)", +/*086*/ "Lead 7 (fifths)", +/*087*/ "Lead 8 (bass+lead)", +/*088*/ "Pad 1 (new age)", +/*089*/ "Pad 2 (warm)", +/*090*/ "Pad 3 (polysynth)", +/*091*/ "Pad 4 (choir)", +/*092*/ "Pad 5 (bowed)", +/*093*/ "Pad 6 (metallic)", +/*094*/ "Pad 7 (halo)", +/*095*/ "Pad 8 (sweep)", +/*096*/ "FX 1 (rain)", +/*097*/ "FX 2 (soundtrack)", +/*098*/ "FX 3 (crystal)", +/*099*/ "FX 4 (atmosphere)", +/*100*/ "FX 5 (brightness)", +/*101*/ "FX 6 (goblins)", +/*102*/ "FX 7 (echoes)", +/*103*/ "FX 8 (sci-fi)", +/*104*/ "Sitar", +/*105*/ "Banjo", +/*106*/ "Shamisen", +/*107*/ "Koto", +/*108*/ "Kalimba", +/*109*/ "Bag pipe", +/*110*/ "Fiddle", +/*111*/ "Shannai", +/*112*/ "Tinkle Bell", +/*113*/ "Agogo", +/*114*/ "Steel Drums", +/*115*/ "Woodblock", +/*116*/ "Taiko Drum", +/*117*/ "Melodic Tom", +/*118*/ "Synth Drum", +/*119*/ "Reverse Cymbal", +/*120*/ "Guitar Fret Noise", +/*121*/ "Breath Noise", +/*122*/ "Seashore", +/*123*/ "Bird Tweet", +/*124*/ "Telephone Ring", +/*125*/ "Helicopter", +/*126*/ "Applause", +/*127*/ "Gunshot" }; + +char *GM_RhythmKey[47] = { +/*035*/ "Acoustic Bass Drum", +/*036*/ "Bass Drum 1", +/*037*/ "Side Stick", +/*038*/ "Acoustic Snare", +/*039*/ "Hand Clap", +/*040*/ "Electric Snare", +/*041*/ "Low Floor Tom", +/*042*/ "Closed Hi-Hat", +/*043*/ "High Floor Tom", +/*044*/ "Pedal Hi-Hat", +/*045*/ "Low Tom", +/*046*/ "Open Hi-Hat", +/*047*/ "Low-Mid Tom", +/*048*/ "Hi-Mid Tom", +/*049*/ "Crash Cymbal 1", +/*050*/ "High Tom", +/*051*/ "Ride Cymbal 1", +/*052*/ "Chinese Cymbal", +/*053*/ "Ride Bell", +/*054*/ "Tambourine", +/*055*/ "Splash Cymbal", +/*056*/ "Cowbell", +/*057*/ "Crash Cymbal 2", +/*058*/ "Vibraslap", +/*059*/ "Ride Cymbal 2", +/*060*/ "Hi Bongo", +/*061*/ "Low Bongo", +/*062*/ "Mute Hi Conga", +/*063*/ "Open Hi Conga", +/*064*/ "Low Conga", +/*065*/ "High Timbale", +/*066*/ "Low Timbale", +/*067*/ "High Agogo", +/*068*/ "Low Agogo", +/*069*/ "Cabasa", +/*070*/ "Maracas", +/*071*/ "Short Whistle", +/*072*/ "Long Whistle", +/*073*/ "Short Guiro", +/*074*/ "Long Guiro", +/*075*/ "Claves", +/*076*/ "Hi Wood Block", +/*077*/ "Low Wood Block", +/*078*/ "Mute Cuica", +/*079*/ "Open Cuica", +/*080*/ "Mute Triangle" +/*081*/ "Open Triangle" }; diff --git a/engines/sci/sfx/mt32_GM_mapping/lb2map.txt b/engines/sci/sfx/mt32_GM_mapping/lb2map.txt new file mode 100644 index 0000000000..89c60aa552 --- /dev/null +++ b/engines/sci/sfx/mt32_GM_mapping/lb2map.txt @@ -0,0 +1,118 @@ + ---------------------------------------------------------------------- + | Dagger of Amon Ra | Boop boop be doop | Wahoo! | +-------------------------------------------------------------------------- +| ## | MT-32 Timbre | KSh FTn BR | General MIDI Patch | KSh VolA V | +-------------------------------------------------------------------------- +| 04 | AcouPiano3 | 00 00 12 | Acoustic Grand Piano | 000 000 3 | +| 05 | Honkytonk | 00 00 12 | Honky-tonk Piano | 000 000 3 | +| 06 | m ClarinetMS | 00 00 12 | Clarinet | 000 -020 3 | +| 07 | Acou Bass1 | 00 00 12 | Acoustic Bass | 000 -015 3 | +| 08 | Trombone 2 | 00 00 12 | Tuba | 000 005 3 | +| 09 | m StrSect1MS | 00 00 12 | String Ensemble 1 | 000 020 3 | +| 10 | m Fantasy2MS | 00 00 12 | Pad 1 (new age) | 000 010 3 | +| 11 | Flute 2 | 00 00 12 | Flute | 000 -020 3 | +| 12 | Timpani | 00 00 12 | Timpani | 000 -015 1 | +| 13 | Trumpet 1 | 00 00 12 | Trumpet | 000 030 3 | +| 14 | m FrHorn1MS2 | 00 00 12 | French Horn | 000 000 3 | +| 15 | m Oboe MS | 00 00 12 | Oboe | 000 -020 3 | +| 16 | m Pizz MS | 00 00 12 | Pizzicato Strings | 000 000 3 | +| 17 | m CymSwellMS | 00 00 12 | Reverse Cymbal | 000 000 3 | +| 18 | Xylophone | 00 00 12 | Xylophone | 000 000 3 | +| 19 | Bassoon | 00 00 12 | Bassoon | 000 020 3 | +| 20 | Accordion | 00 00 12 | Accordion | 000 000 3 | +| 21 | m BanjoLB2 | 00 00 12 | Banjo | 000 -020 3 | +| 22 | Marimba | 00 00 12 | Marimba | 000 000 3 | +| 23 | m WarmPadStr | 00 00 12 | String Ensemble 2 | 000 015 3 | +| 24 | m BassPizzMS | 00 00 12 | Pizzicato Strings | -012 000 3 | +| 25 | m WoodBlox | 00 00 12 | Woodblock | 000 000 3 | +| 26 | Vibe 1 | 00 00 00 | Vibraphone | 000 -010 3 | +| 27 | Sax 4 | 00 00 12 | Tenor Sax | 000 000 3 | +| 28 | m Glock MS | 00 00 12 | Glockenspiel | 000 000 3 | +| 29 | Koto | 00 00 12 | Koto | 000 000 3 | +| 30 | m Taiko | 00 00 12 | Taiko Drum | 012 -010 1 | +| 31 | Guitar 1 | 00 00 12 | Acoustic Guitar (nylon) | 000 -035 3 | +| 32 | m Bell Tree | 00 00 12 | Glockenspiel | 000 000 3 | +| 33 | Sitar | 00 00 12 | Sitar | 000 -010 3 | +| 34 | Harp 1 | 00 00 12 | Orchestral Harp | 000 -025 3 | +| 45 | m Fantasy2MS | 00 00 12 | Tubular Bells | 012 010 3 | +| 46 | m Window | 00 00 12 | Reverse Cymbal | -048 000 3 | +| 47 | m Snare | 00 00 00 | Woodblock | 000 000 0 | +| 48 | m CracklesMS | 00 00 12 | Woodblock | 000 000 0 | +| 49 | m TireSqueal | 00 00 12 | | | +| 50 | m Gurgle | 00 00 12 | | | +| 51 | m Toilet | 00 00 12 | | | +| 52 | m hiss | 00 00 12 | | | +| 53 | m IceBreakMS | 00 00 12 | | | +| 54 | m DoorSlamMS | 00 00 12 | Woodblock | -012 000 0 | +| 55 | m CreakyDLL1 | 00 00 12 | | | +| 56 | m Armor MS | 00 00 12 | Agogo | 012 -020 0 | +| 57 | m RatSqueek | 00 00 12 | Guitar Fret Noise | 012 000 3 | +| 58 | m StoneDr MS | 00 00 12 | Reverse Cymbal | -048 000 3 | +| 59 | m NewSplatMS | 00 00 12 | Melodic Tom | 000 000 2 | +| 60 | m Splash MS | 00 00 12 | | | +| 61 | m Bubbles | 00 00 12 | | | +| 62 | m ChurchB MS | 00 00 12 | Tubular Bells | 000 000 3 | +| 63 | m Thud MS | 00 00 12 | Taiko Drum | -012 000 2 | +| 64 | m TYPIMG | 00 00 12 | | | +| 65 | m Lock MS | 00 00 12 | Woodblock | 000 000 0 | +| 66 | m Window | 00 00 12 | Reverse Cymbal | 000 000 3 | +| 67 | m CabEngine | 00 00 12 | Tenor Sax | -060 050 3 | +| 68 | m Ocean MS | 00 00 12 | | | +| 69 | m Wind MS | 00 00 12 | | | +| 70 | Telephone | 00 00 12 | Telephone Ring | 000 000 3 | +| 71 | Bird Tweet | 00 00 12 | Bird Tweet | 000 000 3 | +| 72 | m Explode MS | 00 00 12 | Gunshot | -012 -015 3 | +| 73 | m SwmpBackgr | 00 00 12 | | | +| 74 | m Toing | 00 00 12 | | | +| 75 | m Lone Wolf | 00 00 12 | | | +| 76 | Whistle 2 | 00 00 12 | Whistle | 000 000 3 | +| 77 | m seagulls | 00 00 12 | Bird Tweet | 000 000 3 | +| 78 | m Scrubin'MS | 00 00 12 | Reverse Cymbal | 000 000 3 | +| 79 | m SqurWaveMS | 00 00 12 | Lead 1 (square) | 000 000 3 | +| 80 | m InHale MS | 00 00 12 | Breath Noise | 000 025 3 | +| 81 | m Arena2 MS | 00 00 12 | Applause | 000 000 3 | +| 82 | m ArenaNoSus | 00 00 12 | Applause | 000 000 3 | +| 92 | AcouPiano1 | 00 00 02 | | | +| 93 | AcouPiano1 | 00 00 02 | | | +| 94 | AcouPiano1 | 00 00 02 | | | +| 95 | AcouPiano1 | 00 00 02 | | | +-------------------------------------------------------------------------- + | ## | MT-32 Timbre | OL PP | General MIDI Rhythm Key | + -------------------------------------------------------- + | 35 | r Acou BD | 100 07 | Acoustic Bass Drum | + | 36 | r Acou BD | 100 07 | Acoustic Bass Drum | + | 37 | r Rim Shot | 100 06 | Side Stick | + | 38 | r Acou SD | 100 07 | Electric Snare | + | 39 | r Hand Clap | 100 08 | Hand Clap | + | 40 | r Acou SD | 100 06 | Electric Snare | + | 41 | r AcouLowTom | 100 11 | Low Floor Tom | + | 42 | r Clsd HiHat | 100 06 | Closed Hi-Hat | + | 43 | r AcouLowTom | 100 11 | High Floor Tom | + | 44 | r OpenHiHat2 | 100 06 | Pedal Hi-Hat | + | 45 | r AcouMidTom | 100 08 | Low Tom | + | 46 | r OpenHiHat1 | 100 06 | Open Hi-Hat | + | 47 | r AcouMidTom | 100 08 | Low-Mid Tom | + | 48 | r Acou HiTom | 100 03 | Hi-Mid Tom | + | 49 | r Crash Cym | 100 06 | Crash Cymbal 1 | + | 50 | r Acou HiTom | 100 03 | High Tom | + | 51 | r Ride Cym | 100 08 | Ride Cymbal 1 | + | 52 | m CymSwellMS | 100 07 | | + | 54 | r Tambourine | 100 09 | Tambourine | + | 55 | m ChokeCrash | 100 07 | Crash Cymbal 2 | + | 56 | r Cowbell | 100 07 | Cowbell | + | 60 | r High Bongo | 100 02 | Hi Bongo | + | 61 | r Low Bongo | 100 04 | Low Bongo | + | 62 | r Mt HiConga | 100 08 | Mute Hi Conga | + | 63 | r High Conga | 100 09 | Open Hi Conga | + | 64 | r Low Conga | 100 10 | Low Conga | + | 65 | r Hi Timbale | 100 07 | High Timbale | + | 66 | r LowTimbale | 100 05 | Low Timbale | + | 67 | r High Agogo | 100 02 | High Agogo | + | 68 | r Low Agogo | 100 02 | Low Agogo | + | 69 | r Cabasa | 100 09 | Cabasa | + | 70 | r Maracas | 100 04 | Maracas | + | 71 | r SmbaWhis S | 100 09 | Short Whistle | + | 72 | r SmbaWhis L | 100 09 | Long Whistle | + | 73 | r Quijada | 100 00 | | + | 75 | r Claves | 100 12 | Claves | + -------------------------------------------------------- diff --git a/engines/sci/sfx/mt32_GM_mapping/main.c b/engines/sci/sfx/mt32_GM_mapping/main.c new file mode 100644 index 0000000000..1db2b584b4 --- /dev/null +++ b/engines/sci/sfx/mt32_GM_mapping/main.c @@ -0,0 +1,157 @@ +/*************************************************************************** + main.c Copyright (C) 2000 Rickard Lind + + + This program may be modified and copied freely according to the terms of + the GNU general public license (GPL), as long as the above copyright + notice and the licensing information contained herein are preserved. + + Please refer to www.gnu.org for licensing details. + + This work is provided AS IS, without warranty of any kind, expressed or + implied, including but not limited to the warranties of merchantibility, + noninfringement, and fitness for a specific purpose. The author will not + be held liable for any damage caused by this work or derivatives of it. + + By using this source code, you agree to the licensing terms as stated + above. + +***************************************************************************/ + +#include <stdio.h> +#include <sys/types.h> +#include <sys/stat.h> +#include <fcntl.h> +#include <unistd.h> +#include <stdlib.h> + +#include "mt32_timbres.c" +#include "gm_patches.c" + +void analyze(unsigned char *patch001, unsigned int length001, + unsigned char *patch004, unsigned int length004); + +int main(int argc, char **argv) +{ + int fd1, fd2; + unsigned char *patch001; + unsigned char *patch004; + unsigned int length001, length004; + + if (argc < 2) + return -1; + + if ((fd1 = open(argv[1], O_RDONLY)) < 0) + return -1; + if ((fd2 = open(argv[2], O_RDONLY)) < 0) { + close(fd1); + return -1; + } + + patch001 = (unsigned char *)sci_malloc(65536); + length001 = read(fd1, patch001, 65536); + close(fd1); + + patch004 = (unsigned char *)sci_malloc(65536); + length004 = read(fd2, patch004, 65536); + close(fd2); + + if (patch001[0] == 0x89 && patch001[1] == 0x00) + if (patch004[0] == 0x89 && patch004[1] == 0x00) + analyze(patch001 + 2, length001 - 2, patch004 + 2, length004 - 2); + else + analyze(patch001 + 2, length001 - 2, patch004, length004); + else + if (patch004[0] == 0x89 && patch004[1] == 0x00) + analyze(patch001, length001, patch004 + 2, length004 - 2); + else + analyze(patch001, length001, patch004, length004); + + free(patch001); + free(patch004); + + return 0; +} + +void analyze(unsigned char *patch001, unsigned int length001, + unsigned char *patch004, unsigned int length004) +{ + int i; + unsigned char *mt32patch; + unsigned char *mt32rhythm; + + printf(" ----------------------------------------------------------------------\n"); + printf(" | %.20s | %.20s | %.20s |\n", patch001, patch001 + 20, patch001 + 40); + printf("--------------------------------------------------------------------------\n"); + printf("| ## | MT-32 Timbre | KSh FTn BR | General MIDI Patch | KSh VolA V |\n"); + printf("--------------------------------------------------------------------------\n"); + for (i = 0; i < 96; i++) { + if (i < 48) + mt32patch = patch001 + 107 + i * 8; + else + mt32patch = patch001 + 110 + i * 8 + patch001[491] * 246; + + if (!((mt32patch[0] == 0) && + (mt32patch[1] == 0) && + (mt32patch[2] == 0) && + (mt32patch[3] == 0) && + (mt32patch[4] == 0) && + (mt32patch[5] == 0) && + (mt32patch[6] == 0) && + (mt32patch[7] == 0))) { + printf("| %02i |", i); + if (mt32patch[0] < 2) + if (mt32patch[0] == 0) + printf(" %.10s", MT32_Timbre[mt32patch[1]]); + else + printf(" %.10s", MT32_Timbre[mt32patch[1] + 64]); + else if (mt32patch[0] == 2) + printf(" m %.10s", patch001 + 492 + mt32patch[1] * 246); + else if (mt32patch[0] == 3) + printf(" r %.10s", MT32_RhythmTimbre[mt32patch[1]]); + printf(" | % 03i % 03i %02i | ", + mt32patch[2] - 24, + mt32patch[3] - 50, + mt32patch[4]); + if (patch004[i] != 0xFF) { + printf("%-23s ", GM_Patch[patch004[i]]); + printf("| % 04i % 04i %i |", + *((signed char *)(patch004) + i + 128), + *((signed char *)(patch004) + i + 256), + patch004[i + 513]); + } else + printf(" | |"); + printf("\n"); + } + } + printf("--------------------------------------------------------------------------\n"); + printf(" | ## | MT-32 Timbre | OL PP | General MIDI Rhythm Key |\n"); + printf(" --------------------------------------------------------\n"); + for (i = 0; i < 64; i++) + { + mt32rhythm = patch001 + 880 + i * 4 + patch001[491] * 246; + if ((mt32rhythm[0] < 94) && + !((mt32rhythm[0] == 0) && + (mt32rhythm[1] == 0) && + (mt32rhythm[2] == 0) && + (mt32rhythm[3] == 0)) && + !((mt32rhythm[0] == 1) && + (mt32rhythm[1] == 1) && + (mt32rhythm[2] == 1) && + (mt32rhythm[3] == 1))) { + printf(" | %02i |", i + 24); + if (mt32rhythm[0] < 64) + printf(" m %.10s", patch001 + 492 + mt32rhythm[0] * 246); + else + printf(" r %.10s", MT32_RhythmTimbre[mt32rhythm[0] - 64]); + printf(" | %03i %02i | ", mt32rhythm[1], mt32rhythm[2]); + if (patch004[384 + i + 24] != 0xFF) + printf("%-23s |", GM_RhythmKey[patch004[384 + i + 24] - 35]); + else + printf(" |"); + printf("\n"); + } + } + printf(" --------------------------------------------------------\n"); + return; +} diff --git a/engines/sci/sfx/mt32_GM_mapping/mt32_timbres.c b/engines/sci/sfx/mt32_GM_mapping/mt32_timbres.c new file mode 100644 index 0000000000..beb5fa97e3 --- /dev/null +++ b/engines/sci/sfx/mt32_GM_mapping/mt32_timbres.c @@ -0,0 +1,181 @@ +/*************************************************************************** + mt32_timbres.c Copyright (C) 2000 Rickard Lind + + + This program may be modified and copied freely according to the terms of + the GNU general public license (GPL), as long as the above copyright + notice and the licensing information contained herein are preserved. + + Please refer to www.gnu.org for licensing details. + + This work is provided AS IS, without warranty of any kind, expressed or + implied, including but not limited to the warranties of merchantibility, + noninfringement, and fitness for a specific purpose. The author will not + be held liable for any damage caused by this work or derivatives of it. + + By using this source code, you agree to the licensing terms as stated + above. + +***************************************************************************/ + +char *MT32_Timbre[128] = { +/*000*/ "AcouPiano1", +/*001*/ "AcouPiano2", +/*002*/ "AcouPiano3", +/*003*/ "ElecPiano1", +/*004*/ "ElecPiano2", +/*005*/ "ElecPiano3", +/*006*/ "ElecPiano4", +/*007*/ "Honkytonk ", +/*008*/ "Elec Org 1", +/*009*/ "Elec Org 2", +/*010*/ "Elec Org 3", +/*011*/ "Elec Org 4", +/*012*/ "Pipe Org 1", +/*013*/ "Pipe Org 2", +/*014*/ "Pipe Org 3", +/*015*/ "Accordion ", +/*016*/ "Harpsi 1 ", +/*017*/ "Harpsi 2 ", +/*018*/ "Harpsi 3 ", +/*019*/ "Clavi 1 ", +/*020*/ "Clavi 2 ", +/*021*/ "Clavi 3 ", +/*022*/ "Celesta 1 ", +/*023*/ "Celesta 2 ", +/*024*/ "Syn Brass1", +/*025*/ "Syn Brass2", +/*026*/ "Syn Brass3", +/*027*/ "Syn Brass4", +/*028*/ "Syn Bass 1", +/*029*/ "Syn Bass 2", +/*030*/ "Syn Bass 3", +/*031*/ "Syn Bass 4", +/*032*/ "Fantasy ", +/*033*/ "Harmo Pan ", +/*034*/ "Chorale ", +/*035*/ "Glasses ", +/*036*/ "Soundtrack", +/*037*/ "Atmosphere", +/*038*/ "Warm Bell ", +/*039*/ "Funny Vox ", +/*040*/ "Echo Bell ", +/*041*/ "Ice Rain ", +/*042*/ "Oboe 2001 ", +/*043*/ "Echo Pan ", +/*044*/ "DoctorSolo", +/*045*/ "Schooldaze", +/*046*/ "BellSinger", +/*047*/ "SquareWave", +/*048*/ "Str Sect 1", +/*049*/ "Str Sect 2", +/*050*/ "Str Sect 3", +/*051*/ "Pizzicato ", +/*052*/ "Violin 1 ", +/*053*/ "Violin 2 ", +/*054*/ "Cello 1 ", +/*055*/ "Cello 2 ", +/*056*/ "Contrabass", +/*057*/ "Harp 1 ", +/*058*/ "Harp 2 ", +/*059*/ "Guitar 1 ", +/*060*/ "Guitar 2 ", +/*061*/ "Elec Gtr 1", +/*062*/ "Elec Gtr 2", +/*063*/ "Sitar ", +/*064*/ "Acou Bass1", +/*065*/ "Acou Bass2", +/*066*/ "Elec Bass1", +/*067*/ "Elec Bass2", +/*068*/ "Slap Bass1", +/*069*/ "Slap Bass2", +/*070*/ "Fretless 1", +/*071*/ "Fretless 2", +/*072*/ "Flute 1 ", +/*073*/ "Flute 2 ", +/*074*/ "Piccolo 1 ", +/*075*/ "Piccolo 2 ", +/*076*/ "Recorder ", +/*077*/ "Panpipes ", +/*078*/ "Sax 1 ", +/*079*/ "Sax 2 ", +/*080*/ "Sax 3 ", +/*081*/ "Sax 4 ", +/*082*/ "Clarinet 1", +/*083*/ "Clarinet 2", +/*084*/ "Oboe ", +/*085*/ "Engl Horn ", +/*086*/ "Bassoon ", +/*087*/ "Harmonica ", +/*088*/ "Trumpet 1 ", +/*089*/ "Trumpet 2 ", +/*090*/ "Trombone 1", +/*091*/ "Trombone 2", +/*092*/ "Fr Horn 1 ", +/*093*/ "Fr Horn 2 ", +/*094*/ "Tuba ", +/*095*/ "Brs Sect 1", +/*096*/ "Brs Sect 2", +/*097*/ "Vibe 1 ", +/*098*/ "Vibe 2 ", +/*099*/ "Syn Mallet", +/*100*/ "Wind Bell ", +/*101*/ "Glock ", +/*102*/ "Tube Bell ", +/*103*/ "Xylophone ", +/*104*/ "Marimba ", +/*105*/ "Koto ", +/*106*/ "Sho ", +/*107*/ "Shakuhachi", +/*108*/ "Whistle 1 ", +/*109*/ "Whistle 2 ", +/*110*/ "BottleBlow", +/*111*/ "BreathPipe", +/*112*/ "Timpani ", +/*113*/ "MelodicTom", +/*114*/ "Deep Snare", +/*115*/ "Elec Perc1", +/*116*/ "Elec Perc2", +/*117*/ "Taiko ", +/*118*/ "Taiko Rim ", +/*119*/ "Cymbal ", +/*120*/ "Castanets ", +/*121*/ "Triangle ", +/*122*/ "Orche Hit ", +/*123*/ "Telephone ", +/*124*/ "Bird Tweet", +/*125*/ "OneNoteJam", +/*126*/ "WaterBells", +/*127*/ "JungleTune" }; + +char *MT32_RhythmTimbre[30] = { +/*00*/ "Acou BD ", +/*01*/ "Acou SD ", +/*02*/ "Acou HiTom", +/*03*/ "AcouMidTom", +/*04*/ "AcouLowTom", +/*05*/ "Elec SD ", +/*06*/ "Clsd HiHat", +/*07*/ "OpenHiHat1", +/*08*/ "Crash Cym ", +/*09*/ "Ride Cym ", +/*10*/ "Rim Shot ", +/*11*/ "Hand Clap ", +/*12*/ "Cowbell ", +/*13*/ "Mt HiConga", +/*14*/ "High Conga", +/*15*/ "Low Conga ", +/*16*/ "Hi Timbale", +/*17*/ "LowTimbale", +/*18*/ "High Bongo", +/*19*/ "Low Bongo ", +/*20*/ "High Agogo", +/*21*/ "Low Agogo ", +/*22*/ "Tambourine", +/*23*/ "Claves ", +/*24*/ "Maracas ", +/*25*/ "SmbaWhis L", +/*26*/ "SmbaWhis S", +/*27*/ "Cabasa ", +/*28*/ "Quijada ", +/*29*/ "OpenHiHat2" }; diff --git a/engines/sci/sfx/mt32_GM_mapping/pq1map.txt b/engines/sci/sfx/mt32_GM_mapping/pq1map.txt new file mode 100644 index 0000000000..b2040b54f7 --- /dev/null +++ b/engines/sci/sfx/mt32_GM_mapping/pq1map.txt @@ -0,0 +1,135 @@ + ---------------------------------------------------------------------- + | ..THE DEATH ANGEL.. | POLICE QUEST I | <THANKS FOR PLAYING> | +-------------------------------------------------------------------------- +| ## | MT-32 Timbre | KSh FTn BR | General MIDI Patch | KSh VolA V | +-------------------------------------------------------------------------- +| 00 | m FEEDBAK AX | 00 00 12 | Distortion Guitar | -012 065 3 | +| 01 | m REV CYMBAL | 00 00 12 | Reverse Cymbal | 000 000 0 | +| 02 | m ANALOG SYN | 00 00 12 | Pad 3 (polysynth) | 000 127 3 | +| 03 | m STACKBASS | 00 00 12 | Slap Bass 2 | -012 100 3 | +| 04 | m ORGAN B | 00 00 12 | Drawbar Organ | 000 055 3 | +| 05 | Syn Mallet | 00 00 12 | Dulcimer | 000 000 0 | +| 06 | m HARD RIDE | 00 00 12 | | | +| 07 | Orche Hit | 00 00 12 | Orchestra Hit | 000 000 0 | +| 08 | m HEFTY BASS | 00 00 12 | Electric Bass (finger) | -024 100 3 | +| 09 | AcouPiano1 | 00 00 12 | Acoustic Grand Piano | 000 000 0 | +| 10 | m SpaceVibes | 00 00 12 | Vibraphone | 000 000 0 | +| 11 | m CIGARETTE | -24 00 12 | | | +| 12 | AcouPiano1 | 00 00 12 | Acoustic Grand Piano | 000 000 0 | +| 13 | Castanets | 00 00 12 | | | +| 14 | AcouPiano1 | 00 00 12 | Acoustic Grand Piano | 000 000 0 | +| 15 | m LUSH STRNG | 00 00 12 | String Ensemble 1 | 000 117 3 | +| 16 | Fantasy | 00 00 12 | Pad 1 (new age) | 000 000 0 | +| 17 | AcouPiano1 | 00 00 12 | Acoustic Grand Piano | 000 000 0 | +| 18 | m BIG BANJO | 00 00 12 | FX 3 (crystal) | 000 -010 3 | +| 19 | Soundtrack | 00 00 12 | FX 2 (soundtrack) | 000 000 0 | +| 20 | Timpani | 00 00 12 | Timpani | 000 000 0 | +| 21 | Fr Horn 1 | 00 00 12 | French Horn | 000 000 0 | +| 22 | Trumpet 2 | 00 00 12 | Trumpet | 000 000 3 | +| 23 | m SMOKING | 00 00 12 | | | +| 24 | m F VoxStrg | 00 00 12 | String Ensemble 1 | 000 000 0 | +| 25 | m SqurWaveMS | 00 00 12 | | | +| 26 | m TYPIMG | 00 00 12 | | | +| 27 | m SnglVox MS | 00 00 12 | | | +| 28 | Str Sect 2 | 00 00 12 | String Ensemble 1 | 000 000 0 | +| 29 | Guitar 2 | 00 00 12 | Electric Guitar (clean) | 000 000 0 | +| 30 | Elec Gtr 2 | 00 00 12 | Electric Guitar (clean) | 000 000 0 | +| 31 | Harmonica | 00 00 12 | Harmonica | 000 000 0 | +| 35 | Sax 3 | 00 00 12 | Alto Sax | 000 000 0 | +| 36 | Slap Bass1 | 00 00 12 | Slap Bass 1 | 000 000 0 | +| 37 | Fretless 1 | 00 00 12 | Fretless Bass | 000 000 0 | +| 38 | Acou Bass1 | 00 00 12 | Acoustic Bass | 000 000 0 | +| 41 | r Crash Cym | 00 00 12 | | | +| 42 | r Acou BD | 00 00 12 | | | +| 43 | m RAP SNARE | 00 00 12 | | | +| 44 | m BIG SNARE | 00 00 00 | | | +| 45 | m CLOSED HAT | 00 00 12 | | | +| 46 | m SLOSH HAT | 00 00 12 | | | +| 47 | m Gun MS | 00 00 12 | Gunshot | 000 000 0 | +| 48 | m IceBreakMS | 00 00 12 | | | +| 49 | m SHOWER | 00 00 12 | | | +| 50 | m Pft MS | 00 00 12 | | | +| 51 | m Chicago MS | 00 00 12 | Bright Acoustic Piano | 000 030 0 | +| 52 | m ROCK GUIT1 | 00 00 12 | Distortion Guitar | -012 127 3 | +| 53 | m Dog MS | 00 00 12 | | | +| 54 | m TriangleMS | 00 00 12 | | | +| 55 | m CLICKS | 00 00 12 | Woodblock | 000 000 0 | +| 56 | Bird Tweet | 00 00 12 | Bird Tweet | 000 000 0 | +| 57 | AcouPiano1 | 00 00 12 | Acoustic Grand Piano | 000 000 0 | +| 58 | m CARHORN3+4 | 00 00 12 | | | +| 59 | m CUFFS | 00 00 12 | | | +| 60 | m ELEC PHONE | 00 00 12 | | | +| 61 | m KongHit | 00 00 12 | | | +| 62 | m SCUFFLE | 00 00 12 | | | +| 63 | m FUNK PING | 00 00 12 | Orchestral Harp | 027 -010 0 | +| 64 | m BIG TOMS | 00 00 12 | Taiko Drum | 000 000 0 | +| 65 | m ElecGtr MS | 00 00 12 | Electric Guitar (clean) | -012 -005 3 | +| 66 | m Lock MS | 00 00 12 | | | +| 67 | Fretless 1 | 00 00 02 | Fretless Bass | 000 000 0 | +| 70 | m Armor MS | 00 00 12 | | | +| 71 | m ElecGtr MS | 00 00 02 | Electric Guitar (clean) | 000 000 0 | +| 77 | Telephone | 00 00 00 | Telephone Ring | 000 000 0 | +| 78 | m StoneDr MS | 00 00 12 | | | +| 79 | m Shuffle | 00 00 12 | | | +| 80 | m Buzzer | 00 00 12 | | | +| 81 | Vibe 1 | 00 00 12 | Vibraphone | 000 000 0 | +| 82 | m ElecGtr MS | 00 00 12 | Electric Guitar (clean) | 000 000 0 | +| 83 | r Hand Clap | 00 00 12 | | | +| 84 | m Drip MS | 00 00 12 | | | +| 85 | m CracklesMS | 00 00 12 | | | +| 86 | m TireSqueal | 00 00 12 | Bag pipe | 000 025 3 | +| 87 | m Explode MS | 00 00 12 | | | +| 88 | m DRAWER | 00 00 12 | | | +| 89 | m KABOOM | 00 00 12 | | | +| 90 | m GUN/STATIC | 00 00 12 | | | +| 91 | m TRAFFIC | 00 00 12 | Seashore | 000 000 0 | +| 92 | m DOOR SLAM | 00 00 12 | | | +| 93 | m CAR DOOR | 00 00 12 | | | +| 94 | m STEPS | 00 00 12 | | | +| 95 | m DIESEL | 00 00 12 | | | +-------------------------------------------------------------------------- + | ## | MT-32 Timbre | OL PP | General MIDI Rhythm Key | + -------------------------------------------------------- + | 34 | r Acou SD | 100 07 | Electric Snare | + | 35 | r Acou BD | 100 07 | Acoustic Bass Drum | + | 36 | m BIG KICK | 095 07 | Bass Drum 1 | + | 37 | r Rim Shot | 100 06 | Side Stick | + | 38 | m RAP SNARE | 100 07 | Electric Snare | + | 39 | m SLAPSTICK | 096 08 | Hand Clap | + | 40 | m BIG SNARE | 100 06 | Acoustic Snare | + | 41 | m ACOU TOMS | 080 07 | Low Floor Tom | + | 42 | m CLOSED HAT | 090 06 | Closed Hi-Hat | + | 43 | m ACOU TOMS | 080 11 | High Floor Tom | + | 44 | m SLOSH HAT | 082 06 | Pedal Hi-Hat | + | 45 | m ACOU TOMS | 085 13 | Low Tom | + | 46 | m CHOKE HAT | 072 06 | Open Hi-Hat | + | 47 | m ACOU TOMS | 080 08 | Low-Mid Tom | + | 48 | m ACOU TOMS | 069 06 | Hi-Mid Tom | + | 49 | r Crash Cym | 095 06 | Crash Cymbal 1 | + | 50 | m HARD RIDE | 100 08 | Ride Cymbal 2 | + | 51 | m RIDE CYM | 090 08 | Ride Cymbal 1 | + | 52 | m CRASH CYM | 077 11 | Crash Cymbal 1 | + | 53 | m HEFTY BASS | 082 04 | | + | 54 | r Tambourine | 100 09 | Tambourine | + | 56 | r Cowbell | 100 07 | Cowbell | + | 57 | m StoneDr MS | 100 07 | | + | 58 | r Tambourine | 100 09 | Tambourine | + | 60 | r High Bongo | 100 02 | Hi Bongo | + | 61 | r Low Bongo | 100 04 | Low Bongo | + | 62 | r Mt HiConga | 100 08 | Mute Hi Conga | + | 63 | r High Conga | 100 09 | Open Hi Conga | + | 64 | r Low Conga | 100 10 | Low Conga | + | 65 | r Hi Timbale | 100 07 | High Timbale | + | 66 | r LowTimbale | 100 05 | Low Timbale | + | 67 | r High Agogo | 100 02 | High Agogo | + | 68 | r Low Agogo | 100 02 | Low Agogo | + | 69 | r Cabasa | 100 09 | Cabasa | + | 70 | r Maracas | 100 04 | Maracas | + | 71 | r SmbaWhis S | 100 09 | Short Whistle | + | 72 | r SmbaWhis L | 100 09 | Long Whistle | + | 73 | r Quijada | 100 10 | Short Guiro | + | 75 | r Claves | 100 12 | Claves | + | 76 | m Stir | 100 07 | Long Guiro | + | 77 | m Hit | 100 07 | Acoustic Snare | + | 78 | m Brushcym | 090 07 | Ride Cymbal 1 | + -------------------------------------------------------- diff --git a/engines/sci/sfx/mt32_GM_mapping/qfg1map.txt b/engines/sci/sfx/mt32_GM_mapping/qfg1map.txt new file mode 100644 index 0000000000..c1816786b1 --- /dev/null +++ b/engines/sci/sfx/mt32_GM_mapping/qfg1map.txt @@ -0,0 +1,123 @@ + ---------------------------------------------------------------------- + | *QUEST FOR GLORY I* | So U Want 2 B A HERO | QUEST FOR GLORY I | +-------------------------------------------------------------------------- +| ## | MT-32 Timbre | KSh FTn BR | General MIDI Patch | KSh VolA V | +-------------------------------------------------------------------------- +| 03 | m Toms MS | 00 00 12 | Melodic Tom | 000 000 1 | +| 04 | Trumpet 2 | 00 00 12 | Trumpet | 000 022 2 | +| 05 | m T-Bone2 MS | 00 00 12 | Trombone | 000 065 2 | +| 06 | m FrHorn1 MS | 00 00 12 | French Horn | 000 040 3 | +| 07 | m StrSect1MS | 00 00 12 | String Ensemble 1 | 000 127 2 | +| 08 | Timpani | 00 00 12 | Timpani | 000 000 2 | +| 09 | Contrabass | 00 00 12 | Contrabass | 000 080 2 | +| 10 | m Glock MS | 00 00 12 | Glockenspiel | 012 080 3 | +| 11 | m Flute MS | 00 00 12 | Flute | 000 045 3 | +| 12 | Tuba | 00 00 12 | Tuba | 000 127 3 | +| 13 | Brs Sect 1 | 00 00 12 | Brass Section | 000 100 3 | +| 14 | Fr Horn 1 | 00 00 12 | French Horn | 000 040 3 | +| 15 | Pizzicato | 00 00 12 | Pizzicato Strings | 000 000 2 | +| 17 | Acou Bass1 | -12 00 00 | Acoustic Bass | 000 050 2 | +| 18 | Sax 2 | 00 00 00 | Alto Sax | 000 040 1 | +| 19 | m EnglHornMS | 00 00 12 | English Horn | 012 040 3 | +| 20 | Pipe Org 1 | 00 00 00 | Church Organ | 000 000 3 | +| 21 | Panpipes | 00 00 12 | Pan Flute | 000 020 1 | +| 22 | Clarinet 1 | 00 00 12 | Clarinet | 000 020 3 | +| 23 | m BassPizzMS | 00 00 12 | Orchestral Harp | -012 050 1 | +| 24 | m Conga MS | 00 00 12 | Taiko Drum | 000 000 1 | +| 25 | Sitar | 00 00 12 | Sitar | 000 080 3 | +| 26 | m Snare MS | 00 00 00 | Taiko Drum | 000 000 1 | +| 27 | m ClarinetMS | 00 00 12 | Clarinet | 000 020 3 | +| 28 | m Fantasy2MS | 00 00 12 | Pad 4 (choir) | 000 050 1 | +| 29 | Guitar 1 | 00 00 12 | Acoustic Guitar (nylon) | 000 000 1 | +| 30 | Chorale | 00 00 12 | Pad 4 (choir) | 000 020 2 | +| 31 | Syn Bass 1 | 00 00 12 | Synth Bass 1 | 000 020 1 | +| 32 | m GameSnd MS | 00 00 12 | Lead 1 (square) | 000 000 1 | +| 33 | m Calliope | 00 00 12 | Drawbar Organ | 000 000 1 | +| 34 | Whistle 1 | 00 00 12 | Whistle | 000 040 3 | +| 47 | m SKATE2 | 00 00 24 | | | +| 48 | m Claw MS | 00 00 12 | Synth Drum | 000 000 1 | +| 49 | m Flames MS | 00 00 12 | Breath Noise | 000 000 1 | +| 50 | m Swords MS | 00 00 12 | | | +| 51 | m Armor MS | 00 00 12 | | | +| 52 | m Splat MS | 00 00 00 | Synth Drum | 000 000 1 | +| 53 | m Fall MS | 00 00 00 | | | +| 54 | m Crash MS | 00 00 00 | Gunshot | 000 127 3 | +| 55 | m Laser MS | 00 00 00 | Lead 2 (sawtooth) | 000 -040 1 | +| 56 | m Vase MS | 00 00 00 | Gunshot | -012 000 1 | +| 57 | m Spit MS | 00 00 12 | Woodblock | -012 000 1 | +| 58 | m Bubbles | 00 00 12 | | | +| 59 | m Ninga MS | 00 00 12 | Breath Noise | 000 100 1 | +| 60 | m Flame2 MS | 00 00 12 | Breath Noise | 000 100 1 | +| 61 | m CracklesMS | 00 00 12 | Woodblock | 000 040 1 | +| 62 | m Gulp MS | 00 00 12 | | | +| 63 | m KnifeStkMS | 00 00 12 | Woodblock | 000 110 1 | +| 64 | m Pft MS | 00 00 12 | Helicopter | 000 110 1 | +| 65 | m Poof MS | 00 00 12 | | | +| 66 | Bird Tweet | 00 00 12 | Bird Tweet | 000 000 1 | +| 67 | m Owl MS | 00 00 12 | Bird Tweet | -012 000 1 | +| 68 | m Wind MS | 00 00 12 | | | +| 69 | m Cricket | 00 00 12 | Guitar Fret Noise | 000 000 1 | +| 70 | m SwmpBackgr | 00 00 12 | Guitar Fret Noise | 000 000 1 | +| 71 | m FireDartMS | 00 00 00 | Seashore | 000 120 1 | +| 72 | m LghtboltMS | 00 00 12 | Seashore | 000 120 1 | +| 73 | m Raspbry MS | 00 00 12 | Lead 2 (sawtooth) | 000 000 1 | +| 74 | m Explode MS | 00 00 13 | Helicopter | 000 000 1 | +| 75 | m Lock MS | 00 00 12 | Gunshot | 080 000 1 | +| 76 | m Buildup MS | 00 00 12 | | | +| 77 | m Boing MS | 00 00 24 | Taiko Drum | 000 000 1 | +| 78 | m Flames3 MS | 00 00 12 | Helicopter | 000 080 1 | +| 79 | m Thunder MS | 00 00 12 | Helicopter | -012 100 1 | +| 80 | m Meeps MS | 00 00 12 | SynthBrass 1 | 000 000 1 | +| 81 | m Bells MS | 00 00 12 | Tinkle Bell | 012 080 1 | +| 82 | m Skid MS | 00 00 12 | Helicopter | 000 000 1 | +| 83 | m RimShot MS | 00 00 12 | Woodblock | 000 000 1 | +| 84 | m WtrFall MS | 00 00 12 | | | +| 85 | m DoorSlamMS | 00 00 12 | Taiko Drum | 000 000 1 | +| 86 | m SmileFacMS | 00 00 12 | Helicopter | 000 040 1 | +| 87 | m Tumble MS | 00 00 12 | Synth Drum | 000 040 1 | +| 88 | m Punch MS | 00 00 12 | Synth Drum | 000 080 1 | +| 89 | m CreakyD MS | 00 00 12 | | | +| 90 | m CstlGateMS | 00 00 12 | Gunshot | -050 050 1 | +| 91 | m Hammer MS | 00 00 12 | | | +| 92 | m Horse1 MS | 00 00 12 | Woodblock | 000 000 1 | +| 93 | m Horse2 MS | 00 00 12 | Woodblock | 000 000 1 | +| 94 | m Kiss MS | 00 00 12 | Gunshot | 100 000 1 | +| 95 | m StrSect1MS | 00 00 12 | String Ensemble 1 | 000 127 2 | +-------------------------------------------------------------------------- + | ## | MT-32 Timbre | OL PP | General MIDI Rhythm Key | + -------------------------------------------------------- + | 36 | r Acou BD | 100 07 | Bass Drum 1 | + | 37 | r Rim Shot | 100 06 | Side Stick | + | 38 | r Acou SD | 100 07 | Acoustic Snare | + | 39 | r Hand Clap | 100 08 | Hand Clap | + | 40 | r Elec SD | 100 06 | Electric Snare | + | 41 | r AcouLowTom | 100 11 | Low Floor Tom | + | 42 | r Clsd HiHat | 100 06 | Closed Hi-Hat | + | 43 | r AcouLowTom | 100 11 | Low Floor Tom | + | 44 | r OpenHiHat2 | 100 06 | Open Hi-Hat | + | 45 | r AcouMidTom | 100 08 | Low-Mid Tom | + | 46 | r OpenHiHat1 | 100 06 | Open Hi-Hat | + | 47 | r AcouMidTom | 100 08 | Hi-Mid Tom | + | 48 | r Acou HiTom | 100 03 | High Tom | + | 49 | r Crash Cym | 100 06 | Crash Cymbal 1 | + | 50 | r Acou HiTom | 100 03 | High Tom | + | 51 | r Ride Cym | 100 08 | Ride Cymbal 1 | + | 52 | m CymSwellMS | 100 07 | | + | 54 | r Tambourine | 100 09 | Tambourine | + | 56 | r Cowbell | 100 07 | Cowbell | + | 60 | r High Bongo | 100 02 | Hi Bongo | + | 61 | r Low Bongo | 100 04 | Low Bongo | + | 62 | r Mt HiConga | 100 08 | Mute Hi Conga | + | 63 | r High Conga | 100 09 | Open Hi Conga | + | 64 | r Low Conga | 100 10 | Low Conga | + | 65 | r Hi Timbale | 100 07 | High Timbale | + | 66 | r LowTimbale | 100 05 | Low Timbale | + | 67 | r High Agogo | 100 02 | High Agogo | + | 68 | r Low Agogo | 100 02 | Low Agogo | + | 69 | r Cabasa | 100 09 | Cabasa | + | 70 | r Maracas | 100 04 | Maracas | + | 71 | r SmbaWhis S | 100 09 | Short Whistle | + | 72 | r SmbaWhis L | 100 09 | Long Whistle | + | 73 | r Quijada | 100 00 | Short Guiro | + | 75 | r Claves | 100 12 | Claves | + -------------------------------------------------------- |