Subsystem Search

This page is read from MIDI Instrument Definitions, a Python library used in the author's other projects, in which every number is traced to a document its maker published. Its source is on GitHub.

Moog Music Slim Phatty MIDI implementation

The MIDI implementation of the Moog Music Slim Phatty: what it answers to, and the 52 controls it offers.

At a glance

Firmware
Not recorded.
MIDI channel
Any one of 1 to 16.
MIDI mode
4: omni off, mono.
Voices
One, so it plays one note at a time.
Note range
Not recorded.
Velocity
Received. Release velocity is ignored.
Aftertouch
None, sent or answered.
Pitch bend
How far it bends is not recorded, and the range can be changed.
Program change
Received and sent, with 100 presets.
MIDI clock
Received.
Start and stop
Received.
Control change
52 controls, in the tables below, 2 of them with a fine half on a second controller number.
NRPN
None.
System exclusive
Supported.

Controls

In the order the definition gives them, by group. Under each control is the name a program calls it by, once pymidiinstrumentdefs.load("moog/slim_phatty") has loaded them.

Interface panel

Control CC Values
Glide On/Off
glide_on_off
65 0 off, 64 on

Modulation

Control CC Values
LFO Rate
lfo_rate
3 0-127
Modulation Amount
mod_amount
6 0-127
Modulation Source
mod_source
68 0 tri, 16 square, 32 saw, 48 ramp, 64 filt_env, 80 osc_2
Modulation Destination
mod_destination
69 0 pitch, 16 filt, 32 wave, 48 osc_2
LFO Sync Source
lfo_sync_source
102 0 int, 64 midi_clk
LFO Sync Clock Div
lfo_sync_clock_div
103 0 thirty_second_note, 8 dotted_thirty_second_note, 16 sixteenth_note, 24 dotted_sixteenth_note, 32 eighth_note, 40 dotted_eighth_note, 48 quarter_note, 56 dotted_quarter_note, 64 half_note, 72 dotted_half_note, 80 whole_note, 88 whole_plus_quarter, 96 whole_plus_half, 104 whole_plus_dotted_half, 112 whole_plus_whole
Mod Source 5
mod_source_5
104 0 filt, 64 s_and_h
Mod Source 6
mod_source_6
105 0 osc_2, 64 noise
Mod Dest 2
mod_dest_2
106 0 off, 25 pitch, 50 filt, 75 wave, 100 osc_2

Oscillators

Control CC Values
Osc 1 Octave
osc_1_octave
74 16 sixteen_foot, 32 eight_foot, 48 four_foot, 64 two_foot
Osc 1 Wave
osc_1_wave
9 0-127
Osc 1 Level
osc_1_level
15 0-127
Glide Rate
glide_rate
5 0-127
1-2 Sync
sync_1_2
77 0 off, 64 on
Osc 2 Octave
osc_2_octave
75 16 sixteen_foot, 32 eight_foot, 48 four_foot, 64 two_foot
Osc 2 Freq
osc_2_freq
10 0-127
Osc 2 Wave
osc_2_wave
11 0-127
Osc 2 Level
osc_2_level
16 0-127
Pitch Bend Up Amount
pitch_bend_up_amount
107 0-127
Pitch Bend Down Amount
pitch_bend_down_amount
108 0-127

Filter

Control CC Values
Cutoff
cutoff
19
fine 51
0-16383
Resonance
resonance
21 0-127
KB Amount
kb_amount
22 0-127
EG Amount
eg_amount
27 0-127
Overload
overload
18 0-127
Filter Poles
filter_poles
109 0 one, 32 two, 64 three, 96 four
Filter Velocity Sens
filter_velocity_sens
110 0 minus_8, 12 minus_7, 19 minus_6, 26 minus_5, 33 minus_4, 40 minus_3, 47 minus_2, 54 minus_1, 61 zero, 68 plus_1, 75 plus_2, 82 plus_3, 89 plus_4, 96 plus_5, 103 plus_6, 110 plus_7, 117 plus_8

Envelope generator

Control CC Values
Filter EG Attack
filter_eg_attack
23 0-127
Filter EG Decay
filter_eg_decay
24 0-127
Filter EG Sustain
filter_eg_sustain
25 0-127
Filter EG Release
filter_eg_release
26 0-127
Volume EG Attack
volume_eg_attack
28 0-127
Volume EG Decay
volume_eg_decay
29 0-127
Volume EG Sustain
volume_eg_sustain
30 0-127
Volume EG Release
volume_eg_release
31 0-127
EGR Release On/Off
egr_release
111 0 off, 64 on
EGR Legato
egr_legato
112 0 on, 43 off, 86 reset

Arpeggiator

Control CC Values
Arpeggiator Enable
arpeggiator_enable
113 0 off, 64 on
Arp Run/Stop
arp_run_stop
90 0 off, 64 on
Arp Clock Rate (coarse)
arp_clock_rate_coarse
4 0-127
Arp Clock Rate (fine)
arp_clock_rate_fine
36 0-127
Arp Clock Source
arp_clock_source
114 0 int, 43 lfo, 86 midi
Arp Clock Divisions
arp_clock_divisions
115 0 thirty_second_note, 8 dotted_thirty_second_note, 16 sixteenth_note, 24 dotted_sixteenth_note, 32 eighth_note, 40 dotted_eighth_note, 48 quarter_note, 56 dotted_quarter_note, 64 half_note, 72 dotted_half_note, 80 whole_note, 88 whole_plus_quarter, 96 whole_plus_half, 104 whole_plus_dotted_half, 112 whole_plus_whole
Arp Range (Octaves)
arp_range
116 0 minus_3, 19 minus_2, 38 minus_1, 57 zero, 71 plus_1, 90 plus_2, 109 plus_3
Arp Pattern
arp_pattern
117 0 up, 43 down, 86 order
Arp Mode
arp_mode
118 0 loop, 43 back_forth, 86 once
Arp Latch Enable
arp_latch_enable
119 0 off, 64 on
Arp Latch/Unlatch
arp_latch_unlatch
91 0 off, 64 on

Output

Control CC Values
Volume
volume
7 0-127

Keybd response

Control CC Values
Keyboard Note Priority
keyboard_note_priority
88 0 glob, 32 low, 64 high, 96 last

Mod wheel function

Control CC Values
Mod Wheel
mod_wheel
1
fine 33
0-16383

Where these facts come from

Source documents

How they were read

The Slim Phatty User's Manual, 75 sheets: the presets at p. 7, the LFO's sync at p. 27, the Master menus at pp. 28 to 34, the pitch bend and Pot Mapping menus at pp. 37 to 39, the arpeggiator's menu at p. 40, the SysEx menus at pp. 42 to 44, the MIDI chapter at p. 54, the control change table at pp. 55 and 56 with its two value tables at p. 57, the clock appendices at pp. 58 and 59, the MIDI Implementation Chart at p. 67, and the specifications at p. 71.

EVERY CONTROLLER NUMBER AND VALUE BELOW IS THE TABLE'S OR ITS VALUE TABLES'. The table is captioned Slim Phatty MIDI CC messages under each of its halves and gives each row a section, a parameter, a function, a controller number and a value column (manual pp. 55 and 56). The chart agrees with it about every number but one: it lists 53 where the table gives cutoff's fine half as 51 (manual pp. 55 and 67). 51 is recorded, because it is the cutoff's 19 plus 32, as the modulation wheel's fine half is its 1 plus 32, which is how the MIDI specification pairs them.

STEPPED SETTINGS ARE EXACT VALUES, NOT BANDS, because that is how the table prints them: "0 (TRI), 16 (SQUARE)" (manual p. 55) and so on, a value and its name. They are recorded as choices, as moog/messenger records its one list of exact values. Three rows, two on p. 55 and one on p. 56, send the reader to a table on another page: "See table for list of values" (manual p. 55). Those tables give fifteen clock divisions and seventeen velocity sensitivities, value by value (manual p. 57). The two pitch bend depths are the exception: the table prints them as 0 to 127, and the menu that sets the same depths offers seven steps each way (manual pp. 37 and 55).

TWO CONTROLS ARE FOURTEEN BITS AS RECEIVED, AND TWO MORE SPLIT ONE SETTING. "The SP sends and receives 7-bit MIDI CC messages for all parameters except for the Modulation Wheel and Filter Cutoff, which receive high-resolution, 14-bit MIDI CC messages." (manual p. 54): 1 with 33, and 19 with 51. Only receiving them in fourteen bits is stated. The arpeggiator's rate is one row and two controllers of a different kind, 4 for the coarse rate in steps of 3 BPM over 21 to 320 BPM and 36 for the fine in tenths of one (manual pp. 54 and 56), and the manual works an example: "For CC#04 = 40 and CC#36 = 17, the SP's display will show '121.7 BPM'." (manual p. 54). So 36 is recorded as a control of its own and not as 4's lower half, although its number is 4 plus 32.

CONTROLLER 6 IS THE MODULATION AMOUNT, NOT DATA ENTRY, AND A CEILING RATHER THAN A LEVEL. The table gives "Adjusts the modulation amount" (manual p. 55) against 6, and no page names a registered or non-registered parameter for data entry to set, so 6 is carried as this instrument's own control. The panel's AMOUNT "is used to adjust the maximum amount of modulation controlled by the Modulation Wheel" (manual p. 18), so 6 sets how far 1 can take the modulation, and with the wheel at rest it does nothing audible.

THE FOUR KNOBS CAN BE GIVEN OTHER NUMBERS. "The Pot Mapping menu allows you to make arbitrary MIDI Continuous Controller (CC) assignments to each of the four Analog Edit knobs on the front panel" (manual p. 38), to any of OFF, 0-127, acting on the instrument, on MIDI or on both (manual p. 39), and "The MIDI CC assignments shown for each section are over-ridden when Pot Mapping is enabled in that section." (manual p. 54). The table is the map with Pot Mapping off.

WHAT LATER SYSTEMS ADDED, AND WHY NONE OF IT IS BELOW. Moog's firmware package is 3.21, and its update instructions list what changed in 3.2 and 3.21. 3.2 added an arpeggiator setting, sync lock, that "Can also set by CC87 (0-63=off, 64-127=on)." (firmware_notes); it fixed a "MIDI CC filtering bug" (firmware_notes), the filter being one the manual never mentions; and 3.21 removed an option the Slim Phatty never needed. Before them, on Moog's forum, Amos Gaynes - whom the manual's foreword names in the team that made the instrument (manual p. 5) - announced a pre-release beta of 3.1. It added per-preset settings for legato glide, an LFO reset and volume velocity sensitivity; four choices of what MIDI output carries, the default sending every controller; and "Arpeggiator if internal clock can now send MIDI Start, MIDI Clock, and MIDI Stop messages when running." (forum_post). No page of the manual carries any of these, so this file describes the system the manual describes and leaves controller 87 out, as the format records one firmware. A consumer driving a unit on 3.21 can send 87 to set sync lock, and may find Start, Clock and Stop sent when the arpeggiator runs on its internal clock.

THE CONTROLLER NUMBERS ARE SHARED WITH THE LITTLE PHATTY. "MIDI Continuous Control numbers (MIDI CC's) are consistent between the Little Phatty and Slim Phatty" (manual p. 34), and the manual's own pages call the instrument a Little Phatty in places (manual pp. 20, 44 and 59).

LOCAL CONTROL IS A SETTING HERE, NOT A MESSAGE. The MIDI Setup menu turns the panel's control of the sound on and off, "Values: ON, OFF; the default is ON" (manual p. 32), and "It does not disable any MIDI transmitting or receiving." (manual p. 32). The chart crosses Local Off both ways (manual p. 67), so no MIDI message reaches the setting. All Notes Off is circled both ways, and the same menu sends it: "This command is the equivalent of a MIDI panic button to silence stuck notes." (manual p. 32).

NOT RECORDED: the note range. The chart's Note Number row gives 0 to 127 received with no True Voice row beneath it (manual p. 67), and no page says directly which notes sound; the nearest is the note calibration's default range, MIDI notes 12 to 116 (manual p. 47). The panel's octave switches also transpose incoming notes by up to two octaves each way (manual p. 22).

NOT RECORDED EITHER: the pitch bend depth, which is set for each preset.