VERSION 1 # Currently, this should only be 1.

# Supports all alphanumeric ASCII, and ' ', '_', '-', '+' - can also be NULL
TRACKNAME AS-1

# Can be POLY, DRUM, MPE, or NULL
TYPE POLY

# 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

# 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]
3 BPM
5 GLIDE MODE
8 OSC1 SUB LVL
39 VOICE VOL
40 ENV VCA AMT
41 ENV VCA VEL
43 ENV VCA ATK
44 ENV VCA DEC
45 ENV VCA SUS
46 ENV VCA REL
47 LPF ENV AMT
50 ENV FILT ATK
51 ENV FILT DEC
52 ENV FILT SUS
53 ENV FILT REL
54 HPF ENV AMT
58 ARP ON/OFF
59 ARP MODE
60 ARP RANGE
62 ARP TIME SIGNATURE
65 GLIDE ON/OFF
67 OSC1 FREQ
69 OSC1 LEVEL
70 OSC1 SHAPE
71 OSC1 PULSEWIDTH
75 OSC2 FREQ
76 OSC2 FREQ FINE
77 OSC2 LEVEL
78 OSC2 SHAPE
79 OSC2 PULSEWIDTH
102 LPF FREQ
103 LPF RESO
104 LPF KEY TRACKING
105:LPF VEL
106 HPF FREQ
107 HPF RESO
108 HPF KEY TRACKING
109 HPF VEL ON
[/CC]

[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
[AUTOMATION]
[/AUTOMATION]

# This section will be readable from Hapax.
[COMMENT]
[/COMMENT]
