I first must state that this is in no way an attack on Sodaholic’s post back in December, but more of an explanation of why Sodaholic has his opinions in the first place. I wanted to reply in the post itself, but it's been two months, and I felt that this deserved its own thread.

Sodaholic said:

Personally, I never liked it that much. Sure, FM is cool and all, but I'm sorry, in all uses I can think of off hand, OPL generally sounded like garbage in most games. There was better FM out there, like the Genesis. (and when I speak of the Genesis FM, I'm talking about using it with good drivers like SMPS, not that GEMS shit that was on many games) Point being, something like Gunstar Heroes sounds so much better than Doom in OPL.

Hell, even the NES sounded better. Sure it was simpler, but it was just less tinny and crappy sounding. Add on a VRC6 chip and it's even better.

My personal favorite has to be tracked module music. It still manages to sound retro, but it actually sounds good, using decent sounding waveforms instead of tinny and screeching, or otherwise just plain ugly sounding generated tones.

The main reasons that OPLx sounded “bad” to most people were a) Sound Blaster’s limited SBI format for voice patches; All of them were OPL2 compatible, so no OPL3 waveforms/features were ever used in General MIDI FM synthesis, and b) Programming the chip manually was labor-intensive. With most PC games of that era being developed by a handful of people (usually no more than a dozen) in a strict timeframe of mere months, the effort involved in programming the OPLx in itself would take too much development time. Most developers hired a musician to handle this, with some fairing better than others.

Comparing the OPL3 (in this particular example) to the OPN2 is quite unfair unless compared on a technical level. In terms of features, the only missing one on the OPL-3 is the ability to play back PCM samples, as this wasn’t really needed, and the direct compatibility with DX patches, which wasn’t a big loss. Both chips are capable of six channel 4-op synthesis, with the exception of the OPL3 being able to set operators independently on all “channels” in 4-op mode, while the OPN2 was limited to Channel 3.

The main “big” difference is the many configurations of a PC that a game needed to support to stay in the market. In the PC world, there were many sound cards, with different music chips, such as the OPL2, OPL3, GUS, and the external SC-55 module. Using Doom as an example: this required a music format that would play seamlessly on all these configurations. As a result, any music involving special programming on the OPL2/3 would have to be either done in the sound engine with GENMIDI patches, or with a completely different music format for OPL. In Doom’s case, it’s easy to see which route won out.

This isn’t to say that Doom ‘s music couldn’t have been reprogrammed for OPL3. However, such an endeavor would take quite a long time, and when time is money, it’s simply foolish to attempt it. The only compromise would be allowing DMX to support an advanced patch format that stored more than stock voice information. Such a system would require a “macro” with parameters to be changed whilst the sounds are being played. This is doable (as I have done just this myself) but takes monumental effort.

And to debate the opinion on Sega Genesis music sounding “better”, between OPL2/3 and the OPN2 was due to forced proficiency. Game developers had an advantage designing games on the Sega Genesis because the hardware was “fixed”: every console would play the game the same, with the same video, sound, and music. This meant that music development could be focused entirely on one sound chip, the OPN2. As a result, many composers became very familiar with the chip, as opposed to having to program music for a wide variety of sound cards. This is why it’s quite unfair to compare Doom music being played on OPLx to something like Streets of Rage. Still, there were lots of Genesis games with crappy music.

Now, could OPL3 sound like Streets of Rage? Sure, to a certain degree. There is no doubt in my mind that the OPL3 could be programmed to sound like the OPN2. However, the Genesis also had an extra PSG from the Sega Master system, but that’s irrelevant at the moment.

As for the OPLx sounding worse than the NES: With the OPL2, you’d be right. With the OPL3, however, You’d be dead wrong. The OPL3 can sound just like the NES when programmed to do so, with the exception of the PCM channel. As a fun exercise, I did just that a few months ago, and the resemblance is a bit scary. The OPL3 also can mimic the VRC6, but that’s not a big surprise, either.

In terms of “Module music”, the main drawback to this on the PC was that it sounded different on different soundcards. As a result, most samples that had to be used were bottom of the barrel 8-bit 11khz sounds. Go any higher, and you block off half the soundcard market in the early 90s. Add to the fact that most games were still distributed on floppy disk, a musician really had no choice but to go “low”. Not to say that Modules weren’t used, but since there was no “across the board” way of playing them, most were mixed and played in software, which ate up valuable CPU resources. Only the GUS was able to play modules in hardware; with Sound Blasters, everything was done in software. This meant that certain features like sample interpolation was a no-no unless your algorithm was fast enough and not intrusive, which led to scratchy screeches if you had a high-end speaker setup.

And finally, OPLx was a mutt of a chip. There were analog and digital parts involved, meaning that the output could really suck if the soundcard was badly designed. This is a "feature" rarely taken in to consideration when emulating the blasted thing, and the result is a very scratchy, painful experience. I hope more work is done in this area, as it's essential to getting the right sound in the first place.

Share this post

Link to post

I think a big thing you're forgetting to take into account here, regardless of the technical differences between the chips, is the final DAC. Some of those older cards used really crappy ones.

In the end, while I find music played on OP[LN][23] chips interesting and nostalgic, and cool since it means people are learning about FM synthesis, I still can't help but see these chips as nothing more than alternative options in the world of FM synthesis. If I want to do FM synthesis, I would want something beefier and more flexible. Like a DX7, or custom patches in Pure Data or Reaktor.

Share this post

Link to post

I think a big thing you're forgetting to take into account here, regardless of the technical differences between the chips, is the final DAC. Some of those older cards used really crappy ones.

I kind of touched on it, but you are correct. I just didn't state how much of an impact it did make. For my music production and compositions, I use the later OPL3 models on the Sound Blaster 16 line. They are still "true" OPL3 chips, but with a much better-designed DAC and sound card surrounding it.

In the end, while I find music played on OP[LN][23] chips interesting and nostalgic, and cool since it means people are learning about FM synthesis, I still can't help but see these chips as nothing more than alternative options in the world of FM synthesis. If I want to do FM synthesis, I would want something beefier and more flexible. Like a DX7, or custom patches in Pure Data or Reaktor.

I do believe this goes beyond the technical aspects of the chip and into more of the user-friendliness of the thing. Especially with the DX7: it was well documented, the patch format was easy to share and was compatible with all DX7s ,unlike the OPLx which had no "native" patch format. With the OPLx, all of that had to be done manually.

I hope in the future, when I get some more time and some programming experience, to design a program for the OPL3 that resembles a DX-7 interface, with similar programmable patches and voices. There are lots of DIY projects for this, but I want to bypass all the hassle (and murdering of a vintage soundcard) and do it all on PC.

Share this post

Link to post

Eh? The Sonic series had some of the best soundtracks of that era, if you ask me.

I'm sure he was just joking, but there is some odd truth to this:

To cut costs, the OPN2 didn't use a floating-point mixer, but a crude 9-bit one. On some models, this caused some really weird cracking effects, and could affect the sound quality significantly. Several OPN2 revisions were made to fix these issues.

Edit: Danarchy, comparing the SNES sound chip to the Genesis is like comparing a F-16 to a Cessna. The Genesis was in the very early 16-bit era, which still has some weird 8-bit "limitations". The SNES was a later, calculated counter-punch. Nintendo realized the real way to beat Sega was in the Digital Sound Processor and Video Display Processor department.

Share this post

Link to post

I actually can't remember which came first. I didn't pay any attention to consoles back then. The truth of it is, though, that the SNES divided its graphics and sound evenly, but the Genesis was more like 60/40. The trade-off was that the SNES had richer music so they could pull off stuff like the FF6 or Chrono Trigger soundtrack, but the Genesis could have richer graphics.

Share this post

Link to post

I tend to prefer Sega Genesis music over Super NES music. And before any music nerds chime in and tell me how superior the SNES's sound board was, I'm well aware the SNES specs and it comes down to user preference.

Danarchy said:

The truth of it is, though, that the SNES divided its graphics and sound evenly, but the Genesis was more like 60/40. The trade-off was that the SNES had richer music so they could pull off stuff like the FF6 or Chrono Trigger soundtrack, but the Genesis could have richer graphics.

Wrong. Sega Genesis(called the "Mega-Drive" in Japan and Europe) came first(1988), which is the main reason why its hardware was technically inferior to the SNES(1990) in most ways. Genesis didn't have "richer graphics", SNES was capable of better visuals hands down due to a more powerful system.

Share this post

Link to post

I actually can't remember which came first. I didn't pay any attention to consoles back then. The truth of it is, though, that the SNES divided its graphics and sound evenly, but the Genesis was more like 60/40. The trade-off was that the SNES had richer music so they could pull off stuff like the FF6 or Chrono Trigger soundtrack, but the Genesis could have richer graphics.

A much more hilarious reason (and the right one) is that the Genesis wasn't even designed to compete with the SNES. It was competing with the NES and the PC-Engine (Turbograph-x 16, if you remember that stupid thing). Plus, not a lot of thought was put into the VDP, which was essentially a modified version of the Sega Master System. Enter the SNES, which could do 256-color graphics, and Sega was simply screwed over. The genesis could only do a fixed set of colors. OOPS!

The main power behind consoles of that era were the Video and Sound chips. The Main CPU just did the behind-the-scenes work. This is why the Atari 2600 can host a chip in the 6502 family yet still look like total ass, while the NES did the same but gave us Super Mario Bros.

Vordakk said:

I tend to prefer Sega Genesis music over Super NES music. And before any music nerds chime in and tell me how superior the SNES's sound board was, I'm well aware the SNES specs and it comes down to user preference.

I agree with you when it comes to early SNES titles. Super Mario World, while iconic, sounds pretty bad now. Zelda 3 was somewhat better, but still had some sound choppiness. However, if you compare the OPN2 over the SPC700 when it came to later titles like Star Ocean and Star Fox, I'd have to call you insane.

Share this post

Link to post

The SNES sound chip was also, basically, a form of sampler. You would load sound samples that were compressed in a certain format into RAM, then apply filtering and an ADSR envelope to them as you play back a sequence. This was a different method than the Genesis or the OPL* chips.

EDIT: to use a different analogy, it's basically the same idea as a module file (MOD/XM/IT/whatever). You have a sequence and samples that get played back. Except the S-SMP had an 8-bit programmable FIR filter and a few other things. But it's basically a sampler.

Share this post

Link to post

I agree with you when it comes to early SNES titles. Super Mario World, while iconic, sounds pretty bad now. Zelda 3 was somewhat better, but still had some sound choppiness. However, if you compare the OPN2 over the SPC700 when it came to later titles like Star Ocean and Star Fox, I'd have to call you insane.

And I'd respond with my original statement that it comes down to user preference. I'm not bashing SNES one bit, I own one along with over 40 games, most still in box with instruction manuals, and it's an incredible system no doubt. But on the whole I tend to like Sega better, as I found their game library more suited to my taste. For comparison, the number of Genesis games I own is more like 150 with box and instructions. And I just like the way the music sounds. One example I sometimes refer back to is the music to Thunder Force III for the Genesis, one of my favorite games. When I got the Super NES port, titled "Thunder Spirits", I really hated how the re-mixed music sounded on the SNES sound board.

Share this post

Link to post

The Mega Drive/Genesis could do 64 not-fixed colours on screen out of a total palette of 512. The SNES could do 256 colours on screen out of a total of 32768, IIRC.

The SNES did have better graphics, but the Genesis still had one advantage over the SNES graphically. The SNES could only do 256x224 in resolution, whereas the Genesis could do 320x224. Due to the slightly horizontally blurry output when in 320x224 mode, they could effectively mix colors, creating more shades than was actually on the palette, or transparency.

While I realize that the SNES was capable of dithering as well, obviously, the pixels were better defined, making it more obvious that it was being dithered, and didn't look as smooth.

Share this post

Link to post

It's not as clear as what you might think on which system was more powerful, in spite of the SNES coming out 2 years later. They both had pretty distinct strengths and weaknesses, which makes the 16-bit wars so much more interesting for me.

In general I see coders and programmers having a preference for the Genesis because it was a friendlier environment for them and the powerful CPU allowed them to be more flexible and pull off all kinds of neat tricks. One example is Dave Perry's games for Shiny and Virgin which had larger, more smoothly animated sprites than their SNES counterparts thanks to some art compression they could squeeze in there. There's plenty of technically impressive games pushing the Genesis further, even well past its prime in the mid 90's. I didn't see this happen as often on the SNES, I don't really want to count the games that relied on external chips to extend the capabilities.

When it comes to sound, it's really comparing apples and oranges. SNES was purely sample-based, the small amount of memory available could really limit the amount of instruments available, it was locked at 32khz (where the Genny could reach 44khz) and it had less channels than the Genesis but did have true stereo panning. I think it's easier to get a "richer" sound on the Genesis since you could have potientally limitless amount of timbres. You could only hard-pan sounds though, and the SNES had a natural advantage for stuff like string sections and choirs since these are made out of several sounds working in unison. If you wanted to emulate that on a Genesis you had to sacrifice several channels for the same effect.

Share this post

Link to post

It really depends on who was writing the music I think. I, personally, have always preferred the on-the-fly sound of the Genesis than the sampled SNES stuff. I think it was much easier to pump energy into Genesis games than SNES and here is a good example of two commercial productions.

The quality of the music was more dependent on the person writing it than the chip.

Share this post

Link to post

Just to throw another one of those into the Flashback mix (since this was the version I grew up playing; yes I have a Jaguar)...

And if anyone's curious, the Jaguar could do sample-based stuff (basically MOD files - Tempest 2000's music specifically IS in mod files), FM, AM, and also do FM between samples. How much of this ever got used is beyond me.

Share this post

Link to post

And if anyone's curious, the Jaguar could do sample-based stuff (basically MOD files - Tempest 2000's music specifically IS in mod files), FM, AM, and also do FM between samples. How much of this ever got used is beyond me.

Not very much. Given how Atari was already a laughing stock at this point, from a technology angle to a business angle, I'm amazed the Jaguar made it into production.

Share this post

Link to post

Interesting in the linked thread where fraggle said that many people use it for nostalgic purposes. I've been using Timidity++ for about a year and have been considering downgrading to Microsoft GS Wavetable for the same reason.

Share this post

Link to post

Interesting in the linked thread where fraggle said that many people use it for nostalgic purposes. I've been using Timidity++ for about a year and have been considering downgrading to Microsoft GS Wavetable for the same reason.

Share this post

Link to post

@people saying the OPL[23] can sound just like the NES: AFAIK its weaknesses are exactly in the lack of proper triangle and square waves, which are responsible for its inability to render certain sounds like e.g. heavily distorted guitars or explosions convincingly, and in general lacking the squarewave's rich harmonics. How could it ever sound like a PSG or AY-3-8192, then?

Share this post

Link to post

I thought I had collected a vast and unnecessary amount of knowledge about FM synthesizer chips from my work on Chocolate Doom's OPL emulation, but it seems I've got nothing on CSonicGo. Very interesting, thanks.

Share this post

Link to post

@people saying the OPL[23] can sound just like the NES: AFAIK its weaknesses are exactly in the lack of proper triangle and square waves

OPL2 sucks because to do squares you have to fake them; with OPL3 you don't have to at all! They're already there, and setting abs-sine as your modulator, you can sweep the square wave just like you want.

As triangle waves go, you can fake those by trimming the sine a bit ( I believe you can use the pulse sine or sawtooth for that one, but I'd have to check)

Share this post

Link to post

The OPL3 was very "unlucky" in that the platform that used it the most as-is (the IBM PC & 100% compatibles), also had the least-specific programming for it: it was almost always used in plain OPL2 or dual-OPL2 mode (like in Doom or Windows' MIDI).

The programs that used any of its capabilities beyond OPL2 and dual-OPL2 mode (not necessarily 4-op mode) were really few and far between, so it's a bit moot talking about what it could have been: it was clearly underutilized. Now if the AdLib came out with an OPL3 as standard back in 1987, things may have been different.

Share this post

Link to post

The OPL3 was very "unlucky" in that the platform that used it the most as-is (the IBM PC & 100% compatibles), also had the least-specific programming for it: it was almost always used in plain OPL2 or dual-OPL2 mode (like in Doom or Windows' MIDI).

The programs that used any of its capabilities beyond OPL2 and dual-OPL2 mode (not necessarily 4-op mode) were really few and far between, so it's a bit moot talking about what it could have been: it was clearly underutilized. Now if the AdLib came out with an OPL3 as standard back in 1987, things may have been different.

The reason was simple: all the "Sound blaster compatible" cards. THey were all SB Pro cards, so OPL2 was a given. And when SB16 came out, Creative just used the same SBI format for their midi drivers, and game devs not willing to take the risk on supporting OPL3, stuck with what worked(or that they were used to). It sucks.