Copyright (c) 2012-2016 Hyperion Entertainment and contributors.

Bars & Pipes Professional: System Exclusive

From AmigaOS Documentation Wiki
Jump to: navigation, search


Use the System Exclusive requester to enter and edit System Exclusive MIDI messages. Normally, you'll access it from the Graphic and List Editors, but you'll also use it from the Big Sys Accessory.

Unlike other MIDI events, System Exclusive MIDI events are system specific - one MIDI device's System Exclusive implementation may not be the same as another's. Examples of System Exclusive data are patch banks, system memory dumps, system specific filters, etc.

Certainly the most frequent use of System Exclusive packets is in patch organization. The PatchMeister, which integrates directly into Bars&Pipes Professional, covers this aspect extremely well. As a result you don't need to become versed in the underlying technology of System Exclusive protocols to effectively use them to your advantage.

Recording System Exclusive Events

Bars&Pipes Professional can record System Exclusive events just like other events. By default, the MIDI In and MIDI Out Tools are set up to filter out System Exclusive data. You may decide to record a System Exclusive dump from your keyboard, for instance.

To do so:

  1. Highlight the System Exclusive button in the MIDI In and MIDI Out Tools of the target Track.
  2. Make sure that the Track is in Record mode, and put the Sequencer in Record mode as well.
  3. Start the Sequencer.
  4. Command your MIDI unit to dump System Exclusive. Make certain that there is no handshaking needed.
  5. Stop the Sequencer when your MIDI device is finished.
  6. Do the opposite when you want to send the System Exclusive data back to your MIDI device: set your device to receive, and start the Sequencer.
This process does no handshaking. Handshaking protocols require communication in both directions. The PatchMeister universal patch librarian takes full advantage of the handshaking ability of many brands of MIDI devices.

Accessing the System Exclusive Requester

Access the System Exclusive requester by clicking with the Pencil or Magic Wand in the System Exclusive region of the Graphic Editor. Please see MIDI Event Editing, for more information

Creating A System Exclusive Event

To create a System Exclusive event, select the Pencil, then click in the System Exclusive region of the Graphic Editor. Bars&Pipes Professional opens the System Exclusive requester.

Editing A System Exclusive Event

To edit an existing System Exclusive event, select the Magic Wand, then click on a System Exclusive event. Bars&Pipes Professional again opens the System Exclusive requester.

Big Sys

The Big Sys Accessory also accesses the System Exclusive Requester. Please see the Big Sys Accessory in the Accessories chapter.

Editing System Exclusive Data

Use the three Command buttons to edit System Exclusive data in the System Exclusive requester.

Entering System Exclusive Data

To enter data into the System Exclusive requester, select the Pencil by clicking on it or pressing function key "F1". Click on any byte in the display to introduce a new byte. The requester creates a new data byte with the same value as the byte you clicked on. If you click to the right of the last byte, Bars&Pipes Professional creates a new byte just before the ending F7 byte.

The System Exclusive Requester displays all bytes in Hexadecimal notation. Hexadecimal represents numbers in base 16. instead of base 10. The digits are 0 through 9 followed by A through F (for 10 through 15). As odd as it may sound. this is much more natural for binary data, because two hexadecimal characters always make up a byte (0 through 255 becomes 0 through FF).

Altering System Exclusive Data

To change the value of a data byte in the display window, select the Magic Wand by clicking on it or pressing the "F2" function key.

Click on the byte you want to change. The requester displays the byte in the slider above the display window. You may now drag the slider to change to the desired value.

Deleting System Exclusive Data

To delete a data byte, select the Eraser by clicking on it or pressing the "F5" function key.

Click on the byte you'd like to erase.

Sending The System Exclusive Command

Click on the Speaker button to the System Exclusive event down the Track's PipeLine and out the MIDI cable. Since the system ID and channel number are embedded in the event data, only the intended instrument receives the event.

Bars&Pipes Professional does not support messages that require a dialog with the synthesizer. And, since the channel number is embedded in the event data, if you want to send this command to more than one instrument, you must edit the channel number and send the command again.

If you are satisfied with your entry, click Okay to accept the changes, or click Cancel to abort the changes.

About System Exclusive Data

Please keep in mind the following points about System Exclusive Data:

Real-Time Recording And Playback

During real-time recording and playback, Bars&Pipes Professional does not support System Exclusive messages that require responses or handshaking, from the synthesizer. Usually, such messages involve downloading large sound patches to the synthesizer. You should do this in advance rather than during the Song's performance. The amount of data involved usually clogs the MIDI network, which results in the pausing of all music until the computer finishes sending the patch.

Instead, set up your System Exclusive information first by using Big Sys or, for patch organization, The PatchMeister. You can also keep System Exclusive packets recorded in one Track. After loading the Song, solo the Track and have it send its stuff. Then, mute the Track and activate all others.

Format Constraints

The first and last bytes of the System Exclusive data always have the hexadecimal values of FO and F7. You cannot change or delete these bytes, as they signal the beginning and ending of the event.

The next byte specifies the manufacturer's ID and channel number of the instrument. This manufacturer's ID (obviously) varies from machine to machine, and is used by the instrument to verify that the event makes sense to that instrument.

The third byte and onward (to the next to last byte) specify the System Exclusive command plus any data needed by that command.

From this, we can see that all System Exclusive events must be at least three bytes long, including the start and stop bytes. The System Exclusive requester, however, does not force a minimum message length beyond the start and stop bytes.