Oldskooler Ramblings

the unlikely child born of the home computer wars

Vintage DOS MIDI Game Music Explained

Posted by Trixter on October 5, 2018


For people who are just getting started into vintage DOS gaming, MIDI music device support in games can be confusing:  What’s MIDI?  Why don’t MIDI devices play digital sound?  If all you have is MIDI, how do you hear sound effects?  This article will attempt to explain, as succinctly as possible, how MIDI devices became a part of DOS gaming music history, and how they were used for composing and playing back game music.  This article is not an extensive technical dive, but is meant to be an explanation for the novice DOS gamer who is new to the platform.

This information originally appeared as correspondence with Fabien Sanglard, who is working on the next book in his Game Engine Black Blook series.  His previous book, Game Engine Black Book: Wolfenstein 3D, is highly recommended.

What is MIDI?

MIDI is a synthesizer music control protocol, and stands for Musical Instrument Digital Interface. It was created in the 1980s as a way to connect keyboards, drum machines, other synthesizers, etc. together. Once connected, they could do things like have one instrument (like a keyboard) control another (like a drum machine), they could all refer to the same time sync signal, and also be connected to a computer using a computer MIDI interface. Once connected to a computer, the computer could record all of the notes passing along the MIDI protocol, effectively capturing the live performance.  Once captured, the computer allowed the user to edit the performance, make changes, and play it back out to all of the connected instruments.

MIDI instruments were connected to each other using cables employing a male 5-pin circular connector.

What was the Roland MT-32?
What was the Roland LAPC-I?

The Roland MT-32 was an external, standalone MIDI music synthesizer that you could connect with MIDI cables to a computer fitted with a MIDI adapter, such as the Roland MPU-401. This hardware allowed high-quality (for the time) music playback, better than the FM/OPL-based AdLib (and later Sound Blaster) cards. Sierra supported the MT-32 (and other sound and music devices) as early as 1987 and pushed for sound/music devices to be better-supported throughout the industry, leading with their own products first.  It is fair to credit Sierra with establishing higher-quality sound devices, and the MT-32 in particular, as a PC gaming “standard”.

The Roland LAPC-I combined the MPU-401 MIDI interface with an upgraded version of the MT-32 called the CM-32L into a single ISA card, so adding just that card would give you “MT-32” music playback, plus 33 additional sound effects.

The MT-32 was primarily a music synthesizer. Like any traditional musical keyboard synth, it had over 100 preset instruments, and some canned sound effects (gunshot, rain, explosion, wind, etc.). It also had the ability to change the parameters of those instruments and modify them to sound differently. Changing an instrument was done via SYSEX (SYStem EXclusive) MIDI commands. The MT-32 was not based on the Yamaha OPL series like the AdLib/Sound Blaster, but used a Roland-proprietary combination of prerecorded samples and subtractive synthesis.  You could not fundamentally create your own instrument or sound effect, but you could modify what already came with the MT-32.

The MT-32 only communicated via MIDI. MIDI does not have the ability to transmit PCM samples, so it had no ability to play custom digitized audio. The LAPC-I also lacked this capability:  While it was an add-in ISA card, it didn’t add digital sound playback to the existing CM-32L + MIDI interface combo it was designed to reproduce.  (A later card, the RAP-10, added this functionality.)

What was the Roland SC-55?
What was the Roland SCC-1?
Why were they a significant milestone of DOS gaming music?

The Roland SC-55 was the very first General MIDI standard device. The General MIDI standard was significant in that it defined 128 instruments that every device following the standard could adopt. Before General MIDI, there was no standardization: Instrument #4 could be “organ” or “flute” or “snare drum”, etc…  but in General MIDI, instrument #4 is always “Honky-Tonk Piano”. This standard was the real breakthrough for DOS gaming music, because it meant all MIDI music devices following the standard could reproduce the music nearly the same, as they would all be using the same instruments.  (That said, the SC-55 also had outstanding sound quality, which was also a breakthrough.)  Of the 128 instruments, 16 were sound effects.  An additional 46 percussive sounds (snare drum, hi-hat, etc.) were also available on a specific playback channel.

Like the MT-32, the SC-55 connected to the computer using MIDI cables and a MIDI interface installed in the computer. The Roland SCC-1 was like the LAPC-I: It combined an SC-55 and an MPU-401 onto a single ISA add-in card.

How was MIDI music for DOS games composed?

Standalone synthesizer modules like the MT-32 and the SC-55 can only be controlled via the MIDI protocol, sent over MIDI cables to the module. If you want to compose music to be played back on those modules, it is best practice to compose the music using the module itself. Because the module has no musical keyboard attached, it was common to use a synthesizer keyboard connected via MIDI to control the module. This was typically done by capturing a live performance on the keyboard into a MIDI note recording program called a MIDI sequencer, usually on a computer. Once captured on the computer, it could be edited like any media.

Why do I still need a Sound Blaster to hear sound in DOS games?

MIDI devices like the MT-32 and SC-55 were primarily designed as music synthesizer modules, and only contained a small number of sound effects.  The sound effects were so limited that most games didn’t bother trying to support them, so if one of those devices were all that you had, then you only heard music in a DOS game and no sound effects or speech. So, most DOS gamers also installed a card to play PCM sound, such as a Sound Blaster.  To hear both sound devices at the same time, users could run both to a mixer which output to a single set of speakers, but a cheaper option was to run the audio output of the MIDI module into the “line in” jack on a Sound Blaster, then connect the “line out” jack of the Sound Blaster to speakers.  Then the Sound Blaster internal mixer could be adjusted via software such that Line In was mixed into the output even while not recording.

While most games didn’t use MT-32 or SCC-1 canned sound effects, there were a few exceptions.  Sierra games using the SCI interpreter would occasionally use them (see Space Quest III for an example of MIDI sound effect use on the very first gameplay screen), and Another World (USA title “Out Of This World”) used the additional effects in the LAPC-I/CM-32L.

What music device should I pick when running a DOS game that has multiple options?

If you have an emulator configured for all possible DOS game sound standards — or, if you’re lucky and rich, a choice of sound hardware to put into a vintage DOS gaming system — then you should usually pick General MIDI with any sound extensions first, then General MIDI, then FM-based.  Here is a general list of sound options listed from best MIDI music quality to worst MIDI music quality; pick the highest option you have available:

  1. General MIDI (Yamaha XG or XG extensions)
  2. General MIDI (Roland SCC-1, Roland SC-55, Roland GS extensions)
  3. General MIDI
  4. Turtle Beach Multisound
  5. Roland LAPC-1 or CM-32L
  6. Roland MT-32
  7. Sound Blaster 16, Sound Blaster Pro 2 (Yamaha OPL-4 or OPL-3 FM compatible)
  8. Sound Blaster Pro (Yamaha OPL-2 stereo FM)
  9. AdLib or Sound Blaster (Yamaha OPL-2 FM)
  10. Creative Music System or Game Blaster
  11. Tandy/PCjr 3-voice audio
  12. PC speaker

One Response to “Vintage DOS MIDI Game Music Explained”

  1. Steven van Pelt said

    When it comes to MIDI, I would definitely have added Sound Blaster AWE 32/64 to that list.

Leave a comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.