Classic Computer Magazine Archive START VOL. 3 NO. 11 / JUNE 1989

Review

KEEPING THE BEAT
WITH MIDI DRUMMER

The First ST Drum Machine Sequencer

BY JIM PIERSON-PERRY


Sometimes the timing works out just right. In a recent START MIDI column, I listed a drum machine sequencer under my MIDI software wish list. Not 12 nights after submitting the column a notice arrived from MusicSoft announcing MIDI Drummer, the first drum machine sequencer for the ST. Well-designed, simple to use and with more features than you could shake a spear at, this program turns drum machine programming from tedium into fun.

MIDI Drummer works with any drum machine that responds to MIDI note triggering, including virtually all of the popular models, and goes well beyond just drum machines to control synths and samplers as well.

mididrummer1.jpg
The MIDI Drummer workscreen. The current pattern is displayed in
the grid while a full song (pattern list) is shown at the bottom of the
screen in the display window. The pattern selector box is at the upper
right corner.

Measure for Measure

Drum machine sequencing is oriented toward creating small blocks of measures called patterns. Once started, a pattern plays through to completion, then loops back and starts over again. Songs are built up by stringing different patterns together, adjusting the number of loops played per pattern. This is conceptually different from typical linear sequencers that are based on a tape recorder model, building a song one entire track at a time.

Patterns are usually viewed on a grid with time (beats per measure) on the X-axis and available drum sounds listed down the Y-axis. A mark (hit) on the grid means the particular drum sound is played at that time. Typically, a pattern is developed by overdubbing one drum sound after another while listening as the pattern loops. An example would be to start with a kick drum, adjust its timing, then add snare drums, cymbals, tom toms, etc.


As You like It

MIDI Drummer runs on all STs and Megas with either color or monochrome monitors. Key disk copy protection is used, permitting you to install the program on a hard drive and make backup copies. A backup master disk can be purchased from MusicSoft by registered owners at the (somewhat exorbitant) cost of $25. The manual covers all program operations tersely and has several minor inaccuracies between it and the current program operation. It could stand a rewrite, including an index and additional screen shots. Standard GEM implementation is followed with full access to desk accessories. Several apparent menu commands are actually just messages and should be relocated to a help screen.

Program operations are carried out from a main workscreen divided into four areas: pattern grid, pattern selector box, song display and playback controls. Patterns are created and edited in the grid, which occupies the center of the screen. Grid resolution supports timing down to a one-thirty-second note. Up to 100 different patterns can be created and kept in memory, each with an index name (A0 to J9) in reference to the pattern selector box. Patterns are defined for a single measure but each can have its own time signature.

Songs are constructed in the song display window by choosing patterns from the selector box in the order they are to be played. Up to eight separate songs can be kept in memory at once, each identified by a 24-character name. A song select menu command lets you decide which one to edit or play. Playback start and stop are controlled by screen buttons or their keyboard equivalents, along with a tempo setting that can be varied while MIDI Drummer plays.

mididrummer2.jpg
The two setup dialog boxes are shown here for voices and preset vel-
ocity scale. Of the 16 voices used, 13 are from a drum machine (Ales-
is HR-16), two are from a sampler (Akai S900) and one is from a
synthesizer (Oberheim Matrix 6).

Before starting to create patterns, you need to define the voices (sounds) that will be played by your specific MIDI setup. These can range from separate sounds in a single drum machine to combinations of instruments played on different MIDI channels. A dialog box guides you through assigning a MIDI note, channel and name (12 characters) for up to 16 voices. (It's not necessary to use them all.) An optional velocity scale can be created to assign 10 preset note--on velocity (loudness) values to add dynamics when entering hits. All 100 patterns and eight songs, along with voice and velocity tables, can be saved as a setup file. As drum machines and other instruments do not follow any standard for relating drum sound to MIDI note, you can have separate setup files for each MIDI instrument configuration used. You can design a default setup file to load automatically when the program starts. The program comes with a sample setup file for the Roland D-10.

MIDI Drummer can act as either the master or slave with respect to the MIDI clock for your system. Operating under an internal clock (master mode), MIDI Drummer will play with respect to its given tempo setting and send MIDI clock, start/stop/continue and song position pointer messages. If set to use an external clock (slave mode), the program receives tempo information from an external source (such as a hardware sequencer) and responds to MIDI clock and song position pointer messages.


Taming of the Grid

Anyone who has ever programmed a drum machine will feel right at home with MIDI Drummer. Patterns are entered on the screen grid by clicking with the left mouse button to mark hit points. Clicking on a hit a second time erases it. Keyboard equivalents for each voice can be used (tap write) to enter or erase hits to a sixteenth-note resolution; you must use the mouse for higher resolution. You can completely define a pattern before hearing it or create and edit it while it is playing.

Simple hits are denoted with an asterisk on the grid and all get the same default velocity value. Entering a hit by typing a number from 0 to 9 gives it the corresponding preset velocity value from the setup assignment table. These values can be edited like any other hit to change or erase them. In addition, holding the shift button down and clicking on the left mouse button increases the value (Shift-right button decreases the value.) For more detail, clicking on a hit with the right mouse button calls up a dialog box where you can enter the exact velocity value from to 127. Use of velocity dynamics significantly adds to the realism of your drum parts.

Hit durations are defined initially as a very fast trigger pulse. Alternative settings are to last for one MIDI clock beat, duration of a one-thirty-second note beat or sustain until the next hit for the voice. Hit duration is a global parameter, affecting all voices over all patterns. The trigger setting seems to work fine with drum machines but was not picked up by my synths. All other duration settings were fine. An All Notes Off command described in the manual is not implemented in the current program version.

Each pattern starts with a default time signature of 4/4. This can be changed to any signature of the form "1 to N over N" (where N= 1, 2, 4, 8. . . 32). Time signatures such as 5/4 or 11/8 are not supported directly but can be broken into consecutive patterns (e.g. 5/4 equals 3/4 followed by 2/4). The only exception is 12/8 for patterns with a triplet feel.

Playback is started and stopped by clicking on the respective screen transport buttons or their keyboard equivalents. The tempo can be set explicitly or computed after hitting the 0 numeric key button four times at the desired rate (nice touch!). All patterns are played with respect to the current tempo. The allowable range is 30 to 255 beats per minute and can be changed with the mouse during playback, but tempo changes cannot be programmed as part of a song. A metronome can be turned on that plays through the monitor internal speaker (not MIDI) to help set and follow the tempo. During playback, a beat counter at the top of the grid helps you track the program through the grid. Individual voices can be muted or unmuted during playback by clicking on the voice name in the grid.

Several editing features are provided to simplify creating patterns. An individual voice line, across the entire grid, can be copied to any voice line in any pattern. Extending this, an entire pattern can be copied to any other pattern. When copying a pattern, its time signature goes over with it. If you make a mistake, you can clear hits individually (via mouse or keyboard), across an entire voice at once or the entire grid can be cleared.


A MIDI Drummer's Night Song

After defining all the patterns you need, the next step is to assemble them in the desired order to build the overall song. MIDI Drummer makes this operation very straightforward with the song display window and pattern selector box. Holding down the shift button and clicking on an index in the selector box adds the corresponding pattern into the song.

Song playback is controlled by the start/stop transport buttons; a screen toggle button selects between song and individual pattern play. While playing a song, the current pattern is highlighted in the song display box and shown on the pattern grid. A measure counter increments to track playback through the song. Patterns can be edited even while a song is playing. Conversely, songs can be created and edited even while a pattern is playing. Songs normally play through once and then stop, but this can be changed to repeat the song a set number of times or to the entire song continuously.

While editing, the song display can be set to either insert or overwrite mode, similar to a word processor. Under insert mode, existing patterns in the song display are pushed to the right to make room for new entries. The alternative, overwrite mode, simply puts new patterns in place of previous ones.

Standard cut, copy and paste menu operations are provided along with function key equivalents. These work over a block of patterns selected with the mouse. The paste function can be extended to paste multiple fills at once. In cases of total frustration, a song clear operation will erase the entire song buffer. Text labels can be entered in the song display window to identify song fragments or provide notes for whatever reason. Simply click within the song display window at the desired location and enter your text in the resulting dialog box. Using this feature to mark pattern blocks associated with verses, chorus, intros, etc. can be a real time-saver during editing.


Much Ado About a Few Things

I ran into two small problems while using MIDI Drummer that apparently are due to the new Mega ROMs. First, the dialog box for entering explicit hit velocities didn't work. This was not too much of a problem, as the 10-level preset velocity scale gave adequate dynamics for drum parts. A second strange bug was that opening the Control Panel desk accessory (and only that one) while running the program prevented further playback. Editing or file operations were not affected, but it simply would not play. I tested a host of other desk accessories and no other one caused this problem. Neither of these minor blemishes showed up when I tested the program with a standard 5205T or 10405T; MusicSoft is currently checking into them.

Of course, no review would be complete without a list of desired additional features. First, I'd like to divorce the voice assignment setups from the patterns and songs when stored to disk. That way, pattern files could be shared between users without editing, regardless of their drum machine choice or MIDI setup. Second, include a menu command for disk formatting. This is a fairly trivial addition that should be a standard feature for all programs where you run the risk of losing your work. Just a little touch to add to the already good user interface. On editing, I'd like to see the copy line and pattern edit commands enhanced to write to a destination range rather than the present single destination. When editing 10 patterns that are variations of a single theme, I'd rather do the initial copy command just once. Finally, how about making tempo a pattern-specific value like time signature? It would be nice, and more reproducible, to be able to build tempo changes into the song rather than manipulating the tempo window during playback.


All's Well That Ends Well

I saved one of the best features for last. A companion program is supplied with MIDI Drummer that converts songs into standard MIDI file format. This lets you write drum parts quickly and efficiently with MIDI Drummer, then import them as tracks into any sequencer that recognizes MIDI files. I tested this by importing songs into Dr. T's Keyboard Controlled Sequencer and it worked great! In addition, The Copyist (Dr T's scoring program) also recognizes MIDI files, so I was able to generate transcriptions of my drum parts. MIDI file support is fast becoming a standard feature that users are looking for and it's good to see that MusicSoft wasted no time in supporting it. And that's not all: two additional programs are included that exercise your MIDI system and analyze the MIDI data flow going in or out of your ST.

All in all, I recommend MIDI Drummer highly. It takes the drudgery out of drum machine programming and makes it easy to try new ideas quickly. I should also mention that I had no trouble getting technical support from MusicSoft on several occasions during this review. There was always someone online with the answers. That's a pity: as intuitive as this program is, they'll probably get lonely waiting by the telephone.

START Contributing Editor Jim Pierson-Perry is a semi-professional musician and research chemist who lives in Elkton, MD.


PRODUCTS MENTIONED

MIDI Drummer version 1.6a, $99.95. MusicSoft, 1560 Meadowbrook, Altadena, CA 91001, (818) 794-4098.