VOGONS


Primer on PC audio?

Topic actions

First post, by solidus

User metadata
Rank Newbie
Rank
Newbie

I am looking to better understand the basics and evolution of audio as it relates to the home computer. I have watched many videos regarding midi music from old DOS games and it seems like there were many choices for sound cards, midi modules, etc at the time. Stuff like the Roland Sound Canvas and the like. I guess what I am confused about mainly is why all of this dedicated tech was necessary. Is it because a mobo at the time was not powerful enough to both generate audio and deal with other tasks? Are those sorts of dedicated hardware totally obsolete at this point? Is there a difference between me using one of those old sound cards or sound modules today when playing something like Duke3D vs just using my mobos built in audio port?

It seems like certain midi devices were capable of producing some specific sounds that others were not. In that case, Im not sure I understand why those devices were needed to reproduce those sounds from games.. but not for just listening to a regular recorded song. I guess I am just in general looking to learn a bit more about what this dedicated audio hardware was all about, and why it seems like we no longer need them today. Hope any of that made sense 😀 If any of it didnt, its because I dont know what Im talking about.

Reply 1 of 25, by Oetker

User metadata
Rank Oldbie
Rank
Oldbie

Just some quick points, as it's past my bed time:
-Games at the time used MIDI music as they didn't have the storage space for uncompressed audio and didn't have the processor power to play back compressed audio such as MP3 files. They later moved to using CD audio tracks.
-Cheap sound cards played back MIDI music using FM synthesis, which sounds worse than a good midi device, however it's the sound many people grew up with.
-More advanced sound cards had built-in MIDI playback hardware with better quality.
-Using a modern computer you can play back MIDI at various quality levels. The build-in software synth in Windows sounds ok-ish, it's based on the Sound Canvas but misses effects. However you can also use more advanced software MIDI devices.
-However, playing Doom or Duke on a Sound Canvas is they way the songs were meant to sound. Playing them with other devices is neat though.
-Some MIDI devices, such as the MT32, can't really be reproduced by a sound card without additional software, e.g. MUNT.

Reply 2 of 25, by solidus

User metadata
Rank Newbie
Rank
Newbie
Oetker wrote on 2020-06-24, 23:09:
Just some quick points, as it's past my bed time: -Games at the time used MIDI music as they didn't have the storage space for u […]
Show full quote

Just some quick points, as it's past my bed time:
-Games at the time used MIDI music as they didn't have the storage space for uncompressed audio and didn't have the processor power to play back compressed audio such as MP3 files. They later moved to using CD audio tracks.
-Cheap sound cards played back MIDI music using FM synthesis, which sounds worse than a good midi device, however it's the sound many people grew up with.
-More advanced sound cards had built-in MIDI playback hardware with better quality.
-Using a modern computer you can play back MIDI at various quality levels. The build-in software synth in Windows sounds ok-ish, it's based on the Sound Canvas but misses effects. However you can also use more advanced software MIDI devices.
-However, playing Doom or Duke on a Sound Canvas is they way the songs were meant to sound. Playing them with other devices is neat though.
-Some MIDI devices, such as the MT32, can't really be reproduced by a sound card without additional software, e.g. MUNT.

Thats really helpful! I guess my confusion is around your point here: However, playing Doom or Duke on a Sound Canvas is they way the songs were meant to sound. Playing them with other devices is neat though.

Once the sound is recorded, is it not just a series of 0's and 1's? I guess Im not sure I fully understand why the sound would not just be the sound regardless of using a sound canvas or your built in motherboard audio chip. I guess I understand why you would need a certain hardware synth to CREATE the sound, but once it becomes a piece of digital data, why exactly do certain devices play it back differently? Hope that makes sense 😀

Reply 3 of 25, by schmatzler

User metadata
Rank Oldbie
Rank
Oldbie
solidus wrote on 2020-06-24, 23:13:

Once the sound is recorded, is it not just a series of 0's and 1's?

Old games didn't store the actual soundtrack because that would've been way too big to fit on storage media.

They just stored the instructions on what instruments had to be played to make up the music (usually in MIDI format).
It was then up to the manufacturers of the various sound cards how they made these instruments sound.

I've got to disagree on calling the default MIDI implementation of Windows "ok-ish". I think it's extremely terrible. 😁

"Windows 98's natural state is locked up"

Reply 4 of 25, by keenmaster486

User metadata
Rank l33t
Rank
l33t

Focusing on Creative here...

1. Digital audio began in earnest with the Sound Blaster 1.0 and progressively got better until the Sound Blaster 16 which was the first CD quality sound card and still holds up today in terms of playing the full frequency spectrum of recorded digital music. Games used this for sound effects, and, later on when computers got fast enough, MOD music or CD audio.

2. Music in games was played either with MIDI, or with FM. They are not the same thing at all but games often supported both, though the process for playing music through them is completely different. Some conversion step had to happen.

3. MIDI is a series of music instrument commands, either sent to an internal wavetable device or to an external MIDI device usually through the "MIDI/joystick" port on the back of the sound card. The MIDI device has prerecorded instrument sounds that it plays back in various ways depending on the commands it gets sent.

4. FM (also known as Yamaha OPL from the name of the most commonly used chip) is synthesized music. This is different from MIDI in that it actually creates the sound from scratch right then and there. The first card to have this was the Adlib, which used the Yamaha OPL2. The early Sound Blasters had this chip as well. Starting with the Sound Blaster Pro 2, they had Yamaha OPL3 which had more channels and could play in stereo.

A general chronological history of the Creative line goes:

(Adlib) -- precursor, made by a different company. Uses OPL2.
Game Blaster -- used CMS chips for making some musical noises, was not very good. Not Adlib compatible.
Sound Blaster 1.0 -- 8 bit, 22050 Hz, OPL2, also had CMS for backwards compatibility
Sound Blaster 2.0 -- 8 bit, 44100 Hz, OPL2, dropped CMS
Sound Blaster Pro 1 -- 8 bit 44100 Hz -- OR -- 8 bit 22050 Hz stereo, used dual OPL2
Sound Blaster Pro 2 -- 8 bit 44100 Hz -- OR -- 8 bit 22050 Hz stereo, used OPL3
Sound Blaster 16 -- 16 bit 44100 Hz stereo, OPL3.

Development basically ended with 16 bit 44100 Hz because any improvement upon that is indistinguishable to all but the most dedicated audiophile with the best possible speakers or headphones. Plus that's the CD audio standard so nobody had/has files that have better quality than that anyway.

Every subsequent Creative sound card was some variant of the Sound Blaster 16 and was generally compatible with it and all previous models, with a few exceptions. Some cards like the AWE64 had a built-in wavetable so you could get some nice MIDI music without having to plug in an external box.

World's foremost 486 enjoyer.

Reply 5 of 25, by Mu0n

User metadata
Rank Member
Rank
Member
solidus wrote on 2020-06-24, 23:13:

Once the sound is recorded, is it not just a series of 0's and 1's? I guess Im not sure I fully understand why the sound would not just be the sound regardless of using a sound canvas or your built in motherboard audio chip. I guess I understand why you would need a certain hardware synth to CREATE the sound, but once it becomes a piece of digital data, why exactly do certain devices play it back differently? Hope that makes sense 😀

As others have said, the wave form is generated and shaped electronically using op-amps, diodes, inverters, logic gates, possibly oscillators. There's a electro-mechanical physical aspect to it regarding the exact chip that's being used, down to the revision number, sometimes. I'm sure you've come across how legions of people rave about the SID chip on the Commodore 64 side, where so much could be achieved by musical wizards and just 3 voices of manipulated oscillators. Commdore users would have looked puzzled if they received the suggestion of recording all that data on their even more constrained storage. There's a world out there of vintage synthetizer enthusiasts who are looking out for an exact classic sound because every keyboard has unique twist on their circuits.

The sound produced by those chips can, using today's technological know-how, be recorded raw digitally without any regard for space constraints - although that recording always carries some flaws because there's always a tradeoff when you digitize something and there are always choices at which frequency bands your recording equipment will perform well, and for which it'll be weak. There's no "single way" to get the music into 1's and 0's, there are many approaches as there are styles of sound engineering - we're spoiled nowadays to think there could be only one way.

solidus wrote on 2020-06-24, 23:13:

I guess I understand why you would need a certain hardware synth to CREATE the sound, but once it becomes a piece of digital data, why exactly do certain devices play it back differently? Hope that makes sense

I'm guessing you're thinking it goes like:

sound device -> electric oscillation produced -> data stream of 1's and 0's -> -> electronic steps (amp) -> speaker -> mechanical sound wave (what you hear)
(the bolded part doesn't exist in these old sound cards at that step)

but instead, it's:

sound device -> electric oscillation produced -> electronic steps (amp) -> speaker -> mechanical sound wave (what you hear)

The data stream does exist for .WAV, .VOC (and later .MP3 and the like), but that requires 3+ orders of magnitude of space to deal with that

digitized sound with 1's and 0's -> sound card or cpu -> electronic step (amp) -> speaker -> mechanical sound wave (what you hear)

1Bit Fever Dreams: https://www.youtube.com/channel/UC9YYXWX1SxBhh1YB-feIPPw
DOS Fever Dreams: https://www.youtube.com/channel/UCIUn0Dp6PM8DBTF-5g0nvcw

Reply 6 of 25, by solidus

User metadata
Rank Newbie
Rank
Newbie

This is all so helpful, I knew you guys would give amazing explanations. So the basic idea regarding MIDI is that its in essence, a musical 'score' that needs to be read and then played by your machine. Because of that, the truest form of playback for any given midi track would be the exact synth hardware used to create it.. is that correct? So when I play Duke3d for instance, my onboard audio chip is reproducing the track as close as it can using some software that is made to produce sounds from a midi track. Is that more or less whats going on? Is that why you can find many synth emulators? Are they basically emulating the hardware in order to produce an identical sound to some specific piece of hardware?

Reply 7 of 25, by mothergoose729

User metadata
Rank Oldbie
Rank
Oldbie

Gonna keep it high level, but here goes.

The first IBM PC was released in 1981 and it had a PC speaker. A PC speaker is little a speaker, attached with a couple of wires to the board, that project noises out of the chassis.

The PC speaker is a single voice, square wave that is controlled directly by the CPU. With some tricks you can get a lot mileage out of it, but it is dead simple.

https://www.youtube.com/watch?v=1IOL4q5tDDQ

It was supposed to be for simple tones and diagnostics, as at the time IBM computers were for businesses, and all of the killer apps were initially spread sheet programs. However, even at the time better audio existed on other computers. The atari 2600 released in 1977 could at least do two voices, and the SID chip on the commodore 64 could famously do 3.

https://www.youtube.com/watch?v=PuJ0W058wN0

It would take a while for IBM PC to evolve into a home consumer, gaming PC. IBM would produce audio devices themselves over the years, mostly geared towards music professionals, but the evolution of PC audio was almost entirely drive by PC clones and third party add on cards.

The IBM PC Jr released in 1984 had a 3 voice, square wave sound chip, which was basically the equivalent of having 3 PC speakers. It wasn't great, but at least you could compose simple chip tunes with it.

https://www.youtube.com/watch?v=ZP4EsbwN5mM

The PC Jr famously flopped. There were various PC clones with weird audio capabilities during the 80's. You could create a whole documentary about them, but the only one really worth talking about was the Tandy, which was a line of PC clones produced by Radio Shack. The Tandy 1000 had a Texas Instruments SN76489 sound chip, which like the PC Jr could produce 3 square waves, in addition to 1 noise generator. The Tandy 1000 sound chip was built to be compatible with PCJr sound, but ironically Tandy became the standard supported well into the 80's and early 90's.

https://www.youtube.com/watch?v=tSIFvfF0FqQ

It is important to note that in the world of game consoles and personal computers, the IBM PC and clones where still woefully behind in both sound and graphics compared to the competition. Computers like the Commodore Amiga (1985) and the Sharp x6800 (1987) blew it away in every respect, and were far more popular in places like Europe and Japan.

https://youtu.be/-wbGjlEV5i4?t=167

A turning point in PC audio came when a little company out of Canada called Ad Lib produced an ISA add on card for IBM PCs and compatible computers. Different sound solutions existed before them, but all of them had a lot of problems with adoption and cost. Ad Lib used simple, off the shelf, readily available and cheap components. Their idea was a pretty simple one, and not at all unique to IBM PCs. They took the a chip used in digital keyboards, a variant of which was already being used in a lot of home consoles, arcade machines, and personal computers, at the time and put it on an ISA card. The software would interface with the card via the ISA bus and produce music.

The Ad Lib Sound card, first produced in 1987, had a YM3812 (better known as the OPL2) FM sound chip. Sound on an FM chip is produced by modulating a sign wave form, essentially letting you create whatever pattern of tones you like. The YM3812 could produce sound in up to 9 channels, and had tons of more features besides, making it capable of producing not just tones but actual music.

https://www.youtube.com/watch?v=B2aaSG3ICd0

The brilliance of Ad Libs approach of using simple, off the shelf component was also its weakness. A million clones appeared almost immediately. The most successful clones of the Ad lib card were made by ac ompany that would go on to dominate PC audio from that point forward - Creative.

Creative's first notable attempt at PC audio was the "Creative Music System", which saw little adoption and basically sucked. It used two lower quality Philips SAA1099 sound chips together, to create up to 12 channels of sound and some noise. It was better than Tandy sound but not by a whole lot, and it didn't last long or see much adoption.

https://www.youtube.com/watch?v=hF6YpwQ8YEk

Creative's more brilliant idea was to create an improved version of the Ad lib card. Given the name "sound blaster" it would also include the YM3812 (better known as the OPL2), in addition to a DSP, or a "digital signal processor" to produce other effects like digital samples and sound compression. It also initially had the Philips sound chips for CMS but nobody really cared. It was fully compatible with existing Ad Lib software while including features that Ad Lib did not. For a variety of reason Ad Lib went bankrupt and "sound blaster" took off, becoming the standard of PC audio.

https://youtu.be/Fr-84mjV3CI?t=190

The original Sound Blaster was followed up with 2.0 version. The most notable change was support for stereo audio, at first facilitated by adding a second OPL 2 chip, but later replaced by the Sound Blaster 2 pro which included the "YMF262" otherwise known as the OPL3. The OPL3 was backwards compatible with the OPL2, capable of 18 audio channels, up to four sound channels, and many other features. It improved music, sound effects, and added support for higher sampling rates; among other things. Sound Blaster Pro audio was THE audio standard of the DOS era, supported by just about every game.

https://www.youtube.com/watch?v=DEhpzAk9NiI

Creative would follow that up with a sound blaster 16, which used the same OPL3 chip, with improvements to the DSP. The sound blaster 16 saw widespread adoption in the late DOS era, but was less popular with than the sound blaster pro due to midi bugs and low quality DSP sometimes producing soft or noisy sound.

https://youtu.be/ngVwEvrYf4c?t=44

Speaking of midi, let's talk about that. Midi is a format that basically describes music by a library of music samples. Going back to the keyboard analogy, you could switch between top hat, piano, flutes, and other instruments on the board. You could do the same thing with music in DOS. The OPL3 sound chip supported midi files as well. Music for DOS was usually composed on a midi device like a roland or a yamaha, and then later translated for the OPL3 or other sound chips.

https://www.youtube.com/watch?v=kwgSmXkIQf8

There were lot of different midi devices supported in windows and DOS. One of the earliest was the famous Roland MT-32, which is an external midi device built for professionals that you could also hook up to a compatible midi card for games. Given the cost of a midi module and an interface card, this was highly impractical at the time, but it did let you experience incredible audio on an IBM PC as early as 1987.

https://www.youtube.com/watch?v=Pdd2CNlcqn0

In addition to the MT - 32, there was the Roland SC-55 (used to compose the DOOM soundtrack) as well as several Yamaha midi devices.

In the early windows era, midi and windows sound ( a software library for music and sound effects) became the standard, with many different implementation and sometimes special sound features supported by a variety of different sound cards and manufacturers. You could also purchase "wavetables" or separate daughters boards that attached to an appropriate wave table header on your sound card to provide additional midi capabilities.

One last thing to mention about DOS era music is "redbook" audio. The first CD drives started to appear in PCs in the early 90's, and had widespread adoption by about the mid 90's. From the mid 90's to the early 2000's many games would stream CD quality music directly off the disc. The sound blaster pro and later 16 bit ISA cards would initially support optical drives via proprietary controllers integrated in the sound card itself, but this was ultimately phased out for generic IDE controllers.

https://www.youtube.com/watch?v=pGl4slGxY8U

Creative would go on to produce the AWE 32 and AWE 64 cards, which were each iterations on the sound blaster 16 with additional features geared toward windows and windows games. In the late 90's FM and midi music fell off in favor of CD audio and digital samples mixed entirely in software. Different audio standards and engines would appear over the years, the most notable of which were "windows sound", which was the default for games in the late 90's and early 2000's, and EAX, a 3d positional audio engine for games used up through the 2010 or so.

The history of EAX is it's own topic worthy of a lengthy discussion. Begging in the late 90's with EAX 1.0 and continuing until the last 2000's with EAX 3.0 and and EAX 4.0, it was a licensed audio technology for games that facilitated 3D positional audio. EAX cards also supported the ability to offload audio processing to the card itself, saving performance overhead. With the release of "Windows Vista" Microsoft, for security reasons, eliminated the ability for drivers to talk directly to hardware, which made it impossible for creative cards to work as hardware accelerators. Over time, game engines like Unreal and Cryengine supported their own 3D positional libraries and EAX fell out of favor. The realtek audio chips integrated in just about every motherboard these days grew in quality, features, and lowered in cost to the point that dedicated sound cards no longer made sense for games and media consumption. Now a days sound cards are geared toward music professionals, with features the center around recording and mixing rather than games. The quality on these cards isn't really notably better than integrated audio. You can buy cheap USB sound cards for less than 20$ that sound fine, and are pretty similar to the sound integrated in any device these days. Now that devices often don't bother with optical audio at all, the quality of sound chips is largely irrelevant, as all audio is digital and it was only the quality of the AMP that you were paying for anyway.

Reply 8 of 25, by solidus

User metadata
Rank Newbie
Rank
Newbie
mothergoose729 wrote on 2020-06-25, 00:49:

Gonna keep it high level, but here goes.

...

That was really great, thanks so much for taking the time to explain all that. Exactly the kind of overview I was looking for

Reply 9 of 25, by solidus

User metadata
Rank Newbie
Rank
Newbie

So in addition to my earlier questions, Im kind of wondering how modern playback works in the case of something like a Realtek audio chip. If I play a game that was recorded using a Roland MT-32 for example, what exactly is the Realtek chip doing? Does it have the ability to emulate all kinds of synths of the past? Is it just reading the midi instructions and approximating? What If I recorded something using a modern hardware synth, or even a software synth.. Does a modern chip like the Realtek audio just approximate pretty much everything using its library of built in instruments/sounds? If so, how does it even know which sound to use to get close to what was recorded on the original hardware?

Reply 10 of 25, by imi

User metadata
Rank l33t
Rank
l33t

pretty much all of that is done in software nowadays, the realtek chip is more or less just an ADC/DAC with a few other features, all it has to do is translate the digital audio to analog outputs.

Reply 11 of 25, by solidus

User metadata
Rank Newbie
Rank
Newbie
imi wrote on 2020-06-25, 02:08:

pretty much all of that is done in software nowadays, the realtek chip is more or less just an ADC/DAC with a few other features, all it has to do is translate the digital audio to analog outputs.

I guess thats kinda where I am lost then. If I play a game with a MIDI soundtrack, it doesnt have pre recorded digital audio. So does that mean the Realtek software has to emulate MIDI instruments to playback the games soundtrack? Sorry if my questions are redundant.. Im still wrapping my head around this 😀

Last edited by solidus on 2020-06-25, 02:42. Edited 1 time in total.

Reply 12 of 25, by mothergoose729

User metadata
Rank Oldbie
Rank
Oldbie
solidus wrote on 2020-06-25, 01:12:

So in addition to my earlier questions, Im kind of wondering how modern playback works in the case of something like a Realtek audio chip. If I play a game that was recorded using a Roland MT-32 for example, what exactly is the Realtek chip doing? Does it have the ability to emulate all kinds of synths of the past? Is it just reading the midi instructions and approximating? What If I recorded something using a modern hardware synth, or even a software synth.. Does a modern chip like the Realtek audio just approximate pretty much everything using its library of built in instruments/sounds? If so, how does it even know which sound to use to get close to what was recorded on the original hardware?

A recording of a midi MT-32 is sampled. Basically at any given point the pitch is graphed, as amplitude on a sign curve. Typical recording is 44khz, which means it has 44,000 samples per second. When playing the audio back, the sample are read and converted to analog via a DAC and that is what you hear. All audio is stored in some kind of digital format and played back in software.

I don't know the ins and out of MT-32 emulation, but what I think probably happens is that the circuits of an MT-32 are emulated at a low level in software, and then the emulated output is converted to digital samples and played back through your speakers. Either way, while the compression format between say MP3 and FLAC may differ, the concept is the same.

Reply 13 of 25, by darry

User metadata
Rank l33t++
Rank
l33t++
solidus wrote on 2020-06-25, 02:41:
imi wrote on 2020-06-25, 02:08:

pretty much all of that is done in software nowadays, the realtek chip is more or less just an ADC/DAC with a few other features, all it has to do is translate the digital audio to analog outputs.

I guess thats kinda where I am lost then. If I play a game with a MIDI soundtrack, it doesnt have pre recorded digital audio. So does that mean the Realtek software has to emulate MIDI instruments to playback the games soundtrack? Sorry if my questions are redundant.. Im still wrapping my head around this 😀

For your question, let's try to answer with analogies .

A MIDI file or MIDI track (MIDI music in a game) is like a piano roll for a self-playing piano
A synthesizer (FM, wavetable or other) is like a self-playing piano
A computer with a modern sound card (like your Realtek) is like a tape recorder/player, the hard disk being like tape .
A computer with an older sound card can include a synthesizer (FM or integrated wavetable), or be connected to one (like an MT32) and is thus like a self-playing piano along with a tape recorder .

Playing a MIDI file on a computer with an old sound card is like running the piano roll through the self-playing piano and having the output pass through the tape recorder (recording is optional).
On a computer with a modern sound card, there is no actual synthesizer (self-playing piano), so it must be simulated in software (what is called a soft-synthesizer) in order to play a MIDI file or MIDI track (piano roll) .
Either an older or modern sound card, being like a tape recorder, can also play back a recording of a synthesizer playing a MIDI file or MIDI track or a recording of anything else (WAVE file, MP3 file, etc) .

For basic digital audio concepts, see https://www.linfield.edu/assets/files/instruc … audioprimer.pdf

Reply 15 of 25, by keenmaster486

User metadata
Rank l33t
Rank
l33t

Your confusion has to do with the difference between digital audio, MIDI, and FM.

MIDI is as you said, a “score”. Requires a MIDI box or wavetable to be played the “right” way.

FM is a hardware synthesizer. It directly creates the waveforms. You can play MIDI files on it so it technically “supports” MIDI but you have to translate in software the MIDI commands, which are just things like “play this note with the xylophone instrument at this time” into waveform commands, which are like “play a sawtooth wave and modify it a little here, here, and here, etc” for the OPL chip. So you have to do a lot of work in software to make it work.

Digital audio is completely different. This is what every modern device has. It’s just 0’s and 1’s like you were talking about at first. You can play CD’s with it, etc, which you can’t do with MIDI or FM. The DAC (digital to analog converter) converts the 0’s and 1’s directly into an analog waveform. They are a literal representation of the waveform in digital format, with a 16 bit number for each time “slice”, and 44100 time slices per second. Think of a wave being drawn on a graph, and the digital version is a bunch of really thin bars, like the bar chart version of a line graph.

MIDI and FM are different. And no FM does not “support” playing MIDI files right away, you have to jump through a bunch of hoops code wise to make that work. That’s what the games had to do to support both.

Edit: you can emulate MIDI or FM on a digital audio card. That’s what DOSBox does. Digital audio is of course the most versatile if your computer is fast enough.

World's foremost 486 enjoyer.

Reply 16 of 25, by Oetker

User metadata
Rank Oldbie
Rank
Oldbie
solidus wrote on 2020-06-25, 01:12:

So in addition to my earlier questions, Im kind of wondering how modern playback works in the case of something like a Realtek audio chip. If I play a game that was recorded using a Roland MT-32 for example, what exactly is the Realtek chip doing? Does it have the ability to emulate all kinds of synths of the past? Is it just reading the midi instructions and approximating? What If I recorded something using a modern hardware synth, or even a software synth.. Does a modern chip like the Realtek audio just approximate pretty much everything using its library of built in instruments/sounds? If so, how does it even know which sound to use to get close to what was recorded on the original hardware?

The Realtek chip doesn't do anything, Windows has a built-in synthesizer. However, the MT-32 is a special case. The Windows synth (and Sound Canvas, etc.) follow the General Midi standard, which means stuff like 'Instrument 1 is a flute' (just a made-up example). However, the MT-32 is from before this standard, and is generally more programmable than playing back instruments with effects applied. It uses Midi commands, but in its own way.

Also you say "recorded using an MT-32", but the game is programmed/arranged for it, it's like you said basically sheet music it's playing back.

Reply 17 of 25, by Wanderer

User metadata
Rank Newbie
Rank
Newbie

Hi @solidus,
maybe this link will also help: https://en.wikipedia.org/wiki/Video_game_music

The History part is a good read about early PC/console sound development and explains many of the concepts mentioned in this topic.

I will try to answer some of your earlier questions:

solidus wrote on 2020-06-25, 01:12:

If I play a game that was recorded using a Roland MT-32 for example, what exactly is the Realtek chip doing?

Realtek chip only plays back digital audio stream that Windows sends to it. To hear a game programmed for MT-32, you need either a software MT-32 emulator (which accepts MIDI commands from a game, generates audio and sends it to Windows), or a real MT-32 + a MIDI out port on the PC.

solidus wrote on 2020-06-25, 01:12:

Does it have the ability to emulate all kinds of synths of the past?

No. The default Windows synth emulates only Roland SC-55 but with dramatically reduced quality and without sound effects. You can read about it here in more detail: https://gmsynths.blogspot.com/2014/06/ms-synt … y-that-bad.html

solidus wrote on 2020-06-25, 01:12:

Is it just reading the midi instructions and approximating?

Yes and no. It reads MIDI instructions and generates sound using the available instruments which comply to GS standard. It cannot "approximate" any other instruments or emulate other synths. Therefore, any MIDI file that does not follow GS instrument mapping will sound wrong when played back on Windows' default synth. (Actually, even a GM/GS file written on a different synth may also sound wrong... The rule for good sound is to always play back MIDI files with the exact synth model they were created for.)

solidus wrote on 2020-06-25, 01:12:

What If I recorded something using a modern hardware synth, or even a software synth.. Does a modern chip like the Realtek audio just approximate pretty much everything using its library of built in instruments/sounds?

No, as explained above. To extend the explanation a bit: a MIDI file does not contain any instrument description info that the synth could use to "approximate" an instrument. It only contains instrument number. A synth simply uses its own instrument with the same number.

solidus wrote on 2020-06-25, 01:12:

If so, how does it even know which sound to use to get close to what was recorded on the original hardware?

It just doesn't know (and won't be able to, until more sophisticated MIDI protocols and standards are developed).

Hope this helps.

Reply 18 of 25, by Velociraptor

User metadata
Rank Member
Rank
Member

I'm a bit further down the path than you are, but it's recent enough that I can hopefully remember what I learned now and what mattered from what I already knew. I'm an enthusiast who enjoys a bit of a fiddle with hardware, who enjoys building myself a nice new system, but the most important thing is I want a great experience playing golden age DOS games in the way they were meant to be with what was the premium components from back in the day. By golden age I mean pretty much the 90s.

I don't think there's any mistakes in this, but given the position I'm in there of course could be!

There are 5 different types of sounds that matter to us.

PC speaker - this pre-dates golden age games mostly. Many golden age cards could take over PC speaker functions. It sounds terrible, but sometimes tricks can be done to allow it to punch above it's weight.

FM synth - This is inexpensive, but decent sound synthesis - went mainstream with Adlib cards. This is the majority of the music that gamers like us would have had in the 90s, it's

Digital sound - This is usually sound effects (although sometimes FM synth was done used for this) - went mainstream with Soundblaster cards

MIDI sound - This is where you have an external synth producing the sounds. It's fairly high end went mainstream was the Roland MT-32. Before becoming a General MIDI standard and various cards being great but seems to be the Roland SC-55 is the most popular.

Modern sound - This is Windows era sound which first came mostly from CD-ROM games with the actual audio on them. These days it's in MP3 like containers, or maybe even FLACs, but this is what replaced all of the above and it's what came towards the end of the 90s. MIDI went obsolete here. It's really no different to the digital sound that came with the soundblaster.

------

So we need to cover all of those areas.

A soundblaster is by far the most popular starting point. This covers FM Synth, gives MIDI output and does digital sound. It can also pick up PC Speaker.

MIDI sound is optional, it's very much what the premium sound was in many but not all games. You can get it through a wavetable daughter board which isn't quite as good. The real winner is the MT-32 which needs a SoftMPU software memory resident to get working, or a dedicated MPU card.

All soundblasters are flawed. They can be noisy, they can be buggy, they can have the wrong FM synth chip and have a cheaper inaccurate alternative, or software emulation, they can have MIDI glitches, and they as I said above they don't do proper intelligent MPU.

Wavetable boards are ok and with a good soundfont you can get fantastic General MIDI from them. You cannot (at least at present) get MT-32 from it.

MT-32 is a bit special in that it has settings that the game can make, and without this ability many stuff doesn't work right. The later Roland MIDI synths had an MT-32 mode but it isn't as good as the real thing. MT-32s are hideously expensive, sadly, and rare. So the option we have is to do without, spend a fortune, or emulate. I'm going to emulate with a very cheap external solution which will act like an MT-32 and sound indistinguishable. I've only started to look into this. It will be a very small windows PC (known as a thin client), or it will be a Raspberry Pi.

I've already bought a SB16, mine is a CT2230 and will be a little noisier than I want, and may have MIDI bugs. However my hope is that with a bit of luck it does what I want and doesn't frustrate me too much, otherwise I'll need to get a decent MPU card.

I'm also adding an SBLive which is a much better windows card, they're cheap to the point of being almost junk. I'm also interested to see if I can use it for MIDI if I get problems with the SB16.

So what I ended up with, going down a route to get the best value for money is -

SB16 £50. SBLive £7. MT32/MIDI emulator - £40 (approx and I'm guessing). Hopefully the whole lot for £100.

Reply 19 of 25, by Oetker

User metadata
Rank Oldbie
Rank
Oldbie
Velociraptor wrote on 2020-06-25, 15:17:

Note that MT-32 compatibility goes both ways. Other synths can't really emulate it, but as the MT-32 isn't GM compatible, it isn't suitable for games other than those that were made for it.