What you can get from a MIDI Implementation Sheet, apart from total bafflement.
The mysteries of the MIDI implementation sheet. Andy Honeybone casts a spell.
VERY MOVING to see Wainwright, champion of the Lakeland Fells, expressing the wish for his ashes to be scattered over the crags and tarns of Haystacks. In my line of speciality you might think I have a parallel aspiration, perhaps to end my days amongst the carpet pile in Rod Argent's Keyboard Shop. Not so, dear reader, as W.W. would say, nothing could be further from the truth. But, as ever, I digress for this is not a forum for outdoor-type name-dropping; this month a look at MIDI implementation sheets and the Roland TR505 in particular.
Armchair MIDI enthusiasts may well have considered last month's MIDI Talker project somewhat unnecessary as all the information you could possibly glean from such a tool is already freely available within that single A4 side called a MIDI implementation sheet. Well, point taken, but in defence, such sheets are brief to the point of obscurity and there's many a slip twixt Japanese and English.
The sheet to which I allude is among the bumf that falls from the box un-noticed as you hurry to get on down with those funky pre-sets, basically a page of four columns where, apparently, someone has been playing noughts and crosses.
The left most column describes the function under consideration with the next two handling what is sent out and what can be received. The last is for remarks, and remains blank for the most part, to the annoyance of all. Three symbols can be found liberally dotted over the page: the cross indicates 'not supported' whereas the circle is good news. The asterisk can mean anything from 'not relevant', through 'see footnote' to 'date of unspecified length' — a good one to ignore.
The MIDI implementation sheet comes in handy for comparing the control side of two machines at the crucial stage in the shop before the credit card makes an appearance. Say you are tom between the delights of a Roland TR505 (they do exist) and a Yamaha RX21. Lay the two identical format MIDI implementation sheets side by side and look down the columns. Pretty much the same until we come to System Exclusive. The Yamaha can dump patterns and songs over MIDI but the Roland has only tape facilities. An agonising choice but at least you're in full possession of the facts before you get home.
The rest of the information comes into use when connecting your MIDI system. For instance, linking up a DX21 to a 505. The Roland has the facility for the user to dictate the note numbers for each drum voice but as the unit arrives, the bass drum is assigned the value 35. A quick tinkle will soon show that the bass drum cannot be sounded from the DX. Looking at the MIDI implementation sheet for the DX21, it can be seen that the keyboard generates note values in the range 36 to 96, hence the missing bass drum would be triggered by the B natural below the lowest C on the instrument. Changing the value of the bass drum to 36 brings full control to the DX. Can the 505 be programmed from a MIDI keyboard? Well, I couldn't crack it and when you think about it, you're expecting a very budget drum machine to be a real time MIDI sequencer as well. Oh well, back to the pads.
The success of the implementation sheet can be gauged by the amount of supplementary material that is supplied. Certainly, the nonstandard back page of the TR505 chart is the more informative. What can we glean from it? Firstly, transmitted data. The TR505 does not send note off status bytes but relies on the alias of a note-on with zero velocity. The implications of this fact are concerned with sequencer software which we will cover in future articles.
There is a register within the TR505 which keeps track of progress through a song. Using the song position pointer command it is possible to set this register to allow the song to be replayed from any bar. The command is sent only when you dial in go to bar X and a footnote tells you that the display has to be set to measure rather than tempo. Whenever a song is chosen by dabbing at the track number buttons, a song select command is simultaneously transmitted which should allow other connected units to follow suit.
The timing clock is transmitted only if MIDI sync is set to off. Even if the TR505 is not playing, the clock is still transmitted to satisfy the synchronisation of other connected units which may have to interpolate the MIDI clock to give higher resolution internal rates.
Start, continue and stop are each transmitted with MIDI sync off but only stop appears capable of transmission with MIDI sync on.
On the receiver side, the story is much the same — it would be surprising if two identical units could not understand each other. The small print points out that the song position pointer can only be set when the unit is stopped and that the system real time commands are only acted on if the machine has MIDI sync selected.
May I leave you with an odd one? The TR505 implementation chart denies that note off commands can be received so how come that the drum voices can be played from a note off transmitter like a DX21? As the duration of the drum sample is not related to the length of time that the key is depressed, it would appear that note off information is completely ignored and that the voice is ready for retriggering immediately after the note on command. Makes sense really — so much for standards.
Feature by Andy Honeybone
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!