Algoritmic‎ > ‎

IBM Music Box

MusicBox for the IBM



Keyboard Report july 1989/Keyboard


Musicbox Algorithmic Freeware for the IBM, by Carter Scholz

  • Tired of salivating over the keyboard Reports on items that you can't afford? Then you may enjoy reading a review of MusicBox, one of the neatest, most unusual IBM programs we have ever seen. It's not a commercial program; it's in the public domain, and that means it's absolutely free. It can be downloaded, complete with documentation, from most bulletin boards.
    The program is MusicBox, by John Dunn. "Algorithmic composition" with a difference: it gives the user full control over the algorithms used. Instead of just twiddling knobs on a preset screen, you actually construct the algorithms by linking basic functions that appear as icons. It's like patching a modular synth. To describe MusicBox more fully, we're going to paraphrase Dunn's lucid, informative 70-page manual, which is distributed with the program as a disk file.
    "MusicBox is a flexible, openended working environment for developing original material. Although capable of recording incoming MIDI data, it is not intended for use as a MIDI recorder. MusicRox is conceptionally different from a sequencer because it is a composition tool rather than a recording and arranging tool.
    "You program MusicBox by patching the outputs of modules to the inputs of other modules. There are no patch cords to fuss with. Patches are automatically labeled as they are made, and since the computer is perfectly willing to make multiple copies of modules, there are always enough of them."

  • Like most musical instruments, MusicBox allows subtle, interesting music only in proportion to the investment made in acquiring skill in its use. It is not easy to learn. The most interesting modules are not intuitive, and many of the module icons are cryptic. The good news is that once learned, Music-Box gives the composer a degree of control and agility in working with complex musical events that is simply not available with more conventional approaches."
    To use MusicBox you must have a mouse and a CGA or EGA display adapter - a Hercules-type adapter won't work. You may use a mono monitor, but many of MusicBox's functions are color-coded, so a color monitor is desirable. MusicBox uses the MPU-401 MlDl interface, and will support two of them. MusicBox algorithm setups can be saved to disk, but the actual note output can't be. In order to record it, you must use an external sequencer. The program can be synced to the sequencer using MIDI clocks.
    The MusicBox display comprises two screens. On the first is a palette of module types (see Fig. 1). Each of these 21 types comes in several varieties. For example, Random can generate random numbers, or switch randomly between eight input sources. Sequence is a 64,000-event sequencer that can record MIDI input; several can be ganged together for parallel events. Math can add, subtract, multiply, divide, take powers, and more. Other modules are called Switch, Logic, Mix, One-Shot, and Slew. With all the variants of the 21 types, there are over 150 varieties of modules altogether.

Fig. 1. MusicBox's palette of software modules



Fig. 2. Setting two trigger modules to cycle with four cycle values each results
in irregular but synchronized rhythms, which can he combined into composite parts like the one shown.


  • You click on a particular spot in a module to select the variety; this makes a copy of the module that you can move to the second screen, your workspace. Once you've got all the modules you want on screen two, you hook them together by clicking on the inputs and outputs. You can change the setting of various controls on a module by clicking on them, then dragging the mouse to increase or decrease the value.
    We like this because it's conceptually similar to the way we learned synthesis, on a modular Moog, and because the paradigm remains direct, versatile, and powerful: patching modules together. We like it more because it gives us the kinds of controler modules we always wished the Moog had had.

  • Here's a simple patch. We select a Clock module for our metronome, and patch its output to the clock inputs of two identical Trigger modules of the "pattern generator" variety. These modules have four "cycle" inputs, which can be set to constant values or patched to outputs from other modules. We'll set the first module's cycle inputs to constants: 5, 8, 9, and 12. This produces trigger outputs on every 5th, 8th, 9th, and 12th metronome pulse, creating the polymeter shown on the first staff of Fig. 2. The second Trigger module we'll set to cycles of 4,6, 7, and 11; this makes the pattern on the second staff.
    Now we select two MIDI output modules, and set both to MIDI channel 1. The "transpose" setting of one we'll set to 60 (for a pitch of Middle C), and the other to 76 (the E a
    tenth higher). Velocity of both is set to 64. (All these inputs can be controlled by variables from the outputs of other modules; for this simple example, we're setting them to constants.) Finally, we patch the triggers from the two beat-pattern outputs to note inputs on the MIDI modules, and we hear the two polymeters playing at once, the first pitched at C, the second at E, as on the third staff. Voila!

  • If you run out of space for modules on the second screen, you can access extra workspaces. With a CGA, three workspaces are available; with an EGA, seven. Workspaces can be saved to disk, of course.
    This is a very simple example that gives only a hint of the flavor of MusicBox. We've played with the program off and on for weeks, and we're not near exhausting the possibilities. There are still modules we haven't tried. It's delightful to find that MusicBox doesn't stamp your music with its own personality. And if you really want to get into it, there's a way to add your own custom modules to MusicBox's repertoire, if you know assembly language.

  • You can download MusicBox from any of the major on-line services: CompuServe (voice: 800-848-8990, or 617-457-8650 in Ohio; access through Tymnet [voice: 800-872-7654] and Telenet [voice: 800-336-0437]), BIX (voice: 800-277-2983 and 603-924-7681; modem: Tymnet), GEnie (voice: 800-638-9636), PAN (voice: 215-584-0300; modem:
    617-576-0862), or the Well (voice: 415-332-4335; modem: 415-332-106).

  • Pros & Cons:

  • Pros: Extremely flexible user-definable algorithms. Free.
  • Cons: Somewhat cryptic interface. Requires mouse and color display.

  • Carter Scholz is a frequent contributor to Keyboard. He spends entirely too much time in front of computers.
Comments