Yamaha 4-Operator FM Synthesizer Family
Single Patch Editor
This patch editor is meant to work with a variety of Yamaha 4-Op FM synthesizers. However it has only been tested with certain ones. If you try it with your synthesizer and it doesn't work, please contact me (sean@cs.gmu.edu) and I will work with you to modify it to get it working. Status:
- DX9 Incompatible. Instead, use the DX7 Editor.
- FB-01 Incompatible. Instead, use the FB-01 Editor.
- DX21 Should work, but untested.
- DX27, DX100 Should work, but untested.
- TX81Z Works.
- DX11 Works.
- TQ5 Works.
- YS100, YS200, B200 Should work, but untested.
- V50 Works, mostly. Shifting to Hi doesn't change the displayed frequency values to Hi values (I don't have all the data for them yet), but moving the dials still does the right thing.
- WT11, DS500 Unknown.
Communicating with Edisyn
Set your synthesizer's receive and transmit channel to the same thing (perhaps Channel 1), and set Edisyn's Send and Receive channels to that as well. Set the program change to be Com (Common). Make sure that Sysex reception and transmission are turned on and that memory protect is off.
Setting the Synthesizer Type
The 4-Op synthesizers differ from one another in how their memory is organized (banks, patches, etc.), and how they respond to change-patch requests. You have to let Edisyn know what kind of synthesizer you're using or else it'll make the wrong kind of requests.
It's also important to set the right synthesizer type before uploading or saving a patch, particularly if you have the V50; or otherwise not all patch information may be uploaded or saved.
About the TQ-5, YS100, YS200 and B200
These units have their own special effects units. Some effects have legal time values from 0 to 40. Others (echoes and delays) extend these time values from 0 to 75. Edisyn does not try to change the bounds of the values depending on the effect you have chosen: instead if you choose a value from 41 to 75, Edisyn will display a little statement that this is for echoes and delays only.
Additionally, there is one special effect that is not available from the front panel, but is available over sysex: OFF! Incredibly this is only an option over sysex. Don't ask.
About the V50
The V50 editor is not completed yet, and is in a partial state. In particular, if you Shift to Hi, the Frequency Ratio and Frequency Ratio Fine knobs won't display the proper frequencies (because I don't have that data yet). However, if you change the knobs, they'll affect the Hi parameters appropriately.
Per-Synthesizer Parameters
Some 4-Op synthesizers have parameters and options that others do not. Various parameters in this patch editor are labeled to indicate this. You may see: 21 for the DX21, 27 for the DX27, 100 for the DX100, 11 for the DX11, TX for the TX81Z, the symbol > which indicates a group of later synthesizers, notably the TQ5, YS100, YS200, and B200, and finally V for the V50.
Bank Sysex
This patch editor knows about bank sysex messages (which group together multiple patches) as well as single-patch sysex messages. If Edisyn loads or receives a bank sysex message, you will be given the option to edit a patch from it, to save the whole bank sysex, or to upload the whole bank sysex.
About the Menu
If you mutate or recombine patches (using randomize, merge, hill-climb, or nudge) it may result in unfortunate operator frequency results. The Restrict Mutated Frequency Ratios... menu lets you restrict mutation or recombination of operator frequecies so that they only result in integer values or only to coarse-tune settings (either way, no fine tune). I suggest integers. I strongly suggest you also edit the mutation parameters to remove Fixed Frequency, Detune, and Frequency Ratio Fine from every operator, and also Transpose from the global settings.
Selecting a Patch Bank and Number
Different 4-Op synths have different organizations of memory, and so differ in the banks and patch numbers you can access. Specifically:
- DX21 Single internal bank, 32 patches, plus 128 voice ROM memory. The bank is divided on the front panel into "Bank A" and "Bank B", but it's really just one bank. The ROM cannot be accessed without loading it into internal memory, erasing an existing internal patch (or all of them), so I have elected not to do that automatically. You will have to manually load a ROM patch into internal memory in order for Edisyn to access it.
- DX27, DX100 Single internal bank + 4 "banks" (A B C D), 24 patches each. The "banks" are just links to either internal patches or to a set of 192 presets in ROM. Edisyn can't directly access a ROM patch: to download a ROM patch, you'll have to manually set up slot in a "bank" which points to it.
- DX11, TX81Z Single internal bank + 4 ROM preset banks, 32 patches each.
- TQ5, YS100, YS200, B200 Single internal bank + preset bank + card bank, 100 patches each.
- V50 Single internal bank + preset bank + card bank, 100 patches each.
- WT11, DS500 Unknown.
Gotchas
-
Most 4-op synthesizers have no way to write individual patches from sysex: you will have to send to the current patch from Edisyn, then manually save it to your desired patch location on the synthesizer itself.
- The 4-op family is very unusual in that patches aren't expressed with single sysex commands, but a sequence of them (so-called VCED, ACED, ACED2, ACED3, and EFEDS sysex commands). Thus when you save a patch to a file in Edisyn, you'll actually be saving multiple sysex commands concatenated together. You should be aware of this in case you try sending this patch later from some librarian software or editor (it shouldn't be a problem).
Additionally, if another editor has saved to a single file multiple single patches broken out as these sequences, Edisyn cannot read any more than the first one. Thankfully this is unusual; normally groups of patches are saved to a file in "bank" (or "VMEM") format. Edisyn can read files with multiple VMEM patches.
- On the TX81Z and DX11 (but not other 4-op synths) changing patches has bugs. I think I have a method which should work, but if strange things happen, let me know.
- When changing patches, the TX81Z will read "MIDI Buffer Full" and not change its display even if the patch has changed. Press almost any button and it'll reset the display.
Librarian Support
The bank structure in the librarian will depend on the kind of 4-op machine you have set Edisyn to. Once you have opened the librarian, it is locked to that kind of machine -- to use a librarian for a different kind of machine, you'll need to open a new patch editor.
The TQ5 and later machines have 100-patch banks: but I do not know any way to upload more than the first 32 patches to them.
The Yamaha 4-Op machines cannot write individual patches: if you attempt to do so from the librarian you'll be told that you cannot. Instead, you should write the entire bank.
Edisyn can quick-request a bank from some 4-Op machines (notably the TX81Z) via Request Bank from Synth. This is a lot faster than the patch-by-patch request method in Download Bank from Synth. So try it out; it might work!
Microtuning
The TX81Z can store microtuning information from the user, and it also has several preset tuning. Though it does not discuss this in the manual, it is my understanding that the DX11 also has the user tuning slot as well. Edisyn's MIDI Tuning Standard editor has a special facility to send and receive tuning information to these synths.
Thanks
Thanks to Matt Gregory (mgregory22@gmail.com) for his considerable help in debugging this patch editor. Thanks also to Jesse Guessford and the GMU School of Music. And thanks to Thor Zollinger (thor276@cableone.net) for his help in getting the DX11 editor working properly. Thanks to Vasilis (kasiofz@gmail.com) for reporting and testing bugs in the TQ-5. Thanks to Martin Tarenskeen (m.tarenskeen@kpnmail.nl) for envelope revisions. Finally, thanks to Jay Lifton (jay@jaylifton.com) for help on the V50.
By
| Sean Luke
|
Date
| TX81Z Version: September 2017
4-Op Version: December 2019
|