The Unfinished Quest
Or Some Experiments With Converting FM Sounds From Video Games to Serious Synths
Music in videogames evolved from simple monophonic bleeps through sophisticated MIDI arrangements and all the way to Hollywood-scale records of top studio quality.There was a certain period, however, - spanning roughly from mid-1980s through the second half of 1990s - when the cornerstone of PC games sounds would be a single family of chips - integrated circuits - from a single vendor.
But some historical excursions are needed first.
Frequency Modulation Synthesis
Back in the early 1980s Yamaha released the venerable DX7 electronic synthesizer based on then-new technology of generating sounds - Frequency Modulation Synthesis.
The synth went on to be wildly successful, so much that it would be later called the device that shaped the sound of the entire Western rock and pop music of 1980s.
Yamaha went on producing an avalanche of both more and less sophisticated instruments based on the same technology. And along with them the company started mass-producing the sound chips, that would become the source of music and sound effects in a total zoo of arcade machines, home gaming consoles and personal computers.
Yes, those chirpy, buzzy, metallic sounds remembered by 1980 and 1990s kids, in most cases were produced by the bunch of Yamaha chips integrated into PC expansion sound boards ('sound cards'), primarily those by Ad Lib Inc., the manufacturer of historical AdLib Music Synthesizer Card and AdLib Gold 1000, as well as Creative Labs (now Creative Technology), the manufacturer of the countless Sound Blaster audio devices.
Technically, those FM sound generation units, popularly known as OPL2 (YM3812, 1985) and OPL3 (YMF262, 1990) were simplified cousins of Yamaha DX7. As were many other similar chips known as OPN/OPM/OPP, used primarily in gaming platforms and some PCs, perhaps better known in South-Eastern Asia then in US and Europe.
DX7 had 6 operators - i.e. generators of simple sine waveforms, those would modulate each other's frequency by certain preset algorithms, with the resulting waveforms getting converted to sound.
OPL2 had just two such operators, while OP3 had four. This meant that they were more limited in their sonic capabilities.
On the other hand, whereas the operators (ops) of DX7 could only produce sine waves, OPL2 and OPL3 could offer a much wider menu.
Besides DX7 was monotimbral, while OPL2 and OPL3 would alow to play back the whole bunch of the different instruments at once.
For the record, FM chips stood their ground really well. Games produced as late as in 1995 still supported them, even though considered more life-like sample-based synthesis has already arrived in 1992 (when both Gravis Ultrasound and Creative Soundblaster 16 with its 'daughterboards' hit the market).
Now, DOS games lovers who use DosBox software certainly know that it has a decent emulation of early AdLib/SoundBlaster sounds. Basically it is the inner hardware workings of those Yamaha OPL chips that is being emulated.
Emulated are also now-vintage synths like Yamaha DX7: there is a plethora of virtual synthesizers (as VSTi and in other formats) emulating both Yamaha's classic keyboard and even some software instruments striving to replicate the sounds of the classic PC and non-PC games.
So one day I asked myself is it possible to 'replant' the timbres from OPL and relate chips to the 'fatter' sounding DX7 emulators?
Upon the exploration of options the answers are: 'Yes', 'With a lot of effort', or 'No'.
Options smorsgabord
Here is Youtube video showcasing the Sonic the Hedgehog OST played via DEXED, a freeware DX7 emulator.
In the comments section one user commended the author for actually importing 'SEGA 4op VGM data' and converting it to DX7 SYSEX (MIDI system exclusive messages, the primary data format to transmit and handle every synth's parameters).
The video's author responded he didn't do it, instead he programmed the timbres in DEXED to sound as close to the original as possible.
Well, that's the ace level. Even having the reference sounds, the source files and oscilloscope it's a chore from hell to replicate those timbres. One oughtta know very well what they are doing.
But what is VGM mentioned in the comments and why at all it has been brought forward as something convertible?
The Zoo Species
VGM proved to be a format of storing digital data related to video game music. One of many, actually. Digging further I've run into a chaotic zoo of various data formats pertaining to game music. Some of them contained both music tracks, as well as settings for the OPL instruments. The other kept them apart.
For example, Ad Lib Inc. created a music composer program Visual Composer for their cards that stored the instruments separately in .INS or in batches (.BNK) files, while the music would be stored in .ROL files.
According to the linked article, games that used Visual Composer for their music 'either came with the artist's original ROL and BNK files and AdLib Sound Driver, or conversions in MUS (AdLib), MDI, CMF, or custom formats and drivers'.
One such custom format was Westwood ADL used for storing music to the studio's early 1990s games, including Dune, Dune II, Legend of Kyrandia and some others.
ADL files can be extracted from the game packages (PAK files in the case of Dune II). People did it before. But what's next?
To find a converter, apparently.
Surprisingly, with all those emulators by DosBox, Nuke and others, there are no converters that could extract and sort the specific datasets pertaining to timbre settings and music. Or, at least, I hae failed to find them.
There are options, however. For one, DosBox can record and dump into external files raw data output of data generated from the emulated OPL chips. The resulting .DRO files can be read and played by several players, and, importantly, converted to already mentioned VGM format.
Besides, certain builds of DosBox allow to save the music directly as VGM.
And VGM format is exactly the thing created for storing 'audio instructions sent to a wide variety of audio chips', thus becoming a de facto standard format for storing retro video game music, both from consoles and PC.
VGM filess neatly contain the FM data of the instruments used by the video game composers. This data can be made human-readable by converting the VGM to TXT using the VGM2TXT.EXE utility.
Then all that remains to do is...
...To get a dab hand at FM synthesis
Yep. Also to find the proper software and reenact all those values from the VGM2TXT output file by hand.
Sounds like a cruel joke. Not really, though: it's in fact doable with free virtual synthesizers in VSTi format such as:
🔸 JuceOPLVSTi
🔸 ADLPlug (which includes two emulators - ADLMIDI and OPNMIDI)
Bad thing, there are no direct converters for VGM format that can translate the data to any format readable by DX7 or its emulators.
Interestingly, however both JuceOPLVSTi and ADLMIDI are capable of reading .SBI files (Sound Blaster Instrument), the format of instrument-only data created for Yamaha's OPL chips implemented in early Sound Blasters.
Also interesting that either of these software instruments utilize the same emulation 'Cores', the one from DosBox, yet the same timbres may sound notably different.
Still, when it comes to convertibility, .SBI is a sort of a dead end, as is .VGM.
Enter Wohlstand
Another interesting format is encountered in the aforementioned ADLPlug virtual synthesizer: WOPL/OPLI. It stores the instruments and entire banks of FM patches (instruments, or timbres) from various PC games converted, apparently by the format's creator Wohlstand (Vitaliy Novichkov), who also created a very interesting converter OPL3BankEditor, that reads quite a few instrument formats, and allows to edit those patches too.
WOPL/OPLI seems to be a created in order to consoliate the zoo of data formats for Yamaha's FM chips.
But whatever lot of formats can be translated into OPLI/WOPL, there is no way to convert them into DX7-readable format so far.
The Converters
In fact there appears to be just two sister utilities that is able to convert FM instruments data to DX7-compatible formats, - DXConvert/TXConvert.
They can read quite a bunch of various formats… but not the 'gaming' ones, like .SBI, .ADL or .VGM or .WOPL.
They can, however, read .OPM files.
Like a Bridge Over Troubled Water
OPM is Yamaha YM2151, a four-operator FM chip, a closest relative of OPN (, the sound generation unit from Sega Genesis (aka Mega Drive) and countless arcade games.
It was Yamaha's first single-chip FM synthesis implementation, originally creatd for some of the cheaper variants of Yamaha DX synth series - DX21, DX27 and DX100. Apparently later these keyboards were also powered by an almost identical YM2164/OPP, which also was the 'heart-n-brain' of Yamaha FB-01 synth box.
No surprises that .OPM format is convertible to that of DX.
Besides, there is even a free VSTi-synth called VOPM/VOPMex that can read and play these files.
So in theory OPM is the coveted 'bridge' format.
Alas, there is only elusive VGM2OPM utility written years ago by certain Shiru, that had been used in the past to convert a sheer multitude of patches from gaming consoles (not PC) to .SYX (SYSEX), the DX7-readable format.
Problem is, this utility now is not present on Shiru's website and is very hard to find now. There are alternative versions, but the one I tried didn't work for me.
So far so bad. Yamaha's FM chips may be a close kin, but there is a notable gap in formats data.
The only hope is that someone would actually write an utility to do just that.
P.s.
Yes, those chirpy sounds were considered sort of bad decades ago. Maybe it's just my distorted perception of an electronic musician, but when you start to listen closely to those weirdie sounds they appear to be much more than just limited and technologically challenged attempts to imitate some real-world acoustic instruments.
Besides, some gaming OSTs played through the FM synths sounds just more fitting.
Compare:
This is 'Desert of Doom' track from Frank Klepacki's OST for Dune 2 played via AdLib/SoundBlaster FM synthesizer.
Now this is the same track played via Roland MT-32 external module, a much coveted piece of hardware from late 1980s:
MT-32's sound is more acoustic-like, it's richer and deeper, but... out of place somehow, isn't it? Music sounds just a bit more bland and static. While the FM version totally rocks, no?
Some extras:
For all you FM lovers out there... - A 2010 post on KVRAudio by DrWashington with links to 'pretty much every Sega Genesis/MegaDrive' game music instruments in OPM format as well as SYX, readable by DEXED or Native Instruments FM8 synthesizers (and must be readable by hardware as well).
Dexed-Genesis: A library of .OPM timbres converted Dexed-compatible .SYX files.
And some stuff for musicians:
Twisted Electrons Twist FM, first showcased earlier this year, is a polyphonic hybrid synthesizer built on two Yamaha YMF262 (OPL3) chips. Yes, a commercial synth based on AdLib Gold, Sound Blaster Pro 2.0 and Sound Blaster 16 sound generators.
And it sounds damn good:
Similar attempts had been undertaken 20 years ago - check MIDIBOX FM too.
FM Synthesis of Real Instruments (and any other type), a 2016 book by Thor Zollinger covering advanced FM synthesis, and essentially stripping it of the unhealthy aura of mystics and unfriendliness.
A tremendous base of DX7 patches - there are literally thousands spinning all around the Web.
The creator of DXConvert/TXConvert utilities have undertaken a daunting project of converting tons of patches from various 4-op synths into DX7-compatible format. A lot to play with.
Have a great time with all these sounds!
#sound #games #fm #synths