First post, by truth_deleted
DOS games typically support music playback via a MIDI or a soundblaster device. DOSBox emulates both. On Windows, the DOSBox MIDI data is played through the built-in device Microsoft GS Wavetable Synth; it is limited by its samples, mono sound, and lack of effects. DOS games from 1988 to the early 1990s (for example, Sierra adventure games) would typically encode music optimized for the Roland MT-32 MIDI device. A MT-32 emulator is available from the MUNT team; and a dosbox binary with this MT-32 emulation is available here: DOSBox-SVN + MT-32(v1.30) emulation. After the early 1990s, MIDI music was typically encoded and optimized for a General MIDI device, not for MT-32 (for example, Roland Sound Canvas SC-55). For the purposes of high quality MIDI emulation, these two types of MIDI devices are preferred; rather than the MIDI device built in to Windows. As the MUNT team hosts MT-32 MIDI emulation, there are others who have delivered a high quality General MIDI emulator.
Using MinGW/GCC4.6.2 and a patch by gaula92 and ykhwong (*), dosbox was built to use the "fluidsynth software synthesizer". This synthesizer emulates a General MIDI (GM) device when coupled with an appropriate SoundFont from a GM device, a file format for sample based instrument sounds (http://en.wikipedia.org/wiki/SoundFont). The synthesizer was downloaded in the form of a library and its dependent libraries from here: http://fluidsynth.flyx.org. For obtaining a free SoundFont instrument file, instructions are here: http://sourceforge.net/apps/trac/fluidsynth/wiki/SoundFont.
In the attached archive are the necessary files to run DOSBox in Windows along with high quality General MIDI emulation. The only missing elements are the SoundFont file and two edits to your dosbox.conf file, as shown:
The mididevice is always "synth" to enable GM music. However, midiconfig is the name of the SoundFont file which would be located in your dosbox directory. The other requirement is that the DOS game is configured for General MIDI music.
Edit: I compiled and attached a proper version of DOSbox-SVN+GeneralMIDI. It also is from the latest SVN, updated just a few days ago. The attached archive can completely replace the current one attached to the post. This archive has fluidsynth version 1.1.3.
the second archive (dosbox-SVN+GM-2.zip) includes the newer fluidsynth 1.1.6 library; it also has different dependencies and is more compact. I haven't tested this version as much as in the previous archive (fluidsynth 1.1.3).
The newer library was obtained from here: