VOGONS


Good value PC for Win98 - evading the RETRO TAX

Topic actions

Reply 60 of 60, by mothergoose729

User metadata
Rank Oldbie
Rank
Oldbie
Retrojanusz wrote on 2021-03-15, 22:41:
mothergoose729 wrote on 2021-03-15, 22:34:

Running the setup program again and selecting general midi would probably also work. If the setup program is included. You can play midi files on modern PCs just fine so it sounds like a configuration issue with the game.

GM command fixed the sound. Crisis averted, Win98 machine may wait a bit. What the hell is "general midi" anyway and why does it sound so whack with whatever is default?

(yeah, taking the opportunity to educate myself here!)

Midi is a bit of a rabbit hole, but the gist of it is this. Midi music is a format that describes music as if you are playing on something like a digital keyboard. A midi command might say "play a trumpet at a C note". Different midi devices all have their own idea of what a trumpet should sound like, and you can even change how the trumpet sounds with a "sound font", but we are more or less talking about the same sound.

There are two classes of midi devices (making it really simple)

1) All things not general midi (or general mid AND something else) which require specific hardware to sound right
2) General midi which should work on all "modern" midi devices

The trouble is that midi files from group one will play on midi devices from group 2, they just sound "off". In particular, any midi track that has GS extension won't work, or anything composed for pre general midi devices like the MT32. In particular, the MT32 let's you load custom instrument through the midi interface and your general midi device won't get the message. So the game might want to play neat tracker note at a C, and your dumb general midi device things it wants a grand piano at C, so it sounds "off".

Even windows 10 comes with a midi synthesizer in the form of the Microsoft GS, which a "general midi" device. DOSbox let's you assign a midi device index in the dosbox.conf which points to the midi device you want to use. When the game wants to play midi music, it will pass the commands to the midi device and you get sound.

If you want to upgrade your midi game, there are ways to emulate different midi devices like the MT 32, or use a different midi synthesizer with a custom sound font. But if you aren't particular the Microsoft GS will do a decent job so long as they source is general midi.