OPL3 implementations (ESFM, Crystal FM, dual OPL3 etc)

Discussion about old PC hardware.

OPL3 implementations (ESFM, Crystal FM, dual OPL3 etc)

Postby raymangold22 » 2012-5-27 @ 20:45

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.
User avatar
raymangold22
Newbie
 
Posts: 56
Joined: 2012-5-27 @ 19:56

Re: OPL3 implementations (ESFM, Crystal FM, dual OPL3 etc)

Postby raymangold22 » 2012-5-27 @ 21:08

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.
User avatar
raymangold22
Newbie
 
Posts: 56
Joined: 2012-5-27 @ 19:56

Re: OPL3 implementations (ESFM, Crystal FM, dual OPL3 etc)

Postby NJRoadfan » 2012-5-27 @ 21:18

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.
NJRoadfan
Oldbie
 
Posts: 953
Joined: 2012-5-26 @ 03:54
Location: Northern NJ

Re: OPL3 implementations (ESFM, Crystal FM, dual OPL3 etc)

Postby SquallStrife » 2012-5-27 @ 21:34

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
[retro swim] | Link | Release Thread
Regular silliness on Twitch!! http://www.twitch.tv/RetroSwim (8PM Mon, Wed, Sat AEST)
User avatar
SquallStrife
l33t
 
Posts: 2851
Joined: 2010-2-06 @ 15:18
Location: Drowning in consoles

Re: OPL3 implementations (ESFM, Crystal FM, dual OPL3 etc)

Postby Cloudschatze » 2012-5-27 @ 21:43

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.
User avatar
Cloudschatze
Oldbie
 
Posts: 1096
Joined: 2005-6-16 @ 14:32

Re: OPL3 implementations (ESFM, Crystal FM, dual OPL3 etc)

Postby raymangold22 » 2012-5-28 @ 01:27

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::)

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.
User avatar
raymangold22
Newbie
 
Posts: 56
Joined: 2012-5-27 @ 19:56

Re: OPL3 implementations (ESFM, Crystal FM, dual OPL3 etc)

Postby SquallStrife » 2012-5-28 @ 02:40

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-5-28 @ 03:24, edited 1 time in total.
User avatar
SquallStrife
l33t
 
Posts: 2851
Joined: 2010-2-06 @ 15:18
Location: Drowning in consoles

Re: OPL3 implementations (ESFM, Crystal FM, dual OPL3 etc)

Postby Cloudschatze » 2012-5-28 @ 03:16

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?
User avatar
Cloudschatze
Oldbie
 
Posts: 1096
Joined: 2005-6-16 @ 14:32

Re: OPL3 implementations (ESFM, Crystal FM, dual OPL3 etc)

Postby raymangold22 » 2012-5-28 @ 03:40

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.

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.
User avatar
raymangold22
Newbie
 
Posts: 56
Joined: 2012-5-27 @ 19:56

Re: OPL3 implementations (ESFM, Crystal FM, dual OPL3 etc)

Postby Ace » 2012-6-02 @ 14:19

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 ... zt2.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.
Ace
Oldbie
 
Posts: 529
Joined: 2010-10-16 @ 17:35
Location: Montreal, Canada

Re: OPL3 implementations (ESFM, Crystal FM, dual OPL3 etc)

Postby swaaye » 2012-6-02 @ 15:42

Ensoniq Soundscape FM emulation. ;)
swaaye
Moderator
 
Posts: 7486
Joined: 2002-7-22 @ 21:24
Location: WI, USA

Re: OPL3 implementations (ESFM, Crystal FM, dual OPL3 etc)

Postby F2bnp » 2012-6-02 @ 17:05

Ace is pretty much the king of FM Synthesis comparisons ! I remember watching all of your X-Wing videos one afternoon, pretty educational :P
User avatar
F2bnp
l33t
 
Posts: 3496
Joined: 2007-9-23 @ 10:19

Re: OPL3 implementations (ESFM, Crystal FM, dual OPL3 etc)

Postby NJRoadfan » 2012-6-02 @ 17:24

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!
NJRoadfan
Oldbie
 
Posts: 953
Joined: 2012-5-26 @ 03:54
Location: Northern NJ

Re: OPL3 implementations (ESFM, Crystal FM, dual OPL3 etc)

Postby leileilol » 2012-6-02 @ 17:26

I had the "pleasure" of owning an Analog Devices 1816 at one point. It's dead on true about it, not only the pitch for FM's off, so is the PCM X_X
by the way, DOSBox is not for running Windows 9x
User avatar
leileilol
l33t++
 
Posts: 9797
Joined: 2006-12-16 @ 18:03

Re: OPL3 implementations (ESFM, Crystal FM, dual OPL3 etc)

Postby silikone » 2012-6-02 @ 23:44

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.
User avatar
silikone
Member
 
Posts: 259
Joined: 2012-3-21 @ 19:53

Re: OPL3 implementations (ESFM, Crystal FM, dual OPL3 etc)

Postby swaaye » 2012-6-03 @ 00:54

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.
swaaye
Moderator
 
Posts: 7486
Joined: 2002-7-22 @ 21:24
Location: WI, USA

Re: OPL3 implementations (ESFM, Crystal FM, dual OPL3 etc)

Postby jwt27 » 2012-6-03 @ 02:07

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/wolfens ... theme-opl3
Last edited by jwt27 on 2012-6-04 @ 08:53, edited 1 time in total.
User avatar
jwt27
Oldbie
 
Posts: 1628
Joined: 2011-8-15 @ 02:19
Location: Fryslân

Re: OPL3 implementations (ESFM, Crystal FM, dual OPL3 etc)

Postby kool kitty89 » 2012-6-04 @ 05:43

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)
kool kitty89
Member
 
Posts: 272
Joined: 2012-2-15 @ 08:43
Location: San Jose, CA

Re: OPL3 implementations (ESFM, Crystal FM, dual OPL3 etc)

Postby sliderider » 2012-6-04 @ 21:14

I have one here with a chip that says Analog Devices 1848. Does anyone know anything about that?
User avatar
sliderider
l33t++
 
Posts: 5754
Joined: 2010-6-25 @ 13:02

Re: OPL3 implementations (ESFM, Crystal FM, dual OPL3 etc)

Postby leileilol » 2012-6-04 @ 21:21

it sucks
by the way, DOSBox is not for running Windows 9x
User avatar
leileilol
l33t++
 
Posts: 9797
Joined: 2006-12-16 @ 18:03

Next

Return to General Old Hardware

Who is online

Users browsing this forum: Moer, xjas and 11 guests