# INSTRUMENT DEFINITIONS are a fast and easy way to setup a track to work with a given instrument. # These files must be UTF-8 encoded, with the ".txt" file extension. # Supports all alphanumeric ASCII, and ' ', '_', '-', '+' # The file is broken up into several sections, e.g. one for naming CCs, one for setting up drum lanes, etc. # Each section contains keywords, known as commands, followed by values to set a given property. # Inside sections, each line will define a new command and its value # Almost all commands are optional, and most values can be set to NULL (to not overwrite the current state of the track). # All text to the right of a '#' character are comments, and have no effect. # They should be stored in the HAPAX folder of the SD card, alongside the projects. VERSION 1 # Currently, this should only be 1 # Remane the Hapax track name after loading this Instrument Definition file (NULL = don't rename) TRACKNAME OSMOSE # Set the Track Type (can be POLY, DRUM, MPE, or NULL) TYPE MPE # Can be A, B, C, D, USBD, USBH, CVGx, CVx, Gx (x between 1-4) or NULL # When using Virtual Ports: can also be USBDx or USBHx (x between 1-16) (e.g. USBD1 for USB Device port 1, USBH16 for USB Host port 16) OUTPORT USBH # Can be x (between 1-16), or NULL (note: this is ignored if OUTPORT is not a MIDI port) OUTCHAN 1 # Can be NONE, ALLACTIVE, A, B, USBH, USBD, USBDx, USBHx (x between 1-16), CVG, or NULL # When using Virtual Ports: can also be USBDx or USBHx (x between 1-16) INPORT NULL # Can be x (between 1-16), ALL, or NULL (note: this is 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 CONFIG AND CUSTOM NAMES # Syntax: ROW:TRIG:CHAN:NOTENUMBER NAME_OF_LANE # 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-4), or NULL # NOTENUMBER can be between 0 and 127, or NULL # NAME supports all alphanumeric ASCII, and ' ', '_', '-', '+' (can also be NULL) # Example: 1:NULL:2:60 KICK # Please note this section will be discarded for tracks which are not set to DRUM tracks [DRUMLANES] [/DRUMLANES] # PROGRAM CHANGE (PC) CUSTOM NAMES # Syntax: PC NAME_OF_PROGRAM_CHANGE or PC:MSB:LSB NAME_OF_PROGRAM_CHANGE (PC must be between 1-128 and MSB/LSB between 0-127) # You can also put 'NULL' to not set the MSB/LSB. # Example: 3 FAT LEAD # Example: 123:34:NULL HARMONICA # Note: You can declare maximum 128 PC names (including PC/MSB/LSB names) [PC] 1:30:NULL abyss lands 2:30:NULL acid bass 3:30:NULL acouskop 4:30:NULL acuitar 5:30:NULL aerials 6:30:NULL after the rain 7:30:NULL alacloud 8:30:NULL alenvers 9:30:NULL algo call 10:30:NULL altersaw 11:30:NULL ambiant analog 1 12:30:NULL analog adsr 13:30:NULL analog scream 14:30:NULL anareed 15:30:NULL anatolianpad 16:30:NULL another big one 17:30:NULL anthophila organ 18:30:NULL aplassian 19:30:NULL aqueous feel 20:30:NULL arcadia pan 21:30:NULL archer 22:30:NULL astral titans 23:30:NULL azure key 24:30:NULL babrass 25:30:NULL bacteria 26:30:NULL badratios bell 27:30:NULL balafun 28:30:NULL balloon from hanoi 29:30:NULL bandrive paradise 30:30:NULL banjoy 31:30:NULL bansuri 32:30:NULL bass distosine 33:30:NULL bass monster 34:30:NULL bass pad 35:30:NULL bazambar 36:30:NULL bazikey 37:30:NULL bella fm 38:30:NULL bells of digul 39:30:NULL beny s territory 40:30:NULL beyond felt 41:30:NULL biquide hang 42:30:NULL biquide harp 43:30:NULL biquide steel 44:30:NULL biquige bell 45:30:NULL bird whistler 46:30:NULL bits organ 47:30:NULL blasiz 48:30:NULL bleached organ 49:30:NULL blipkrieg 50:30:NULL bouncing spray 51:30:NULL bowedsymphfm 52:30:NULL bowreal lights 53:30:NULL brass fm 54:30:NULL brass fm2 55:30:NULL brass fm3 56:30:NULL brassimple 57:30:NULL brasswind 58:30:NULL brassy 59:30:NULL brave fields 60:30:NULL bright organ 61:30:NULL brightbank 62:30:NULL canyon steel 63:30:NULL carbon marimba 64:30:NULL carifem 65:30:NULL celestial 66:30:NULL celestial basin 67:30:NULL cellove 68:30:NULL cellovir 69:30:NULL chamber mellobow 70:30:NULL chamber strings 71:30:NULL cherie fm 72:30:NULL chick s lead 73:30:NULL choir 74:30:NULL choir additive 75:30:NULL chordead 76:30:NULL churchorgan 77:30:NULL claribreath 78:30:NULL clarinet 79:30:NULL classicana key 80:30:NULL classicana lead 81:30:NULL classipad 82:30:NULL clavi 1 83:30:NULL clavichord 84:30:NULL clavicorda 85:30:NULL clawha 86:30:NULL clings 87:30:NULL cold lead 88:30:NULL column of eternity 89:30:NULL copey 90:30:NULL copper club 91:30:NULL coridor 92:30:NULL cork the bottle 93:30:NULL cosmic blues 94:30:NULL cp eight 95:30:NULL crackling things 96:30:NULL creaker 97:30:NULL crossmod 98:30:NULL crossynthar 99:30:NULL crystal harmonics 100:30:NULL cs80+ladder 101:30:NULL cs80+ladder ii 102:30:NULL cumulus 103:30:NULL cvc 1 voice 104:30:NULL cvc 2 voices 105:30:NULL cvc 4 voices 106:30:NULL cycle and duty 107:30:NULL dabka 2022 108:30:NULL declanche 109:30:NULL deep corners 110:30:NULL delight lead 111:30:NULL deven 112:30:NULL dfm 113:30:NULL dirt acid 114:30:NULL dirty osc pad 115:30:NULL disco dawn 116:30:NULL distortion guitar 117:30:NULL dolce cristallo 118:30:NULL double reed 119:30:NULL double saw 120:30:NULL doubleslap 121:30:NULL duocello 122:30:NULL dx1 123:30:NULL dx2 124:30:NULL dx3 125:30:NULL dx4 126:30:NULL dxim 127:30:NULL ebosin 128:30:NULL edgy fm [/PC] # CONTROL MESSAGES (CC) CUSTOM NAMES # Syntax: CC_NUMBER CC_NAME or CC_NUMBER:DEFAULT=xx CC_NAME # DEFAULT_VALUE must be between 0-127, NAME is supports all alphanumeric ASCII, and ' ', '_', '-', '+' # Example: 12 FILTER RES [CC] 12 MACRO 1 13 MACRO 2 14 MACRO 3 15 MACRO 4 16 MACRO 5 17 MACRO 6 18 POSTGAIN 20 GLOBFX 1 21 GLOBFX 2 22 GLOBFX 3 23 GLOBFX 4 24 GLOBFX MIX 26 PREGAIN 64 SUSTAIN 66 SOSTENUTO 1 69 SOSTENUTO 2 83 EQTILT VAL 84 EQ FREQ 85 EQ MIX 93 COMP MIX [/CC] # CC Pair # Syntax: CC_MSB:CC_LSB NAME or CC_MSB:CC_LSB:DEFAULT=xx NAME # DEFAULT_VALUE must 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, between 0-127 (for 7-bit NRPNs) or between 0-16383 (for 14-bit NRPNs) [NRPN] [/NRPN] # ASSIGN # Syntax: POT_NUMBER TYPE:VALUE or POT_NUMBER TYPE:VALUE DEFAULT=DEFAULT_VALUE # POT_NUMBER must be between 1-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-119 # For PB and AT, any value after the TYPE will be ignored # For CV, value must be between 1-4 # For NRPN, value must be MSB:LSB:DEPTH, with both LSB and MSB bebtween 0-127, and DEPTH being either 7 or 14 # DEFAULT VALUE # For CC: DEFAULT_VALUE must be a valid number between 0-127 # For PB: DEFAULT_VALUE must be a valid number between 0-16383 # For NRPN: DEFAULT_VALUE must be a valid number, between 0-127 (for 7-bit NRPNs) or between 0-16383 (for 14-bit 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 values 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-119 # For PB and AT, any text after the TYPE will be ignored # For CV, value must be between 1-4 # For NRPN, value must be MSB:LSB:DEPTH, with both LSB and MSB bebtween 0-127, and DEPTH being either 7 or 14 # NOTE: You are limited to 64 automation lanes [AUTOMATION] [/AUTOMATION] # INFO # Once this file is loaded on Hapax, hold the 2ND-TRACK INSTRUMENT DEF encoder to display this a popup with your custom comments # Supports all alphanumeric ASCII, and ' ', '_', '-', '+' (and also line break) [COMMENT] Expressive E Osmose Version 1 [/COMMENT]