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.

Korg microKORG2 MIDI implementation

The MIDI implementation of the Korg microKORG2: what it answers to, and the 189 controls it offers, on firmware 1.02.

At a glance

Firmware
This page describes firmware 1.02.
MIDI channel
Any one of 1 to 16.
Parts
Timbre 1: on the base MIDI channel, taking notes, controls, and program changes.
Timbre 2: on a MIDI channel of its own, taking notes and controls.
MIDI mode
3: omni off, poly.
Voices
8, shared by the parts that play notes.
Note range
0 to 127: C-1 to G9, counting middle C as C4.
Velocity
Sent and received. Release velocity is ignored.
Aftertouch
None, sent or answered.
Pitch bend
24 semitones, and the range can be changed.
Program change
Received and sent, with 256 presets.
MIDI clock
Sent and received.
Start and stop
Neither sent nor received.
Control change
81 controls, in the tables below.
NRPN
Supported. 108 of the controls below have one.
System exclusive
Supported.

Controls

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

On the base MIDI channel

Performance

Control CC NRPN Values
Modulation
modulation
1 0-127
Hold
hold
64 0-127

PITCH

Control CC NRPN Values
Portamento Time
portamento_time
5 0-127
Portamento Mode
portamento_mode
65 0-63 fingered, 64-127 always

TIMBRE

Control CC NRPN Values
Timbre Level
timbre_level
7 0-127
Timbre Pan
timbre_pan
10 0-127
Timbre Transpose
timbre_transpose
35 0-127
Timbre FineTune
timbre_fine_tune
36 0-127

VOICE

Control CC NRPN Values
Unison Detune
unison_detune
33 0-127
Unison Spread
unison_spread
34 0-127

OSC 1

Control CC NRPN Values
OSC1 Wave
osc1_wave
8 0-21 saw, 22-42 square, 43-63 triangle, 64-85 sine, 86-106 dwgs, 107-127 one_shot
OSC1 Shape/Sample
osc1_shape_sample
9 0-127
OSC1 Mod Amount
osc1_mod_amount
15 0-127
OSC1 Semitones
osc1_semitones
16 0-127
OSC1 FineTune
osc1_fine_tune
17 0-127
OSC1 Level
osc1_level
23 0-127

OSC 2

Control CC NRPN Values
OSC2 Wave
osc2_wave
18 0-21 saw, 22-42 square, 43-63 triangle, 64-85 sine, 86-106 dwgs, 107-127 one_shot
OSC2 Shape/Sample
osc2_shape_sample
19 0-127
OSC2 Mod Amount
osc2_mod_amount
20 0-127
OSC2 Semitones
osc2_semitones
21 0-127
OSC2 FineTune
osc2_fine_tune
22 0-127
OSC2 Level
osc2_level
24 0-127

OSC 3

Control CC NRPN Values
OSC3 Level
osc3_level
25 0-127
OSC3 Wave
osc3_wave
48 0-21 saw, 22-42 square, 43-63 triangle, 64-85 sine, 86-106 dwgs, 107-127 one_shot
OSC3 Shape/Sample
osc3_shape_sample
49 0-127
OSC3 Semitones
osc3_semitones
51 0-127
OSC3 FineTune
osc3_fine_tune
52 0-127

NOISE

Control CC NRPN Values
Noise Level
noise_level
26 0-127
Noise Type
noise_type
29 0-31 lpf, 32-63 hpf, 64-95 bpf, 96-127 deci
Noise Color
noise_color
30 0-127

FILTER

Control CC NRPN Values
Filter Type
filter_type
27 0-127
Filter Keytrack
filter_keytrack
28 0-127
Filter Resonance
filter_resonance
71 0-127
Filter Cutoff
filter_cutoff
74 0-127
Filter Drive
filter_drive
83 0-127

Amp EG

Control CC NRPN Values
Amp EG Sustain
amp_eg_sustain
70 0-127
Amp EG Release
amp_eg_release
72 0-127
Amp EG Attack
amp_eg_attack
73 0-127
Amp EG Decay
amp_eg_decay
75 0-127
Amp EG Velocity Sens
amp_eg_velocity_sens
79 0-127

Filter EG

Control CC NRPN Values
Filter EG Intensity
filter_eg_intensity
84 0-127
Filter EG Attack
filter_eg_attack
85 0-127
Filter EG Decay
filter_eg_decay
86 0-127
Filter EG Sustain
filter_eg_sustain
87 0-127
Filter EG Release
filter_eg_release
88 0-127

LFO 1

Control CC NRPN Values
LFO1 Wave
lfo1_wave
89 0-25 triangle, 26-51 saw_down, 52-76 saw_up, 77-102 square, 103-127 sample_and_hold
LFO1 Frequency
lfo1_frequency
90 0-127
LFO1 Smooth
lfo1_smooth
91 0-127

LFO 2

Control CC NRPN Values
LFO2 Frequency
lfo2_frequency
76 0-127
LFO2 Delay
lfo2_delay
92 0-127
LFO2 Wave
lfo2_wave
102 0-25 triangle, 26-51 saw_down, 52-76 saw_up, 77-102 square, 103-127 sample_and_hold

Virtual patch

Control CC NRPN Values
Patch1 Intensity
patch1_intensity
103 0-127
Patch2 Intensity
patch2_intensity
104 0-127
Patch3 Intensity
patch3_intensity
105 0-127
Patch4 Intensity
patch4_intensity
106 0-127
Patch5 Intensity
patch5_intensity
107 0-127
Patch6 Intensity
patch6_intensity
108 0-127
Patch 1 Source 1
patch1_source1
512
MSB 4, LSB 0
0-127, or 0-17 by NRPN
Patch 2 Source 1
patch2_source1
513
MSB 4, LSB 1
0-127, or 0-17 by NRPN
Patch 3 Source 1
patch3_source1
514
MSB 4, LSB 2
0-127, or 0-17 by NRPN
Patch 4 Source 1
patch4_source1
515
MSB 4, LSB 3
0-127, or 0-17 by NRPN
Patch 5 Source 1
patch5_source1
516
MSB 4, LSB 4
0-127, or 0-17 by NRPN
Patch 6 Source 1
patch6_source1
517
MSB 4, LSB 5
0-127, or 0-17 by NRPN
Patch 1 Source 2
patch1_source2
528
MSB 4, LSB 16
0-127, or 0-17 by NRPN
Patch 2 Source 2
patch2_source2
529
MSB 4, LSB 17
0-127, or 0-17 by NRPN
Patch 3 Source 2
patch3_source2
530
MSB 4, LSB 18
0-127, or 0-17 by NRPN
Patch 4 Source 2
patch4_source2
531
MSB 4, LSB 19
0-127, or 0-17 by NRPN
Patch 5 Source 2
patch5_source2
532
MSB 4, LSB 20
0-127, or 0-17 by NRPN
Patch 6 Source 2
patch6_source2
533
MSB 4, LSB 21
0-127, or 0-17 by NRPN
Patch 1 Destination
patch1_destination
544
MSB 4, LSB 32
0-127, or 0-75 by NRPN
Patch 2 Destination
patch2_destination
545
MSB 4, LSB 33
0-127, or 0-75 by NRPN
Patch 3 Destination
patch3_destination
546
MSB 4, LSB 34
0-127, or 0-75 by NRPN
Patch 4 Destination
patch4_destination
547
MSB 4, LSB 35
0-127, or 0-75 by NRPN
Patch 5 Destination
patch5_destination
548
MSB 4, LSB 36
0-127, or 0-75 by NRPN
Patch 6 Destination
patch6_destination
549
MSB 4, LSB 37
0-127, or 0-75 by NRPN

MOD

Control CC NRPN Values
Mod Control1
mod_control1
12 0-127
Mod Control2
mod_control2
111 0-127
Mod Control3
mod_control3
112 0-127

DELAY

Control CC NRPN Values
Delay Control2
delay_control2
13 0-127
Delay Control3
delay_control3
113 0-127
Delay Control4
delay_control4
114 0-127
Delay Control1
delay_control1
115 0-127

REVERB

Control CC NRPN Values
Reverb Control2
reverb_control2
14 0-127
Reverb Control3
reverb_control3
116 0-127
Reverb Control4
reverb_control4
117 0-127
Reverb Control1
reverb_control1
118 0-127

EQ

Control CC NRPN Values
EQ Output Feedback
eq_output_feedback
93 0-127
EQ High Frequency
eq_high_frequency
94 0-127
EQ Low Frequency
eq_low_frequency
95 0-127
EQ High Gain
eq_high_gain
109 0-127
EQ Low Gain
eq_low_gain
110 0-127

Arpeggiator

Control CC NRPN Values
Arpeggiator Off/On
arpeggiator_off_on
2
MSB 0, LSB 2
0 off, 1 on
Arpeggiator Latch Off/On
arpeggiator_latch_off_on
4
MSB 0, LSB 4
0 off, 1 on
Arpeggiator Swing
arpeggiator_swing
5
MSB 0, LSB 5
0-127
Arpeggiator Resolution
arpeggiator_resolution
6
MSB 0, LSB 6
0-127, or 0-6 by NRPN
Arpeggiator Type
arpeggiator_type
7
MSB 0, LSB 7
0-127, or 0-9 by NRPN
Arpeggiator Octave Range
arpeggiator_octave_range
8
MSB 0, LSB 8
0-127, or 0-3 by NRPN
Arpeggiator Last Step
arpeggiator_last_step
9
MSB 0, LSB 9
0-127, or 0-7 by NRPN
Arpeggiator Gate Time
arpeggiator_gate_time
10
MSB 0, LSB 10
0-127, or 0-100 by NRPN
Arpeggiator Target Timbre
arpeggiator_target_timbre
11
MSB 0, LSB 11
0 both_timbre, 1 timbre1, 2 timbre2
Arpeggiator Key Sync
arpeggiator_key_sync
12
MSB 0, LSB 12
0 off, 1 on

Vocoder

Control CC NRPN Values
Vocoder Mic Direct
vocoder_mic_direct
641
MSB 5, LSB 1
0-127
Vocoder Synth Dry/Wet
vocoder_synth_dry_wet
642
MSB 5, LSB 2
0-127, or 0-100 by NRPN
Vocoder Formant
vocoder_formant
643
MSB 5, LSB 3
0-127
Vocoder Resonance
vocoder_resonance
644
MSB 5, LSB 4
0-127
Vocoder E.F.Sens
vocoder_e_f_sens
645
MSB 5, LSB 5
0-127
Vocoder Band 1 Level
vocoder_band1_level
656
MSB 5, LSB 16
0-127
Vocoder Band 2 Level
vocoder_band2_level
657
MSB 5, LSB 17
0-127
Vocoder Band 3 Level
vocoder_band3_level
658
MSB 5, LSB 18
0-127
Vocoder Band 4 Level
vocoder_band4_level
659
MSB 5, LSB 19
0-127
Vocoder Band 5 Level
vocoder_band5_level
660
MSB 5, LSB 20
0-127
Vocoder Band 6 Level
vocoder_band6_level
661
MSB 5, LSB 21
0-127
Vocoder Band 7 Level
vocoder_band7_level
662
MSB 5, LSB 22
0-127
Vocoder Band 8 Level
vocoder_band8_level
663
MSB 5, LSB 23
0-127
Vocoder Band 9 Level
vocoder_band9_level
664
MSB 5, LSB 24
0-127
Vocoder Band 10 Level
vocoder_band10_level
665
MSB 5, LSB 25
0-127
Vocoder Band 11 Level
vocoder_band11_level
666
MSB 5, LSB 26
0-127
Vocoder Band 12 Level
vocoder_band12_level
667
MSB 5, LSB 27
0-127
Vocoder Band 13 Level
vocoder_band13_level
668
MSB 5, LSB 28
0-127
Vocoder Band 14 Level
vocoder_band14_level
669
MSB 5, LSB 29
0-127
Vocoder Band 15 Level
vocoder_band15_level
670
MSB 5, LSB 30
0-127
Vocoder Band 16 Level
vocoder_band16_level
671
MSB 5, LSB 31
0-127
Vocoder Band 1 Pan
vocoder_band1_pan
672
MSB 5, LSB 32
0-127
Vocoder Band 2 Pan
vocoder_band2_pan
673
MSB 5, LSB 33
0-127
Vocoder Band 3 Pan
vocoder_band3_pan
674
MSB 5, LSB 34
0-127
Vocoder Band 4 Pan
vocoder_band4_pan
675
MSB 5, LSB 35
0-127
Vocoder Band 5 Pan
vocoder_band5_pan
676
MSB 5, LSB 36
0-127
Vocoder Band 6 Pan
vocoder_band6_pan
677
MSB 5, LSB 37
0-127
Vocoder Band 7 Pan
vocoder_band7_pan
678
MSB 5, LSB 38
0-127
Vocoder Band 8 Pan
vocoder_band8_pan
679
MSB 5, LSB 39
0-127
Vocoder Band 9 Pan
vocoder_band9_pan
680
MSB 5, LSB 40
0-127
Vocoder Band 10 Pan
vocoder_band10_pan
681
MSB 5, LSB 41
0-127
Vocoder Band 11 Pan
vocoder_band11_pan
682
MSB 5, LSB 42
0-127
Vocoder Band 12 Pan
vocoder_band12_pan
683
MSB 5, LSB 43
0-127
Vocoder Band 13 Pan
vocoder_band13_pan
684
MSB 5, LSB 44
0-127
Vocoder Band 14 Pan
vocoder_band14_pan
685
MSB 5, LSB 45
0-127
Vocoder Band 15 Pan
vocoder_band15_pan
686
MSB 5, LSB 46
0-127
Vocoder Band 16 Pan
vocoder_band16_pan
687
MSB 5, LSB 47
0-127
Vocoder Band 1 Formant
vocoder_band1_formant
688
MSB 5, LSB 48
0-127
Vocoder Band 2 Formant
vocoder_band2_formant
689
MSB 5, LSB 49
0-127
Vocoder Band 3 Formant
vocoder_band3_formant
690
MSB 5, LSB 50
0-127
Vocoder Band 4 Formant
vocoder_band4_formant
691
MSB 5, LSB 51
0-127
Vocoder Band 5 Formant
vocoder_band5_formant
692
MSB 5, LSB 52
0-127
Vocoder Band 6 Formant
vocoder_band6_formant
693
MSB 5, LSB 53
0-127
Vocoder Band 7 Formant
vocoder_band7_formant
694
MSB 5, LSB 54
0-127
Vocoder Band 8 Formant
vocoder_band8_formant
695
MSB 5, LSB 55
0-127
Vocoder Band 9 Formant
vocoder_band9_formant
696
MSB 5, LSB 56
0-127
Vocoder Band 10 Formant
vocoder_band10_formant
697
MSB 5, LSB 57
0-127
Vocoder Band 11 Formant
vocoder_band11_formant
698
MSB 5, LSB 58
0-127
Vocoder Band 12 Formant
vocoder_band12_formant
699
MSB 5, LSB 59
0-127
Vocoder Band 13 Formant
vocoder_band13_formant
700
MSB 5, LSB 60
0-127
Vocoder Band 14 Formant
vocoder_band14_formant
701
MSB 5, LSB 61
0-127
Vocoder Band 15 Formant
vocoder_band15_formant
702
MSB 5, LSB 62
0-127
Vocoder Band 16 Formant
vocoder_band16_formant
703
MSB 5, LSB 63
0-127

Hard tune

Control CC NRPN Values
Hardtune Intensity
hardtune_intensity
769
MSB 6, LSB 1
0-127
Hardtune Speed
hardtune_speed
770
MSB 6, LSB 2
0-127
Hardtune Formant
hardtune_formant
771
MSB 6, LSB 3
0-127

Harmonizer

Control CC NRPN Values
Harmonies Level
harmonies_level
897
MSB 7, LSB 1
0-127
Harmonizer Stereo Spread
harmonizer_stereo_spread
898
MSB 7, LSB 2
0-127
Harmonizer Formant
harmonizer_formant
899
MSB 7, LSB 3
0-127
Harmonizer Pitch Detune
harmonizer_pitch_detune
900
MSB 7, LSB 4
0-127
Harmonizer Delay
harmonizer_delay
901
MSB 7, LSB 5
0-127
Harmony Number
harmony_number
912
MSB 7, LSB 16
0-127, or 1-2 by NRPN
Harmony 1 Pitch (Type 1)
harmony1_pitch_type1
928
MSB 7, LSB 32
0-127, or 0-28 by NRPN
Harmony 1 Pitch (Type 2)
harmony1_pitch_type2
929
MSB 7, LSB 33
0-127, or 0-20 by NRPN
Harmony 1 Pitch (Type 3)
harmony1_pitch_type3
930
MSB 7, LSB 34
0-127, or 0-24 by NRPN
Harmony 1 Pitch (Type 4)
harmony1_pitch_type4
931
MSB 7, LSB 35
0-127, or 0-28 by NRPN
Harmony 1 Pitch (Type 5)
harmony1_pitch_type5
932
MSB 7, LSB 36
0-127, or 0-12 by NRPN
Harmony 1 Pitch (Type 6)
harmony1_pitch_type6
933
MSB 7, LSB 37
0-127, or 0-8 by NRPN
Harmony 1 Pitch (Type 7)
harmony1_pitch_type7
934
MSB 7, LSB 38
0-127, or 0-48 by NRPN
Harmony 2 Pitch (Type 1)
harmony2_pitch_type1
944
MSB 7, LSB 48
0-127, or 0-28 by NRPN
Harmony 2 Pitch (Type 2)
harmony2_pitch_type2
945
MSB 7, LSB 49
0-127, or 0-20 by NRPN
Harmony 2 Pitch (Type 3)
harmony2_pitch_type3
946
MSB 7, LSB 50
0-127, or 0-24 by NRPN
Harmony 2 Pitch (Type 4)
harmony2_pitch_type4
947
MSB 7, LSB 51
0-127, or 0-28 by NRPN
Harmony 2 Pitch (Type 5)
harmony2_pitch_type5
948
MSB 7, LSB 52
0-127, or 0-12 by NRPN
Harmony 2 Pitch (Type 6)
harmony2_pitch_type6
949
MSB 7, LSB 53
0-127, or 0-8 by NRPN
Harmony 2 Pitch (Type 7)
harmony2_pitch_type7
950
MSB 7, LSB 54
0-127, or 0-48 by NRPN

Loop recorder

Control CC NRPN Values
LoopRec Stutter
loop_rec_stutter
1040
MSB 8, LSB 16
0 off, 1 on_forward, 2 on_reverse
LoopRec Stutter Length
loop_rec_stutter_length
1041
MSB 8, LSB 17
0-127, or 0-10 by NRPN
LoopRec Stutter Offset
loop_rec_stutter_offset
1042
MSB 8, LSB 18
0-127
Loop Play Level
loop_play_level
1043
MSB 8, LSB 19
0-127

Without a group

Control CC NRPN Values
Bank Select(MSB)
bank_select_msb
0 0
Bank Select(LSB)
bank_select_lsb
32 0 classic, 1 modern, 2 future, 3 user

Timbre 2

Performance

Control CC NRPN Values
Modulation
timbre_2_modulation
1 0-127
Hold
timbre_2_hold
64 0-127

PITCH

Control CC NRPN Values
Portamento Time
timbre_2_portamento_time
5 0-127
Portamento Mode
timbre_2_portamento_mode
65 0-63 fingered, 64-127 always

TIMBRE

Control CC NRPN Values
Timbre Level
timbre_2_timbre_level
7 0-127
Timbre Pan
timbre_2_timbre_pan
10 0-127

Where these facts come from

Source documents

How they were read

Four documents, all Korg's own, and the first two carry the map twice over.

THE MIDI IMPLEMENTATION IS A PLAIN TEXT FILE WITH NO PAGES, cited by its own section numbers. It states "microKORG 2 MIDI Implementation Revision 1.0 (2024.05.10)" (implementation) on its first line, which is the document's revision and not the instrument's - the trap the wavestate's chart set, and the TR-6S's. Korg's download page dates the same file 2024.11.27, seven months later, which is when it was last posted.

ITS PANEL TABLE GIVES 71 CONTROL CHANGES, numbered 5 to 118, each with a parameter name and a value description. Both channel-message tables, the transmitted and the recognised, carry one row for the lot of them and say the same thing about it - "Control Data cc=5~118" (implementation) - so this instrument sends every number it answers to. THAT IS THE DIFFERENCE FROM THE microKORG, whose implementation gives no controller number for any panel parameter because the numbers there are the player's to assign. Here they are fixed, and the manual says so in as many words: "On the microKORG2, control change numbers are assigned to the main parameters that alter the sound, and you can use an external MIDI sequencer to trigger the sound generator while controlling these parameters" (p. 84).

AND THE MANUAL PRINTS THE SAME MAP TWICE MORE, which is this document set's own redundancy and was asserted rather than trusted. Its MIDI Implementation Chart, on printed page 133, lists 79 controller numbers in 22 rows; eight of them - 0, 1, 6, 32, 38, 64, 98 and 99 - are bank select, the modulation wheel, data entry, the damper pedal and the NRPN pair rather than panel parameters, and the remaining 71 are the implementation's table exactly. Separately, the manual's own parameter pages name a number beside a parameter wherever there is one, in two schemes: 70 controller numbers, which are 69 of the implementation's 71 plus controller 1 for the modulation wheel, and 77 NRPN addresses. The only two of the panel table it never names are Timbre Level and Timbre Pan, which have no numbered entry of their own anywhere in 134 pages.

THAT SECOND SCHEME IS EASY TO MISS AND IT IS THE ONE THAT MATTERS. The manual writes a run of parameters as one span - "(NRPN 4, 32...37)" (p. 71) for the six virtual patch destinations, "(NRPN 5, 16...31)" (p. 91) for the sixteen vocoder band levels - and names single addresses the same way, "(NRPN 6, 1)" and "(NRPN 6, 2)" and "(NRPN 6, 3)" (p. 92). Six of the addresses it gives are addresses the implementation never prints at all, and they are exactly the six needed to make the implementation's broken rows whole.

THE CHART'S PAGE CANNOT BE READ AS TEXT. Its type was converted to outlines when the manual was made, so printed page 133 carries 2,362 vector drawings and 79 characters - the running header and the heading. It was read from a render of that page instead, which is the one reading here that nothing else checks, and it is declared as pictured_pages so that a checker finding no numbers on that page knows why.

WHERE THE IMPLEMENTATION CONTRADICTS ITSELF, AND WHAT THE MANUAL PUTS RIGHT. Its NRPN table prints each number in hexadecimal and again in decimal, which is a check the document makes on itself and fails twice: Hardtune Speed is printed as "06 | 01 ( 2)" (implementation) and Hardtune Formant as "06 | 02 ( 3)" (implementation). Taken as hexadecimal, Speed lands on Hardtune Intensity's own address; taken as decimal, the three run 1, 2, 3. SEPARATELY, ALL SIX Patch N Destination ROWS CARRY THE SAME ADDRESS, "04 | 20 (32)" (implementation), where the six Source 1 rows run 04/00 to 04/05 and the six Source 2 rows run 04/10 to 04/15 - so five of the six cannot be right.

THE MANUAL SETTLES BOTH, ON ITS OWN PAGES AND IN ITS OWN SCHEME: the hard tune page annotates Intensity, Speed and Formant "(NRPN 6, 1)", "(NRPN 6, 2)" and "(NRPN 6, 3)" (p. 92), and the virtual patch page annotates Destination "(NRPN 4, 32...37)" (p. 71). Both are coherent, both agree with the implementation wherever it is coherent, and together they account for every one of its 108 rows. So all 108 are below, the eight taken from the manual rather than from the implementation, each with a comment saying what the implementation prints instead. That is a second document of the maker's own correcting the first, not a choice between two columns with nothing to settle it.

AND THE TWO DOCUMENTS DISAGREE ABOUT TWO THINGS, which is recorded rather than resolved. The implementation's recognised table lists "Local Control Off/On" (implementation) on controller 122; the chart's Aux Messages row for Local On/Off says X in both columns. And the chart says All Notes Off is transmitted, while the only thing the implementation's transmitted table carries there is All Sound Off, controller 120, sent when a global setting changes. Both numbers are in the range this format refuses as controls in any case, so neither affects what is below.

TWO TIMBRES, ON TWO CHANNELS THE PLAYER SETS SEPARATELY. "Sets the global MIDI channel. This MIDI channel is used to transmit and receive note messages, bend messages and control change messages for Timbre 1" (p. 84), and "Sets the MIDI channel that Timbre 2 will send and receive MIDI messages on" (p. 84). The chart's own note says the same of the parameters: the channel for Timbre 2's timbre parameters is Timbre 2 Channel. So a timbre parameter reaches whichever timbre's channel it arrives on. A control naming no part is written on the global channel, which is Timbre 1's, and six standard controllers are written again for Timbre 2, keyed timbre_2_: modulation, portamento time, timbre level, timbre pan, hold and portamento mode, numbers 1, 5, 7, 10, 64 and 65. Four of the six are timbre parameters, which the chart's note covers in so many words. Modulation and hold are not: the chart puts the note's mark, *C, on their rows as it does on every controller row but bank select's, and they rest, for sending as for receiving, on the manual's sentence above, that Timbre 2's channel is the one it sends and receives MIDI messages on. Every other timbre parameter below reaches Timbre 2 on its channel in the same way, and names no part only because the rule this follows covers the standard controllers. The effect and equaliser controllers, and the NRPNs that are the program's and not a timbre's, belong to neither timbre: they carry the same mark, and no page says which channel they use. Bank select is not written again: its row is the one controller row that carries *P instead, the mark it shares with the program change row, and no page says which channel it, or a program change, is received on. Timbre 2 is used only in a program whose Timbre Mode is Dual. "Single: Only one timbre is used." (p. 51), and Timbre 2's level and its pan each carry the note "This is enabled when Timbre Mode is set to 'Dual'." (p. 49). No page says what Timbre 2's channel does in a Single program.

A THIRD CHANNEL ONLY TRANSMITS: "Sets the MIDI channel used for transmitting note messages corresponding to the pitch that's detected by the vocal processor" (p. 84), which can be any of the sixteen or Disable. It is not a part, because nothing can be sent to it.

THE SYSTEM VERSION THESE DOCUMENTS DESCRIBE IS NOT THE CURRENT ONE, and the way that was established is worth keeping. Korg's system update page lists 1.02, 2.0.0, 2.0.1 and 2.0.2. Every MIDI-visible thing version 2.0 added was searched for in the implementation by name and none of it is there: Key Split, logueSDK, Low Mode, Slice, Step Record, Level Scale and Pan Scale return nothing in 1,784 lines. Two published lists are demonstrably short because of it - the virtual patch source list ends at 17 and Osc3 is now a source, and the destination list ends at 75 while the version 2.0 supplement says "both Vocoder Level Scale and Vocoder Pan Scale are available as virtual patch destinations" (p. 6). The custom oscillator adds a wave this file's osc1_wave bands do not have, since version 2.0 says to "set WAVE to USER" (p. 7).

SO THE RANGES ON THE PATCH SOURCES BELOW, AND THE WAVE BANDS, ARE RIGHT FOR SYSTEM 1.02 AND SHORT FOR 2.0.2. Korg has published no numbers for what 2.0 added.

THE COLOUR VARIANTS ARE THIS INSTRUMENT, settled three ways rather than assumed. The product page describes the MBK and MWH as "two limited edition color models" (product_page) differing in the control panel, side panel, dials and wheels; the manual's specification covers all three in one weight line, "MK-2: 2.2 kg/4.85 lb, MK-2 MBK/MWH: 2.1 kg/4.63 lb" (p. 131); and the system updater page says it "can be used for the following products as well" (release_notes) and names "microKORG2 MBK/MWH" (release_notes). One system, one manual, one map.

AND IT IS NOT THE microKORG, THE microKORG S, THE XL, THE XL+ OR THE CRYSTAL. Those are different instruments with different maps, and korg/microkorg is already here. The older name is a prefix of every newer one, so a substring test would have matched this instrument's documents for the ancestor and the ancestor's for this one. Counted instead with a whole-name test that refuses the characters which would make it a longer name, the implementation mentions microKORG 2 three times and no other microKORG at all - so nothing in it had to be scoped away. WHAT A TEXT SEARCH CANNOT SEE is the chart on printed page 133, whose Model field reads "microKORG 2" in outlines rather than in text; it was read from the render with the rest of that page.

NO MIDI THRU. The specification lists "MIDI IN, OUT connectors" (p. 131) and a "USB Type-C port" (p. 131), and the rear panel names the same two. Routing chooses between: "USB+MIDI" or "USB" (p. 84) - so the USB port is never off, and there is no setting that leaves only the sockets live.

FOUR THINGS ARE ABSENT FROM MIDI AND WERE CHECKED RATHER THAN ASSUMED. The damper has no half position: "The microKORG2 does not have a half-damper function" (p. 82), so controller 64 is a switch whatever a pedal sends. The pitch bend range has no number at all - it is a per-timbre program parameter on the PITCH page (p. 53) and neither the implementation's table nor the manual's annotations give it a controller or an NRPN. Controller 50 is the one gap inside the OSC 3 run, 48, 49, 51, 52, and what sits between Shape/Sample and Semitones on the maker's own OSC 3 page is "OSC Mod Type (ModType)" (p. 58), printed with no number where every parameter around it has one. And there is no global dump: the implementation's function code list offers current program and one program and nothing else, so the MIDI channels, the clock source, local control and the four MIDI filters cannot be read or written over system exclusive as documented.

ONE MORE ASYMMETRY BETWEEN THE TWO DOCUMENTS, which is not a contradiction but will catch somebody out: the manual's prose never writes "bank select", anywhere in its 134 pages. Bank select is documented only in the implementation, under its note *2, and in the manual's own chart on printed page 133, which is drawn without a text layer, in its controller row and its Program Change remark. A reader working from the manual's prose alone would conclude this instrument has 64 programs.

TWO PAGES OF THE MANUAL PRINT NO NUMBER OF THEIR OWN - its first sheet and its last - so neither is cited here. Every other sheet prints its own sheet number, which is why the offset below is nothing.