Classic Computer Magazine Archive START VOL. 4 NO. 12 / JULY 1990



Mix Up Your MIDI Instrument


Guitarists have always been able to slip into alternate tunings by tightening or loosening their guitar strings. For other instruments, like the saxophone, such redefinition is considerably more difficult. With AlterTune, however, any MIDI instrument can be tuned as easily as left-click-click.


MIDI tuner
512K, high or medium rez


Certain songs flow more smoothly in particular tunings. A "new" tuning can inspire new musical thought. But traditional keyboards have always been locked into the linear, half-step-per-key system inherited from our musical ancestors. AlterTune is an alternate tuning program that lets you redefine the notes on your MIDI controller, within the capability of your sound source, of course.

Getting Started

There are a few pieces of equipment you'll need: a MIDI controller, a MIDI sound module and, of course, an ST running AlterTune.

To retrieve AlterTune, double-click on the archive file TUNER.PRG and choose Extract when the dialog box appears. Select a destination disk and the files will un-ARC directly onto that disk. Connect the controller's MIDI Out to the ST's MIDI In and connect the ST's MIDI Out to the sound source's MIDI In. Set your controller to transmit on channel 1, and the sound source to receive on channel 2. Double-click on ALTERTUN.PRG to start the program.

You'll see a functional, no-nonsense menu with two items. Info lets you know who to thank for AlterTune; the Control options do all the work.

The Control Menu

Load .ALT tuning file: A file selector appears. Choose the alternate tuning file you wish to load; six .ALT files are on the START disk.

Load .CHD chord file: A file selector appears. Choose the chord redefinition file you wish to load; four .CHD files are on the START disk.

Inactivate .ALT or .CHD: A dialog box appears. Choose which file, .ALT or .CHD, you wish to inactivate.

Play: Once a tuning and/or chord redefinition file is loaded, select Play and then ... play. The notes of your controller will be converted according to the files you chose. If both .CHD and .ALT files are loaded they operate simultaneously. If they conflict (that is, they wish to do different things for a given note), then the .CHD instructions take precedence.

MIDI-Thru: Returns to the standard key mappings.

Quit: Exits AlterTune.

Creating Your Own .ALT File

The file formats are fairly simple, but must be followed exactly or bizarre sounds may result.

The easiest way to create a file is to load an existing .ALT or .CHD file into your favorite word processor and modify it. Always save a copy of the original. Save the new file in ASCII format, using a .ALT or .CHD extension.

The first line of an .ALT file contains the tuning scheme's title. Keep the name between three and 16 characters. You can put any number of comment lines after the title as long as the comments don't begin with numbers.

The next section of the .ALT tuning file is the tuning data, consisting of 128 numbers between 0 and 127, representing notes. The tuning data is just a list of alternate MIDI notes that will be sent out the MIDI port when a MIDI note is read in.

If you're not familiar with MIDI, here's a short tutorial. MIDI information is sent as numbers (no sound goes through a MIDI cable). MIDI-note 0 is equivalent to a C on the lowest octave of an 11-octave keyboard. MIDI-note 128 means a G note in the 11th octave. For reference, MIDI-note 60 is a middle C on the standard piano.

When AlterTune receives a MIDI note, that number is used as an index into the array of tuning data stored in the .ALT file. For instance, when the ST reads in note number 0, it looks up the first entry in the alternate tuning data and sends it out the MIDI Out port. If the first entry in the alternate tuning data is a 7, then the sound source would be sent and would play a G. If the second number in the .ALT file is an 11, then a B note will sound whenever you hit the C# (MIDI-note 1) key.

Once the 128 entries of alternate tuning data are complete, you have a second chance to add comments to the file. Just remember that the comments can't start with a number.

Give your MIDI instrument a thousand different faces, by
simply changing .ALT and .CHD files.

In addition to converting MIDI-note data, you can also change the channel over which the data is sent. Since there are 16 MIDI channels, a list of 16 MIDI channel numbers is added in a format similar to the tuning data. If data is sent on channel 1, and the first entry listed in the channel data is a 2, then AlterTune will convert the note and send it over channel 2. Similarly, if the second entry in the channel data is a 7, then any notes received on channel 2 will be sent out on channel 7. The datafiles on disk are set to increase the channel number by one.

Creating Your Own .CHD File

The .CHD format also begins with a comment, usually a name, on the first line. The second line should contain only a -1. Subsequent lines contain chord data, consisting of the MIDI note read in, followed by up to eight MIDI notes to replace it, then -1. Each line looks like this:

MIDI-note in, MIDI-note 1 out, .... ,MIDI-note 8 out, -1

Not all eight notes need be used. For instance, the first line of data in the CMAJ.CHD file is 36,36,55,60,64,-1. This indicates that when a low C (MIDI-note 36) is played, the MIDI-notes 36, 55, 60 and 64 are played. The -1 indicates the end of data.


Ever wonder why the low notes are at the left side of the keyboard while the high notes are at the right? REVERSE.ALT lets you explore the alternative, where the low notes are at your right hand and the high notes are at your left.

Imagine playing the blues with every piano key, black and white alike, tuned to the blues scale. Check out two variations, BLUES1.ALT and BLUES2.ALT.

CIRCLE4.ALT provides an interesting wide open sound, in which the distance between consecutive keys is a perfect fourth.

STRUMINC.ALT is slightly different. Think of it as a keyboard version of the autoharp. Each octave is redefined to sound the notes of a particular chord. All keys in the first octave play tones in a C major chord, the second octave is G major, the third octave is A minor, and the fourth octave is F major.

STRUMINA.ALT works similarly. But why limit yourself to one note out for each note in? CMAJ.CHD defines the bottom octave of your keyboard as a family of chords in C major.

HIGHCMAJ.CHD does the same thing an octave higher. FIFTHS.CHD plays a series of consecutive fifths for each note you play and OCTAVES.CHD sends out five consecutive octaves.

Play It Again

Now you're off, into the wonderful world of alternate tunings. When you come up with cool new tunings, let us know, OK?

Bill Sethares lives in Madison, Wis.; John Bell lives in Stamford, Conn. This is their first program for START.