Implementing DX7 FM algorithms in VCVRack

Using Squinky Labs Kitchen Sink as an FM operator. . This look right @squinky?

Who’s going to do the other 31 algorithms?

2022-02-08.vcv (8.7 KB)

I think this lines up with DX7 algorithm 1. This patch is an example of how to make a funky rubber bass sound. Who’s going to do the other 31 algorthms?

4 Likes

Maybe better go for the way more flexible approach of creating a free matrix (like the Native Instruments FM7/8 matrix). Using mixers and matrix mixers. So you can connect any operator to any operator (as a modulator) and/or to an audio output (as a carrier). And then set and save some “algorithms” in the resulting patch as presets. With all envelopes and such connected it will soon get pretty “confusing” though (in VCV rack).

1 Like

I’d like to see an app that loads DX7 syx banks and writes VCV patches (using selected FM modules). perhaps a “save as VCV selection” in dexed

Delexander has a plugin that may be of use for the algorithms

GitHub - xandramax/Volume1: A plugin for VCV Rack

1 Like

LOL I have done a bunch. Once you do the first one, it’s easy enough to swap it to a new algorithm.

DX7Algorithm2.vcv (8.7 KB)

DX7Algorithm3.vcv (8.5 KB)

DX7Algorithm4.vcv (8.5 KB)

DX7Algorithm5.vcv (8.6 KB)

DX7Algorithm6.vcv (8.6 KB)

DX7Algorithm7.vcv (8.7 KB)

DX7Algorithm8.vcv (8.8 KB)

DX7Algorithm9.vcv (8.8 KB)

DX7Algorithm10.vcv (8.8 KB)

DX7Algorithm11.vcv (8.8 KB)

DX7Algorithm12.vcv (8.8 KB)

2 Likes

The ‘save as VCV Selection in dexed’ sounds like a bit of work.

I would do the Delaxander thing but I’ve not gotten my head around that devices user interface. Plus I think it’s limited to 4Op FM

True

4 Op plus alternate waveforms is a TX81Z :grin:

I think a DX10 is 4-op as well.

The Delexander Algomorph would be a great module for this. It’s not available for Rack 2 yet but hopefully coming soon. It can store 3 algorithms and morph between them.

Another great option is to use a Bogaudio Matrix44 or Matrix 88 in combination with a stoermelder 8face or Transit.

I’m tempted to buy a used Yamaha SY77 - from the description it just needs a battery replacement. “needs a factory reset before it can play”

It went to another bidder.

I have heard about Delexander FM Algomorph modules. Sounds very usefull and interesting (nearly 2000 algorithm presets). Haven’t tried them though. They are not in the VCV Library (yet)?

To emulate (load/convert) the DX7 (or any other machine) FM patches, it would also require all the exact same envelope/modulator/scaling shapes and operator input/output response curves and such.

If read some about the efforts to get Dexed where it is today…there are/were quite some hurdles to take tot get it to get the .syx patch to sound (nearly) identical to the the same .syx loaded in original gear. All the way up to the discrete stepping and DAC behaviour details.

I think if you want to load DX7 patches, just get VCV Host. Dexed is free

A lot of people also own Native Instruments FM8 which IIRC can load DX 7 patches, or you can mess around with your own custom algorithms and modulation paths.

1 Like

Doesn’t someone have a re-patching module for FM that they never release? Oh, I see everyone beat me to it. (edited to remove typo. edited before that to acknowledge that this post was out of date when I wrote it.)

1 Like

IIRC the FM7, this patch could be a starting point for rebuilding the functions and algorithms:

rsmus7_FM6_Base_starter_01.vcv (4.1 KB)

or this:

rsmus7_FM6_Base_starter_02.vcv (4.8 KB)

1 Like

I think the Delexander module is cool. Too cool for me. I never figured how to successfully get the algorithms I wanted into it. It’s a wicked idea but I’m not smart enough for it.

And yes @Squinky thanks for the sarcasm. And I mean that sincerely. I think.

I’M CAN’T EVEN TELL WHEN I’M BEING IRONIC ANY MORE. :cry: :cry: :cry:

2 Likes

I still have my SY77. It can do DX7 (although “cleaner”). But it has many extra FM (PM) options. More waveforms, more algorithms and feedback options and more. Also 0 Hz carrier (DX7 minimum 1 Hz) with initial phase control (few steps). And it also has wavetables and filters and such. Which you can combine with FM. And FX. The SY99 could also load samples. The later Motif and MONTAGE go even further.

But, frankly, software FM synths are a lot more practical

  • “FM” is relatively light on resources na will generally run just fine in-the-box.
  • The editing process is way easier on a screen. So many variables in a full 6 operator patch.
  • Also the whole library/patch load/save thing (via 3.5 inch disk or MIDI) is a nuissance. Alhough you can have the machine modded to accept USB and such.
  • Also…6 operators seem like a lot. But you may quickly run out. And no simply copying a second hardware instance into you studio.
  • Also, it has more algorithms then the DX7. But its still limited (although you can “hack” the internal algorithms via external MIDI).

That being said, I learned a lot from fiddling with my SY77.

Bare bones description of SY77 functionality/specs

Maybe also check out Herbert Janssen. He wrote some stuff on SY (FM) programming. Also on the additive Kawai K5 (which I also still own).

1 Like

About FM algorithms and mod matrices. I was wondering what would happen if I just ignored the whole algorithm thing and connected the whole matrix I/O to random modulators. Thus, effectively creating a system that is transitioning through all possible permutations (algorithms) while also transitioning through all possible modulation amounts and carrier mixes. So I set it up in a proof of concept.

A pretty bare bones patch with just 4 operators where I connect up all each operator to itself (effectively feedback) and to the other 3. It required 24 independent LFO’s connected to randomly inter-modulate the lot.

I I actually used the polyphony of 2 (16 channel) LLFO’s and 2 POLYOFF16 to set the offsets and speed (although I’m using a random walks for modulation) and 2 SPLIT’s to split to 32 LFO channels and connect all these “MONO” channels to each target. A very usefull tip from @Omri_Cohen.

  • modulating all the per operator out going signals (audiorate) as modulation sources/amounts for itself and others (4 times 4 CV lines controlling 4 VCA’s per operator).
  • Mixing (summing) all inputs (modulation amounts) per operator, connected to the FM input (audiorate signal).
  • modulating the depth per operator as separate “global” per operator modulation amount, (4 CV lines, one per operator)
  • modulating the gain/amplitude of the 4 “carrier” audio out lines (4 CV lines to VCA’s), effectively the carrier mix (the end-result audio signal)

I might have forgotten or misrepresented some details, but I guess the concepts are clear…

I was actually surprised it did not immediately end up in chaos and blown inputs…but…with the max modulation amount at some 50% the whole system seems pretty stable, transitioning through all the permutations.

The patch seems to be able to run forever without crashing a module somewhere in the chain (e.g. because of generating way to high level input signals, e.g. due to the summing/mixing of all modulation signals including all feedback lines). it seems to just drone and mutate happily.

To be honest…I put a 4:1 compressor at the end of the chain, because once in a while you will get a “perfect storm” when both modulation/feedback amount and carrier (audio) output amounts converge. Resulting in near noise at high volume.

Also…there is a delay time modulated long stereo Delay and a Reverb that dampen excessive higher frequencies as well (through phase cancelling by delayed feedback signals). No filter(s) were needed/used to further tame any excessive high frequency energy though.

I might have added octave control per operator…to vary ratios. But higher pitch/ratio’s would also generate even more higher frequencies, sooner culminating in FM noise. For now they were set at some fixed ratios.

1 Like

All this is cool but I just got Auturia’s V Collection. There is plenty to love in there beyond the DX7 emulator, but that’s where I’ll have to get my DX7 jollies off, because hey… I got it.

This is how I had done it in the past.

It was one of the many things that got shelved, but I can share the file if you would like it as a starting point for your own FM Synth.

sorrry, that wasn’t sarcasm. That was a redundant post and a typo.