Everything You Ever Wanted To Know About System Exclusive (Part 12)
(But Were Too Afraid To Ask!)
PART 12: Martin Russ concludes this 12-part series designed to demystify one of MIDI's most important and useful messages.
It is just not possible to put everything you ever wanted to know about System Exclusive into a series, no matter how many parts it has! Instead I have tried to furnish you with the tools and an approach to using System Exclusive messages effectively, in the hope that you will then be able to undertake your own exploration. By way of illustration, last month's installment showed you how I approached trying to solve a typical MIDI problem. This month I will provide a few closing thoughts and something that you find at the end of very few series - a set of indexes!
Is there anything major left to talk about? Of course there is! As I write, new equipment is being released into an unsuspecting world - and if the trend of the last few years is anything to go by, it will feature increasingly complex implementations of MIDI and, more specifically, System Exclusive.
As product lines have developed, some manufacturers have taken their original System Exclusive format and extended it in a slightly random or haphazard way (Yamaha, for example), whilst others have chosen a well thought out format and stuck rigidly to it (Roland being a prime example). Other manufacturers have followed the letter of the MIDI law and mostly avoided System Exclusive (Ensoniq are one of the few manufacturers to use Parameter Numbers for editing internal parameters, while almost everyone else uses System Exclusive messages), whilst some have hi-jacked SysEx to do unusual things (Alesis's MMT8 sequencer can put Note and Controller information into SysEx packets) or even ignore MIDI protocols entirely (Akai's audio patchbay, for example).
All of these complexities serve to make some parts of System Exclusive a bit like uncharted waters; you need to be careful how you proceed. Hopefully this series has given you some useful pointers to the way you can make progress.
One of your most valuable allies in the pursuit of System Exclusive knowledge (after SOS!) is the International MIDI Association (IMA). As well as being the distribution point for the current version of the official MIDI Specification 1.0 (revision 4.1 at the time of writing) and other MIDI-related publications, the IMA also publishes a monthly Bulletin which reports on activities within the world of MIDI. Most important of all, it acts as a collation point for any feedback on MIDI, and has links to the MIDI Manufacturers' Association - which is the industry version of the IMA.
Membership of the IMA is thus strongly recommended for any budding System Exclusive explorer. Further details can be obtained from:
International MIDI Association
Unfortunately, the IMA has a policy of not accepting Credit Cards and UK cheques, so you need to send an International Money Order instead when you join or order publications from them. These can be readily obtained from any Bank or Bureau de Change.
While MIDI has been developing, it has been simple enough in the majority of cases for things to muddle along without handshaking. This next decade, however, will see the increasing use of computer industry style handshaking - checking that the dump has been received, acknowledging a parameter change, verifying the ROM version before editing, etc. Such abilities become more important as the size of MIDI networks increases, and given the way that digital technology has invaded almost the entire domestic audio and video market, integrating MIDI into a complete home or office control system is a distinct possibility.
Handshaking removes many of the potential problems which lurk in most existing MIDI systems. When you send a dump to another device, you can easily choose the wrong memory location on your MIDI patchbay and end up sending nothing, simply because the Out is not routed correctly. Unless the receiving device has some way of relaying an error message back to the transmitting device, then you could lose some data, forever! Handshaking offers a way of ensuring that what you want to happen does actually happen.
Having three cables connecting each and every piece of MIDI equipment together is fine for small MIDI systems, but it becomes increasingly unwieldy as the number of items grows. When you start to run out of MIDI channels (more than 16 pieces of equipment, for example) then those 48 tangled cables begin to look like a real liability, not to mention the problems with the amount of information you can actually squeeze into the MIDI bandwidth. If you use guitar controllers in monophonic modes, or have lots of MIDI-controllable effects units, or use multitimbral mode on your synths etc, then you could easily run out of MIDI channels well before acquiring 16 pieces of equipment.
Networks are the computing world's solution to exactly this problem of bandwidth, and although such networks need modifying in order to suit the MIDI environment, they will nevertheless begin to make an appearance in the coming years. It is likely that much of the control system for this networking will be implemented using System Exclusive messages, or even a new system employing one of the other undefined status bytes! The watch-word for the IMA seems to be that MIDI 1.0 will not be made obsolete by any future developments, and so the very flexibility and expandability mentioned at the very beginning of this series will come into its own in this application.
The very open-ended nature of System Exclusive means that most descriptions of MIDI tend to spend a brief few sentences covering a few of the possibilities, and then move rapidly on. This series has adopted the exact opposite approach - if anything, I have glossed over the ordinary day-to-day aspects of MIDI in favour of highlighting the quieter backwaters of System Exclusive. I hope that the voyage has been an interesting and useful one, and I wish you every success in your future encounters with 'the stuff between $F0 and $F7'!
Updates to the SysEx Toolkit disks will continue to be released into the SOS Software library (see pages 86-88) as and when they become available over the next few months. Eventually, I intend to produce a menu-driven program to enable hard disk or dual drive Atari ST users to access the SysEx Toolkit programs in an easier manner. I am still investigating file cataloguing programs and these will be reported on in a separate article.
Finally, I would like to thank all the manufacturers who responded to my requests for System Exclusive information - the pile of paperwork is now well over a foot high! Specific grateful thanks go to Martin Tennant and Jim Corbett of Yamaha, Alan Townsend and Chris Simpson of Roland, Roy Goudie of Emu Systems, John Hollis of Hollis Research, Chris Jordan of Hybrid Technology, and Al Hospers of Dr.T for all their outstanding help, patience, support, and co-operation.
Feature by Martin Russ