EXGet and EXPut

EXGet and EXPut are used to store and recall programs for synthesizers. These are generally voice patches, but in general they can be any sequence of MIDI system exclusive messages.


The EXGet program is used to record MIDI system exclusive messages and store them in files. To run EXGet, type
exget filename
where filename is the name of a file you want to create. If you leave off the extension, EXGet will use the extension .syx (for System Exclusive). If you do not specify a file, you will be prompted for one.

EXGet has several options that may be specified on the command line:

After EXGet starts, you will get the following prompt:
Do you want instructions? [y]
to which you can respond with y, n, or just RETURN to indicate yes. If your response is yes, the following instructions are printed:

This program will let you save MIDI system exclusive messages to a file. When you get the prompt: "Ready for your data...", send one or more sysex messages from your synthesizer. See the CMU Midi Toolkit Manual or your synthesizer operator's manual for instructions on this. Use the exput program to send sysex messages recorded by exget.

Next, you are prompted as follows:

Ready for your data. Type space when you are done...
and you should cause your synthesizer to send whatever system exclusive messages you want to save. One or more messages can be saved. Notice that EXGet will not request information automatically. This would require EXGet to know about types of synthesizers. To be more general, EXGet is very simple. Consequently, you must manually cause your synthesizer to send the desired information to EXGet.

After one or more messages have been sent, type the space bar and the messages will be saved in the file you specified. The file format is simply bytes in hexadecimal separated by spaces. As the data is output, EXGet will check to make sure the data has not been garbled. A warning will be printed if any errors are detected. EXGet will also try to print a description of the exclusive messages it received. You can send the data back to your synthesizer using the EXPut program described below.

NOTE: If you find that you are sending two messages instead of one when you use EXGet, here is what is probably happening (we will use the DX7 as an example, but this may apply to others as well): When you push the ``yes'' button to send data, the DX7 sends a MIDI message that means ``push the `yes' button'', analogous to sending a MIDI note-on message whey you press a key. Next, the DX7 sends voice data as requested. Meanwhile, the first MIDI message has gone into the computer's MIDI IN port and has been forwarded to the MIDI OUT port. If the MIDI OUT is connected to the DX7 MIDI IN, then the DX7 gets a second request (via MIDI) to send data! You can avoid this by disconnecting the DX7 MIDI IN cable or by using the ``-block'' switch when you run EXGet. At present, only the Amiga version of CMT implements MIDI THRU whereby MIDI IN can be forwarded to MIDI OUT, but this is likely to change in future releases.


The EXPut program takes files created by EXGet and sends them as MIDI output. To run EXPut, type
exput filename
where filename is the file created by EXGet. A default extension of .syx is assumed if you do not specify one.

EXPut has several options that may be specified on the command line:

After starting, EXPut will ask:

Do you want instructions? [y]
The instructions are as follows:

This program sends system exclusive messages previously saved by the exget program. You must set up your synthesizer to receive the system exclusive messages. See the CMU Midi Toolkit Manual for more details.

EXPut can read binary or default ASCII files. The files are distinguished automatically by looking at the first byte (if the file is binary, the first byte will have its high order bit set). Assuming the file you specified contains valid data, you will next see the prompt:

Ready with your data. Type space when you are ready...
Type space to send the data. If a message is one which EXPut knows will cause a major change, you will be asked for confirmation before the data is sent. At present EXPut only asks you to confirm Yamaha 32 voice and 64 performance data messages.

After the data in the file is sent, you are prompted by:

Type Q to quit, RETURN to send another file:
As the computer says, you can quit or continue to send more data. Typing a file name gets you back to the prompt: ``Do you want instructions? [y]'', which even if you asked for them earlier have by now have scrolled off the screen.

Previous Section | Next Section | Table of Contents | Index | Title Page