Hey!
I’d love to share it with you. I figure pasting all the text here should be ok. Let me know if it doesn’t work out for you.
VERSION 1 # Currently, this should only be 1.
# Supports all alphanumeric ASCII, and ' ', '_', '-', '+' - can also be NULL
TRACKNAME NULL
# Can be POLY, DRUM, MPE, or NULL
TYPE NULL
# Can be A, B, C, D, USBD, USBH, CVGx (x between 1&4), CVx, Gx, or NULL
OUTPORT NULL
# Can be x (between 1-16), or NULL -- this is ignored if output port is not MIDI
OUTCHAN NULL
# Can be NONE, ALLACTIVE, A, B, USBH, USBD, CVG, or NULL
INPORT NULL
# Can be x (between 1-16), ALL, or NULL. This definition will be ignored if INPORT is NONE, ALLACTIVE or CVG
INCHAN NULL
# This defines the default 'MAX RATE' for automation lanes.
# Can be NULL, 192, 96, 64, 48, 32, 24, 16, 12, 8, 6, 4, 3, 2, 1
MAXRATE NULL
# DRUMLANES
# Syntax: ROW:TRIG:CHAN:NOTENUMBER NAME
# ROW must be between 1 and 8
# TRIG can be between 0 and 127, or NULL
# CHAN can be a number between 1 and 16, Gx, CVx, CVGx (x between 1 and 4), or NULL
# NOTENUMBER can be between 0 and 127, or NULL
# NAME supports all alphanumeric ASCII, and ' ', '_', '-', '+' - can also be NULL
# Please note this section will be discarded for tracks which are not DRUM tracks
[DRUMLANES]
[/DRUMLANES]
# PC
# Syntax: NUMBER NAME
# number must be either:
# - A number (for simple PC)
# - Three numbers, delimited by ':', which represent PC:MSB:LSB. You can put 'NULL' to not set the MSB/LSB.
# PC must be between 1...128
# MSB/LSB must be between 0...127
[PC]
[/PC]
# CC
# Syntax: CC_NUMBER NAME or CC_NUMBER:DEFAULT=xx NAME
# DEFAULT_VALUE must be a valid number between 0 and 127
[CC]
1 Modwheel
3 Mute
5 Glide Time
7 Timbre Volume
8 Low Cut
9 Pan Spread
10 Pan
11 Expression
12 LFO 1 Rate
13 LFO 1 Amount
14 LFO 1 Waveform
15 LFO 2 Rate
16 LFO 2 Amount
17 LFO 2 Waveform
18 Pitch LFO Rate
19 Pitch LFO Shape
20 Pitch LFO Amount
21 Pitch LFO OSC 1
22 Pitch LFO OSC 2
23 Pitch LFO Mod Osc
24 Pitch LFO Detune
25 M Osc Frequency
26 M Osc Audio
27 M Osc KB Track
28 M Osc Waveform
29 M Osc KB Reset
30 M Osc Unipolar
31 M Osc Pitch Amount
33 M Osc Pitch OSC 1
34 M Osc Pitch OSC 2
35 M Osc PWM Amount
39 M Osc Fltr Amount
40 M Osc Fltr 1
41 M Osc Fltr 2
42 M Osc VCA Amount
43 M Osc VCA PAN
44 Osc 1 Frequency
46 Osc 1 Tri/Saw Mix
47 Osc 1 PW
48 Osc 1 Wave Mix
49 Osc 2 Octave
50 Osc 2 Frequency
51 Osc 2 Tri/Saw Mix
52 Osc 2 PW
53 Osc 2 Wave Mix
54 Osc 2>1 SYNC
55 Osc 2>1 FM
56 Osc 1>2 FM
57 FM Amount
58 Osc 1 Level
59 Osc 2 Level
60 Ring Mod Level
61 M Osc Level
62 Noise Level
64 Sustain Pedal
65 Clipping Level
66 Fltr 1 High Pass
67 Fltr 1 Cutoff
68 Fltr 1 Resonance
69 Fltr 1 Env Amount
70 Fltr 1 KB Track
71 Hold
72 Fltr 2 Frequency
73 Fltr 2 Resonance
75 Fltr 2 Env Amount
76 Fltr 2 KB Track
77 Link Filters
78 Fltrs Order
79 Fltr Env Attack
80 Fltr Env Decay
81 Fltr Env Sustain
82 Fltr Env Release
83 Fltr Env Loop
85 Fltr Env Velocity
86 VCA Env Attack
87 VCA Env Decay
88 VCA Env Sustain
89 VCA Env Release
90 VCA Env Loop
91 VCA Env Velocity
92 Voice Detune
93 Delay Time Left
94 Delay Time Right
95 Link Delays
102 Delay Clock Sync
103 Delay Feedback
104 Delay Character
105 Delay Mix
106 Delay Timbre A
107 Delay Timbre B
108 Voice Unison
109 Voice Mono
110 Seq Clock Div
111 Arp Clock Div
112 Arp On/Off
113 Arp FW/BW
114 Arp Direction
115 Arp Octave Range
116 Clock Tempo
[/CC]
# CC Pair
# Syntax: CC_MSB:CC_LSB NAME or CC_MSB:CC_LSB:DEFAULT=xx NAME
# DEFAULT_VALUE must be a valid number between 0 and 16383
[CC_PAIR]
[/CC_PAIR]
# NRPN
# Syntax: "MSB:LSB:DEPTH NAME" or "MSB:LSB:DEPTH:DEFAULT=xx NAME"
# Lsb & msb should be between 0 and 127
# Note: LSB can be over 127 ONLY if MSB is 0 or omitted
# e.g. '0:1026:7 FOO', or ':2000:7 BAR'
# the examples above would be equivalent to '8:2:7 FOO' and '15:80:7 BAR' respectively
# DEPTH can be 7 or 14
# For NRPN: DEFAULT_VALUE must be a valid number, either between 0 and 127 (for 7 bit NRPNs) or between 0 and 16383 (for 14bit NRPNs)
[NRPN]
[/NRPN]
# ASSIGN
# Syntax: POT_NUMBER TYPE:VALUE or POT_NUMBER TYPE:VALUE DEFAULT=DEFAULT_VALUE
# POT_NUMBER must be between 1 and 8
# TYPE can be "CC", "PB" (pitchbend), "AT" (aftertouch), "CV", "NRPN", or "NULL" (this won't assign the pot).
# Non explicitly-defined pots will be considered "NULL"
# VALUE VALIDATION
#### For CC: Value must be a valid number between 0 and 119
#### For PB and AT, any text after the TYPE will be ignored
#### For CV, value must be between 1 and 4
#### For NRPN, value must be MSB:LSB:DEPTH, with both lsb & msb bebtween 0 and 127, and DEPTH being either 7 or 14
# DEFAULT VALUE
#### For CC: DEFAULT_VALUE must be a valid number between 0 and 127
#### For PB: DEFAULT_VALUE must be a valid number between 0 and 16383
#### For NRPN: DEFAULT_VALUE must be a valid number, either between 0 and 127 (for 7 bit NRPNs) or between 0 and 16383 (for 14bit NRPNs)
#### For CV: DEFAULT_VALUE must be either a valid number between 0 and 65535, or a voltage between -5V and 5V, e.g. "-4.25V" or "1.7V"
#### Please note default value will be ignored for PB and AT messages.
[ASSIGN]
[/ASSIGN]
# AUTOMATION
# Syntax: TYPE:VALUE
# TYPE can be "CC", "PB" (pitchbend), "AT" (aftertouch), "CV", or "NRPN"
# VALUE VALIDATION
#### For CC: Value must be a valid number between 0 and 119
#### For PB and AT, any text after the TYPE will be ignored
#### For CV, value must be between 1 and 4
#### For NRPN, value must be MSB:LSB:DEPTH, with both lsb & msb bebtween 0 and 127, and DEPTH being either 7 or 14
# NOTE: You are limited to 64 automation lanes
[AUTOMATION]
[/AUTOMATION]
# This section will be readable from Hapax.
[COMMENT]
[/COMMENT]