It seems that you're using an outdated browser. Some things may not work as they should (or don't work at all).
We suggest you upgrade newer and better browser like: Chrome, Firefox, Internet Explorer or Opera

×
Question for more technical users:

I was under the impression that all MIDI in DosBox was simply pass-through to the top level OS (i.e. Windows). However, from what I can tell this only occurs when a given game is setup to use General MIDI. It appears that when Adlib or SoundBlaster is used as the music device, you get internal DosBox emulation.

Is this correct? I may be grossly misunderstanding things.

Here's why I ask. I was messing around with Descent (I know there are source ports which are the better way to play the game, this was just for fun/education). I wanted to see how it sounded with different SoundFonts. So I installed VirtualMidiSynth and a bunch of libraries. However, it always sounded the same...until I ran the config tool and re-configured it to use "General MIDI" as the music device. At which point the MIDI was then being output to Windows and my different SoundFonts took effect.

Set the music device back to SoundBlaster as a test and got the same terrible sounding music. So is SoundBlaster MIDI internally emulated by DosBox? Does a game have to support General MIDI for the MIDI to be passed through to the OS or is there a way to for the SoundBlaster emulation use the OS MIDI as well?
Er, the old Soundblaster cards use FM synthesis, which is not the same thing as MIDI. It is internally emulated, but there are no sound fonts or anything to change even on a real card. All actual MIDI in DOSBox is passed through to the OS, like General MIDI and Roland devices.
avatar
Exoanthrope: Er, the old Soundblaster cards use FM synthesis, which is not the same thing as MIDI. It is internally emulated, but there are no sound fonts or anything to change even on a real card. All actual MIDI in DOSBox is passed through to the OS, like General MIDI and Roland devices.
Ah thank you, as I said, I suspected I was misunderstanding something. This fills in the missing piece for me.
avatar
Sweetz: Ah thank you, as I said, I suspected I was misunderstanding something. This fills in the missing piece for me.
Yeah, there were way too many sound card options back in the DOS days, it gets confusing, and emulation options on top of that doesn't help.

You have it right, though, General MIDI with an external soundfont is definitely the way to go for best quality. :)
avatar
Sweetz: *snip*
Here are a few threads which you may find interesting and/or useful:

http://www.gog.com/forum/general/ultra_boost_your_in_game_music_experience_for_most_dosbox_games_and_some_windows/post1

http://www.gog.com/forum/general/munt_installation_guide_roland_mt32_cm32l_emulator_for_dosbox_games/post1

http://www.gog.com/forum/general/general_midi_for_gog_games/post1

http://www.gog.com/forum/general/how_to_make_midis_sound_good_again/post1
avatar
Sweetz: Question for more technical users:

I was under the impression that all MIDI in DosBox was simply pass-through to the top level OS (i.e. Windows). However, from what I can tell this only occurs when a given game is setup to use General MIDI. It appears that when Adlib or SoundBlaster is used as the music device, you get internal DosBox emulation.

Is this correct? I may be grossly misunderstanding things.
Basically yes. You also have to tell the game itself, which kind of sound hardware it should use, by running its own game-specific sound config utility inside the DOSBox session, e.g. install.exe, setup.exe, setsound.exe or something similar. This executable is inside the game directory, and it usually must be run while you are inside the DOSBox session. GOG games that launch the game executable right away may need some extra tricks, unless the GOG version offers a separate link to change the sound hardware.

Alternatively, some DOS games may ask for the sound card in the beginning of the game (I don't recall GOG having such DOS games though), or select the sound hardware with options you give when you run the game executable (e.g. I recall Monkey Island 2 was like this; if it detected a MPU-401 (smart mode) MIDI device in the system, it would automatically select Roland MT-32 MIDI sound support instead of Adlib/Soundblaster, but you could override that selection with command-line options when you run the game).

Some GOG games at least used to have the sound setup executable removed for some reason, in which case changing the sound card may be trickier, and might mean having to edit certain config file manually inside the game directory. I recall having such issues earlier with the GOG versions of e.g. Ultima Underworld and Theme Hospital, not sure if GOG has fixed this issue later and added the missing sound setup executables.

If you use Adlib or Soundblaster (or other SB-compatible sound cards like Pro Audio Spectrum 16, Adlib Gold or whatever), they will be emulated by DOSBox. If you select MPU-401 MIDI (e.g. Roland MT-32/LAPC-1/CM-32L, General MIDI, SCC-1, Sound Canvas...), then DOSBox will by default just pass through those MIDI messages to Windows, which then decides what to do with them.

By default Windows plays the MIDI messages using its own mediocre General MIDI synth (Microsoft GS Wavetable Synth). If the game was configured to use Roland MT-32/MT-100/LAPC-1/CM-32L, then they will be played wrong by Windows (in which case you should install and use Munt, a MT-32 emulator). If the game uses General MIDI/Sound Canvas, then they are played more or less correctly by default, but you can improve that quite a lot with replacement General MIDI soundfonts (= better instruments).
Post edited November 25, 2014 by timppu
Thanks for all the info everyone.

I already messed around with MUNT for Wing Commander 1 (and got it working successfully).

Just for fun I also wanted to see what that game sounded like through General MIDI with different SoundFonts, but apparently it doesn't support General MIDI - it appears that it supports Adlib/Soundblaster or MT-32 only.

That's one of the games which lacks the setup executable for whatever reason, but I was able to find one on wcnews.com.
avatar
Sweetz: Just for fun I also wanted to see what that game sounded like through General MIDI with different SoundFonts, but apparently it doesn't support General MIDI - it appears that it supports Adlib/Soundblaster or MT-32 only.
Wing Commander is from 1990, General MIDI was established in 1991.
I'll add my old thread here, in the event that someone new could know a solution:
Original midi music: Ensoniq waveset on new computers?
Post edited November 25, 2014 by phaolo
One more: Get dramatically better MIDI music!.
avatar
Exoanthrope: Er, the old Soundblaster cards use FM synthesis, which is not the same thing as MIDI. It is internally emulated, but there are no sound fonts or anything to change even on a real card. All actual MIDI in DOSBox is passed through to the OS, like General MIDI and Roland devices.
It's not the same thing as MIDI but it doesn't mean it didn't use MIDI. FM synthesised music is no more or less MIDI than a soundfont is.

MIDI is just instructions.
avatar
SirPrimalform: It's not the same thing as MIDI but it doesn't mean it didn't use MIDI. FM synthesised music is no more or less MIDI than a soundfont is.
MIDI is just instructions.
Not all music instructions are MIDI and I'm under the impression that before Standard MIDI Files were defined in 1990 all MIDI specifications were actually limited to hardware communication. I'm pretty sure that the basic instruction set for AdLib had nothing to do with MIDI and the developers were free to store their music instructions in any format they liked, including their own ones developed for specific projects, so they could use MIDI files once those were defined but still didn't have to (and I'm pretty sure that MIDI arrangements weren't the best choice depending on the kind of sounds and effects they wanted to create).

Maybe I'm talking out of my ass here, though. Correct me if I'm wrong.
avatar
Sweetz: I already messed around with MUNT for Wing Commander 1 (and got it working successfully).

Just for fun I also wanted to see what that game sounded like through General MIDI with different SoundFonts, but apparently it doesn't support General MIDI - it appears that it supports Adlib/Soundblaster or MT-32 only.
Yes, it is from the era before General MIDI support in PC games. During the transition period (around 1993 and so), some PC games supported both, and you needed to select whether you wanted Roland MT-32/LAPC-1, or General MIDI music. Games like Dune 2, Strike Commander (CD-version, I think the original floppy version didn't support General MIDI), X-Wing, Legend of Kyrandia, some Sierra adventure games etc... After that it was mostly General MIDI only, until Redbook audio CD tracks, and later digitized music, took over.

Some General MIDI cards, e.g. Roland SCC-1, had a special MT-32 compatibility mode, which (I think) basically rearranged the General MIDI instruments to be roughly in the same order as on a Roland MT-32. So when a MT-32 game would play a piano sound, you would also get a piano sound on your General MIDI card (instead of some completely wrong instrument or sound), etc. This works ok as long as the MT-32 game does not change any of the default MT-32 sounds, because that is what those GM card "MT-32 compatibility modes" couldn't do. Nor did they understand if a MT-32 music wanted to use reverb or some other fancy stuff.

I recall Wing Commander 1 music actually sounded superior on Roland SCC-1 in MT-32 mode, than on a real Roland MT-32/ LAPC-1. Same applied to e.g. Elite 2: The Frontier. That was because the default instruments were of higher quality on SCC-1. Then again, the sound effects were all wrong, you didn't get proper laser sounds, explosions etc. like with a real MT-32/LAPC-1.
Post edited November 26, 2014 by timppu
avatar
F4LL0UT: Not all music instructions are MIDI and I'm under the impression that before Standard MIDI Files were defined in 1990 all MIDI specifications were actually limited to hardware communication. I'm pretty sure that the basic instruction set for AdLib had nothing to do with MIDI and the developers were free to store their music instructions in any format they liked, including their own ones developed for specific projects, so they could use MIDI files once those were defined but still didn't have to (and I'm pretty sure that MIDI arrangements weren't the best choice depending on the kind of sounds and effects they wanted to create).

Maybe I'm talking out of my ass here, though. Correct me if I'm wrong.
Heh, I was mostly just disputing the implication that MIDI had a specific sound (that he was contrasting with FM).
FM-synthesis is a method of sound production and MIDI is a method of sending musical instructions (I'm sure you know all of that, I'm just clarifying the purpose of my previous post).


I was under the impression that Adlib cards (or rather their drivers) were addressed with MIDI, but I wasn't actually trying to suggest this in my post. I think you probably know more about this than I do so I'm happy to accept your word.
Post edited November 26, 2014 by SirPrimalform
avatar
SirPrimalform: Heh, I was mostly just disputing the implication that MIDI had a specific sound (that he was contrasting with FM).
FM-synthesis is a method of sound production and MIDI is a method of sending musical instructions (I'm sure you know all of that, I'm just clarifying the purpose of my previous post).
I just noticed that I misread your post. I somehow managed to misread it as "FM synthesis is just as much MIDI as Soundfonts are" which seemed weird. Now that I've read it again I see that my response didn't make any sense. :P

avatar
SirPrimalform: I was under the impression that Adlib cards (or rather their drivers) were addressed with MIDI, but I wasn't actually trying to suggest this in my post. I think you probably know more about this than I do so I'm happy to accept your word.
As I said, I may be talking out of my ass, it's just my best bet after everything I've read about MIDI and AdLib.