Loading...
Searching...
No Matches
Go to the documentation of this file.
21#include "r_typedefs.h"
22#include "cpu_specific.h"
26#define FIRMWARE_1P2P0 1
27#define FIRMWARE_1P3P0_PRETEST 2
28#define FIRMWARE_1P3P0_BETA 3
29#define FIRMWARE_1P3P0 4
30#define FIRMWARE_1P3P1 5
31#define FIRMWARE_1P3P2 6
32#define FIRMWARE_1P4P0_PRETEST 7
33#define FIRMWARE_1P4P0_BETA 8
34#define FIRMWARE_1P4P0 9
35#define FIRMWARE_1P5P0_PREBETA 10
36#define FIRMWARE_2P0P0_BETA 11
37#define FIRMWARE_2P0P0 12
38#define FIRMWARE_2P0P1_BETA 13
39#define FIRMWARE_2P0P1 14
40#define FIRMWARE_2P0P2_BETA 15
41#define FIRMWARE_2P0P2 16
42#define FIRMWARE_2P0P3 17
43#define FIRMWARE_2P1P0_BETA 18
44#define FIRMWARE_2P1P0 19
45#define FIRMWARE_2P1P1_BETA 20
46#define FIRMWARE_2P1P1 21
47#define FIRMWARE_2P1P2_BETA 22
48#define FIRMWARE_2P1P2 23
49#define FIRMWARE_2P1P3_BETA 24
50#define FIRMWARE_2P1P3 25
51#define FIRMWARE_2P1P4_BETA 26
52#define FIRMWARE_2P1P4 27
53#define FIRMWARE_3P0P0_ALPHA 28
54#define FIRMWARE_3P0P0_BETA 29
55#define FIRMWARE_3P0P0 30
56#define FIRMWARE_3P0P1_BETA 31
57#define FIRMWARE_3P0P1 32
58#define FIRMWARE_3P0P2 33
59#define FIRMWARE_3P0P3_ALPHA 34
60#define FIRMWARE_3P0P3_BETA 35
61#define FIRMWARE_3P0P3 36
62#define FIRMWARE_3P0P4 37
63#define FIRMWARE_3P0P5_BETA 38
64#define FIRMWARE_3P0P5 39
65#define FIRMWARE_3P1P0_ALPHA 40
66#define FIRMWARE_3P1P0_ALPHA2 41
67#define FIRMWARE_3P1P0_BETA 42
68#define FIRMWARE_3P1P0 43
69#define FIRMWARE_3P1P1_BETA 44
70#define FIRMWARE_3P1P1 45
71#define FIRMWARE_3P1P2_BETA 46
72#define FIRMWARE_3P1P2 47
73#define FIRMWARE_3P1P3_BETA 48
74#define FIRMWARE_3P1P3 49
75#define FIRMWARE_3P1P4_BETA 50
76#define FIRMWARE_3P1P4 51
77#define FIRMWARE_3P1P5_BETA 52
78#define FIRMWARE_3P1P5 53
79#define FIRMWARE_3P2P0_ALPHA 54
80#define FIRMWARE_4P0P0_BETA 55
81#define FIRMWARE_4P0P0 56
82#define FIRMWARE_4P0P1_BETA 57
83#define FIRMWARE_4P0P1 58
84#define FIRMWARE_4P1P0_ALPHA 59
85#define FIRMWARE_4P1P0_BETA 60
86#define FIRMWARE_4P1P0 61
87#define FIRMWARE_4P1P1_ALPHA 62
88#define FIRMWARE_4P1P1 63
89#define FIRMWARE_4P1P2 64
90#define FIRMWARE_4P1P3_ALPHA 65
91#define FIRMWARE_4P1P3_BETA 66
92#define FIRMWARE_4P1P3 67
93#define FIRMWARE_4P1P4_ALPHA 68
94#define FIRMWARE_4P1P4_BETA 69
95#define FIRMWARE_4P1P4 70
96#define FIRMWARE_TOO_NEW 255
98#define CURRENT_FIRMWARE_VERSION FIRMWARE_4P1P4_ALPHA
104#if DELUGE_MODEL == DELUGE_MODEL_40_PAD
106#define syncScalingButtonX 8
107#define syncScalingButtonY 1
108#define syncScalingLedX 8
109#define syncScalingLedY 2
111#define crossScreenEditButtonX 5
112#define crossScreenEditButtonY 0
113#define crossScreenEditLedX 5
114#define crossScreenEditLedY 3
119#define selectEncButtonX 4
120#define selectEncButtonY 1
125#define tempoEncButtonX 7
126#define tempoEncButtonY 2
138#define syncScalingButtonX 7
139#define syncScalingButtonY 2
140#define syncScalingLedX 7
141#define syncScalingLedY 2
143#define crossScreenEditButtonX 6
144#define crossScreenEditButtonY 2
145#define crossScreenEditLedX 6
146#define crossScreenEditLedY 2
154#define tempoEncButtonX 4
155#define tempoEncButtonY 1
157#define affectEntireButtonX 3
158#define affectEntireButtonY 0
159#define affectEntireLedX 3
160#define affectEntireLedY 0
162#define modEncoder0ButtonX 0
163#define modEncoder0ButtonY 2
165#define modEncoder1ButtonX 0
166#define modEncoder1ButtonY 3
170#define editPadPressBufferSize 8
172#if DELUGE_MODEL == DELUGE_MODEL_40_PAD
173#define NUM_MOD_BUTTONS 6
174#define displayHeight 4
175#define displayHeightMagnitude 2
176#define displayWidth 8
177#define displayWidthMagnitude 3
178#define NO_PRESSES_HAPPENING_MESSAGE 141
179#define RESEND_BUTTON_STATES_MESSAGE 72
180#define NUM_BYTES_IN_COL_UPDATE_MESSAGE 13
181#define NUM_BYTES_IN_LONGEST_MESSAGE 13
182#define NUM_BYTES_IN_SIDEBAR_REDRAW (NUM_BYTES_IN_COL_UPDATE_MESSAGE * 2)
183#define PAD_AND_BUTTON_MESSAGES_END 140
185#define NUM_MOD_BUTTONS 8
186#define displayHeight 8
187#define displayHeightMagnitude 3
188#define displayWidth 16
189#define displayWidthMagnitude 4
190#define NO_PRESSES_HAPPENING_MESSAGE 254
191#define RESEND_BUTTON_STATES_MESSAGE 22
192#define NUM_BYTES_IN_COL_UPDATE_MESSAGE 49
193#define NUM_BYTES_IN_LONGEST_MESSAGE 55
194#define NUM_BYTES_IN_SIDEBAR_REDRAW (NUM_BYTES_IN_COL_UPDATE_MESSAGE)
195#define PAD_AND_BUTTON_MESSAGES_END 180
198#define NUM_BYTES_IN_MAIN_PAD_REDRAW (NUM_BYTES_IN_COL_UPDATE_MESSAGE * 8)
200#define DEFAULT_ARRANGER_ZOOM (DEFAULT_CLIP_LENGTH >> 1)
202#if DELUGE_MODEL == DELUGE_MODEL_40_PAD
203#define LINE_OUT_DETECT_L_1 1
204#define LINE_OUT_DETECT_L_2 4
205#define LINE_OUT_DETECT_R_1 1
206#define LINE_OUT_DETECT_R_2 3
207#define ANALOG_CLOCK_IN_1 1
208#define ANALOG_CLOCK_IN_2 2
210#define LINE_OUT_DETECT_L_1 6
211#define LINE_OUT_DETECT_L_2 3
212#define LINE_OUT_DETECT_R_1 6
213#define LINE_OUT_DETECT_R_2 4
214#define ANALOG_CLOCK_IN_1 1
215#define ANALOG_CLOCK_IN_2 14
216#define SPEAKER_ENABLE_1 4
217#define SPEAKER_ENABLE_2 1
218#define HEADPHONE_DETECT_1 6
219#define HEADPHONE_DETECT_2 5
222#define sideBarWidth 2
223#define MAX_NUM_ANIMATED_ROWS ((displayHeight * 3) >> 1)
225#define MIDI_LEARN_CLIP 1
226#define MIDI_LEARN_NOTEROW_MUTE 2
227#define MIDI_LEARN_PLAY_BUTTON 3
228#define MIDI_LEARN_RECORD_BUTTON 4
229#define MIDI_LEARN_TAP_TEMPO_BUTTON 5
230#define MIDI_LEARN_SECTION 6
231#define MIDI_LEARN_MELODIC_INSTRUMENT_INPUT 7
232#define MIDI_LEARN_DRUM_INPUT 8
235#define minTimePerTimerTick 1
236#define numInputTicksToAverageTime 24
237#define numInputTicksToAllowTempoTargeting 24
238#define maxOutputTickMagnitude 5
240#define buttonDebounceTime 100
241#define padDebounceTime 50
244#define clipCollapseSpeed 200
247#define DEFAULT_CLIP_LENGTH 96
248#define horizontalSongSelectorSpeed 90
249#define noteRowCollapseSpeed 150
250#define greyoutSpeed (300 * 44)
252#define initialFlashTime 250
254#define fastFlashTime 60
255#define SAMPLE_MARKER_BLINK_TIME 200
257#define disabledColourRed 255
258#define disabledColourGreen 0
259#define disabledColourBlue 0
261#define groupEnabledColourRed 0
262#define groupEnabledColourGreen 255
263#define groupEnabledColourBlue 6
265#define enabledColourRed 0
266#define enabledColourGreen 255
267#define enabledColourBlue 6
269#define mutedColourRed 255
270#define mutedColourGreen 160
271#define mutedColourBlue 0
273#define midiCommandColourRed 255
274#define midiCommandColourGreen 80
275#define midiCommandColourBlue 120
277#define midiNoCommandColourRed 50
278#define midiNoCommandColourGreen 50
279#define midiNoCommandColourBlue 50
281#define selectedDrumColourRed 30
282#define selectedDrumColourGreen 30
283#define selectedDrumColourBlue 10
286#define MAX_SEQUENCE_LENGTH 1610612736
287#define noteOnLatenessAllowed 2205
290#define GATE_MODE_V_TRIG 0
291#define GATE_MODE_S_TRIG 1
293#define numSongSlots 1000
294#define numInstrumentSlots 1000
295#define maxNumInstrumentPresets 128
296#define FILENAME_BUFFER_SIZE 256
298#define INSTRUMENT_TYPE_SYNTH 0
299#define INSTRUMENT_TYPE_KIT 1
300#define INSTRUMENT_TYPE_MIDI_OUT 2
301#define INSTRUMENT_TYPE_CV 3
302#define OUTPUT_TYPE_AUDIO 4
304#define THING_TYPE_SYNTH 0
305#define THING_TYPE_KIT 1
306#define THING_TYPE_SONG 2
307#define THING_TYPE_NONE 3
309#define audioEngineBufferSize 128
310#define modFXBufferSize 512
311#define modFXBufferIndexMask (modFXBufferSize - 1)
312#define modFXMaxDelay ((modFXBufferSize - 1) << 16)
313#define flangerMinTime (3 << 16)
314#define flangerAmplitude (modFXMaxDelay - flangerMinTime)
315#define flangerOffset ((modFXMaxDelay + flangerMinTime) >> 1)
317#define numEnvelopes 2
319#define numModulators 2
321#define maxNumUnison 8
322#define NUM_VOICES_STATIC 24
323#define NUM_VOICE_SAMPLES_STATIC 20
324#define NUM_TIME_STRETCHERS_STATIC 6
325#define maxNumNoteOnsPending 64
327#define NUM_UINTS_TO_REP_PATCH_CABLES 1
328#define MAX_NUM_PATCH_CABLES (NUM_UINTS_TO_REP_PATCH_CABLES * 32)
331#define ENVELOPE_STAGE_ATTACK 0
332#define ENVELOPE_STAGE_DECAY 1
333#define ENVELOPE_STAGE_SUSTAIN 2
334#define ENVELOPE_STAGE_RELEASE 3
335#define ENVELOPE_STAGE_FAST_RELEASE 4
336#define ENVELOPE_STAGE_OFF 5
338#define NUM_ENVELOPE_STAGES 6
342#define NUM_PRIORITY_OPTIONS 3
344#define PATCH_SOURCE_LFO_GLOBAL 0
345#define PATCH_SOURCE_COMPRESSOR 1
346#define PATCH_SOURCE_ENVELOPE_0 2
347#define PATCH_SOURCE_ENVELOPE_1 3
348#define PATCH_SOURCE_LFO_LOCAL 4
349#define PATCH_SOURCE_X 5
350#define PATCH_SOURCE_Y 6
351#define PATCH_SOURCE_AFTERTOUCH 7
352#define PATCH_SOURCE_VELOCITY 8
353#define PATCH_SOURCE_NOTE 9
354#define PATCH_SOURCE_RANDOM 10
355#define NUM_PATCH_SOURCES 11
357#define PATCH_SOURCE_NONE (NUM_PATCH_SOURCES)
359#define FIRST_GLOBAL_SOURCE_WITH_CHANGED_STATUS_AUTOMATICALLY_UPDATED (PATCH_SOURCE_ENVELOPE_0)
360#define FIRST_LOCAL_SOURCE (PATCH_SOURCE_ENVELOPE_0)
361#define FIRST_UNCHANGEABLE_SOURCE (PATCH_SOURCE_VELOCITY)
373#define PARAM_LOCAL_OSC_A_VOLUME 0
374#define PARAM_LOCAL_OSC_B_VOLUME 1
375#define PARAM_LOCAL_VOLUME 2
376#define PARAM_LOCAL_NOISE_VOLUME 3
377#define PARAM_LOCAL_MODULATOR_0_VOLUME 4
378#define PARAM_LOCAL_MODULATOR_1_VOLUME 5
380#define PARAM_LOCAL_MODULATOR_0_FEEDBACK 6
381#define PARAM_LOCAL_MODULATOR_1_FEEDBACK 7
382#define PARAM_LOCAL_CARRIER_0_FEEDBACK 8
383#define PARAM_LOCAL_CARRIER_1_FEEDBACK 9
384#define PARAM_LOCAL_LPF_RESONANCE 10
385#define PARAM_LOCAL_HPF_RESONANCE 11
386#define PARAM_LOCAL_ENV_0_SUSTAIN 12
387#define PARAM_LOCAL_ENV_1_SUSTAIN 13
389#define PARAM_LOCAL_OSC_A_PHASE_WIDTH 14
390#define PARAM_LOCAL_OSC_B_PHASE_WIDTH 15
391#define PARAM_LOCAL_OSC_A_WAVE_INDEX 16
392#define PARAM_LOCAL_OSC_B_WAVE_INDEX 17
393#define PARAM_LOCAL_PAN 18
395#define PARAM_LOCAL_LPF_FREQ 19
396#define PARAM_LOCAL_PITCH_ADJUST 20
397#define PARAM_LOCAL_OSC_A_PITCH_ADJUST 21
398#define PARAM_LOCAL_OSC_B_PITCH_ADJUST 22
399#define PARAM_LOCAL_MODULATOR_0_PITCH_ADJUST 23
400#define PARAM_LOCAL_MODULATOR_1_PITCH_ADJUST 24
401#define PARAM_LOCAL_HPF_FREQ 25
402#define PARAM_LOCAL_LFO_LOCAL_FREQ 26
403#define PARAM_LOCAL_ENV_0_ATTACK 27
404#define PARAM_LOCAL_ENV_1_ATTACK 28
405#define PARAM_LOCAL_ENV_0_DECAY 29
406#define PARAM_LOCAL_ENV_1_DECAY 30
407#define PARAM_LOCAL_ENV_0_RELEASE 31
408#define PARAM_LOCAL_ENV_1_RELEASE 32
410#define PARAM_GLOBAL_VOLUME_POST_FX 33
411#define PARAM_GLOBAL_VOLUME_POST_REVERB_SEND 34
412#define PARAM_GLOBAL_REVERB_AMOUNT 35
413#define PARAM_GLOBAL_MOD_FX_DEPTH 36
415#define PARAM_GLOBAL_DELAY_FEEDBACK 37
418#define PARAM_GLOBAL_DELAY_RATE 38
419#define PARAM_GLOBAL_MOD_FX_RATE 39
420#define PARAM_GLOBAL_LFO_FREQ 40
421#define PARAM_GLOBAL_ARP_RATE 41
426#define FIRST_LOCAL_NON_VOLUME_PARAM 6
427#define FIRST_LOCAL_HYBRID_PARAM 14
428#define FIRST_LOCAL_EXP_PARAM 19
430#define FIRST_GLOBAL_PARAM 33
431#define FIRST_GLOBAL_NON_VOLUME_PARAM 37
432#define FIRST_GLOBAL_HYBRID_PARAM 38
433#define FIRST_GLOBAL_EXP_PARAM 38
436#define PARAM_PLACEHOLDER_RANGE 89
438#define PARAM_UNPATCHED_SECTION 90
441#define PARAM_UNPATCHED_STUTTER_RATE 0
442#define PARAM_UNPATCHED_BASS 1
443#define PARAM_UNPATCHED_TREBLE 2
444#define PARAM_UNPATCHED_BASS_FREQ 3
445#define PARAM_UNPATCHED_TREBLE_FREQ 4
446#define PARAM_UNPATCHED_SAMPLE_RATE_REDUCTION 5
447#define PARAM_UNPATCHED_BITCRUSHING 6
448#define PARAM_UNPATCHED_MOD_FX_OFFSET 7
449#define PARAM_UNPATCHED_MOD_FX_FEEDBACK 8
450#define PARAM_UNPATCHED_COMPRESSOR_SHAPE 9
453#define NUM_SHARED_UNPATCHED_PARAMS 10
456#define PARAM_UNPATCHED_SOUND_ARP_GATE 10
457#define PARAM_UNPATCHED_SOUND_PORTA 11
460#define MAX_NUM_UNPATCHED_PARAM_FOR_SOUNDS 12
463#define PARAM_UNPATCHED_GLOBALEFFECTABLE_MOD_FX_RATE 10
464#define PARAM_UNPATCHED_GLOBALEFFECTABLE_MOD_FX_DEPTH 11
465#define PARAM_UNPATCHED_GLOBALEFFECTABLE_DELAY_RATE 12
466#define PARAM_UNPATCHED_GLOBALEFFECTABLE_DELAY_AMOUNT 13
467#define PARAM_UNPATCHED_GLOBALEFFECTABLE_PAN 14
468#define PARAM_UNPATCHED_GLOBALEFFECTABLE_LPF_FREQ 15
469#define PARAM_UNPATCHED_GLOBALEFFECTABLE_LPF_RES 16
470#define PARAM_UNPATCHED_GLOBALEFFECTABLE_HPF_FREQ 17
471#define PARAM_UNPATCHED_GLOBALEFFECTABLE_HPF_RES 18
472#define PARAM_UNPATCHED_GLOBALEFFECTABLE_REVERB_SEND_AMOUNT 19
473#define PARAM_UNPATCHED_GLOBALEFFECTABLE_VOLUME 20
474#define PARAM_UNPATCHED_GLOBALEFFECTABLE_SIDECHAIN_VOLUME 21
475#define PARAM_UNPATCHED_GLOBALEFFECTABLE_PITCH_ADJUST 22
477#define MAX_NUM_UNPATCHED_PARAMS 23
481#define KIT_SIDECHAIN_SHAPE (-601295438)
483#define OSC_TYPE_SINE 0
484#define OSC_TYPE_TRIANGLE 1
485#define OSC_TYPE_SQUARE 2
486#define OSC_TYPE_ANALOG_SQUARE 3
487#define OSC_TYPE_SAW 4
488#define OSC_TYPE_ANALOG_SAW_2 5
489#define OSC_TYPE_WAVETABLE 6
490#define OSC_TYPE_SAMPLE 7
491#define OSC_TYPE_INPUT_L 8
492#define OSC_TYPE_INPUT_R 9
493#define OSC_TYPE_INPUT_STEREO 10
496#define NUM_OSC_TYPES_RINGMODDABLE OSC_TYPE_SAMPLE
498#if DELUGE_MODEL == DELUGE_MODEL_40_PAD
499#define NUM_OSC_TYPES 7
501#define NUM_OSC_TYPES 11
507#define LFO_TYPE_SINE 0
508#define LFO_TYPE_TRIANGLE 1
509#define LFO_TYPE_SQUARE 2
510#define LFO_TYPE_SAW 3
512#define NUM_LFO_TYPES 4
515#define SYNTH_MODE_SUBTRACTIVE 0
516#define SYNTH_MODE_FM 1
517#define SYNTH_MODE_RINGMOD 2
519#define MOD_FX_TYPE_NONE 0
520#define MOD_FX_TYPE_FLANGER 1
521#define MOD_FX_TYPE_CHORUS 2
522#define MOD_FX_TYPE_PHASER 3
523#define NUM_MOD_FX_TYPES 4
525#define SAMPLE_MAX_TRANSPOSE 24
526#define SAMPLE_MIN_TRANSPOSE (-96)
528#define WAV_FORMAT_PCM 1
529#define WAV_FORMAT_FLOAT 3
531#define POLYPHONY_AUTO 0
532#define POLYPHONY_POLY 1
533#define POLYPHONY_MONO 2
534#define POLYPHONY_LEGATO 3
535#define POLYPHONY_CHOKE 4
537#define NUM_POLYPHONY_TYPES 5
540#define NUMERIC_DISPLAY_LENGTH 4
542#define MAX_NUM_SECTIONS 12
544#if DELUGE_MODEL >= DELUGE_MODEL_144_G
545#define XTAL_SPEED_MHZ 13007402
547#define XTAL_SPEED_MHZ 13225625
553#define NUM_PHYSICAL_MOD_KNOBS 2
555#define LPF_MODE_12DB 0
556#define LPF_MODE_TRANSISTOR_24DB 1
557#define LPF_MODE_TRANSISTOR_24DB_DRIVE 2
558#define LPF_MODE_DIODE 3
559#define NUM_LPF_MODES 3
561#define PHASER_NUM_ALLPASS_FILTERS 6
564#define ERROR_INSUFFICIENT_RAM 1
565#define ERROR_UNSPECIFIED 2
566#define ERROR_SD_CARD 3
567#define ERROR_NO_FURTHER_PRESETS 4
568#define ERROR_FILE_CORRUPTED 5
569#define ERROR_FILE_UNREADABLE 6
570#define ERROR_FILE_UNSUPPORTED 7
571#define ERROR_FILE_FIRMWARE_VERSION_TOO_NEW 8
572#define RESULT_TAG_UNUSED 9
573#define ERROR_FOLDER_DOESNT_EXIST 10
574#define ERROR_WRITE_PROTECTED 11
576#define ERROR_WRITE_FAIL 13
577#define ERROR_FILE_TOO_BIG 14
578#define ERROR_PRESET_IN_USE 15
579#define ERROR_NO_FURTHER_FILES_THIS_DIRECTION 16
580#define ERROR_FILE_ALREADY_EXISTS 17
581#define ERROR_FILE_NOT_FOUND 18
582#define ERROR_ABORTED_BY_USER 19
583#define ERROR_MAX_FILE_SIZE_REACHED 20
584#define ERROR_SD_CARD_FULL 21
585#define ERROR_FILE_NOT_LOADABLE_AS_WAVETABLE 22
586#define ERROR_FILE_NOT_LOADABLE_AS_WAVETABLE_BECAUSE_STEREO 23
587#define ERROR_NO_FURTHER_DIRECTORY_LEVELS_TO_GO_UP 24
588#define NO_ERROR_BUT_GET_OUT 25
589#define ERROR_INSUFFICIENT_RAM_FOR_FOLDER_CONTENTS_SIZE 26
590#define ERROR_SD_CARD_NOT_PRESENT 27
591#define ERROR_SD_CARD_NO_FILESYSTEM 28
593#define SAMPLE_REPEAT_CUT 0
594#define SAMPLE_REPEAT_ONCE 1
595#define SAMPLE_REPEAT_LOOP 2
596#define SAMPLE_REPEAT_STRETCH 3
598#define NUM_REPEAT_MODES 4
601#define FILTER_TYPE_LPF 0
602#define FILTER_TYPE_HPF 1
603#define FILTER_TYPE_EQ 2
604#define NUM_FILTER_TYPES 3
612#define PIC_MESSAGE_REFRESH_TIME 19
614#define NUM_ARP_MODES 5
615#define ARP_MODE_OFF 0
617#define ARP_MODE_DOWN 2
618#define ARP_MODE_BOTH 3
619#define ARP_MODE_RANDOM 4
621#define ALLOW_SPAM_MODE 0
624#define KEYBOARD_ROW_INTERVAL 5
630#define MIDI_TX_BUFFER_SIZE 1024
632#define MIDI_RX_BUFFER_SIZE 512
633#define MIDI_RX_TIMING_BUFFER_SIZE 32
637#define MOD_FX_PARAM_DEPTH 0
638#define MOD_FX_PARAM_FEEDBACK 1
639#define MOD_FX_PARAM_OFFSET 2
640#define NUM_MOD_FX_PARAMS 3
642#define PATCH_CABLE_ACCEPTANCE_YET_T0_BE_DETERMINED 3
643#define PATCH_CABLE_ACCEPTANCE_ALLOWED 2
644#define PATCH_CABLE_ACCEPTANCE_EDITABLE 1
645#define PATCH_CABLE_ACCEPTANCE_DISALLOWED 0
647#define DOUBLE_TAP_MS 400
649#define SD_TEST_MODE_ENABLED 0
650#define SD_TEST_MODE_ENABLED_LOAD_SONGS 0
651#define SD_TEST_MODE_ENABLED_SAVE_SONGS 0
652#define UNDO_REDO_TEST_ENABLED 0
653#define RECORDING_TEST_ENABLED 0
654#define AUTOPILOT_TEST_ENABLED 0
655#define LAUNCH_CLIP_TEST_ENABLED 0
657#define NUM_GLOBAL_MIDI_COMMANDS 8
658#define GLOBAL_MIDI_COMMAND_PLAYBACK_RESTART 0
659#define GLOBAL_MIDI_COMMAND_PLAY 1
660#define GLOBAL_MIDI_COMMAND_RECORD 2
661#define GLOBAL_MIDI_COMMAND_TAP 3
662#define GLOBAL_MIDI_COMMAND_LOOP 4
663#define GLOBAL_MIDI_COMMAND_LOOP_CONTINUOUS_LAYERING 5
664#define GLOBAL_MIDI_COMMAND_UNDO 6
665#define GLOBAL_MIDI_COMMAND_REDO 7
667#define NUM_CLUSTERS_LOADED_AHEAD 2
669#define INPUT_MONITORING_SMART 0
670#define INPUT_MONITORING_ON 1
671#define INPUT_MONITORING_OFF 2
672#define NUM_INPUT_MONITORING_MODES 3
674#define CACHE_LINE_SIZE 32
677#define CLUSTER_DONT_LOAD 0
678#define CLUSTER_ENQUEUE 1
679#define CLUSTER_LOAD_IMMEDIATELY 2
680#define CLUSTER_LOAD_IMMEDIATELY_OR_ENQUEUE 3
682#define SCALE_TYPE_SCALE 0
683#define SCALE_TYPE_CHROMATIC 1
684#define SCALE_TYPE_KIT 2
686#define ARM_STATE_OFF 0
687#define ARM_STATE_ON_NORMAL 1
688#define ARM_STATE_ON_TO_SOLO 2
690#define ALPHA_OR_BETA_VERSION 1
692#define NUM_PROBABILITY_VALUES 20
693#define DEFAULT_LIFT_VALUE 64
696#if ALPHA_OR_BETA_VERSION
708#define NAVIGATION_CLIP 0
709#define NAVIGATION_ARRANGEMENT 1
711#define PRESET_SEARCH_ALL 0
712#define PRESET_SEARCH_NOT_ACTIVE_IN_SESSION 1
713#define PRESET_SEARCH_NOT_ACTIVE_IN_ARRANGEMENT 2
715#define AVAILABILITY_ANY 0
716#define AVAILABILITY_INSTRUMENT_AVAILABLE_IN_SESSION 1
717#define AVAILABILITY_INSTRUMENT_UNUSED 2
725#define CC_NUMBER_PITCH_BEND 120
726#define CC_NUMBER_AFTERTOUCH 121
727#define CC_NUMBER_NONE 122
728#define NUM_CC_NUMBERS_INCLUDING_FAKE 123
729#define NUM_REAL_CC_NUMBERS 120
731#define INSTRUMENT_REMOVAL_NONE 0
732#define INSTRUMENT_REMOVAL_DELETE_OR_HIBERNATE_IF_UNUSED 1
733#define INSTRUMENT_REMOVAL_DELETE 2
737#define HARDWARE_TEST_MODE 0
739#define DRUM_TYPE_SOUND 0
740#define DRUM_TYPE_MIDI 1
741#define DRUM_TYPE_GATE 2
743#define PGM_CHANGE_SEND_NEVER 0
744#define PGM_CHANGE_SEND_ONCE 1
746#define MARKER_NONE -1
747#define MARKER_START 0
748#define MARKER_LOOP_START 1
749#define MARKER_LOOP_END 2
751#define NUM_MARKER_TYPES 4
753#define INTERPOLATION_MODE_LINEAR 0
754#define INTERPOLATION_MODE_SMOOTH 1
755#define NUM_INTERPOLATION_MODES 2
757#define CACHE_BYTE_DEPTH 3
758#define CACHE_BYTE_DEPTH_MAGNITUDE 2
760#define MAX_UNISON_DETUNE 50
762#define PARAM_STATIC_COMPRESSOR_ATTACK 162
763#define PARAM_STATIC_COMPRESSOR_RELEASE 163
764#define PARAM_STATIC_COMPRESSOR_VOLUME 164
765#define PARAM_STATIC_PATCH_CABLE 190
767#define PERC_BUFFER_REDUCTION_MAGNITUDE 7
768#define PERC_BUFFER_REDUCTION_SIZE (1 << PERC_BUFFER_REDUCTION_MAGNITUDE)
769#define DIFFERENCE_LPF_POLES 2
772#define INTERPOLATION_MAX_NUM_SAMPLES 16
773#define INTERPOLATION_MAX_NUM_SAMPLES_MAGNITUDE 4
776#define CLUSTER_EMPTY 0
777#define CLUSTER_SAMPLE 1
778#define CLUSTER_GENERAL_MEMORY 2
779#define CLUSTER_SAMPLE_CACHE 3
780#define CLUSTER_PERC_CACHE_FORWARDS 4
781#define CLUSTER_PERC_CACHE_REVERSED 5
782#define CLUSTER_OTHER 6
784#define PLAY_HEAD_OLDER 0
785#define PLAY_HEAD_NEWER 1
787#define INPUT_RAW_BUFFER_SIZE 8192
788#define INPUT_REPITCHED_BUFFER_SIZE 2048
789#define INPUT_PERC_BUFFER_SIZE (INPUT_RAW_BUFFER_SIZE >> PERC_BUFFER_REDUCTION_MAGNITUDE)
791#define INPUT_ENABLE_REPITCHED_BUFFER 0
796#define TIME_STRETCH_DEFAULT_FIRST_HOP_LENGTH 200
798#define TIME_STRETCH_CROSSFADE_NUM_MOVING_AVERAGES 3
799#define TIME_STRETCH_CROSSFADE_MOVING_AVERAGE_LENGTH 35
801#define TIME_STRETCH_ENABLE_BUFFER 0
805#if TIME_STRETCH_ENABLE_BUFFER
806#define TIME_STRETCH_BUFFER_SIZE 4096
808#define TIME_STRETCH_BUFFER_SIZE 256
812#define PITCH_DETECT_WINDOW_SIZE_MAGNITUDE 13
813#define PITCH_DETECT_WINDOW_SIZE (1 << PITCH_DETECT_WINDOW_SIZE_MAGNITUDE)
815#define MAX_FILE_SIZE 1073741824
817#define QWERTY_HOME_ROW 3
819#define AUDIO_RECORD_LAG_COMPENTATION 294
822#define AUDIO_INPUT_CHANNEL_NONE 0
823#define AUDIO_INPUT_CHANNEL_LEFT 1
824#define AUDIO_INPUT_CHANNEL_RIGHT 2
825#define AUDIO_INPUT_CHANNEL_STEREO 3
826#define AUDIO_INPUT_CHANNEL_BALANCED 4
827#define AUDIO_INPUT_CHANNEL_MIX 5
828#define AUDIO_INPUT_CHANNEL_OUTPUT 6
830#define AUDIO_INPUT_CHANNEL_FIRST_INTERNAL_OPTION 5
832#define ACTION_RESULT_DEALT_WITH 0
833#define ACTION_RESULT_NOT_DEALT_WITH 1
834#define ACTION_RESULT_REMIND_ME_OUTSIDE_CARD_ROUTINE 2
835#define ACTION_RESULT_ACTIONED_AND_CAUSED_CHANGE 3
837#define ENABLE_CLIP_CUTTING_DIAGNOSTICS 1
839#define AUDIO_CLIP_MARGIN_SIZE_POST_END 2048
844#define ANTI_CLICK_CROSSFADE_LENGTH 100
846#define AUDIO_CLIP_DEFAULT_ATTACK_IF_PRE_MARGIN (7 * 85899345 - 2147483648)
848#define AUDIO_RECORDING_FOLDER_CLIPS 0
849#define AUDIO_RECORDING_FOLDER_RECORD 1
850#define AUDIO_RECORDING_FOLDER_RESAMPLE 2
851#define NUM_AUDIO_RECORDING_FOLDERS 3
853#define MIDI_CC_FOR_COMMANDS_ENABLED 0
855#define KEYBOARD_LAYOUT_QWERTY 0
856#define KEYBOARD_LAYOUT_AZERTY 1
857#define KEYBOARD_LAYOUT_QWERTZ 2
858#define NUM_KEYBOARD_LAYOUTS 3
860#define INTERNAL_BUTTON_PRESS_LATENCY 380
861#define MIDI_KEY_INPUT_LATENCY 100
863#define LINEAR_RECORDING_EARLY_FIRST_NOTE_ALLOWANCE (100 * 44)
865#define LOOP_LOW_LEVEL 1
866#define LOOP_TIMESTRETCHER_LEVEL_IF_ACTIVE 2
868#define TRIGGER_CLOCK_INPUT_NUM_TIMES_STORED 4
871#define INTERNAL_MEMORY_END 0x20300000
872#define PROGRAM_STACK_MAX_SIZE 8192
875#define STEALABLE_QUEUE_NO_SONG_SAMPLE_DATA 0
876#define STEALABLE_QUEUE_NO_SONG_SAMPLE_DATA_CONVERTED 1
877#define STEALABLE_QUEUE_NO_SONG_WAVETABLE_BAND_DATA 2
878#define STEALABLE_QUEUE_NO_SONG_SAMPLE_DATA_REPITCHED_CACHE 3
879#define STEALABLE_QUEUE_NO_SONG_SAMPLE_DATA_PERC_CACHE 4
880#define STEALABLE_QUEUE_NO_SONG_AUDIO_FILE_OBJECTS 5
881#define STEALABLE_QUEUE_CURRENT_SONG_SAMPLE_DATA 6
882#define STEALABLE_QUEUE_CURRENT_SONG_SAMPLE_DATA_CONVERTED 7
883#define STEALABLE_QUEUE_CURRENT_SONG_SAMPLE_DATA_REPITCHED_CACHE 8
884#define STEALABLE_QUEUE_CURRENT_SONG_SAMPLE_DATA_PERC_CACHE 9
885#define NUM_STEALABLE_QUEUES 10
887#define TIMER_MIDI_GATE_OUTPUT 2
888#define TIMER_SYSTEM_FAST 0
889#define TIMER_SYSTEM_SLOW 4
890#define TIMER_SYSTEM_SUPERFAST 1
892#define SSI_TX_BUFFER_NUM_SAMPLES 128
893#define SSI_RX_BUFFER_NUM_SAMPLES 2048
894#define NUM_MONO_INPUT_CHANNELS (NUM_STEREO_INPUT_CHANNELS * 2)
895#define NUM_MONO_OUTPUT_CHANNELS (NUM_STEREO_OUTPUT_CHANNELS * 2)
898#define MAX_NUM_USB_MIDI_DEVICES 6
900#define UNDEFINED_GREY_SHADE 7
902#define HAVE_SEQUENCE_STEP_CONTROL 1
904#define SEQUENCE_DIRECTION_FORWARD 0
905#define SEQUENCE_DIRECTION_REVERSE 1
906#define SEQUENCE_DIRECTION_PINGPONG 2
907#define SEQUENCE_DIRECTION_OBEY_PARENT 3
908#define NUM_SEQUENCE_DIRECTION_OPTIONS 3
910#define AUDIO_FILE_TYPE_SAMPLE 0
911#define AUDIO_FILE_TYPE_WAVETABLE 1
913#define WAVETABLE_MIN_CYCLE_SIZE 8
914#define WAVETABLE_MAX_CYCLE_SIZE 65536
917#define MAX_IMAGE_STORE_WIDTH displayWidth
919#define NUM_EXPRESSION_DIMENSIONS 3
921#define EXPRESSION_X_PITCH_BEND 0
922#define EXPRESSION_Y_SLIDE_TIMBRE 1
923#define EXPRESSION_Z_PRESSURE 2
925#define MIDI_CHANNEL_MPE_LOWER_ZONE 16
926#define MIDI_CHANNEL_MPE_UPPER_ZONE 17
927#define MIDI_CHANNEL_NONE 255
929#define MIDI_OUTPUT_FILTER_NO_MPE 0
933#define AUTOMATED_TESTER_ENABLED (0 && ALPHA_OR_BETA_VERSION)
937#define OLED_MAIN_WIDTH_PIXELS 128
939#define OLED_WIDTH_CHARS 16
940#define OLED_MENU_NUM_OPTIONS_VISIBLE (OLED_HEIGHT_CHARS - 1)
943#define CONSOLE_IMAGE_HEIGHT (OLED_MAIN_HEIGHT_PIXELS + 16)
944#define CONSOLE_IMAGE_NUM_ROWS (CONSOLE_IMAGE_HEIGHT >> 3)
946#define TEXT_SPACING_X 6
947#define TEXT_SPACING_Y 9
948#define TEXT_SIZE_Y_UPDATED 7
950#define TEXT_TITLE_SPACING_X 9
951#define TEXT_TITLE_SIZE_Y 10
953#define TEXT_BIG_SPACING_X 11
954#define TEXT_BIG_SIZE_Y 13
956#define TEXT_HUGE_SPACING_X 18
957#define TEXT_HUGE_SIZE_Y 20
959#define OLED_ALLOW_LOWER_CASE 0
961#define NOTE_FOR_DRUM 60
964#define BEND_RANGE_MAIN 0
965#define BEND_RANGE_FINGER_LEVEL 1
967#define MIDI_CHARACTERISTIC_NOTE 0
968#define MIDI_CHARACTERISTIC_CHANNEL 1
970#define PLAYBACK_STOP_SHOULD_CLEAR_MONO_EXPRESSION 1
972#define INDEPENDENT_NOTEROW_LENGTH_INCREASE_DOUBLE 0
973#define INDEPENDENT_NOTEROW_LENGTH_INCREASE_ROUND_UP 1
976#define DIR_FileSize 28
979#define MAX_NUM_UINTS_TO_REP_ALL_PARAMS 2
983#define BROWSER_AND_MENU_NUM_LINES 3
985#define BROWSER_AND_MENU_NUM_LINES 1