Re: Yamaha Dx7 Sysex Patches

0 views
Skip to first unread message
Message has been deleted

Katja Gains

unread,
Jul 10, 2024, 10:22:32 AM7/10/24
to wahrmifihill

This page contains downloadable voice data as .sysex files. A sysex is a binary file that stores a sequence of system exclusive MIDI information mirroring the memory of the device: to transfer it you need to hook your Yamaha DX7 to a computer via a MIDI connection, then use one of the many sysex managers available for both Windows and MacOS to transfer each bank over.

On this site, I had previously posted a set of 24 Yamaha DX100 synth patches for download. The DX is a notoriously difficult synthesizer to program. That difficulty extends to its load/save workflow as well. Originally, the DX100 came with a special cord with a MIDI-style plug on one end and three headphone-sized jacks on the other. This is meant to be plugged into a data cassette recorder. The red cable is audio out, the white is audio in, and the black (I assume) controls the tape player. You hit a button combo on the DX100 and then a screeching modem sound is output to the tape. Modern users can record this sound on a computer as a .WAV file and it will work the same as and old-school tape deck. This works okay, but there is a better way to archive and reload sounds.

Yamaha Dx7 Sysex Patches


Download File https://urlca.com/2yXjpY



This is a tiny, powerful software utility that does two things. It reads and sends sysex data. You can actually see the data flowing in as you play the keyboard. Your playing is translated into beautiful hex values instantaneously. Download Bome SendSx for free!

On the Yamaha DX100 user patches are saved in the Internal bank of 24 patches. These are typically accessed by pressing the internal button and then any of the 24 green numbered buttons. To save all 24 of these patches at once do the following:

Your patch will not be saved just yet. If you switch to another patch, the sysex loaded patch will vanish from memory! You need to save the patch in the same manner you would save any edited sound.

Yeah the Volca is nice; love the sound. But for live jams it just doesnt take CC too well. I could look past that if only the uploading of patches would work smoother; ie. load a cartridge at once.
The manual saving per patch is too time consuming.

I noticed i can load easy fm7 patches to my waldorf iridium. Would be cool to have that feature in the digitone. Its a good starting point to work with when you are not an FM Synthesis expert. It would be sound quite different cause digitone have less OPs but that doesnt matter

The FM7 was specifically designed to work with Yamaha sysex patches, it was one of its main selling points, the same goes for the volca FM. I presume the designers of the Iridium also designed the FM synth with sysex compatibility in mind.

Hey eveyone, I was lucky enough to get a Yamaha DX7 not long ago in great condition. It also works great with MidiOx for transferring Sysex patches and swapping out soundbanks. My next items, should I find a hundred dollar bill in a sock in my apartment somewhere, would be an extra cartridge to save some patches without my computer, a pedal, breath control etc etc...

I've been trying to load in DX7 ROM patches from SysEx file downloads but apparently FM8 has an issue with patches that have a full stop in them or something like that. Is there an easy way around this, or if anyone has successfully transferred all the patches without issue would you be willing to share them? There are plenty of downloads out there, only FM8 keeps messing it up and more or less throwing out all the electric pianos.

I'm just trying to get the factory patches from here. I downloaded them a few other places thinking maybe i got a broken file but then found out that apparently FM8 has an issue interpreting the files that are titled like "E.Piano" or "E.Organ" etc. as it confused the ".Piano" as a file extension, i guess? This is what i read on a thread from the old NI forum. Hoping there is a way around it.

Indeed i have. Always any patch named E.Piano, E.Organ, E.Bass is misinterpreted. If there are multiple patches in a bank with "E." in the name it seems only one patch is unpacked and is named "E" and the rest disappear, so essentially a lot of the presets are being thrown out.

You might notice when you try to load ROM 1b that you'll get 26 patches rather than the 32. The file titled "E" will be the first electric organ patch "E.ORGAN" and all subsequent patches (in alphabetical order) containing the "E." (indicating (electric organ or electric piano etc.) will not be included.

Some parameters may be bit fields, some may be one or two bytes, etc. Having documentation for the general sysex format will be helpful, because some small parts will be dictated by that spec (as opposed to Yamaha specific). If you can find documentation for some other piece of Yamaha gear (esp. something released in the same time period), it may give you some insight into how they tend to design formats as a company. If you can't find something from Yamaha, even reading through documentation of the sysex format for some other company may help.

From looking at the midi spec, and both of these patches, it looks like all the patches are going to begin with 0xf0, and end with 0xf7. In addition, the 0x43 (which follows the 0xf0) is Yamaha's Manufacturer ID.

Even though this is only two example patches, there's a good chance that the patch format always has seven sysex messages in sequence (each starting/ending with 0xf0 0x43 0x00 0x4b 0x00 / 0xf7), that are always the same length. The task is just to follow the above procedure to reverse the individual parameters.

My thanks to vintage gear fan and DX7s owner, Bruce Brooks, who provided the SysEx files available on this page. He used them to restore the internal voices in his Yamaha DX7s, after replacing its battery and finding his ROM cartridge was faulty. Bruce loaded the internal patches into his DX7s with Bome Send SX and reported they worked perfectly. However, he was unable to try the cartridge patches, as he didn't have a RAM cartridge to write them to.

Over 100 sounds focusing on the most digital vibe possible! Featuring razor sharp tones, komplex modulations, solid stacks and all the subtle aliasing sweetness of the Yamaha DX200's 6op FM+ engine.

These sounds have been created from the ground up using a system exclusive programmer, allowing sound designer, mastering engineer and music gear nut, Gregory S of www.soundformrecordings.com to build at operator level, which isn't possible on the DX200 alone.

The patches are grouped into one full bank with several variations of each sound. They're intended to be played polyphonically via external MIDI keyboards and sequencers, allowing you to fully utilize the DX200 as a hands on, tweakable FM synthesizer module. Operator response has been optimized for velocity sensitive control. Midi note data and drum tracks have been stripped out for purity and convenience.

You are encouraged to use these DX200 sounds in your music projects, however, unauthorized re-distribution in sysex and audio sample format is prohibited. Please contact for licensing and commissioned work.

Hot tips:

1. Many patches contain looping envelopes using the "Free EG" function. Free Envelope Generators can be switched on or off right on the panel for maximum tonal variation!

2. Use the whole range of octaves, as many different sweet spots exist. Some sounds work better in the lower regions while others make full use of artifacts up high.

Jam on!

One selling point of the Volca is that as it's a DX7 clone, it can load DX7 patches, i.e. programs/voice data. As the Volca can receive a single-voice patch, I thought I could simply send the whole instrument data at once, and ignore the lack of Program Change messages.

Both in theory and in practice, the lack of Program Change interpretation can be bypassed using the SysEx. The practical issue remains of building a library of sensible patches to send... So I need to decipher the 32-voice banks after all.

The keyboard worked fine at first, although it seemed strange that the last half (patches 17-32) of a couple of the banks in the internal E! memory had garbage in them. I figured it was just a fluke, so I backed up the banks and then filled them back up with the factory ROMs. This seemed to work fine. But then after letting the keyboard sit for a few days, I turned it on and the last half of several of the banks was garbage. Time to take it apart and see what's going on.

The DX7 can transfer patches back and forth via sysex. See page 56 in the manual for instructions for configuring the DX7 to send/receive. (Function 8, set MIDI channel to 1, and SYSINFO to AVAIL. Then turn off memory protection for internal memory. Make sure you back it up first.) There are many tools for transferring sysex to/from a computer. In Linux, amidi is the command line tool for this. Here's how to send a .syx file:

When using amidi to receive sysex data, I noticed an extraneous 3 bytes on the front of the file (B0 60 7F). I think this is me pressing the OK button on the DX7 to start the transfer. I remove the three bytes with ghex, and the bank works fine. Using tail works fine too:

Originally I was using "cat" to record sysex in Linux. This turns out to be a bad idea as it captures the "Active Sensing" (keep-alive) FE bytes on the line. I used a hex editor (ghex) to remove the FE bytes from the front and end of the sysex dumps. This leaves me with a 4104 byte file for each bank. amidi does not have this problem so I recommend avoiding cat.

Sample output:Filename: rom-ted-faves.syxVoice #: 1Name: HARPSICH 1Algorithm: 5Feedback: 1LFO Wave: Square Speed: 35 Delay: 0 Pitch Mod Depth: 0 AM Depth: 0 Sync: Off Pitch Modulation Sensitivity: 0Oscillator Key Sync: OnPitch Envelope Generator Rate 1: 0 Rate 2: 0 Rate 3: 0 Rate 4: 0 Level 1: 50...The parameters are organized the same way they are on the DX7's front panel. This makes it easy to enter a patch from this listing. Only one parameter is on each line to make it easier to compare patches using diff (or meld). A more vertically compact format could be developed. Feel free to branch and develop.

aa06259810
Reply all
Reply to author
Forward
0 new messages