
Pre-Release Draft

M for the Atari ST

by Eric Ameres, David Zicarelli, Joel Chadabe, 
John Offenhartz, and Antony Widoff

Instructions for Demonstration Disk

 1987 Intelligent Computer Music Systems, Inc.


Welcome to M!

Working with M is a three-stage process.  First, you input basic musical material as notes or chords according to the formats of the different Pattern types.

Then you specify ways in which ways your material will be varied.

Then you perform.  You can use the main screen as a control panel and manipulate the screen controls with the mouse, using your MIDI keyboard to transpose any or all Patterns while they're playing back.  And you can use the Input Control System and control the program's functions by playing keys on your MIDI keyboard.


About the Main Screen

The main screen gives you a visual representation of all of M's operations.  It consists of six windows, clockwise: the Patterns window, in which you create Patterns and store them as groups; the Global Control window (which opens as "Untitled"), which contains controls for the entire program's operations; the Cyclic Editor window, which allows you to make cycles of accents, legato-staccto articulations and rhythms; the Note Manipulation window, which allows you to vary the notes in your Patterns; the MIDI Variables window, which allows you to route your Patterns to MIDI channels, generate velocity signals and choose sounds; and the Snapshot window, which allows you to store and recall configurations of screen controls.


Note that the Patterns window contains four horizontal bars, one above the other.  Each bar represents controls for one Pattern.

Note that the controls (sometimes numbers, sometimes range bars or sliders, sometimes grids) in the Note Manipulation, MIDI Variables, and Cyclic Editor windows are also arranged in rows of four, one above the other.  Each control row applies to one Pattern.

Note also that there is a recurring theme of six throughout the screen.  There are six Pattern groups, indicated by boxes with the letters A - F, in the Patterns window.  And there are six boxes next to or under the arrows in the Note Manipulation, MIDI Variables, and Cyclic Editor windows.  These boxes indicate groups of stored control settings.  By clicking on a box during a performance, you can instantly change from one group of control settings to another.  

You can also move from one box to another by "conducting", if the arrow next to the boxes is selected.

There are other windows and dialog boxes for editing Patterns, selecting new Pattern types, and performing other functions, which will open when the appropriate menu or keyboard command is selected.  These windows and dialog boxes allow you to perform specific operations which we'll discuss in context throughout this manual.



Windows and the Mouse

As in most Atari ST applications, windows become active when you click in the content area with the left mouse button.  Using the left mouse button, you will need to click twice to change a screen control: once to make the window active, the second time to change the control.

It is worth remembering that you can change a control in a window without making it active if you use the right mouse button.



The Screen Controls

The design of M's screen controls isn't quite the same as a typical Atari ST program.  That's because a typical Atari ST program isn't intended for interacting with an ongoing musical process.  M's user interface is easy to learn, however, and once you spend a little time with the program, you'll be working the controls with ease and using your computer as a performance instrument.


The primary types of controls are:

 The Simple Button.  It's something you click on once to trigger an action, although M's simple buttons do a variety of different things.  There's the Sync button in the Global Control window, for example, the Group select buttons in the Patterns window.  There are also the Variable Choice buttons (next to or under the arrows) in the Note Manipulation, MIDI Variables, and Cyclic Editor windows.

Try out a button.  Look in the Note Manipulation window to the right of "Note Order" and click in one of the six buttons (arranged in a row) next to the arrow.  After you've done this, however, please reselect the first position, just for purposes of this tour.

 The Arrow Buttons.  The Arrow Buttons are arrows in boxes in various places throughout the main screen.  To select or unselect an arrow, click once on the box and release the mouse button.  To change the direction of an arrow clockwise, select it and hold the left mouse button down.  To change the direction of an arrow counter-clockwise, select it and hold the right mouse button down.  Try out some of the arrow buttons.

 The Toggle Buttons.  These buttons turn a control to its opposite state.  There's the Start/Stop Button in the Global Control window, for example, which will start the music if it was stopped, or stop it if it was going.  Or the Mute box in the Patterns window, which will mute a Pattern if it wasn't muted before, and let it play if it was.  Click on the Start/Stop button, and leave it "on" for the rest of this tour.

 The Numerical is a box which contains a letter, a number, or an icon that can be changed up or down with the mouse.  To change a numerical to a higher value, position the mouse cursor in the box and press the left mouse button.  To change a numerical to a lower value, position the mouse cursor in the box and press the right mouse button.  Try your hand at changing the Tempo numerical in the Global Control window.  M's numericals can also be changed as faders.  To change a numerical as a fader, position the mouse cursor in the box and, while pressing either mouse button, move the mouse forward or backward.  Try the Tempo numerical again.

 The Button/Numerical.  This control is a combination of the Button and the Numerical.  The Record button in the Patterns window (under "R") is an example.  If you click on it quickly, it acts as a toggle button.  If you hold a mouse button down, its value will change as a numerical. 

 The Range Bar.  The Range Bar is for defining a range within which a value will automatically change.  The Tempo Bar (under the Tempo numerical) in the Global Control window is an example.  To change the setting of a Range Bar, position the mouse cursor at the high or low end of the range you want to define and then drag to the left or the right.  To set the range of a Range Bar to a single specific value, click anywhere on the bar and don't drag the mouse.  Try changing the range of the Tempo bar from 40 to 210.  Start at a position roughly equivalent to 40 and drag the mouse right to 210.  Notice that there's a number at each end of a range bar.  These numbers have two functions.  They are indicators, giving you the exact value for the range bar setting.  They are numericals which can be changed to fine tune the upper and lower limits of the range bar.  Change the setting of a range bar by changing one of these numericals.

 The Slider.  The Slider lets you set a value by dragging a box left or right.  The Note Order bars in the Note Manipulation window are sliders.  To move a slider, position the mouse cursor in a box and drag it to the left or the right (note that the rightmost box cannot be moved).  Try it.

 The Baton.  Move the mouse cursor into the grid in the Global Control window and notice that it changes shape to resemble a baton.  The Baton becomes active when you press the left mouse button.  The Baton is a special control associated only with the conducting grid.  You can do three things with The Baton: 

(1) The Baton allows you to "conduct" tempo.  To conduct tempo, click in the arrow box to the left of the Tempo Bar, then move the mouse into the grid, make the baton active by pressing the left mouse button, and move the baton in the direction in which the arrow is pointing.  You'll see the tempo numerical increase in value.  When you're done, click again in the arrow box to deselect it. 

(2) The Baton also allows you to change from one Pattern group to another.  The four Patterns as shown on the screen are stored as one of six groups, indicated by the six letters-in-boxes (A - F) at the bottom of the Patterns window.  The current group is indicated by the highlighted letter-in-a-box.  These letters-in-boxes are simple buttons, and you can move from one to the other by clicking on them.  But you can also conduct them.  To conduct a change from one Pattern group to another, click in the arrow box to the left of the letters-in-boxes, then move the mouse into the grid, make the baton active by pressing the left mouse button, and move the Baton in the direction in which the arrow is pointing.  If you're using the file TUTORIAL.MST, it should be pointing left to right.  You'll see the different boxes become selected as you move the Baton.  When you've finished, click again in the arrow box to deselect it.

(3) The Baton also allows you to move from one group of control settings to another.  The groups of control settings are represented on the screen by the bars of six boxes under or next to arrows in the Note Manipulation, MIDI Variables and Cyclic Editor windows.  Each group is represented by a box.  These boxes are simple buttons, and you can move from one to the other by clicking on them.  (Try it.  Click on the fourth box under the arrow next to the word "Orchest", for example, in the MIDI Variables window.  You'll see the values of the Orchestration variables change.)  But you can also conduct the change from one box to another.  To conduct a change from one group of control settings to another, click in the arrow box above or to the left of the control settings barsz, then move the mouse into the grid, make the baton active by pressing the left mouse button, and move the Baton in the direction in which the arrow is pointing.  You'll see the different boxes become selected as you move the Baton.  When you've finished, click again in the arrow box to deselect it.

To change the direction of conducting, move the mouse into the appropriate arrow box, this time holding the left mouse button down.  The arrow will change direction clockwise.  If you hold the right mouse button down, the arrow will change counter-clockwise.  Try it.  Change the direction of the tempo arrow, for example to face upwards.  Then conduct again in the direction in which the arrow is pointing.  Try to conduct with several arrows selected, all pointing in different directions.


Jumping Right In

We're going to jump right in.  We're going to guide you through making a composition by creating two Patterns, varying them, and performing with them in simple ways.  Before you begin, however, be sure that your synthesizers are connected correctly and open the file called "TUTORIAL.MST".


Creating a Pattern

We're about to play some notes into Pattern 1 and we want to echo those notes out to whatever MIDI channel your synthesizer is receiving on.  Click on "Echo" in the Global Control window.  Set the first (leftmost of the three) Echo numerical (under "Echo") to your synthesizer's channel. 

Look in the Patterns window.  Click in the "R" box for Pattern 1 to enable Pattern 1 to record your input.  Leave it at "A" (for "All MIDI channels").  The numerical function of this control specifies the MIDI channels to which the Pattern is "listening".

Then play five notes on your MIDI keyboard, for example C-D-E-F-G.  When you've finished recording the notes, click again on the Record button in the Patterns window, turning it "off".  Notice that the Note Counter (under the ruler icon) reads "5" for the number of notes that you've played. 

Now click on the Start/Stop Button in the Global Control window, turning it "on".  You'll probably be hearing the three notes you've just recorded.  If you're not hearing the three notes, it could be that you're not sending the MIDI information on your synthesizer's correct channel.  


Directing Your Output to a  MIDI Channel

Is your sound directed out to the MIDI channel you want?  If not, look under "Orchest" in the MIDI Variables window.  The four boxes, one above the other, refer to Patterns 1 - 4.  Since we're working with Pattern 1, we'll look at the top box.  Be sure that the leftmost numerical is set to the MIDI channel to which you want to direct your output.  If it's not, change it.


Selecting a Sound

Are you hearing the sound you want?  If not, look under "Sounds" in the MIDI Variables window.  Look at the leftmost numerical in the first row.  It's a program (patch) number.  Change it to the sound you'd like.  Try for a sound something like a double-bass.


Setting the Tempo

Set the Tempo numerical, above the Tempo Range Bar in the Global Control window, to 118.  Now look at the Time-Base column in the Patterns window, under the clock icon.  Change the denominator of the Pattern 1 Time-Base numerical for Pattern 1 to 8.  You'll hear the notes played much faster.


Varying Your Pattern

We've created a Pattern with notes, speed, MIDI channel specification, and sound.  Now we'll give it rhythmic variety.  Look at the Velocity Range Bar  for Pattern 1 (the topmost) in the MIDI Variables window.  Experiment with different range settings, but end with a large range, say between 48 and 110.

Now select the Accents button, at the bottom of the Cyclic Editor window.  When the Accents Button is highlighted, it means that the grids represent accents.  The grids represent the four Patterns, 1 - 4, top to bottom.  With the left mouse button, click in the fourth column of the grid for Pattern 1 (the topmost).  You've set a cycle length of four steps.  Now, with the right mouse button, click in the top box of the first column, and in the bottom boxes of the second, third and fourth columns.  You should be hearing an accent cycle of one strong beat followed by three weak beats.  Remember, however, that the effect of this change is dependent upon the sensitivity of your sound to MIDI velocity signals.  If you don't hear significant changes in accent, experiment with other sounds.  Experiment also with other accent cycles.  Try, for example, a cycle length of 1.  Click with the left mouse button in the first column.  All the notes will be of equal accent.  If you drag down the length of the column from top to bottom with the right mouse button, so that the entire column is selected, you'll hear random accents, because the program will randomly choose from among the different levels selected.  If you select the bottom level alone, your notes won't sound at that step in the cycle because you'll be sending zero velocity.




Creating Another Pattern

M contains five Pattern types, and each one lets you do different kinds of things.  We've already created a Pitch Distribution Pattern (which was the default Pattern type in TUTORIAL.MST) as Pattern 1.  This time we'll create a Step-Time Record Pattern as Pattern 2, which lets us input chords.

Select the Pattern 2 (second from the top) Pattern Type icon under "TYPE" in the Patterns window.  Then go to the Pattern menu and select "New Pattern(s)...".  A dialog box will appear.  Click in the Step-Time Record box and click OK.  Pattern 2's icon will change to resemble two feet.  Click on the Record Button for Pattern 2 and play some music.  Set the Echo numerical in the Global Control window to echo your input out to MIDI channel 2.  There's no need to stop Pattern 1 from playing, but if you want to stop hearing it, click on its Mute Button, under the speaker icon.

Change the Pattern 2 Time-Base denominator numerical to 16.  

Following the same routines we described above for Pattern 1 (but remembering that we're now working with Pattern 2, which will always be the second from the top in any column), set the MIDI Channel Numerical (under "Orchest" in the MIDI Variables window)) and the Sounds Numerical to whatever you'd like.


Varying the Second Pattern

We're now going to add variety to the second Pattern, giving it an improvisational feel.

Move the Pattern 2 leftmost (of the three) Note Order sliders, in the Note Manipulation window, to the left.  Move the next slider also the left.  Experiment with the specific settings.  What you're doing is scrambling and randomizing the order of the notes in the Pattern.

Change the Pattern 2 Note Density Numerical, under "Note %" in the Note Manipulation window, to about 30%.  This sets a probability for each note to sound.  Change the Pattern 2 Direct Numerical to about 50%.  This sets a probability for the amount of time that the Pattern will play forwards and backwards.

Change the Pattern 2 right (of the two) Transp numerical from 3 to 4.  This will transpose the Pattern up an octave.  

Change also the left Transp numerical.  It will change the "key" of your Pattern.  Experiment.  Deselect the Mute Button for Pattern 1 so that you can hear both Patterns together while adjusting their keys and octaves.  C3 represents the key and octave in which a Pattern was originally recorded, and any change from that setting will change your Pattern's relative transposition.

Following the routines described above for Pattern 1, go to the Cyclic Editor window and set an accent cycle of 3 for Pattern 2, with one strong and two weak beats.  Experiment.  Then select the Durations icon, with the 16th-note and the whole note.  Select a cycle length of one, and set random durations by dragging the height of the column from top to bottom with the right mouse button.  Experiment.  Then select the Articulate icon, with the slurred notes.  Select a cycle length of one, and set random legato-staccato note articulations by dragging the height of the column from top to bottom with the right mouse button.  Experiment.

Finally, click on the Sync button in the Global Control window to restart both Patterns together, putting them in sync.  Experiment with the controls you've used until you're pleased with the music.


Performing

As the Patterns are playing, transpose your music with your MIDI keyboard by clicking on the Transpose buttons, under  "#b" in the Patterns window, for Patterns 1 and 2, leaving them set to "A".  Then play different notes on your MIDI keyboard.  Remember that middle-C is the key in which you originally recorded.  When you've finished transposing, don't forget to deselect the Transpose buttons.

You can also use the Input Control System, which is a way to control the program's functioning from your MIDI keyboard.  Click on the Ctrl button, in the Global Control window, to activate the system. Then, for example, play middle-C on your MIDI keyboard.  The music will stop.  Play middle-C again and the music will start again.  It's a simple example of using the Input Control System, but there's lots more you can do.


Experiment

We've taken you through recording and varying two Pattern types and some simple examples of performance.  There's lots more to do.  Experiment as you go.  Try things out.  You'll find that M is the ideal environment for coming up with fascinating musical ideas.

We hope you enjoy using M!


For Further Information

Intelligent Music
PO Box 8748
Albany, NY 12208 USA
Tel: (518) 434-4110
