Symbols and Constants
Keywords: mma

Subsections

- Chord Names
  - Octave Adjustment
  - Altered Chords
  - Diminished Chords
  - Slash Chords
  - Polychords
  - Chord Inversions
  - Barre Settings
  - Roman Numerals
- MIDI Voices
  - Voices, Alphabetically
  - Voices, By MIDI Value
- Drum Tones
  - Drum Tones, Alphabetically
  - Drum Tones, by MIDI Value
- DrumKits
  - Drum Kits
- MIDI Controllers
  - Controllers, Alphabetically
  - Controllers, by Value

#
Symbols and Constants

This appendix is a reference to the chords that MMA recognizes and name/value tables for drum and instrument names. The tables have been auto-generated by MMA using the -D options.

# Chord Names

MMA recognizes standard chord names as listed below. The names are case sensitive and must be entered in uppercase letters as shown:

> A A A B B B C C C D D D E E E F F F G G G

Please note that in your input files you must use a lowercase “b” or an “&” to represent a and a “#” for a .

All “7th” chords are “dominant 7th” unless specifically noted as “major”. A dominant 7th has a flattened 7th note (in a C7 chord this is a b; a C Major 7th chord has a b).

For a more detailed listing of the chords, notes and scales you should download the document `www.mellowood.ca/mma/chords.pdf.gz`.

The following types of chords are recognized (these are case sensitive and must be in the mixed upper and lowercase shown):

(5) | Augmented triad.
(add9) | Major chord plus sharp 9th (no 7th.)
(add9) | Major chord plus 9th (no 7th.)
(add9) | Major chord plus flat 9th (no 7th.)
(5) | Major triad with flat 5th. MMA notatation requires the () around the name.
+ | Augmented triad.
+7 | An augmented chord (raised 5th) with a dominant 7th.
+79 | An augmented chord (raised 5th) with a dominant 7th and sharp 9th.
+79 | An augmented chord (raised 5th) with a dominant 7th and flat 9th.
+7911 | Augmented 7th with flat 9th and sharp 11th.
+9 | 7th plus 9th with sharp 5th (same as aug9).
+9M7 | An augmented chord (raised 5th) with a major 7th and 9th.
+M7 | Major 7th with sharp 5th.
11 | 9th chord plus 11th (3rd not voiced).
115 | Augmented 11th (sharp 5).
11+ | Augmented 11th (sharp 5).
119 | 7th chord plus flat 9th and 11th.
13 | 7th (including 5th) plus 13th (the 9th and 11th are not voiced).
1311 | 7th plus sharp 11th and 13th (9th not voiced).
139 | 7th (including 5th) plus 13th and sharp 9th (11th not voiced).
135 | 7th with flat 5th, plus 13th (the 9th and 11th are not voiced).
139 | 7th (including 5th) plus 13th and flat 9th (11th not voiced).
13sus | 7sus, plus 9th and 13th
13sus4 | 7sus, plus 9th and 13th
13sus9 | 7sus, plus flat 9th and 13th
5 | Altered Fifth or Power Chord; root and 5th only.
6 | Major tiad with added 6th.
6(add9) | 6th with added 9th. This is sometimes notated as a slash chord in the form “6/9”. MMA voices the 6th an octave higher.
69 | 6th with added 9th. This is sometimes notated as a slash chord in the form “6/9”. MMA voices the 6th an octave higher.
7 | 7th.
711 | 7th plus sharp 11th (9th omitted).
75 | An augmented chord (raised 5th) with a dominant 7th.
759 | 7th with sharp 5th and sharp 9th.
759 | An augmented chord (raised 5th) with a dominant 7th and flat 9th.
79 | 7th with sharp 9th.
7911 | 7th plus sharp 9th and sharp 11th.
7913 | 7th with sharp 9th and flat 13th.
7(6) | 7th with added 6th.
7(add13) | 7th with added 13th.
7(omit3) | 7th with unvoiced 3rd.
7+ | An augmented chord (raised 5th) with a dominant 7th.
7+5 | An augmented chord (raised 5th) with a dominant 7th.
7+9 | 7th with sharp 9th.
7-5 | 7th, flat 5.
7-9 | 7th with flat 9th.
7alt | Uses a 7th flat 5, flat 9. Probably not correct, but works (mostly).
713 | 7th (including 5th) plus flat 13th (the 9th and 11th are not voiced).
75 | 7th, flat 5.
759 | 7th with flat 5th and sharp 9th.
75(add13) | 7th with flat 5 and 13th.
759 | 7th with flat 5th and flat 9th.
79 | 7th with flat 9th.
7911 | 7th plus flat 9th and sharp 11th.
79sus | 7th with suspended 4th and flat 9th.
7omit3 | 7th with unvoiced 3rd.
7sus | 7th with suspended 4th, dominant 7th with 3rd raised half tone.
7sus2 | A sus2 with dominant 7th added.
7sus4 | 7th with suspended 4th, dominant 7th with 3rd raised half tone.
7sus9 | 7th with suspended 4th and flat 9th.
9 | 7th plus 9th.
911 | 7th plus 9th and sharp 11th.
95 | 7th plus 9th with sharp 5th (same as aug9).
9+ | 7th plus 9th with sharp 5th (same as aug9).
9+5 | 7th plus 9th with sharp 5th (same as aug9).
9-5 | 7th plus 9th with flat 5th.
95 | 7th plus 9th with flat 5th.
96 | 9th with flat 6 (no 5th or 7th).
9sus | 7sus plus 9th.
9sus4 | 7sus plus 9th.
M | Major triad. This is the default and is used in the absence of any other chord type specification.
M11 | Major triad plus sharp 11th.
M11 | Major 9th plus 11th.
M13 | Major 7th (including 5th) plus 13th (9th and 11th not voiced).
M1311 | Major 7th plus sharp 11th and 13th (9th not voiced).
M6 | Major tiad with added 6th.
M7 | Major 7th.
M711 | Major 7th plus sharp 11th (9th omitted).
M75 | Major 7th with sharp 5th.
M7(add13) | 7th (including 5th) plus 13th and flat 9th (11th not voiced).
M7+5 | Major 7th with sharp 5th.
M7-5 | Major 7th with a flat 5th.
M75 | Major 7th with a flat 5th.
M9 | Major 7th plus 9th.
M911 | Major 9th plus sharp 11th.
add9 | Major chord plus sharp 9th (no 7th.)
add9 | Major chord plus 9th (no 7th.)
add9 | Major chord plus flat 9th (no 7th.)
aug | Augmented triad.
aug7 | An augmented chord (raised 5th) with a dominant 7th.
aug79 | An augmented chord (raised 5th) with a dominant 7th and sharp 9th.
aug79 | An augmented chord (raised 5th) with a dominant 7th and flat 9th.
aug9 | 7th plus 9th with sharp 5th (same as aug9).
aug9M7 | An augmented chord (raised 5th) with a major 7th and 9th.
dim | A dim7, not a triad!
dim(13) | Diminished seventh, added flat 13th.
dim3 | Diminished triad (non-standard notation).
dim7 | Diminished seventh.
dim7(addM7) | Diminished tirad with added Major 7th.
m | Minor triad.
m5 | Minor triad with augmented 5th.
m7 | Minor Triad plus Major 7th. You will also see this printed as “m(maj7)”, “m+7”, “min(maj7)” and “min7” (which MMA accepts); as well as the MMA invalid forms: “-(Δ7)”, and “min7”.
m(add9) | Minor triad plus 9th (no 7th).
m(5) | Minor triad with flat 5th (aka dim).
m(maj7) | Minor Triad plus Major 7th. You will also see this printed as “m(maj7)”, “m+7”, “min(maj7)” and “min7” (which MMA accepts); as well as the MMA invalid forms: “-(Δ7)”, and “min7”.
m(sus9) | Minor triad plus 9th (no 7th).
m+ | Minor triad with augmented 5th.
m+5 | Minor triad with augmented 5th.
m+7 | Minor Triad plus Major 7th. You will also see this printed as “m(maj7)”, “m+7”, “min(maj7)” and “min7” (which MMA accepts); as well as the MMA invalid forms: “-(Δ7)”, and “min7”.
m+79 | Augmented minor 7 plus sharp 9th.
m+79 | Augmented minor 7 plus flat 9th.
m+7911 | Augmented minor 7th with flat 9th and sharp 11th.
m11 | 9th with minor 3rd, plus 11th.
m115 | Minor 7th with flat 5th plus 11th.
m13 | Minor 7th (including 5th) plus 13th (9th and 11th not voiced).
m6 | Minor 6th (flat 3rd plus a 6th).
m6(add9) | Minor 6th with added 9th. This is sometimes notated as a slash chord in the form “m6/9”.
m69 | Minor 6th with added 9th. This is sometimes notated as a slash chord in the form “m6/9”.
m7 | Minor 7th (flat 3rd plus dominant 7th).
m75 | Minor 7th with sharp 5th.
m79 | Minor 7th with added sharp 9th.
m7(9) | Minor 7th with added sharp 9th.
m7(add11) | Minor 7th plus 11th.
m7(add13) | Minor 7th plus 13th.
m7(9) | Minor 7th with added flat 9th.
m7(omit5) | Minor 7th with unvoiced 5th.
m7-5 | Minor 7th, flat 5 (aka 1/2 diminished).
m75 | Minor 7th, flat 5 (aka 1/2 diminished).
m759 | Minor 7th with flat 5th and flat 9th.
m79 | Minor 7th with added flat 9th.
m7911 | Minor 7th plus flat 9th and sharp 11th.
m7omit5 | Minor 7th with unvoiced 5th.
m7sus | Minor suspended 4th, minor triad plus 4th and dominant 7th.
m7sus4 | Minor suspended 4th, minor triad plus 4th and dominant 7th.
m9 | Minor triad plus 7th and 9th.
m911 | Minor 7th plus 9th and sharp 11th.
m95 | Minor triad, flat 5, plus 7th and 9th.
mM7 | Minor Triad plus Major 7th. You will also see this printed as “m(maj7)”, “m+7”, “min(maj7)” and “min7” (which MMA accepts); as well as the MMA invalid forms: “-(Δ7)”, and “min7”.
mM7(add9) | Minor Triad plus Major 7th and 9th.
maj13 | Major 7th (including 5th) plus 13th (9th and 11th not voiced).
maj7 | Major 7th.
maj9 | Major 7th plus 9th.
m5 | Minor triad with flat 5th (aka dim).
m9 | Minor chord plus flat 9th (no 7th.)
min7 | Minor Triad plus Major 7th. You will also see this printed as “m(maj7)”, “m+7”, “min(maj7)” and “min7” (which MMA accepts); as well as the MMA invalid forms: “-(Δ7)”, and “min7”.
min(maj7) | Minor Triad plus Major 7th. You will also see this printed as “m(maj7)”, “m+7”, “min(maj7)” and “min7” (which MMA accepts); as well as the MMA invalid forms: “-(Δ7)”, and “min7”.
msus | Minor suspended 4th, minor triad plus 4th.
msus4 | Minor suspended 4th, minor triad plus 4th.
omit3(add9) | Triad: root, 5th and 9th.
omit3add9 | Triad: root, 5th and 9th.
sus | Suspended 4th, major triad with the 3rd raised half tone.
sus(add9) | Suspended 4th, major triad with the 3rd raised half tone plus sharp 9th.
sus(add9) | Suspended 4th, major triad with the 3rd raised half tone plus 9th.
sus(add9) | Suspended 4th, major triad with the 3rd raised half tone plus flat 9th.
sus2 | Suspended 2nd, major triad with the major 2nd above the root substituted for 3rd.
sus4 | Suspended 4th, major triad with the 3rd raised half tone.
sus9 | 7sus plus 9th.
o | A dim7 using a degree symbol
o(addM7) | dim7(addM7) using degree symbol
o3 | A dim3 (triad) using a degree symbol
ø | Half-diminished using slashed degree symbol

In all cases, the “types” defined above follow the chord “name” with no intervening space or other character. For example, use “G#m&5” to enter a “G# minor flat 5” chord.

In modern pop charts the “M” in a major 7th chord (and other major chords) is often represented by a “Δ”. When entering these chords, just replace the “Δ” with an “M”. For example, change “GΔ7” (or “Gmaj7”) to “GM7”.

A chord name without a type is interpreted as a major chord (or triad). For example, the chord “C” is identical to “CM”.

There are also a number of not-chord items, ie: “z”, “z!” and “CzDC. These are MMA 's idea of rests. See details here.

MMA has an large set of defined chords. However, you can add your own with the DEFCHORD command, details here.

##
Octave Adjustment

Depending on the key and chord sequence, a chord may end up in the wrong octave. This is caused by MMA 's internal routines which create a chord: all of the tables are maintained for a “C” chord and the others are derived from that point by subtracting or adding a constant. To compensate you can add leading “-”s or “+”s to the chordname to force the movement of that chord and scale up or down. You can have multiple “+”s or “-”s without internal limits, but in more cases anything more than three is just silly. If you find you're needing lots of octave adjustments, you might want to look at the octave setting in the underlying track.

For example, the following line will move the chord up and down for the third and fourth beats:

Cm Fm -Gm +D7

The effect of octave shifting is also highly dependent on the voicing options in effect for the track.

You'll have to listen to the MMA output to determine when and where to use this adjustment. Hopefully, it won't be needed all that much.

If you have a large number of chords to adjust, use the CHORDADJUST command , here.

## Altered Chords

According to Standardized Chord Symbol Notation altered chords should be written in the form Cmi 7(95). However, this is pretty hard to type (and parse). So, we've used the convention that the altered intervals should be written in numerical order: Cm759 (in this case the “7” is not “altered”, it's part of the chord name). Also, note that we use “m” for “minor” which appears to be more the conventional method than “mi”.

## Diminished Chords

In some pop and jazz charts it is assumed that a diminished chord is always a diminished 7th ... a diminished triad is never played. MMA continues this, sometimes erroneous, assumption.A.1 You can change the behavior in several ways: change the chord notes and scale for a “dim” from a dim7 to a triad by following the instructions here; use the slightly oddball notation of “m5” which generates a “diminished triad”; or use the more-oddball notation “dim3”.A.2 A more generic solution is to use TWEAKS to change between “7th” and “triad” (see here for details). Our recommendation is to use “m5” for the triad and “dim7” for the four note chord.

Notational notes: In printed music a “diminished” chord is sometimes represented with a small circle symbol (e.g., “F o”) and a “half-diminished” as a small slashed circle (e.g., “C ø”). MMA accepts this input so long as:

o | is represented by the character code 176,
ø | is represented by the character code 248.

##
Slash Chords

Charts sometimes use slash chords in the form “Am/E”. This notation is used, mainly, to indicate chord inversions. For example, the chord notes in “Am/E” become “E”, “A” and “C” with the “E” taking the root position. MMA will accept chords of this type. However, you may not notice any difference in the generated tracks due to the inversions used by the current pattern.

You may also encounter slash chords where the note after the “slash” is not a note in the chord. Consider the ambiguous notation “Dm/C”. The composer (or copyist) might mean to add a “C” bass note to a “Dm” chord, or she might mean “Dm7”, or even an inverted “Dm7”. MMA will handle these ... almost perfectly. When the “slash” part of the chord indicates a note which is not a note in the chord, MMA assumes that the indicated note should be used in the bass line. Since each chord generated by MMA also has a “scale” associated with it for use by bass and scale patterns this works. For example, a C Major chord will have the scale “c, d, e, f, g, a, b”; a C Minor chord has the same scale, but with an e. If the slash note is contained in the scale, the scale will be rotated so that the note becomes the “root” note.

A warning message will be printed if the note is not in the scale associated with the chord. In this case the slash part will have no effect. A list of chords which do use the specified note is listed and you might want to change the chord type to include the slashed note. For example, if you have the notation “C/B” you might want to change that to “C7/B” since the dominant seventh chord includes the “B” (note that a C major chord only has the notes “c”, “e” and “g” in it, but its associated scale major has “b”, not “b”).

Another notation you may see is something like “Dm/9”. Again, the meaning is not clear. It probably means a “Dm9”, or “Dm9/E” ... but since MMA isn't sure this notation will generate an error.

As an option, you can use a Roman or Arabic numeral in the range “I” to “VII” or “1” to “7” to specify the bass note (sometimes referred to as “fingered bass”). For example, to specify the bass note as the 5th in a C major chord you can use either G/D, G/V, or G/v. The Roman portion can be in upper or lower case.

Please note that, for fairly obvious reasons, you cannot have both slash notation and an inversion (see the next section).

To summarize how MMA handles slash notes:

- For slash notes given in Roman or Arabic numerals (“C/III”, “G/3”, etc.) the slash part is converted to an the equivalent alphabetic value (“E”, `B”, etc.). This is done at the start of the slash notation code.

- If the note is found in the scale related to the given chord, the scale is rotated so that the slash note becomes the root note in the scale.

- If the note is also found in the chord, the chord will be rotated (inverted) so that the slash note becomes the root note of the chord.

- If the note is not in the scale (in which case it isn't in the chordA.3), a warning message is displayed.

- Malformed slash values (like “G/9”) generate an error.

For more details on “slash chords” your favorite music theory book or teacher is highly recommended!

## Polychords

In modern music chords can be quite complex and difficult to notate in anything but standard sheet music. In addition to the slash chords discussed above there are also POLYCHORDS. Simply stated a polychord is the result of two (or more) chords played at the same time. In traditional music theory this is notated as a fraction. So, a Dmajor chord combined with a Cseventh could be notated as D/C7. In traditional theory, the notes in the D chord would be played higher (above) the notes of the C7 chord.

MMA handles polychords by specifying the two parts joined by a “pipe” symbol. So, the example above would be notated as:

C7¦D

For optimal results, you should understand the process by which MMA creates the new chord:

1. The notes for the first chord and the underlying scale are calculated,
2. The notes for the second chord are calculated,
3. The notes are combined (with duplicates removed).
4. If the new chord is longer than 8 notes it is truncated (and a warning message is displayed).

Note that the scale list used by BASS and SCALE is the one belonging to the first chord; the second chord's octave is not adjusted; and no volume changes between the two chords are made. This means that you most likely should take care to ensure the following:

- Explicitly set the octave of the second chord with the “+” modifier. To continue the example, use “C7¦+D”.

- Consider the order of the two chords to ensure the proper scale. The chord “C7¦+D” and “+D¦C7” may generate the same notes, but the underlying scales are completely different.

- Consider adjusting the volume of the individual notes in the new chord. Since you'll not be using polychords very often you might want to do adjust the pattern with a RIFF directive:

  Chord Riff 1 2 90 85 80 75 70 65 60 C7¦+D

  which would generate a 2 beat chord with decreasing note velocities.

- Pay careful attention to the VOICING of the chord. Different settings mangle the note order and may produce unexpected results.

It is possible to combine slash, barre, octave and inversions with polychords. In the case of barre only the value for the first chord is used.

A cute trick is to create a “pretend” polychord by duplicating the chord into a higher octave. For example, the chord “D¦+D” will generate two D major chords an octave apart. You might use this to make a single bar sound brighter. If you are not hearing what you think should, examine the VOICING for the track—VOICING MODE=OPTIMAL will remove the duplicate notes you are trying to insert.

## Chord Inversions

Instead of using a slash chord you can specify an inversion to use with a chord. The notation is simply an “>” and a number between -5 and 5 immediately following the chord name.

The chord will be “rotated” as specified by the value after the “>”.

For example, the chord “C>2” will generate the notes G, C and E; “F>-1” gives C, F and A.

There is an important difference between this option and a slash chord: in inversions neither the root note nor the associated scale are modified.

The actual effect of a chord inversion will vary, perhaps greatly, depending on the VOICING mode. For example, using an inverted chord with VOICING MODE=OPTIMAL makes no difference at all, using with VOICING MODE=NONE (the default) gives the most difference.

##
Barre Settings

It is possible to set a barre for a chord in a PLECTRUM track by adding a “:” and a value to the chordname. A barre setting must be the last item in a chordname and is only used by PLECTRUM tracks. Barre values can be negative, meaning your guitar is getting bigger.A.4Examples include “Cm:3”, “E7>2:-2” and “+F:4”.

Important: unlike a real instrument, MMA barre does not transpose the chord. The same chord is played, but with a higher tonality. See here for details on creating transposing chord shapes in PLECTRUM tracks.

##
Roman Numerals

Instead of standard chord symbol notation you can use roman numerals to specify chords. This is not the place for music theory, but, simply put, a roman numeral specifies an interval based on the current key. So, in the key of C Major a ”I” would be a C major chord, “V” a G major, etc.

When using Roman numeral chords it is very important to set the KEYSIGnature! Failing to do this will result in undefined behavior.A.5 See here for details on setting the key signature.

MMA recognizes the following:

I to VII These uppercase roman numerals represent major chords. i to vii Lowercase roman numerals represent minor chords.

In addition, certain modifiers can be used to specify a chord quality (major, diminished, etc). These are appended to the roman numeral (without spaces). MMA is a bit lazy when it comes to the strict interpretation of chord qualities and permits many constructions which are technically incorrect (but work fine musically). Quality modifiers include the following:

0, o, O or o a diminished triad. Only valid with lowercase (minor) numerals, 07, o7, O7 or o a diminished seventh chord. Only valid with lowercase (minor) numerals, -07, -o7, -O7 or ø a half diminished seventh chord. Only valid with lowercase (minor) numerals, b or & Lowers the resulting chord pitch by a semitone, # Raises the resulting chord pitch by a semitone.

Examples of roman numeral chords include “I”, “IV”, “V7”, “ii0”, “V13” and “v13”.

Other chord modifiers such as octave adjustment, capo and inversions can be combined with roman numerals. So, “I:3”, “+ii>2” and “IV7>2:-2” are legitimate.

When specifying chords in Roman numeral notation “slash” inversions should be specified in Arabic or Roman numerals, details here.A.6

MMA 's implementation differs from the standard in several ways:

- In Roman, the symbol for diminished chords should be the small, raised circle “ o”. Since it's hard to type that with a text editor we use a “0” (digit), “o” or “O”. Half diminished should be the slashed circle “ ø” ... to make typing easier we recommend our alternate of an “o” preceded by a “-”. If your input method and text editor support “ o” and “ ø” ensure they are the character values 176 and 248.

- In Roman, inversions are specified with small, raised Arabic numerals after the chord name. MMA doesn't support this.

- In Roman, bass notes are specified with a small Arabic numeral after the chord name. MMA doesn't support this. Use slash notation instead.

- Unlike Roman, complicated notations are permitted. For example (in the key of C) the roman chords ib6(add9) and Ibm6(add9) will both convert to the standard notation Cbm6(add9).

- MMA permits the use of a b or # to modify the pitch by a semitone. In strict Roman numeral usage the chord should be specified as an altered chord or inversion. However, it's much too common to see usages like C#dim in the key of C to disallow i#0. And to be completely wrong, but permitted, you could even use I#dim (blame it on the parser).

To aid in debugging, a special DEBUG option ROMAN is provided. When enabled this will display the conversions for both Roman numeral chords and slash notation. See here for information to enable/disable this option.

#
MIDI Voices

When setting a voice for a track (i.e., Bass Voice NN), you can specify the patch to use with a symbolic constant. Any combination of upper and lower case is permitted. The following are the names with the equivalent voice numbers:

## Voices, Alphabetically

5thSawWave | 86
Accordion | 21
AcousticBass | 32
AgogoBells | 113
AltoSax | 65
Applause/Noise | 126
Atmosphere | 99
BagPipe | 109
Bandoneon | 23
Banjo | 105
BaritoneSax | 67
Bass&Lead | 87
Bassoon | 70
BirdTweet | 123
BottleBlow | 76
BowedGlass | 92
BrassSection | 61
BreathNoise | 121
Brightness | 100
Celesta | 8
Cello | 42
Charang | 84
ChifferLead | 83
ChoirAahs | 52
ChurchOrgan | 19
Clarinet | 71
Clavinet | 7
CleanGuitar | 27
ContraBass | 43
Crystal | 98
DistortionGuitar | 30
EchoDrops | 102
EnglishHorn | 69
EPiano | 5
Fantasia | 88
Fiddle | 110
FingeredBass | 33
Flute | 73
FrenchHorn | 60
FretlessBass | 35
Glockenspiel | 9
Goblins | 101
GuitarFretNoise | 120
GuitarHarmonics | 31
GunShot | 127
HaloPad | 94
Harmonica | 22
HarpsiChord | 6
HelicopterBlade | 125
Honky-TonkPiano | 3
IceRain | 96
JazzGuitar | 26
Kalimba | 108
Koto | 107
Marimba | 12
MelodicTom1 | 117
MetalPad | 93
MusicBox | 10
MutedGuitar | 28
MutedTrumpet | 59
NylonGuitar | 24
Oboe | 68
Ocarina | 79
OrchestraHit | 55
OrchestralHarp | 46
Organ1 | 16
Organ2 | 17
Organ3 | 18
OverDriveGuitar | 29
PanFlute | 75
Piano1 | 0
Piano2 | 1
Piano3 | 2
Piccolo | 72
PickedBass | 34
PizzicatoString | 45
PolySynth | 90
Recorder | 74
ReedOrgan | 20
ReverseCymbal | 119
RhodesPiano | 4
Santur | 15
SawWave | 81
SeaShore | 122
Shakuhachi | 77
Shamisen | 106
Shanai | 111
Sitar | 104
SlapBass1 | 36
SlapBass2 | 37
SlowStrings | 49
SoloVoice | 85
SopranoSax | 64
SoundTrack | 97
SpaceVoice | 91
SquareWave | 80
StarTheme | 103
SteelDrums | 114
SteelGuitar | 25
Strings | 48
SweepPad | 95
SynCalliope | 82
SynthBass1 | 38
SynthBass2 | 39
SynthBrass1 | 62
SynthBrass2 | 63
SynthDrum | 118
SynthStrings1 | 50
SynthStrings2 | 51
SynthVox | 54
TaikoDrum | 116
TelephoneRing | 124
TenorSax | 66
Timpani | 47
TinkleBell | 112
TremoloStrings | 44
Trombone | 57
Trumpet | 56
Tuba | 58
TubularBells | 14
Vibraphone | 11
Viola | 41
Violin | 40
VoiceOohs | 53
WarmPad | 89
Whistle | 78
WoodBlock | 115
Xylophone | 13

## Voices, By MIDI Value

0 | Piano1
1 | Piano2
2 | Piano3
3 | Honky-TonkPiano
4 | RhodesPiano
5 | EPiano
6 | HarpsiChord
7 | Clavinet
8 | Celesta
9 | Glockenspiel
10 | MusicBox
11 | Vibraphone
12 | Marimba
13 | Xylophone
14 | TubularBells
15 | Santur
16 | Organ1
17 | Organ2
18 | Organ3
19 | ChurchOrgan
20 | ReedOrgan
21 | Accordion
22 | Harmonica
23 | Bandoneon
24 | NylonGuitar
25 | SteelGuitar
26 | JazzGuitar
27 | CleanGuitar
28 | MutedGuitar
29 | OverDriveGuitar
30 | DistortionGuitar
31 | GuitarHarmonics
32 | AcousticBass
33 | FingeredBass
34 | PickedBass
35 | FretlessBass
36 | SlapBass1
37 | SlapBass2
38 | SynthBass1
39 | SynthBass2
40 | Violin
41 | Viola
42 | Cello
43 | ContraBass
44 | TremoloStrings
45 | PizzicatoString
46 | OrchestralHarp
47 | Timpani
48 | Strings
49 | SlowStrings
50 | SynthStrings1
51 | SynthStrings2
52 | ChoirAahs
53 | VoiceOohs
54 | SynthVox
55 | OrchestraHit
56 | Trumpet
57 | Trombone
58 | Tuba
59 | MutedTrumpet
60 | FrenchHorn
61 | BrassSection
62 | SynthBrass1
63 | SynthBrass2
64 | SopranoSax
65 | AltoSax
66 | TenorSax
67 | BaritoneSax
68 | Oboe
69 | EnglishHorn
70 | Bassoon
71 | Clarinet
72 | Piccolo
73 | Flute
74 | Recorder
75 | PanFlute
76 | BottleBlow
77 | Shakuhachi
78 | Whistle
79 | Ocarina
80 | SquareWave
81 | SawWave
82 | SynCalliope
83 | ChifferLead
84 | Charang
85 | SoloVoice
86 | 5thSawWave
87 | Bass&Lead
88 | Fantasia
89 | WarmPad
90 | PolySynth
91 | SpaceVoice
92 | BowedGlass
93 | MetalPad
94 | HaloPad
95 | SweepPad
96 | IceRain
97 | SoundTrack
98 | Crystal
99 | Atmosphere
100 | Brightness
101 | Goblins
102 | EchoDrops
103 | StarTheme
104 | Sitar
105 | Banjo
106 | Shamisen
107 | Koto
108 | Kalimba
109 | BagPipe
110 | Fiddle
111 | Shanai
112 | TinkleBell
113 | AgogoBells
114 | SteelDrums
115 | WoodBlock
116 | TaikoDrum
117 | MelodicTom1
118 | SynthDrum
119 | ReverseCymbal
120 | GuitarFretNoise
121 | BreathNoise
122 | SeaShore
123 | BirdTweet
124 | TelephoneRing
125 | HelicopterBlade
126 | Applause/Noise
127 | GunShot

#
Drum Tones

When defining a drum tone, you can specify the patch to use with a symbolic constant. Any combination of upper and lower case is permitted. In addition to the drum tone name and the MIDI value, the equivalent “name” in superscript is included. The “names” may help you find the tones on your keyboard.

## Drum Tones, Alphabetically

Cabasa | 69A
Castanets | 84C
ChineseCymbal | 52E
Claves | 75E
ClosedHiHat | 42G
CowBell | 56A
CrashCymbal1 | 49D
CrashCymbal2 | 57A
HandClap | 39E
HighAgogo | 67G
HighBongo | 60C
HighQ | 27E
HighTimbale | 65F
HighTom1 | 50D
HighTom2 | 48C
HighWoodBlock | 76E
JingleBell | 83B
KickDrum1 | 36C
KickDrum2 | 35B
LongGuiro | 74D
LongLowWhistle | 72C
LowAgogo | 68A
LowBongo | 61D
LowConga | 64E
LowTimbale | 66G
LowTom1 | 43G
LowTom2 | 41F
LowWoodBlock | 77F
Maracas | 70B
MetronomeBell | 34B
MetronomeClick | 33A
MidTom1 | 47B
MidTom2 | 45A
MuteCuica | 78G
MuteHighConga | 62D
MuteSurdo | 85D
MuteTriangle | 80A
OpenCuica | 79G
OpenHighConga | 63E
OpenHiHat | 46B
OpenSurdo | 86D
OpenTriangle | 81A
PedalHiHat | 44A
RideBell | 53F
RideCymbal1 | 51E
RideCymbal2 | 59B
ScratchPull | 30G
ScratchPush | 29F
Shaker | 82B
ShortGuiro | 73D
ShortHiWhistle | 71B
SideKick | 37D
Slap | 28E
SnareDrum1 | 38D
SnareDrum2 | 40E
SplashCymbal | 55G
SquareClick | 32A
Sticks | 31G
Tambourine | 54G
VibraSlap | 58B

## Drum Tones, by MIDI Value

27 | HighQE
28 | SlapE
29 | ScratchPushF
30 | ScratchPullG
31 | SticksG
32 | SquareClickA
33 | MetronomeClickA
34 | MetronomeBellB
35 | KickDrum2B
36 | KickDrum1C
37 | SideKickD
38 | SnareDrum1D
39 | HandClapE
40 | SnareDrum2E
41 | LowTom2F
42 | ClosedHiHatG
43 | LowTom1G
44 | PedalHiHatA
45 | MidTom2A
46 | OpenHiHatB
47 | MidTom1B
48 | HighTom2C
49 | CrashCymbal1D
50 | HighTom1D
51 | RideCymbal1E
52 | ChineseCymbalE
53 | RideBellF
54 | TambourineG
55 | SplashCymbalG
56 | CowBellA
57 | CrashCymbal2A
58 | VibraSlapB
59 | RideCymbal2B
60 | HighBongoC
61 | LowBongoD
62 | MuteHighCongaD
63 | OpenHighCongaE
64 | LowCongaE
65 | HighTimbaleF
66 | LowTimbaleG
67 | HighAgogoG
68 | LowAgogoA
69 | CabasaA
70 | MaracasB
71 | ShortHiWhistleB
72 | LongLowWhistleC
73 | ShortGuiroD
74 | LongGuiroD
75 | ClavesE
76 | HighWoodBlockE
77 | LowWoodBlockF
78 | MuteCuicaG
79 | OpenCuicaG
80 | MuteTriangleA
81 | OpenTriangleA
82 | ShakerB
83 | JingleBellB
84 | CastanetsC
85 | MuteSurdoD
86 | OpenSurdoD

#
DrumKits

When setting a drum voice, you can use the name of a known drum kit. Kits are defined by various manufactures, including Yamaha, Casio and Roland. Following is a list of known kits and their values:

## Drum Kits

BRUSH | 40
CLASSIC | 48
DANCE1 | 68
DANCE2 | 69
ELECTRONIC | 24
HIPHOP1 | 64
HIPHOP2 | 65
JAZZ | 32
ORCHESTRA | 48
POWER | 16
ROCK | 16
ROOM | 8
SFX | 56
STANDARD | 0
STANDARD2 | 1
SYNTH1 | 25
SYNTH2 | 30
TECHNO1 | 66
TECHNO2 | 67
TR808 | 25

#
MIDI Controllers

When specifying a MIDI Controller in a MIDISEQ or MIDIVOICE command you can use the absolute value in (either as a decimal number or in hexadecimal by prefixing the value with a “0x”), or the symbolic name in the following tables. The tables have been extracted from information at `http://www.midi.org/about-midi/table3.shtml`. Note that all the values in these tables are in hexadecimal notation.

Complete reference for this is not a part of MMA . Please refer to a detailed text on MIDI or the manual for your synthesizer.

## Controllers, Alphabetically

AllNotesOff | 123
AllSoundsOff | 120
AttackTime | 73
Balance | 8
BalanceLSB | 40
Bank | 0
BankLSB | 32
Breath | 2
BreathLSB | 34
Brightness | 74
Chorus | 93
Ctrl102 | 102
Ctrl103 | 103
Ctrl104 | 104
Ctrl105 | 105
Ctrl106 | 106
Ctrl107 | 107
Ctrl108 | 108
Ctrl109 | 109
Ctrl110 | 110
Ctrl111 | 111
Ctrl112 | 112
Ctrl113 | 113
Ctrl114 | 114
Ctrl115 | 115
Ctrl116 | 116
Ctrl117 | 117
Ctrl118 | 118
Ctrl119 | 119
Ctrl14 | 14
Ctrl15 | 15
Ctrl20 | 20
Ctrl21 | 21
Ctrl22 | 22
Ctrl23 | 23
Ctrl24 | 24
Ctrl25 | 25
Ctrl26 | 26
Ctrl27 | 27
Ctrl28 | 28
Ctrl29 | 29
Ctrl3 | 3
Ctrl30 | 30
Ctrl31 | 31
Ctrl35 | 35
Ctrl41 | 41
Ctrl46 | 46
Ctrl47 | 47
Ctrl52 | 52
Ctrl53 | 53
Ctrl54 | 54
Ctrl55 | 55
Ctrl56 | 56
Ctrl57 | 57
Ctrl58 | 58
Ctrl59 | 59
Ctrl60 | 60
Ctrl61 | 61
Ctrl62 | 62
Ctrl63 | 63
Ctrl79 | 79
Ctrl85 | 85
Ctrl86 | 86
Ctrl87 | 87
Ctrl88 | 88
Ctrl89 | 89
Ctrl9 | 9
Ctrl90 | 90
Data | 6
DataDec | 97
DataInc | 96
DataLSB | 38
DecayTime | 75
Detune | 94
Effect1 | 12
Effect1LSB | 44
Effect2 | 13
Effect2LSB | 45
Expression | 11
ExpressionLSB | 43
Foot | 4
FootLSB | 36
General1 | 16
General1LSB | 48
General2 | 17
General2LSB | 49
General3 | 18
General3LSB | 50
General4 | 19
General4LSB | 51
General5 | 80
General6 | 81
General7 | 82
General8 | 83
Hold2 | 69
Legato | 68
LocalCtrl | 122
Modulation | 1
ModulationLSB | 33
NonRegLSB | 98
NonRegMSB | 99
OmniOff | 124
OmniOn | 125
Pan | 10
PanLSB | 42
Phaser | 95
PolyOff | 126
PolyOn | 127
Portamento | 65
PortamentoCtrl | 84
PortamentoLSB | 37
RegParLSB | 100
RegParMSB | 101
ReleaseTime | 72
ResetAll | 121
Resonance | 71
Reverb | 91
SoftPedal | 67
Sostenuto | 66
Sustain | 64
Tremolo | 92
Variation | 70
VibratoDelay | 78
VibratoDepth | 77
VibratoRate | 76
Volume | 7
VolumeLSB | 39

## Controllers, by Value

0 | Bank
1 | Modulation
2 | Breath
3 | Ctrl3
4 | Foot
5 | Portamento
6 | Data
7 | Volume
8 | Balance
9 | Ctrl9
10 | Pan
11 | Expression
12 | Effect1
13 | Effect2
14 | Ctrl14
15 | Ctrl15
16 | General1
17 | General2
18 | General3
19 | General4
20 | Ctrl20
21 | Ctrl21
22 | Ctrl22
23 | Ctrl23
24 | Ctrl24
25 | Ctrl25
26 | Ctrl26
27 | Ctrl27
28 | Ctrl28
29 | Ctrl29
30 | Ctrl30
31 | Ctrl31
32 | BankLSB
33 | ModulationLSB
34 | BreathLSB
35 | Ctrl35
36 | FootLSB
37 | PortamentoLSB
38 | DataLSB
39 | VolumeLSB
40 | BalanceLSB
41 | Ctrl41
42 | PanLSB
43 | ExpressionLSB
44 | Effect1LSB
45 | Effect2LSB
46 | Ctrl46
47 | Ctrl47
48 | General1LSB
49 | General2LSB
50 | General3LSB
51 | General4LSB
52 | Ctrl52
53 | Ctrl53
54 | Ctrl54
55 | Ctrl55
56 | Ctrl56
57 | Ctrl57
58 | Ctrl58
59 | Ctrl59
60 | Ctrl60
61 | Ctrl61
62 | Ctrl62
63 | Ctrl63
64 | Sustain
65 | Portamento
66 | Sostenuto
67 | SoftPedal
68 | Legato
69 | Hold2
70 | Variation
71 | Resonance
72 | ReleaseTime
73 | AttackTime
74 | Brightness
75 | DecayTime
76 | VibratoRate
77 | VibratoDepth
78 | VibratoDelay
79 | Ctrl79
80 | General5
81 | General6
82 | General7
83 | General8
84 | PortamentoCtrl
85 | Ctrl85
86 | Ctrl86
87 | Ctrl87
88 | Ctrl88
89 | Ctrl89
90 | Ctrl90
91 | Reverb
92 | Tremolo
93 | Chorus
94 | Detune
95 | Phaser
96 | DataInc
97 | DataDec
98 | NonRegLSB
99 | NonRegMSB
100 | RegParLSB
101 | RegParMSB
102 | Ctrl102
103 | Ctrl103
104 | Ctrl104
105 | Ctrl105
106 | Ctrl106
107 | Ctrl107
108 | Ctrl108
109 | Ctrl109
110 | Ctrl110
111 | Ctrl111
112 | Ctrl112
113 | Ctrl113
114 | Ctrl114
115 | Ctrl115
116 | Ctrl116
117 | Ctrl117
118 | Ctrl118
119 | Ctrl119
120 | AllSoundsOff
121 | ResetAll
122 | LocalCtrl
123 | AllNotesOff
124 | OmniOff
125 | OmniOn
126 | PolyOff
127 | PolyOn

#### Footnotes

... assumption.A.1
  Sometimes a reliable source agrees with us ... in this case Standardized Chord Symbol Notation is quite clear that “dim” is a Diminished 7th and a diminished triad should be notated as “mi (5)”.
... “dim3”.A.2
  The author has adopted this notation for its clarity. Many jazz charts use it as well.
... chordA.3
  It is possible to create a malformed chord/scale using the DEFCHORD command, details here. MMA doesn't worry about everything!
... bigger.A.4
  Values must be in the range -127 to 127. Note that even “small” values can push notes outside of the MIDI range.
... behavior.A.5
  Undefined in this case means that MMA assumes you are in the key of C Major.
...slashchordsA.6
  It is permissible to use something like v/D, but you really shouldn't.