VERSION 1 # Supports all alphanumeric ASCII, and ' ', '_', '-', '+' - can also be NULL TRACKNAME SH-4d # 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 MOD 7 Volume 11 PAN 74 Cutoff 71 Reso 90 Drive 79 HPF Cutoff 81 Filter ENV 78 Filter KEY 82 Filter Attack 83 Filter Decay 28 Filter Sustain 29 Filter Release 73 AMP Attack 75 AMP Decay 31 AMP Sustain 72 AMP Release 21 Pitch 77 Timbre 85 Slider1 86 Slider2 87 Slider3 88 Slider4 84 Portamento 16 LFO Rate 20 LFO Fade Time 18 LFO Pitch 19 LFO Filter 80 LFO AMP 64 Pedal Hold 66 Sostenuto [/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]