Home -> Magazines -> Issues -> Articles in this issue -> View
How to Store your SPX90 Effects | |
Using System Exclusive Bulk DumpsArticle from Sound On Sound, October 1988 | |
Have you ever wished you could save your SPX90 effects programs to disk or into your MIDI sequencer for instant recall at the right point in your music? Using the power of MIDI’s System Exclusive Bulk Dump commands, Mike Collins explains how it can be done.
Have you ever wished you could store your SPX90 effects programs onto disk or into your MIDI sequencer for instant recall at the right point in your sequence? Using the power of System Exclusive commands, Mike Collins explains how it can be done.

To do this, you must first take the metal cover off the SPX90, which is a very simple task and involves undoing about half a dozen screws. You then change the position of the internal switch marked 'SW105' on the main circuit board inside the unit. That's all there is to it - a 12 year old kid could do it, but do make sure that you have unplugged the SPX90 from the mains supply before you open the case, as even the most experienced of us don't need to run the risk of accidentally touching something 'live' with mains voltage inside the unit.
When using most MIDI gear it is far preferable to use a splitter box or a MIDI patchbay to route MIDI signals separately to each MIDI device in your set-up, and to connect both the Ins and Outs of each unit to the patchbay. This helps prevent MIDI delays which can accumulate using the Thru sockets, and also allows for the possibility of instant set-up and subsequent recall of all the parameters of every MIDI device in your system using System Exclusive (two-way) communication. For these reasons, I would suggest that it is probably a good move for most SPX90 owners to change their MIDI Thru socket into an Out permanently, especially if your SPX90 is mounted in a rack and thus less accessible when it comes to removing the cover to change the switch setting inside.
There is no front panel switch which allows you to instruct the SPX90 to transmit and receive its programs to and from an external MIDI device. To do this, you must send the appropriate instruction to the SPX90 via MIDI System Exclusive. These instructions are printed in the back of the SPX90 manual, but are incorrect as published and incompletely documented. I obtained the correct Bulk Dump Request data from Yamaha in Japan via Eddie Kudo, the Technical Liaison guy at the Yamaha R&D Centre in London.
It turns out that you have to send an individual Bulk Dump Request message for each SPX90 user memory (60 in all), and for each of the Program Change Assignment tables (four in all). Also, you have to spread these Requests out in time, allowing at least one millisecond between each message, as there are too many messages for the SPX90 to respond to were they all to be sent at once. I had to work this out by trial and error, and it took several attempts before everything worked OK. Writing the System Exclusive Bulk Dump Requests can be a tedious process initially, but you only need to write this information once and save it on disk for future use, so it's not too bad really!
I have used a Yamaha QX5 sequencer both to send the Bulk Dump Request messages and to record the actual Bulk Dump data that the SPX90 outputs. Many other sequencers - both hard and soft-allow you to record System Exclusive data as part of a sequence (MC500, QX3, ASQ10, Pro24, KCS, PROMIDI) but the QX5 is ideal for this type of work, as its Event Edit mode allows you to enter System Exclusive messages directly, one byte at a time.
To do so, you would create a track (Track 1 on the QX5) with a length of four bars, say, and then go into the Event Edit mode on the track and place the 64 separate Bulk Dump Requests onto different clock locations, spread sequentially throughout the four bars (see separate panel for details). Then you would transfer this track on to Track 2 and put it into Play mode, with Track 1 in Record mode ready to receive the Bulk Dumps (this is necessary because the QX5 can only record on Track 1). Next, connect the MIDI Out socket of the QX5 to the MIDI In of the SPX90, and connect the MIDI Out (the converted Thru socket) of the SPX90 to the MIDI In of the QX5. Then play your sequence of Bulk Dump Requests into the SPX90 and, just like magic, this will cause the SPX90 to output your precious effects programs, which will be recorded (dumped) on to Track 1 of the QX5. (NB. Make sure the SPX90 is not in Utility mode or nothing will happen!)
In practice, individual SPX90 effects programs could be recorded at the appropriate location (ie. just where they are needed) in a MIDI sequence, and the program parameters (in the form of System Exclusive data) stored at that point in the sequence, provided there is space in the music to allow time for the System Exclusive data to be transmitted from the sequence and received by the SPX90. Alternatively, a complete set of SPX90 programs could be loaded into the SPX90 at the start of a music sequence, in specially created set-up bars before the music starts, and normal Program Change messages could then be used to select required SPX90 effects programs within a sequence.
You should save the QX5 data sequence containing your SPX90 programs on a cassette, or preferably on a floppy disk using a MIDI data recorder such as Yamaha's MDF1 or DX7IIFD, or use a computer-based MIDI data recorder or MIDI sequencer which will record System Exclusive information and then allow you to save the information to disk.
If you already own a device which will record MIDI System Exclusive data, such as a DX7IIFD synth with built-in floppy disk, you can just use the QX5 to send the Bulk Dump Request messages to the SPX90 and then record the actual Bulk Dump data directly on to the device which is most convenient for your purpose. Not all MIDI sequencers will allow you to write and subsequently transmit the appropriate Request messages in the way that the QX5 will, but some MIDI master keyboards (like the Yamaha KX88 and Elka MK55/88) and some MIDI monitoring or sequencing software for the various personal computers do support this feature.
(Note: Not all MIDI sequencers which allow you to record System Exclusive data into a sequence will permit complete dumps of memory parameters at any particular clock location - they may only allow you to record small amounts of SysEx data. The SysEx capability of such sequencers is only intended to allow you to record real-time parameter changes from any synthesizer or MIDI effects unit which transmits such data. Check with the manufacturer.)
This facility to dump programs via MIDI is obviously an ideal thing for SPX90 users, of which there must be thousands throughout the world. It means you can now swap programs for fun, and busy professionals can take their favourite programs away from their home studio, without removing the actual SPX90 hardware. A guitarist friend of mine called J.J Belle, who does sessions for Johnny Hates Jazz, the Pet Shop Boys, and many others, was working in France recently and needed to take his SPX90 programs on a floppy disk to save the inconvenience of taking his personal SPX90 with him. I gave J.J the correct Bulk Dump formats and the information about how to use them with the SPX90, and he's been so busy since that I haven't heard from him yet about how he made out!
It does seem a pity that Yamaha don't see any need to make this sort of information available to SPX90 users. Obviously their attitude is that you buy the box and the uses to which it can be put are limited only by your own imagination - as the sales hype goes! Well, just try imagining the procedures I have outlined in this article!
All very easy once there is a well documented explanation, but how many of you would have figured it out without help? And how many SPX90 users are there out there in the big wide world? Quite a few I would say, many of them involved in professional recording work, and I am sure that a high proportion of these users would benefit from the ability to transmit and store their effects patches via MIDI. I believe that this type of information should be made more readily available via Application Notes from manufacturers, not only as a service to the end-user (providing information not clearly explained in the manual) but also (in their interest) to promote sales by pointing out any useful additional features of their products.
I hope that this information will be of use to many of you MIDI users, and that, in keeping with the original philosophy of MIDI as a communications standard between different manufacturers' products, it will allow people who own products from different manufacturers to get their MIDI system working in harmony to help-make even better music!
| Memory Numbers | Bulk Dump Requests |
| 31 | $FO $43 $20 $7E $4C $4D $20 $20 $38 $33 $33 $32 $4D $ 1F $F7 |
| 32 | $FO $43 $20 $7E $4C $4D $20 $20 $38 $33 $33 $32 $4D $20 $F7 |
| .. | - |
| .. | - |
| 89 | $FO $43 $20 $7E $4C $4D $20 $20 $38 $33 $33 $32 $4D $59 $F7 |
| 90 | $FO $43 $20 $7E $4C $4D $20 $20 $38 $33 $33 $32 $4D $5A $F7 |
| Bank Number | Bulk Dump Requests |
| 01 | $FO $43 $20 $7E $4C $4D $20 $20 $38 $33 $33 $32 $54 $01 $F7 |
| 02 | $FO $43 $20 $7E $4C $4D $20 $20 $38 $33 $33 $32 $54 $02 $F7 |
| 03 | $FO $43 $20 $7E $4C $4D $20 $20 $38 $33 $33 $32 $54 $03 $F7 |
| 04 | $FO $43 $20 $7E $4C $4D $20 $20 $38 $33 $33 $32 $54 $04 $F7 |
| F0 | Status Code [Start of System Exclusive message] |
| 43 | Yamaha ID Number |
| 2n | n = Device Channel Number in hexadecimal. (See note 1 below) |
| 7E | Format Number |
| 4C | 'L' (These characters are the ASCII 'header' identifying the SPX90] |
| 4D | 'M' |
| 20 | '-' |
| 20 | '-' |
| 38 | '8' |
| 33 | '3' |
| 33 | '3' |
| 32 | '2' |
| XX | (See notes 2 and 3 below) |
| YY | (See notes 2 and 3 below) |
| F7 | EOX [End of System Exclusive message] |
| XX = | 4D = 'M' | : Memory Parameters (as opposed to Program Change Assignment Tables) |
| YY = | 1F = 31 | : Memory Numbers (ie. the numbers of the SPX90's 60 user memories) |
| .. | ||
| .. | ||
| 5A = 90 | : |
3.
| XX = | 54 | = T : Table of Program Change to Memory Number assignments |
| YY = | 01 | = Bank A (Specifies Table) |
| 02 | = Bank B | |
| 03 | = Bank C | |
| 04 | = Bank D |

To enter the Bulk Dump Request messages into your Yamaha QX5 sequencer, you access Event Edit mode on the QX5 and insert the Bulk Dump Requests in hexadecimal in the locations given below.
The table shows each step in the sequence of Bulk Dump Requests in the QX5. There are 96 clocks per beat in the QX5. The bar, beat, and clock number of each Request is shown in the format displayed by the QX5, and the first byte (F0) of each Request is shown. (This is what you should see when you step through the clocks in Event Edit mode, after entering all the Requests).
There are 60 Memory Number Requests, each separated by 1 clock location within the first beat of bar 1 - ie. clocks 00/96 through to 59/96 (00 to 59 = 60) - followed by four Program Change Assign Table Requests which occur on the second beat of bar 1, and on the first clocks of bar 2, bar 3, and bar 4.
| Bar-Beat-Clock | Event Type |
|---|---|
| 0001-01-00/96 | EXCL 240 (F0) |
| 0001-01-01/96 | EXCL 240 (F0) |
| 0001-01-02/96 | EXCL 240 (F0) |
| 0001-01-03/96 | EXCL 240 (F0) |
| .. | .. |
| .. | .. |
| 0001-01-58/96 | EXCL 240 (F0) |
| 0001-01-59/96 | EXCL 240 (F0) |
| 0001-02-00/96 | EXCL 240 (F0) |
| 0002-01-00/96 | EXCL 240 (F0) |
| 0003-01-00/96 | EXCL 240 (F0) |
| 0004-01-00/96 | EXCL 240 (F0) |
The 'Andy Summers' Chorus |
All About Reverb |
Compression expression |
To Phase or to Flange - Or To Each His Own |
Digital Effects - A Guide to Digital Reverbs, Delays and Multi-Effects Units |
Real Time MIDI |
General MIDI - A True MIDI Standard? |
The art of noise - The secret life of the noise gate |
De-Esser Project |
Signal Processors... Meet MIDI |
That Syncing Feeling (Part 1) |
Technically Speaking |
Browse by Topic:
Fade away and radiate
(MX May 95)
Hands On: Yamaha SPX90
(SOS Dec 91)
Jack Of All Trades - Yamaha SPX90
(HSR May 86)
Mono Mode (Part 4)
(MT Nov 86)
The Power Behind the Button - Yamaha SPX90
(EMM May 86)
Trigger Converter for the Yamaha SPX-90
(HSR Jul 86)
Yamaha SPX90
(MM Apr 86)
Yamaha SPX90
(SOS Apr 86)
Yamaha SPX90
(12T May 86)
Yamaha SPX90 Effects Processor - Studio Test
(IM May 86)
Yamaha SPX90 Multi-Effect Processor
(EMM Mar 86)
Browse category: Studio/Rack FX > Yamaha
Feature by Mike Collins
mu:zines is the result of thousands of hours of effort, and will require many thousands more going forward to reach our goals of getting all this content online.
If you value this resource, you can support this project - it really helps!
New issues that have been donated or scanned for us this month.
All donations and support are gratefully appreciated - thank you.
Do you have any of these magazine issues?
If so, and you can donate, lend or scan them to help complete our archive, please get in touch via the Contribute page - thanks!