In our Weekend Workshop on FM synthesis basics, we looked at the fundamentals of frequency modulation synthesis, and saw how we could use one operator to dynamically change the timbre of another over time to create simple bass and keys patches.
This time we’re going to see how we can make a more involved patch that takes advantage of a multiple-operator setup. Specifically, we’re going to recreate one of the most beloved synth bass patches of all time: the DX27 ‘Solid Bass’ preset.
Released in 1985, the DX27 was one of the many FM synths Yamaha created in the wake of the DX7’s enormous success. And while it was a cheaper, more portable take on FM with only four operators as opposed to the DX7’s six, it was still capable of making some fantastic sounds. The Solid Bass preset (which also found its way onto Yamaha’s TX81Z rackmount synth in 1987 in the form of the slightly tweaked ‘Lately Bass’), is a sound design classic. You can hear it on a huge number of 80s and 90s pop and dance hits including Whigfield’s Saturday Night, Orbital’s Halycon and On and On, and of course Haddaway’s seminal What Is Love.
Solid Bass is a cracking bit of sound design, and offers a combination of powerful characteristic transient and appropriately solid low-end that’s a really great use of FM’s capabilities. Let’s explore its mysteries and see what it can teach us about FM synthesis…
What you’ll need:
- A DAW
- Dexed, which is available in AU and VST formats for Windows, macOS and Linux
1. Analysing Solid Bass
The easiest way for use to work out what’s going on in Solid Bass is to load the patch up into a synth. DX27 SysEx compatability isn’t currently supported by Dexed, but it is supported by Native Instruments FM8. So we’ll use that to analyse the patch, and recreate it in Dexed.
Don’t worry if you don’t have access to FM8 – we’re just going to use it to understand how the patch works – but if you do, you can download the DX27 patches yourself from here.
To load the patch for analysis in FM8 we click File > Import SysEx and select dx100_02.syx.
FM8 will now have dx100_02.syx in its list of available banks, and with that selected we can load ‘Solid Bass’ from the list of patches on the right-hand side by double-clicking it.
To examine the structure of the patch, we click FM8’s Expert button.
This shows us the synth’s matrix, which is a much more flexible version of FM: every operator can modulate every other oscillator, and even self-modulate. As we’re using a DX27 preset, the patch isn’t doing anything Dexed can’t, we just need to figure out which of its routing algorithms is appropriate to recreate what we see in FM8.
In FM8 we can see we have a single voiced operator, Operator F. We know this is voiced as it’s routed to the output section of the matrix with a level of 100. We can also see that Operator F is being modulated by Operator E, and Operator E is being modulated by Operators D and C. Operator C is also self-modulating.
So, we have a voiced operator, and a modulating operator that needs to be modulated by two other operators, one of which is self-modulating. Dexed’s algorithm 14 fits the bill here: Operator 3 is voiced, it has a modulating operator 4 which itself modulated by operators 5 and 6, and Operator 6 is self-modulating.
2. Recreating the voiced operator
Now we know which of Dexed’s algorithms to use we can start recreating the patch. Load Dexed up in your DAW, and click the Init button to initialise the patch.
Turn up the Algorithm knob to 14. This won’t affect the sound of the synth just yet, as we haven’t actually turned up any of the modulating operators, so we’ll just hear the sine output of Operator 1.
We don’t actually need to use Operator 1 as we’re going to use Operator 3 for our voiced operator, so turn Operator 1’s Level all the way down, and Operator 3’s all the way up.
Let’s examine the corresponding operator in FM8 to see what it’s doing. We left-click on it in the matrix to bring up its tuning and envelope info, and we can also hear what it’s doing by deactivating Operators E, D and C, achieved by right-clicking them.
Tuning-wise, we can see that Operator F’s Ratio is set to 0.5000, but as this operator is just voiced and doesn’t modulate and other operators, this is essentially just transposing the whole patch down an octave.
To get a Ratio of 0.5 in Dexed, we turn Operator 3’s Coarse knob down to f = 0.5.
If you’re following along with FM8 you’ll notice that the instruments are tuned an octave apart. You can remedy this by turning Dexed’s Middle C knob down to C2.
Next we need to recreate the envelope. In FM8 we can see that the envelope fades out after about 2 seconds. To get something similar in Dexed, copy the envelope values we’ve used here. Dexed isn’t perfectly 1:1 with FM8, so we can’t simply copy parameters, but using our ears we should be able to get a sound that’s practically identical.
3. Recreating the modulating operator
We’ve created our voiced oscillator, but without modulation it’s just an extremely ordinary-sounding sine tone. However, if you play it up the keyboard a few octaves you’ll notice there’s a little vibrato going on. We can replicate that by setting the Speed and PMD (Pulse Modulation Depth) controls in Dexed’s LFO panel to 59 and 6.
Back in FM8, we reactivate Operator E by right-clicking it, and take a peek at its innards. We can see that it’s fundamentally the same as Operator F (Ratio of 0.5, envelope with a decay time of two seconds), so let’s copy the same values we used for Operator 3 in Dexed over to Operator 4, but with a higher EG1 rate as we don’t want to smooth off the start of the modulating operator.
Once that’s done, try turning up Operator 4’s Level knob and you’ll hear the harmonics of the patch gradually begin to develop. A level of 74 gives us something close to the FM8 patch.
With these two operators active we’ve got something approaching a fretless bass sound – with its long envelopes and low ratio it’s a pretty smooth sound, but the two extra modulating operators are about to add something special to the mix…
4. Adding another modulating operator
If we reactivate Operator D in FM8 and examine its parameters we can see some interesting stuff going on.
For FM8’s Operator D, the envelope is extremely short, which means we’re only going to hear its effect at the very start of the sound. For comparison, see the Operator F envelope, earlier in the workshop. Also, its Ratio is 0.9996 with an offset of -0.22Hz. This means it’s up an octave from the other operators but detuned slightly down. What’s more, the -0.22Hz offset means it will be proportionally more detuned the lower the pitch, though this is by a really small amount.
We can’t get these exact values in Dexed, but we can get close. We’re going to use Operator 5, setting the Coarse to 0.5, the Fine to 0.995, and the Det to -1.
Set the envelope to the values we’ve used above. Then, turn up the Level amount. If you turn it up to full you’ll get a really aggressive techno bass tone, like this:
A Level of 66 gives us a more natural sound that’s approaching a synth bass guitar.
5. Adding a feedback operator
We’re getting close to the Solid Bass sound, but the patch is currently really woolly-sounding, lacking the punch and definition of the original patch. The missing ingredient is the self-modulating operator. Reactivate Operator C in FM8 and everything snaps into place. There’s nothing mysterious about this operator: it’s using a Ratio of 1, a short envelope, and some feedback.
If it were voiced it wouldn’t be much to listen to, but in the context of this modulation routing, it gives the patch those classy mid-range harmonics that make the sound pop.
Using Dexed’s Operator 6 we set up a short envelope like so and set the Level to 83.
Then we turn the Feedback knob in the algorithm panel to 6 and we’re in Euro-bass heaven!
6. Results and conclusions
Now we have a patch that’s very close to the original, albeit a little brighter and punchier. It’s quite modern-sounding, but we can get a more retro feel by changing Dexed’s Engine Resolution to OPL Series. You can access the Engine Resolution setting by clicking the Parm button.
Note that changes to the Engine Resolution will only be applied once you’ve clicked the OK button.
If you’d like to check your patch, you can find our version of the Solid Bass patch for Dexed in .fxp format here.
Hopefully following this tutorial you’ll have a better appreciation for the role that relatively subtle modulation and self-modulation can have in FM synthesis, and be heartened that a sound featured on countless hit records can be created with no more than four sine waves.
Don’t forget to check out our past Weekend Workshops as well, and look out for more in the coming weeks.
If you’re looking for more inspiration, you can find more MusicTech tutorials here.