VOGONS


First post, by raymangold22

User metadata
Rank Newbie
Rank
Newbie

Hi there!

Since this topic hasn't been covered a whole lot, let me start at the basics (advanced apologies to those who already know this). I'll also include some quick sound samples.

When Yamha released their OPL3 Chip (YMF262), it was used in a lot of cards... probably the most popular being the SoundBlaster 16.
Well it wasn't long before other companies (ESS technology, Crystal Semiconductor, OPTi, Creative LABS etc) caught on and decided to make their own OPL3 implementation: this both allowed a larger profit as they didn't have to pay Yamaha for the YMF262 chips, and also gave them the ability to tweak the FM behaviour to their heart's content.

In many cases, these implementations are poorly documented, and are shoved behind the scene by YMF262 (all of those boring OPL3 emulators try to copy YMF262 as if it's the only OPL3 chip)... but in fact, I couldn't imagine OPL3 without them!

#1 Crystal FM Synthesis (as found on Crystal 4236B aka CS4236: CX4235 & CS4280 are corrupted).
Crystal is notable for its distinct noise generator (very distinct hihats, cymbal crashses, subtle octaved frequency shifting on toms -- similar to Sytrus, and "electronic splashes"), higher treble, and faster envelopes. It's my personal favourite OPL3.

#2 ESS ESFM (as found on ESS SOLO-1). ESFM is probably one of the most radically different OPL3 implementations in that it can be subtle. Sometimes it can sound very close to YMF262 (moreso than crystal), but other times, completely different. Because of its use of custom FM instruments under windows, it'll always sound different than YMF262 and CS4236, but there are mixed results in adlib tracker 2. Its major characteristics include slower vibrato, discreet portmanteau, balanced treble/bass, deep toms, and an odd fuzzing distortion on some custom patches.

#3 Dual OPL3: a combination of CS4236 & YMF262 (via SB16) running at once. Humorously, when I plugged my SB16 into my 233 P1 IBM, it couldn't help itself from playing along with the Crystal FM! Because of this, both soundcards will respond to MIDI information at the same time...
This can only be done with certain sound cards: so don't get too excited.
Stuff in dual OPL3 sounds fantastic! Crystal gets all the highs and lends its unique noise generator for drum sounds, and SB16 gets all the deep bassy lows.

ESFM playing Phandral's Spiral: http://www.youtube.com/watch?v=yBYL0Nq38cc
ESFM playing wheelchair (notice the fuzzing distortion): http://www.youtube.com/watch?v=0yKHGPGtI3s
Dual OPL3 gubble 2 menu (notice the phasing between the two chips as Crystal isn't 100% like YMF262): http://www.youtube.com/watch?v=O9mA71PTReM
Dual OPL3's nice chorussed metallic sound: http://www.youtube.com/watch?v=mk-7u0ZDUFw
Crystal's discreet hihats and cymbal crashes: http://www.youtube.com/watch?v=3EZLMAADXuc

Well that's all folks. If there's interest I can get deeper into the subject, otherwise I'll leave it at that.

Reply 1 of 34, by raymangold22

User metadata
Rank Newbie
Rank
Newbie

Also (apologies for the double post).

Here's the dual OPL3 version of phandral's spiral in dual opl3: http://www.youtube.com/watch?v=4XHsLJA1rsQ

Notice how much different it sounds from the ESFM version. It gains a chorus effect and crystal's snares and such.

Reply 2 of 34, by NJRoadfan

User metadata
Rank Oldbie
Rank
Oldbie

The MIDI driver implementation used can make OPL3 chips sound completely different. I was always a fan of how the Voyetra SuperSAPI! driver sounded compared to the standard Windows driver. I don't see any comparisons of Creative's infamous 20 voice "Creative Music Synthesizer" though.

Reply 3 of 34, by SquallStrife

User metadata
Rank l33t
Rank
l33t
raymangold22 wrote:

#3 Dual OPL3: a combination of CS4236 & YMF262 (via SB16) running at once. Humorously, when I plugged my SB16 into my 233 P1 IBM, it couldn't help itself from playing along with the Crystal FM! Because of this, both soundcards will respond to MIDI information at the same time...
This can only be done with certain sound cards: so don't get too excited.
Stuff in dual OPL3 sounds fantastic! Crystal gets all the highs and lends its unique noise generator for drum sounds, and SB16 gets all the deep bassy lows.

😀

This behaviour is expected. OPL FM chips are usually hardcoded to use ports 0x388 and 0x389 (potentially 0x220 and 0x221 too, depending on the card).

So any card receiving commands on those ports will play FM music when the software writes to those addresses. You could theoretically fill your ISA slots with SoundBlasters and AdLibs of various models, and get FM music from them all simultaneously.

Also, OPL synthesis data doesn't even resemble MIDI, they're not related.

Some games may store their music as MIDI, but it is translated to 2 or 4-OP FM instructions on the fly for playback on said chips.

VogonsDrivers.com | Link | News Thread

Reply 4 of 34, by Cloudschatze

User metadata
Rank Oldbie
Rank
Oldbie
raymangold22 wrote:

#2 ESS ESFM...

ESFM's native mode provides twice as many operators as the OPL3 (72 vs. 36), so while there's a balancing act between the number of 4-OP and 2-OP voices with the OPL3, ESFM basically allows all voices to be 4-OP, which the Windows driver takes advantage of.

Reply 5 of 34, by raymangold22

User metadata
Rank Newbie
Rank
Newbie
NJRoadfan wrote:

The MIDI driver implementation used can make OPL3 chips sound completely different. I was always a fan of how the Voyetra SuperSAPI! driver sounded compared to the standard Windows driver. I don't see any comparisons of Creative's infamous 20 voice "Creative Music Synthesizer" though.

Not necessarily. This may be true for things like creative's CQM (which isn't a chip at all! It's software: so of course drivers will influence how it sounds). How real chips generate envelopes, brightness, and other such quirks, will not change. In other words, patch programming can change, but not a chip's inherent behaviour.

SquallStrife wrote:
:) […]
Show full quote

😀

This behaviour is expected. OPL FM chips are usually hardcoded to use ports 0x388 and 0x389 (potentially 0x220 and 0x221 too, depending on the card).

So any card receiving commands on those ports will play FM music when the software writes to those addresses. You could theoretically fill your ISA slots with SoundBlasters and AdLibs of various models, and get FM music from them all simultaneously.

Also, OPL synthesis data doesn't even resemble MIDI, they're not related.

Some games may store their music as MIDI, but it is translated to 2 or 4-OP FM instructions on the fly for playback on said chips.

Actually, I don't believe you can run two soundblaster 16s at once (or even two crystals), as they'll fight for the same port: same goes for a lot of other soundcards. Crystal seems to be lenient to play with a SB16: as they're using different ports... so there are no conflictions.
A friend of mine tried dualling a few FM cards (with no crystals), and they would all fight.

I know with trackers and other things it's not necessarily "MIDI" data, but I don't know the specific word to term said data. It serves the same purpose.

Reply 6 of 34, by SquallStrife

User metadata
Rank l33t
Rank
l33t
raymangold22 wrote:

Actually, I don't believe you can run two soundblaster 16s at once (or even two crystals), as they'll fight for the same port: same goes for a lot of other soundcards.

Sure you can.

The digital parts of the cards probably won't work, probably won't even initialise, but the OPL parts of the boards will still work.

I've done it. I used an Amstrad AdLib clone, two CT2800s, and an SB Pro 2, all at the same time. I fired up Commander Keen 4 and got music on all four cards.

No drivers loaded, of course.

raymangold22 wrote:

Crystal seems to be lenient to play with a SB16: as they're using different ports... so there are no conflictions.

They're not. If you're getting music from both simultaneously, it's because they're both using port 0x388-389 for FM.

Last edited by SquallStrife on 2012-05-28, 03:24. Edited 1 time in total.

Reply 7 of 34, by Cloudschatze

User metadata
Rank Oldbie
Rank
Oldbie
raymangold22 wrote:

...things like creative's CQM (which isn't a chip at all! It's software...)

CQM debuted as the standalone CT1978 chip before being integrated into some of the larger ASICs. Perhaps you're thinking of Creative's WaveSynth/WG, software-based wavetable?

Reply 8 of 34, by raymangold22

User metadata
Rank Newbie
Rank
Newbie
Cloudschatze wrote:

CQM debuted as the standalone CT1978 chip before being integrated into some of the larger ASICs. Perhaps you're thinking of Creative's WaveSynth/WG, software-based wavetable?

I didn't realize it actually did run on hardware. (I wasn't thinking of AWE32's sampler; I don't like how creative called it wavetable though, that's what you'd call a PPG Wave, not a cheap sampler with reverb caked on to hide the low fidelity).

SquallStrife wrote:
Sure you can. […]
Show full quote

Sure you can.

The digital parts of the cards probably won't work, probably won't even initialise, but the OPL parts of the boards will still work.

I've done it. I used an Amstrad AdLib clone, two CT2800s, and an SB Pro 2, all at the same time. I fired up Commander Keen 4 and got music on all four cards.

No drivers loaded, of course.

They're not. If you're getting music from both simultaneously, it's because they're both using port 0x388-389 for FM.

Yeah I was thinking of PCI/ISA conflictions. Ooops. Crystal will play along with a PCI card. But I know a lot of things won't as the PCI card will hog.
Hmm... I should see if commander keen will work on the old PS/2 30-286.

Reply 9 of 34, by Ace

User metadata
Rank Oldbie
Rank
Oldbie
raymangold22 wrote:

(all of those boring OPL3 emulators try to copy YMF262 as if it's the only OPL3 chip)

That's because the sound out of most of the OPL3 hardware clones is WRONG. This is why I discourage people from using sound cards with OPL3 clones unless I know FOR SURE they're 100% exact replicas.

Allow me to throw in my experiences with OPL3 clones (and software-emulated OPL3) as replacements for the YMF262. We'll get into the documentation of the clones later:

-ESFM: This is one of the better OPL3 clones, but it does have some small imperfections. The first is some of the notes, particularly notes using white noise (or whatever noise is generated by OPL3), don't come out as pure noise like on a real YMF262. The second is with the low frequencies, which aren't as strong as on the real Yamaha chip.

-Crystal FM: Pretty lousy from what I've been able to test. It gets many more notes wrong and some card/driver combinations seem to result in major distortion such as this: www.youtube.com/watch?v=_ej3fraayUA

That's what I got with the CS4235 built into my IBM Personal Computer 300PL.

-OPTi FM: This OPL3 clone is weird. It sounds like it's accurate, but the volume levels are all over the place. Generally, this results in pretty major spikes in volume levels. Also, setting OPTi FM too loud may cause distortion.

-Aztech FM: Pretty much perfect. The only difference I've noticed is heavier quantization noise. This OPL3 clone was tested on this card: http://img190.imageshack.us/img190/3886/hpazt … techazt2.th.jpg

-Analog Devices FM: Absolutely horrible. High-pitched, and EVERYTHING sounds wrong.

-CQM: Nice sound quality, but is a bit of a mixed bag in terms of accuracy. It ranks in between ESFM and Crystal FM. It gets more notes wrong than ESFM, but does an overall better job than Crystal FM.

-C-Media FM (ISA version): C-Media has two different OPL3 clones. This first one is found in the ISA-based CMI8330. It's quite accurate, but some notes are set to different volume levels than on the YMF262 and the output is VERY noisy.

-C-Media FM (PCI version): This clone is found in the CMI8738. Very accurate, but VERY muffled, too (even more than the YMF262 on the SoundBlaster Pro 2.0, and we all know how heavily filtered that is).

-ALSFM: I don't know how this is on ISA-based Avance Logic sound cards, but on their PCI cards, it's about 99.9% perfect. The only problem is the Stereo sound, which is reversed.

-SoundBlaster Live! software-emulated OPL3: Ranges from tolerable to absolute crap. When it's tolerable, it does a worse job than CQM, but it's listenable. When it's absolute crap... well, I'll let this video speak for itself: http://www.youtube.com/watch?v=TYsQbD33vtg

The sound distorts too when the volume level is set too high.

-ESS software-emulated (?) OPL3: One of the weirdest (and the first) OPL3 clones I've come across. First off, the sound is noticeably downsampled, hits false notes left and right, gets a fair bit of notes wrong, and the sound pitch is different depending on whether you use it under DOS or Windows 9x. Under DOS, the sound pitch is correct, but under Windows, I get this: http://www.youtube.com/watch?v=X3A_ZP_zG0s

-Aureal software-emulated OPL3: This is "meh" at best. Sound pitch is WAY too low, sounds downsampled and generally isn't 100% correct.

-Crystal software-emulated (?) OPL3 (this is found in their SoundFusion PCI chips): Not very accurate, but doesn't sound as downsampled as the ESS and Aureal software-emulated OPL3. The big problem I've noticed with this OPL3 clone is how long it holds notes. Because of this, notes have a tendency to overlap.

I may have missed some, so I'll edit this post if I did.

Creator of The Many Sounds of:, a collection of various DOS games played using different sound cards.

Reply 12 of 34, by NJRoadfan

User metadata
Rank Oldbie
Rank
Oldbie
Ace wrote:

-SoundBlaster Live! software-emulated OPL3: Ranges from tolerable to absolute crap. When it's tolerable, it does a worse job than CQM, but it's listenable. When it's absolute crap... well, I'll let this video speak for itself: http://www.youtube.com/watch?v=TYsQbD33vtg

Keep in mind that was version 2.0 of the DOS emulation drivers. The original 1998 1.0 drivers didn't have any OPL emulation AT ALL. It sent the MIDI commands destined to the OPL chip to the ECW sample based wavetable synth!

Really, if you had that card in DOS, you crossed your fingers that your games supported GM for halfway decent music. It was also really annoying that there was no way of using a real MT-32 since both DOS and Windows 9x DOS Windows were hardcoded to use the ECW sample based synth when data was sent to the emulated MPU-401 interface. VDMSound was a revolution, and actually gave Windows 2000/XP an edge in DOS gaming over real DOS with these cards!

Reply 14 of 34, by silikone

User metadata
Rank Member
Rank
Member

I can easily make myself cringe by playing Wolfenstein 3D with my Sound Blaster PCI 128.

Do not refrain from refusing to stop hindering yourself from the opposite of watching nothing other than that which is by no means porn.

Reply 15 of 34, by swaaye

User metadata
Rank l33t++
Rank
l33t++
NJRoadfan wrote:

[AudioPCI software pre v2] sent the MIDI commands destined to the OPL chip to the ECW sample based wavetable synth!

That's what the Ensoniq Soundscape cards do. It sounds funky for sure. Sometimes it can be somewhat interesting, but usually it's best avoided.

Reply 16 of 34, by jwt27

User metadata
Rank Oldbie
Rank
Oldbie

There's also the FM801 chip by ForteMedia, I remember it sounding okay but it's been years ago since I had one of these cards so I can't really comment on it.

ESFM sounds overall very similar to an OPL3, though there are some small differences. I think the feedback circuit works slightly different.
The biggest difference I could find is when using a square wave as modulator with some feedback. Here's a sample:
https://www.box.com/s/56312f871f3aa42d3747 (First half is ESFM, last half is OPL3. Turn your speakers down, it's very loud noise)

Now the question, how many games actually use this, I have no idea.

silikone wrote:

I can easily make myself cringe by playing Wolfenstein 3D with my Sound Blaster PCI 128.

Just put this on while playing Wolf3D 😉
http://soundcloud.com/oplawaai3/wolfenstein-3 … menu-theme-opl3

Last edited by jwt27 on 2012-06-04, 08:53. Edited 1 time in total.

Reply 17 of 34, by kool kitty89

User metadata
Rank Member
Rank
Member

Ace, what about the pre-CQM ASIC implementations of OPL3 used on many Creative cards (SB-16, Vibra, AWE-32, etc). I specifically mean the examples where the "OPL" insignia is explicitly present on the board or ASIC.

I'm positive you've discussed them before, but I can't remember the details. Are they not clones, but full, licenced OPL3 derivatives embedded on an ASIC (similar to Sega's embedded YM2612)?
In any case, they seem to function and sound like discrete OPL3 chips and definitely not like CQM, let alone weaker alternatives.
If these examples are true licensed YMF262 derivatives, I'd have to guess that CQM was developed as a cost saving measure that worked around Yamaha patents/licenses.

And, of course, Yamaha's own OPL ASIC implementations in the YMF7xx family of sound chips/cards are quite good and use an embedded derivative of the YMF262 core.
On another note, looking at some details the YMF7xx chips, I hadn't realized they support SB Pro2 PCM compatbility. (something many later SB/compatible cards lack -many only having 8-bit mono and 16-bit stereo SB support)