Novation Bass Station 2 Instrument Definition

VERSION 1 # Currently, this should only be 1.

# Supports all alphanumeric ASCII, and ' ', '_', '-', '+' - can also be NULL
TRACKNAME Bass Station 2

# 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]
5:0 Glide
117:0 KBOctave
107:12 PBRange
110:0 OscSync

70:64 O1Octave
27:64 O1Coarse
26:64 O1Fine
28:64 LFO1-O1Pitch
71:64 Env2-O1Pitch
74:64 O1Pulsewidth
73:64 LFO2-O1PW

75:64 O2Octave
30:64 O2Coarse
29:64 O2Fine
31:64 LFO1-O2Pitch
76:64 Env2-O2Pitch
79:64 O2PulseWidth
78:64 LFO2-O2PW
77:64 Env2-O2PulseWidth

80:0 O3wave
81:0 O3Octave

20:127 O1Lev
21:0 O2Lev
22:0 O3Lev
23:0 NoiseLev
24:0 RingmodLev
25:0 ExtLev

7:100 MasterLev

16:127 FiltCutoff
82:0 FiltRes
114:0 Overdrive
84:0 FiltType
83:0 Acid-Classic
106:1 FiltSlope
85:0 ModEnvFilter
17:64 LFO2Filt
115:0 OscFilterMod

94:0 Distortion
95:0 VCALimit

112:0 Env1Vel
90:0 Env1Att
91:0 Env1Dec
92:127 Env1Sus
93:0 Env1Rel

113:0 Env2Vel
102:0 Env2Att
103:0 Env2Dec
104:127 Env2Sus
105:0 Env2Rel

88:0 LFO1Wave
86:0 LFO1Delay
18:75 LFO1Rate

89:0 LFO2Wave
87:0 LFO2Del
19:52 LFO2Rate

108:0 ArpOn
109:0 Keylatch
106:1 ArpStepAlign
111:1 ArpOcts
118:0 Arpmode
119:31 ArpRhythm
116:50 ArpSwing
[/CC]


# NRPN
# Syntax: "MSB:LSB:DEPTH NAME" or "MSB:LSB:DEPTH:DEFAULT=xx NAME"
# Lsb & msb should be between 0 and 127
# 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]

0:72:7:2 Osc1Wave
0:82:7:2 Osc2Wave
0:85:7:0 Osc3Wave
0:79:7:0 ModeUnknown


0:81:7:0 O3Octave
0:84:7:64 O3Coarse
0:77:7:64 O3Fine
0:95:7:64 LFO1-O3Pitch
0:103:7:64 Env2-O3Pitch
0:83:7:64 O3Pulsewidth
0:102:7:64 LFO2-O3PW
0:104:7:64 Env2-O3PW

0:114:7:0 Env1SusTime
0:115:7:0 Env2SusTime
0:73:7:0 Env1Trig
0:105:7:0 Env2Trig
0:109:7:0 Env1Loop
0:110:7:0 Env2Loop
0:117:7:0 Env1LoopCount
0:118:7:0 Env2LoopCount


0:86:7:0 LFO1Slew
0:87:7:25 LFO1SyncRate
0:88:7:0 LFO1SpdSync
0:89:7:0 LFO1Keysync

0:90:7:0 LFO2Slew
0:91:7:25 LFO2SyncRate
0:92:7:0 LFO2SpdSync
0:93:7:1 LFO2KeySync

0:106:7:1 SeqReTrig

0:94:7:0 ModWh-Filt
0:70:7:10 ModwhLFO1-Pitch
0:71:7:0 ModWhLFO2-Filt
0:78:7:0 Modwh-Osc2

0:74:7:10 AT-Filt
0:75:7:0 AT-LFO1Pitch
0:76:7:0 AT-LFO2Filt

0:107:7:0 Paraphonic
0:108:7:0 FiltTrack
0:111:7:0 TuningError
0:113:7:0 GlideDiverge

0:112:7:0 OverlaysOn
0:116:7:0 OverlayReadonly
[/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]
1 CC:16:127 	#Filtcut
2 CC:82:0  	#Resonance
3 CC:114:0	#FiltOvrdrv
4 CC:85:64	#Env2Filt
5 CC:21:0	#Osc2Lev
6 CC:30:64	#Osc2Coarse
7 CC:29:64	#Osc2Fine
8 CC:115:0	#OscFiltMod
[/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]
4 Likes

This definition is not compliant with the supported syntax, and may break in the future

Note: Assign section does not define ‘DEFAULT’ value correctly