BogaudioModules

BogaudioModules for VCV Rack
Log | Files | Refs | README | LICENSE

commit d8086cd8d9e1d527b4c3e9ee7b89c87af026fcd6
parent ace23b5416f73876ebbef6705d675d9536ae6f1f
Author: Matt Demanett <matt@demanett.net>
Date:   Fri,  7 Jun 2019 01:16:53 -0400

v1: first pass on param labels.

Diffstat:
MREADME.md | 2+-
Msrc/AD.hpp | 4++--
Msrc/ADSR.hpp | 4++--
Msrc/AMRM.hpp | 4++--
Msrc/Additator.hpp | 16++++++++--------
Msrc/AddrSeq.hpp | 22+++++++++++-----------
Msrc/Analyzer.hpp | 8++++----
Msrc/CVD.hpp | 6+++---
Msrc/Cmp.hpp | 8++++----
Msrc/DADSRH.hpp | 18+++++++++---------
Msrc/DADSRHPlus.hpp | 18+++++++++---------
Msrc/DGate.hpp | 4++--
Msrc/Detune.hpp | 2+-
Msrc/EightFO.hpp | 26+++++++++++++-------------
Msrc/EightOne.hpp | 6+++---
Msrc/FMOp.hpp | 18+++++++++---------
Msrc/Follow.hpp | 4++--
Msrc/LFO.hpp | 10+++++-----
Msrc/LLFO.hpp | 8++++----
Msrc/Lmtr.hpp | 6+++---
Msrc/Manual.hpp | 2+-
Msrc/Matrix88.hpp | 130++++++++++++++++++++++++++++++++++++++++----------------------------------------
Msrc/Mix1.hpp | 4++--
Msrc/Mix4.hpp | 28++++++++++++++--------------
Msrc/Mix8.hpp | 52++++++++++++++++++++++++++--------------------------
Msrc/Mute8.hpp | 16++++++++--------
Msrc/Nsgt.hpp | 4++--
Msrc/Offset.hpp | 4++--
Msrc/OneEight.hpp | 6+++---
Msrc/Pan.hpp | 4++--
Msrc/Pressor.hpp | 14+++++++-------
Msrc/Reftone.hpp | 6+++---
Msrc/SampleHold.hpp | 8++++----
Msrc/Shaper.hpp | 10+++++-----
Msrc/ShaperPlus.hpp | 10+++++-----
Msrc/Stack.hpp | 8++++----
Msrc/Switch.hpp | 4++--
Msrc/UMix.hpp | 2+-
Msrc/VCAmp.hpp | 2+-
Msrc/VCO.hpp | 13+++++++------
Msrc/Walk.hpp | 6+++---
Msrc/Walk2.hpp | 12++++++------
Msrc/XCO.hpp | 35++++++++++++++++++-----------------
Msrc/XFade.hpp | 6+++---
44 files changed, 291 insertions(+), 289 deletions(-)

diff --git a/README.md b/README.md @@ -61,7 +61,7 @@ A standard VCO featuring: - Slow (LFO) mode. - Antialiasing by a CPU-efficient combination of band limiting and oversampling. -The main frequency knob is calibrated in volts, from -4 to +6, corresponding to notes from C0 to C6. The default "0V" position corresponds to C4 (261.63HZ). The knob value is added to the pitch CV input at the V/OCT port. With CV input, the pitch can be driven as high as 95% of the Nyquist frequency (so, over 20KHZ at Rack's default sample rate). The FINE knob allows an additional adjustment of up to +/-1 semitone (1/12 volt). In slow mode, the output frequency is 7 octaves lower than in normal mode with the same knob/CV values. +The main frequency knob is calibrated in volts, from -4 to +6, corresponding to notes from C0 to C6. The default "0V" position corresponds to C4 (261.63HZ). The knob value is added to the pitch CV input at the V/OCT port. With CV input, the pitch can be driven as high as 95% of the Nyquist frequency (so, over 20KHZ at Rack's default sample rate). The FINE knob allows an additional adjustment of up to +/-1 semitone (100 cents, 1/12 volt). In slow mode, the output frequency is 7 octaves lower than in normal mode with the same knob/CV values. #### XCO diff --git a/src/AD.hpp b/src/AD.hpp @@ -55,8 +55,8 @@ struct AD : Module { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); configParam(ATTACK_PARAM, 0.0f, 1.0f, 0.12f, "attack"); configParam(DECAY_PARAM, 0.0f, 1.0f, 0.31623f, "decay"); - configParam(LOOP_PARAM, 0.0f, 1.0f, 0.0f, "loop"); - configParam(LINEAR_PARAM, 0.0f, 1.0f, 0.0f, "linear"); + configParam(LOOP_PARAM, 0.0f, 1.0f, 0.0f, "Loop"); + configParam(LINEAR_PARAM, 0.0f, 1.0f, 0.0f, "Linear"); onReset(); onSampleRateChange(); diff --git a/src/ADSR.hpp b/src/ADSR.hpp @@ -46,9 +46,9 @@ struct ADSR : Module { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); configParam(ATTACK_PARAM, 0.0f, 1.0f, 0.12f, "attack"); configParam(DECAY_PARAM, 0.0f, 1.0f, 0.31623f, "decay"); - configParam(SUSTAIN_PARAM, 0.0f, 1.0f, 1.0f, "sustain"); + configParam(SUSTAIN_PARAM, 0.0f, 1.0f, 1.0f, "Sustain", "%", 0.0f, 100.0f); configParam(RELEASE_PARAM, 0.0f, 1.0f, 0.31623f, "release"); - configParam(LINEAR_PARAM, 0.0f, 1.0f, 0.0f, "linear"); + configParam(LINEAR_PARAM, 0.0f, 1.0f, 0.0f, "Linear"); onReset(); onSampleRateChange(); diff --git a/src/AMRM.hpp b/src/AMRM.hpp @@ -38,8 +38,8 @@ struct AMRM : Module { AMRM() { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); - configParam(RECTIFY_PARAM, 0.0f, 1.0f, 0.0f, "rectify"); - configParam(DRYWET_PARAM, 0.0f, 1.0f, 1.0f, "drywet"); + configParam(RECTIFY_PARAM, 0.0f, 1.0f, 0.0f, "Rectification", "%", 0.0f, 100.0f); + configParam(DRYWET_PARAM, 0.0f, 1.0f, 1.0f, "Wet mix", "%", 0.0f, 100.0f); } void process(const ProcessArgs& args) override; diff --git a/src/Additator.hpp b/src/Additator.hpp @@ -96,17 +96,17 @@ struct Additator : Module { : _oscillator(1000.0f, 100.0f, maxPartials) { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); - configParam(FREQUENCY_PARAM, -3.0f, 6.0f, 0.0f, "frequency"); - configParam(PARTIALS_PARAM, 1.0f, Additator::maxPartials, Additator::maxPartials / 5.0f, "partials"); - configParam(FINE_PARAM, -1.0f, 1.0f, 0.0f, "fine"); - configParam(WIDTH_PARAM, 0.0f, maxWidth, maxWidth / 2.0f, "width"); - configParam(ODD_SKEW_PARAM, -maxSkew, maxSkew, 0.0f, "odd_skew"); - configParam(EVEN_SKEW_PARAM, -maxSkew, maxSkew, 0.0f, "even_skew"); + configParam(FREQUENCY_PARAM, -3.0f, 6.0f, 0.0f, "Frequency", " Hz", 2.0f, referenceFrequency); + configParam(PARTIALS_PARAM, 1.0f, Additator::maxPartials, Additator::maxPartials / 5.0f, "Partials"); + configParam(FINE_PARAM, -1.0f, 1.0f, 0.0f, "Fine tune", " cents", 0.0f, 100.0f); + configParam(WIDTH_PARAM, 0.0f, maxWidth, maxWidth / 2.0f, "Width", "%", 0.0f, 2.0f * (1.0f / maxWidth) * 100.0f, -100.0f); + configParam(ODD_SKEW_PARAM, -maxSkew, maxSkew, 0.0f, "Odd skew", "%", 0.0f, (1.0f / maxSkew) * 100.0f); + configParam(EVEN_SKEW_PARAM, -maxSkew, maxSkew, 0.0f, "Even skew", "%", 0.0f, (1.0f / maxSkew) * 100.0f); configParam(GAIN_PARAM, minAmplitudeNormalization, maxAmplitudeNormalization, (maxAmplitudeNormalization - minAmplitudeNormalization) / 2.0 + minAmplitudeNormalization, "gain"); configParam(DECAY_PARAM, minDecay, maxDecay, (maxDecay - minDecay) / 2.0 + minDecay, "decay"); - configParam(BALANCE_PARAM, -1.0f, 1.0f, 0.0f, "balance"); + configParam(BALANCE_PARAM, -1.0f, 1.0f, 0.0f, "Balance", "%", 0.0f, 100.0f); configParam(FILTER_PARAM, minFilter, maxFilter, (maxFilter - minFilter) / 2.0 + minFilter, "filter"); - configParam(PHASE_PARAM, 1.0f, 2.0f, 1.0f, "phase"); + configParam(PHASE_PARAM, 1.0f, 2.0f, 1.0f, "Phase"); onReset(); onSampleRateChange(); diff --git a/src/AddrSeq.hpp b/src/AddrSeq.hpp @@ -58,17 +58,17 @@ struct AddrSeq : Module { AddrSeq() { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); - configParam(STEPS_PARAM, 1.0f, 8.0f, 8.0f, "steps"); - configParam(DIRECTION_PARAM, 0.0f, 1.0f, 1.0f, "direction"); - configParam(SELECT_PARAM, 0.0f, 7.0f, 0.0f, "select"); - configParam(OUT1_PARAM, -1.0f, 1.0f, 0.0f, "out1"); - configParam(OUT2_PARAM, -1.0f, 1.0f, 0.0f, "out2"); - configParam(OUT3_PARAM, -1.0f, 1.0f, 0.0f, "out3"); - configParam(OUT4_PARAM, -1.0f, 1.0f, 0.0f, "out4"); - configParam(OUT5_PARAM, -1.0f, 1.0f, 0.0f, "out5"); - configParam(OUT6_PARAM, -1.0f, 1.0f, 0.0f, "out6"); - configParam(OUT7_PARAM, -1.0f, 1.0f, 0.0f, "out7"); - configParam(OUT8_PARAM, -1.0f, 1.0f, 0.0f, "out8"); + configParam(STEPS_PARAM, 1.0f, 8.0f, 8.0f, "Steps"); + configParam(DIRECTION_PARAM, 0.0f, 1.0f, 1.0f, "Direction"); + configParam(SELECT_PARAM, 0.0f, 7.0f, 0.0f, "Select step"); + configParam(OUT1_PARAM, -1.0f, 1.0f, 0.0f, "Step 1", "V", 0.0f, 10.0f); + configParam(OUT2_PARAM, -1.0f, 1.0f, 0.0f, "Step 2", "V", 0.0f, 10.0f); + configParam(OUT3_PARAM, -1.0f, 1.0f, 0.0f, "Step 3", "V", 0.0f, 10.0f); + configParam(OUT4_PARAM, -1.0f, 1.0f, 0.0f, "Step 4", "V", 0.0f, 10.0f); + configParam(OUT5_PARAM, -1.0f, 1.0f, 0.0f, "Step 5", "V", 0.0f, 10.0f); + configParam(OUT6_PARAM, -1.0f, 1.0f, 0.0f, "Step 6", "V", 0.0f, 10.0f); + configParam(OUT7_PARAM, -1.0f, 1.0f, 0.0f, "Step 7", "V", 0.0f, 10.0f); + configParam(OUT8_PARAM, -1.0f, 1.0f, 0.0f, "Step 8", "V", 0.0f, 10.0f); onReset(); onSampleRateChange(); diff --git a/src/Analyzer.hpp b/src/Analyzer.hpp @@ -49,10 +49,10 @@ struct Analyzer : AnalyzerBase { int _modulationStep = 0; Analyzer() : AnalyzerBase(4, NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS) { - configParam(RANGE2_PARAM, -1.0f, 1.0f, 0.0f); - configParam(SMOOTH_PARAM, 0.0f, 1.0f, 0.5f); - configParam(QUALITY_PARAM, 1.0f, 3.0f, 1.0f); - configParam(WINDOW_PARAM, 1.0f, 3.0f, 1.0f); + configParam(RANGE2_PARAM, -1.0f, 1.0f, 0.0f, "range"); + configParam(SMOOTH_PARAM, 0.0f, 1.0f, 0.5f, "Smoothing", " ms", 0.0f, 500.0f); + configParam(QUALITY_PARAM, 1.0f, 3.0f, 1.0f, "Analysis quality"); + configParam(WINDOW_PARAM, 1.0f, 3.0f, 1.0f, "Analysis window type"); onReset(); } virtual ~Analyzer() { diff --git a/src/CVD.hpp b/src/CVD.hpp @@ -40,9 +40,9 @@ struct CVD : Module { : _delay(1000.0f, 10000.0f) { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); - configParam(TIME_PARAM, 0.0f, 1.0f, 0.5f, "time"); - configParam(TIME_SCALE_PARAM, 0.0f, 2.0f, 1.0f, "time_scale"); - configParam(MIX_PARAM, -1.0f, 1.0f, 0.0f, "mix"); + configParam(TIME_PARAM, 0.0f, 1.0f, 0.5f, "Time base"); + configParam(TIME_SCALE_PARAM, 0.0f, 2.0f, 1.0f, "Time scale", "", 10.0f, 0.1f); + configParam(MIX_PARAM, -1.0f, 1.0f, 0.0f, "Dry wet mix", "%", 0.0f, 100.0f); onSampleRateChange(); } diff --git a/src/Cmp.hpp b/src/Cmp.hpp @@ -50,11 +50,11 @@ struct Cmp : Module { Cmp() { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); - configParam(A_PARAM, -1.0f, 1.0f, 0.0f, "a"); - configParam(B_PARAM, -1.0f, 1.0f, 0.0f, "b"); - configParam(WINDOW_PARAM, 0.0f, 1.0f, 0.5f, "window"); + configParam(A_PARAM, -1.0f, 1.0f, 0.0f, "A", "V", 0.0f, 10.0f); + configParam(B_PARAM, -1.0f, 1.0f, 0.0f, "B", "V", 0.0f, 10.0f); + configParam(WINDOW_PARAM, 0.0f, 1.0f, 0.5f, "Window", "V", 0.0f, 10.0f); configParam(LAG_PARAM, 0.0f, 1.0f, 0.1f, "lag"); - configParam(OUTPUT_PARAM, 0.0f, 1.0f, 0.0f, "output"); + configParam(OUTPUT_PARAM, 0.0f, 1.0f, 0.0f, "Output"); onReset(); } diff --git a/src/DADSRH.hpp b/src/DADSRH.hpp @@ -118,17 +118,17 @@ struct DADSRH : TriggerOnLoadModule { configParam(DELAY_PARAM, 0.0f, 1.0f, 0.0f, "delay"); configParam(ATTACK_PARAM, 0.0f, 1.0f, 0.12f, "attack"); configParam(DECAY_PARAM, 0.0f, 1.0f, 0.32f, "decay"); - configParam(SUSTAIN_PARAM, 0.0f, 1.0f, 0.5f, "sustain"); + configParam(SUSTAIN_PARAM, 0.0f, 1.0f, 0.5f, "Sustain", "%", 0.0f, 100.0f); configParam(RELEASE_PARAM, 0.0f, 1.0f, 0.32f, "release"); configParam(HOLD_PARAM, 0.0f, 1.0f, 0.45f, "hold"); - configParam(ATTACK_SHAPE_PARAM, 1.0f, 3.0f, 1.0f, "attack_shape"); - configParam(DECAY_SHAPE_PARAM, 1.0f, 3.0f, 1.0f, "decay_shape"); - configParam(RELEASE_SHAPE_PARAM, 1.0f, 3.0f, 1.0f, "release_shape"); - configParam(TRIGGER_PARAM, 0.0f, 1.0f, 0.0f, "trigger"); - configParam(MODE_PARAM, 0.0f, 1.0f, 1.0f, "mode"); - configParam(LOOP_PARAM, 0.0f, 1.0f, 1.0f, "loop"); - configParam(SPEED_PARAM, 0.0f, 1.0f, 1.0f, "speed"); - configParam(RETRIGGER_PARAM, 0.0f, 1.0f, 1.0f, "retrigger"); + configParam(ATTACK_SHAPE_PARAM, 1.0f, 3.0f, 1.0f, "Attack shape"); + configParam(DECAY_SHAPE_PARAM, 1.0f, 3.0f, 1.0f, "Decay shape"); + configParam(RELEASE_SHAPE_PARAM, 1.0f, 3.0f, 1.0f, "Release shape"); + configParam(TRIGGER_PARAM, 0.0f, 1.0f, 0.0f, "Trigger"); + configParam(MODE_PARAM, 0.0f, 1.0f, 1.0f, "Mode"); + configParam(LOOP_PARAM, 0.0f, 1.0f, 1.0f, "Loop"); + configParam(SPEED_PARAM, 0.0f, 1.0f, 1.0f, "Speed"); + configParam(RETRIGGER_PARAM, 0.0f, 1.0f, 1.0f, "Retrigger"); onReset(); } diff --git a/src/DADSRHPlus.hpp b/src/DADSRHPlus.hpp @@ -129,17 +129,17 @@ struct DADSRHPlus : TriggerOnLoadModule { configParam(DELAY_PARAM, 0.0f, 1.0f, 0.0f, "delay"); configParam(ATTACK_PARAM, 0.0f, 1.0f, 0.12f, "attack"); configParam(DECAY_PARAM, 0.0f, 1.0f, 0.32f, "decay"); - configParam(SUSTAIN_PARAM, 0.0f, 1.0f, 0.5f, "sustain"); + configParam(SUSTAIN_PARAM, 0.0f, 1.0f, 0.5f, "Sustain", "%", 0.0f, 100.0f); configParam(RELEASE_PARAM, 0.0f, 1.0f, 0.32f, "release"); configParam(HOLD_PARAM, 0.0f, 1.0f, 0.45f, "hold"); - configParam(ATTACK_SHAPE_PARAM, 1.0f, 3.0f, 1.0f, "attack_shape"); - configParam(DECAY_SHAPE_PARAM, 1.0f, 3.0f, 1.0f, "decay_shape"); - configParam(RELEASE_SHAPE_PARAM, 1.0f, 3.0f, 1.0f, "release_shape"); - configParam(TRIGGER_PARAM, 0.0f, 1.0f, 0.0f, "trigger"); - configParam(MODE_PARAM, 0.0f, 1.0f, 1.0f, "mode"); - configParam(LOOP_PARAM, 0.0f, 1.0f, 1.0f, "loop"); - configParam(SPEED_PARAM, 0.0f, 1.0f, 1.0f, "speed"); - configParam(RETRIGGER_PARAM, 0.0f, 1.0f, 1.0f, "retrigger"); + configParam(ATTACK_SHAPE_PARAM, 1.0f, 3.0f, 1.0f, "Attack shape"); + configParam(DECAY_SHAPE_PARAM, 1.0f, 3.0f, 1.0f, "Decay shape"); + configParam(RELEASE_SHAPE_PARAM, 1.0f, 3.0f, 1.0f, "Release shape"); + configParam(TRIGGER_PARAM, 0.0f, 1.0f, 0.0f, "Trigger"); + configParam(MODE_PARAM, 0.0f, 1.0f, 1.0f, "Mode"); + configParam(LOOP_PARAM, 0.0f, 1.0f, 1.0f, "Loop"); + configParam(SPEED_PARAM, 0.0f, 1.0f, 1.0f, "Speed"); + configParam(RETRIGGER_PARAM, 0.0f, 1.0f, 1.0f, "Retrigger"); onReset(); } diff --git a/src/DGate.hpp b/src/DGate.hpp @@ -47,8 +47,8 @@ struct DGate : TriggerOnLoadModule { DGate() : TriggerOnLoadModule(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS) { configParam(DELAY_PARAM, 0.0f, 1.0f, 0.0f, "delay"); configParam(GATE_PARAM, 0.0f, 1.0f, 0.32f, "gate"); - configParam(LOOP_PARAM, 0.0f, 1.0f, 1.0f, "loop"); - configParam(TRIGGER_PARAM, 0.0f, 1.0f, 0.0f, "trigger"); + configParam(LOOP_PARAM, 0.0f, 1.0f, 1.0f, "Loop"); + configParam(TRIGGER_PARAM, 0.0f, 1.0f, 0.0f, "Trigger"); onReset(); } diff --git a/src/Detune.hpp b/src/Detune.hpp @@ -39,7 +39,7 @@ struct Detune : Module { Detune() { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); - configParam(CENTS_PARAM, 0.0f, 50.0f, 0.0f, "cents"); + configParam(CENTS_PARAM, 0.0f, 50.0f, 0.0f, "Cents"); } void process(const ProcessArgs& args) override; diff --git a/src/EightFO.hpp b/src/EightFO.hpp @@ -118,19 +118,19 @@ struct EightFO : LFOBase { EightFO() : LFOBase(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS) { configParam(FREQUENCY_PARAM, -8.0, 5.0, 0.0, "frequency"); - configParam(WAVE_PARAM, 1.0, 5.0, 3.0, "wave"); - configParam(SLOW_PARAM, 0.0, 1.0, 0.0, "slow"); - configParam(SAMPLE_PWM_PARAM, -1.0, 1.0, 0.0, "sample/pwm"); - configParam(OFFSET_PARAM, -1.0, 1.0, 0.0, "offset"); - configParam(SCALE_PARAM, 0.0, 1.0, 1.0, "scale"); - configParam(PHASE7_PARAM, -1.0, 1.0, 0.0, "phase"); - configParam(PHASE6_PARAM, -1.0, 1.0, 0.0, "phase"); - configParam(PHASE5_PARAM, -1.0, 1.0, 0.0, "phase"); - configParam(PHASE4_PARAM, -1.0, 1.0, 0.0, "phase"); - configParam(PHASE3_PARAM, -1.0, 1.0, 0.0, "phase"); - configParam(PHASE2_PARAM, -1.0, 1.0, 0.0, "phase"); - configParam(PHASE1_PARAM, -1.0, 1.0, 0.0, "phase"); - configParam(PHASE0_PARAM, -1.0, 1.0, 0.0f, "phase"); + configParam(WAVE_PARAM, 1.0, 5.0, 3.0, "Waveform"); + configParam(SLOW_PARAM, 0.0, 1.0, 0.0, "Slow"); + configParam(SAMPLE_PWM_PARAM, -1.0, 1.0, 0.0, "Width", "%", 0.0f, 100.0f); + configParam(OFFSET_PARAM, -1.0, 1.0, 0.0, "Offset", "V", 0.0f, 5.0f); + configParam(SCALE_PARAM, 0.0, 1.0, 1.0, "Scale", "%", 0.0f, 100.0f); + configParam(PHASE7_PARAM, -1.0, 1.0, 0.0, "Phase 315", "º", 0.0f, 180.0f); + configParam(PHASE6_PARAM, -1.0, 1.0, 0.0, "Phase 270", "º", 0.0f, 180.0f); + configParam(PHASE5_PARAM, -1.0, 1.0, 0.0, "Phase 225", "º", 0.0f, 180.0f); + configParam(PHASE4_PARAM, -1.0, 1.0, 0.0, "Phase 180", "º", 0.0f, 180.0f); + configParam(PHASE3_PARAM, -1.0, 1.0, 0.0, "Phase 135", "º", 0.0f, 180.0f); + configParam(PHASE2_PARAM, -1.0, 1.0, 0.0, "Phase 90", "º", 0.0f, 180.0f); + configParam(PHASE1_PARAM, -1.0, 1.0, 0.0, "Phase 45", "º", 0.0f, 180.0f); + configParam(PHASE0_PARAM, -1.0, 1.0, 0.0f, "Phase 0", "º", 0.0f, 180.0f); onReset(); onSampleRateChange(); diff --git a/src/EightOne.hpp b/src/EightOne.hpp @@ -58,9 +58,9 @@ struct EightOne : Module { EightOne() { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); - configParam(STEPS_PARAM, 1.0f, 8.0f, 8.0f, "steps"); - configParam(DIRECTION_PARAM, 0.0f, 1.0f, 1.0f, "direction"); - configParam(SELECT_PARAM, 0.0f, 7.0f, 0.0f, "select"); + configParam(STEPS_PARAM, 1.0f, 8.0f, 8.0f, "Steps"); + configParam(DIRECTION_PARAM, 0.0f, 1.0f, 1.0f, "Direction"); + configParam(SELECT_PARAM, 0.0f, 7.0f, 0.0f, "Select step"); onReset(); onSampleRateChange(); diff --git a/src/FMOp.hpp b/src/FMOp.hpp @@ -84,18 +84,18 @@ struct FMOp : Module { : _envelope(true) { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); - configParam(RATIO_PARAM, -1.0f, 1.0f, 0.0f, "ratio"); - configParam(FINE_PARAM, -1.0f, 1.0f, 0.0f, "fine"); + configParam(RATIO_PARAM, -1.0f, 1.0f, 0.0f, "Frequency ratio"); + configParam(FINE_PARAM, -1.0f, 1.0f, 0.0f, "Fine tune", " cents", 0.0f, 100.0f); configParam(ATTACK_PARAM, 0.0f, 1.0f, 0.12f, "attack"); configParam(DECAY_PARAM, 0.0f, 1.0f, 0.31623f, "decay"); - configParam(SUSTAIN_PARAM, 0.0f, 1.0f, 1.0f, "sustain"); + configParam(SUSTAIN_PARAM, 0.0f, 1.0f, 1.0f, "Sustain", "%", 0.0f, 100.0f); configParam(RELEASE_PARAM, 0.0f, 1.0f, 0.31623f, "release"); - configParam(DEPTH_PARAM, 0.0f, 1.0f, 0.0f, "depth"); - configParam(FEEDBACK_PARAM, 0.0f, 1.0f, 0.0f, "feedback"); - configParam(LEVEL_PARAM, 0.0f, 1.0f, 1.0f, "level"); - configParam(ENV_TO_LEVEL_PARAM, 0.0f, 1.0f, 0.0f, "env_to_level"); - configParam(ENV_TO_FEEDBACK_PARAM, 0.0f, 1.0f, 0.0f, "env_to_feedback"); - configParam(ENV_TO_DEPTH_PARAM, 0.0f, 1.0f, 0.0f, "env_to_depth"); + configParam(DEPTH_PARAM, 0.0f, 1.0f, 0.0f, "FM depth", "%", 0.0f, 100.0f); + configParam(FEEDBACK_PARAM, 0.0f, 1.0f, 0.0f, "Feedback", "%", 0.0f, 100.0f); + configParam(LEVEL_PARAM, 0.0f, 1.0f, 1.0f, "level"); // FIXME: , " dB", 0.0f, -Amplifier::minDecibels, Amplifier::minDecibels); + configParam(ENV_TO_LEVEL_PARAM, 0.0f, 1.0f, 0.0f, "Level follows envelope"); + configParam(ENV_TO_FEEDBACK_PARAM, 0.0f, 1.0f, 0.0f, "Feedback follows envelope"); + configParam(ENV_TO_DEPTH_PARAM, 0.0f, 1.0f, 0.0f, "FM depth follows envelope"); onReset(); onSampleRateChange(); diff --git a/src/Follow.hpp b/src/Follow.hpp @@ -38,8 +38,8 @@ struct Follow : Module { : _rms(1000.0f, 1.0f, 500.0f) { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); - configParam(RESPONSE_PARAM, 0.0f, 1.0f, 0.3f, "response"); - configParam(SCALE_PARAM, 0.0f, 1.0f, 1.0f, "scale"); + configParam(RESPONSE_PARAM, 0.0f, 1.0f, 0.3f, "Sensitivity", "%", 0.0f, 100.0f); + configParam(SCALE_PARAM, 0.0f, 1.0f, 1.0f, "Scale", "%", 0.0f, 100.0f); onSampleRateChange(); } diff --git a/src/LFO.hpp b/src/LFO.hpp @@ -75,11 +75,11 @@ struct LFO : LFOBase { LFO() : LFOBase(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS) { configParam(FREQUENCY_PARAM, -8.0f, 5.0f, 0.0f, "frequency"); - configParam(SLOW_PARAM, 0.0f, 1.0f, 0.0f, "slow"); - configParam(SAMPLE_PARAM, 0.0f, 1.0f, 0.0f, "sample"); - configParam(PW_PARAM, -1.0f, 1.0f, 0.0f, "pw"); - configParam(OFFSET_PARAM, -1.0f, 1.0f, 0.0f, "offset"); - configParam(SCALE_PARAM, 0.0f, 1.0f, 1.0f, "scale"); + configParam(SLOW_PARAM, 0.0f, 1.0f, 0.0f, "Slow"); + configParam(SAMPLE_PARAM, 0.0f, 1.0f, 0.0f, "Output sampling", "%", 0.0f, 100.0f); + configParam(PW_PARAM, -1.0f, 1.0f, 0.0f, "Pulse width", "%", 0.0f, 100.0f*0.5f*(1.0f - 2.0f * _square.minPulseWidth), 50.0f); + configParam(OFFSET_PARAM, -1.0f, 1.0f, 0.0f, "Offset", "V", 0.0f, 5.0f); + configParam(SCALE_PARAM, 0.0f, 1.0f, 1.0f, "Scale", "%", 0.0f, 100.0f); onReset(); onSampleRateChange(); diff --git a/src/LLFO.hpp b/src/LLFO.hpp @@ -74,10 +74,10 @@ struct LLFO : LFOBase { , _oscillator(&_sine) { configParam(FREQUENCY_PARAM, -8.0f, 5.0f, 0.0f, "frequency"); - configParam(WAVE_PARAM, 0.0f, 5.0f, 0.0f, "wave"); - configParam(SLOW_PARAM, 0.0f, 1.0f, 0.0f, "slow"); - configParam(OFFSET_PARAM, -1.0f, 1.0f, 0.0f, "offset"); - configParam(SCALE_PARAM, 0.0f, 1.0f, 1.0f, "scale"); + configParam(WAVE_PARAM, 0.0f, 5.0f, 0.0f, "Waveform"); + configParam(SLOW_PARAM, 0.0f, 1.0f, 0.0f, "Slow mode"); + configParam(OFFSET_PARAM, -1.0f, 1.0f, 0.0f, "Offset", "V", 0.0f, 5.0f); + configParam(SCALE_PARAM, 0.0f, 1.0f, 1.0f, "Scale", "%", 0.0f, 100.0f); onReset(); onSampleRateChange(); diff --git a/src/Lmtr.hpp b/src/Lmtr.hpp @@ -52,9 +52,9 @@ struct Lmtr : Module { Lmtr() { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); - configParam(THRESHOLD_PARAM, 0.0f, 1.0f, 0.8f, "threshold"); - configParam(OUTPUT_GAIN_PARAM, 0.0f, 1.0f, 0.0f, "output_gain"); - configParam(KNEE_PARAM, 0.0f, 1.0f, 0.0f, "knee"); + configParam(THRESHOLD_PARAM, 0.0f, 1.0f, 0.8f, "Threshold", " dB", 0.0f, 30.0f, -24.0f); + configParam(OUTPUT_GAIN_PARAM, 0.0f, 1.0f, 0.0f, "Output gain", " dB", 0.0f, 24.0f); + configParam(KNEE_PARAM, 0.0f, 1.0f, 0.0f, "Knee"); onReset(); onSampleRateChange(); diff --git a/src/Manual.hpp b/src/Manual.hpp @@ -37,7 +37,7 @@ struct Manual : TriggerOnLoadModule { rack::dsp::PulseGenerator _pulse; Manual() : TriggerOnLoadModule(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS) { - configParam(TRIGGER_PARAM, 0.0f, 1.0f, 0.0f, "trigger"); + configParam(TRIGGER_PARAM, 0.0f, 1.0f, 0.0f, "Trigger"); _triggerOnLoad = false; onReset(); } diff --git a/src/Matrix88.hpp b/src/Matrix88.hpp @@ -111,71 +111,71 @@ struct Matrix88 : Module { Matrix88() { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); - configParam(MIX11_PARAM, -1.0f, 1.0f, 0.0f, "mix11"); - configParam(MIX21_PARAM, -1.0f, 1.0f, 0.0f, "mix21"); - configParam(MIX31_PARAM, -1.0f, 1.0f, 0.0f, "mix31"); - configParam(MIX41_PARAM, -1.0f, 1.0f, 0.0f, "mix41"); - configParam(MIX51_PARAM, -1.0f, 1.0f, 0.0f, "mix51"); - configParam(MIX61_PARAM, -1.0f, 1.0f, 0.0f, "mix61"); - configParam(MIX71_PARAM, -1.0f, 1.0f, 0.0f, "mix71"); - configParam(MIX81_PARAM, -1.0f, 1.0f, 0.0f, "mix81"); - configParam(MIX12_PARAM, -1.0f, 1.0f, 0.0f, "mix12"); - configParam(MIX22_PARAM, -1.0f, 1.0f, 0.0f, "mix22"); - configParam(MIX32_PARAM, -1.0f, 1.0f, 0.0f, "mix32"); - configParam(MIX42_PARAM, -1.0f, 1.0f, 0.0f, "mix42"); - configParam(MIX52_PARAM, -1.0f, 1.0f, 0.0f, "mix52"); - configParam(MIX62_PARAM, -1.0f, 1.0f, 0.0f, "mix62"); - configParam(MIX72_PARAM, -1.0f, 1.0f, 0.0f, "mix72"); - configParam(MIX82_PARAM, -1.0f, 1.0f, 0.0f, "mix82"); - configParam(MIX13_PARAM, -1.0f, 1.0f, 0.0f, "mix13"); - configParam(MIX23_PARAM, -1.0f, 1.0f, 0.0f, "mix23"); - configParam(MIX33_PARAM, -1.0f, 1.0f, 0.0f, "mix33"); - configParam(MIX43_PARAM, -1.0f, 1.0f, 0.0f, "mix43"); - configParam(MIX53_PARAM, -1.0f, 1.0f, 0.0f, "mix53"); - configParam(MIX63_PARAM, -1.0f, 1.0f, 0.0f, "mix63"); - configParam(MIX73_PARAM, -1.0f, 1.0f, 0.0f, "mix73"); - configParam(MIX83_PARAM, -1.0f, 1.0f, 0.0f, "mix83"); - configParam(MIX14_PARAM, -1.0f, 1.0f, 0.0f, "mix14"); - configParam(MIX24_PARAM, -1.0f, 1.0f, 0.0f, "mix24"); - configParam(MIX34_PARAM, -1.0f, 1.0f, 0.0f, "mix34"); - configParam(MIX44_PARAM, -1.0f, 1.0f, 0.0f, "mix44"); - configParam(MIX54_PARAM, -1.0f, 1.0f, 0.0f, "mix54"); - configParam(MIX64_PARAM, -1.0f, 1.0f, 0.0f, "mix64"); - configParam(MIX74_PARAM, -1.0f, 1.0f, 0.0f, "mix74"); - configParam(MIX84_PARAM, -1.0f, 1.0f, 0.0f, "mix84"); - configParam(MIX15_PARAM, -1.0f, 1.0f, 0.0f, "mix15"); - configParam(MIX25_PARAM, -1.0f, 1.0f, 0.0f, "mix25"); - configParam(MIX35_PARAM, -1.0f, 1.0f, 0.0f, "mix35"); - configParam(MIX45_PARAM, -1.0f, 1.0f, 0.0f, "mix45"); - configParam(MIX55_PARAM, -1.0f, 1.0f, 0.0f, "mix55"); - configParam(MIX65_PARAM, -1.0f, 1.0f, 0.0f, "mix65"); - configParam(MIX75_PARAM, -1.0f, 1.0f, 0.0f, "mix75"); - configParam(MIX85_PARAM, -1.0f, 1.0f, 0.0f, "mix85"); - configParam(MIX16_PARAM, -1.0f, 1.0f, 0.0f, "mix16"); - configParam(MIX26_PARAM, -1.0f, 1.0f, 0.0f, "mix26"); - configParam(MIX36_PARAM, -1.0f, 1.0f, 0.0f, "mix36"); - configParam(MIX46_PARAM, -1.0f, 1.0f, 0.0f, "mix46"); - configParam(MIX56_PARAM, -1.0f, 1.0f, 0.0f, "mix56"); - configParam(MIX66_PARAM, -1.0f, 1.0f, 0.0f, "mix66"); - configParam(MIX76_PARAM, -1.0f, 1.0f, 0.0f, "mix76"); - configParam(MIX86_PARAM, -1.0f, 1.0f, 0.0f, "mix86"); - configParam(MIX17_PARAM, -1.0f, 1.0f, 0.0f, "mix17"); - configParam(MIX27_PARAM, -1.0f, 1.0f, 0.0f, "mix27"); - configParam(MIX37_PARAM, -1.0f, 1.0f, 0.0f, "mix37"); - configParam(MIX47_PARAM, -1.0f, 1.0f, 0.0f, "mix47"); - configParam(MIX57_PARAM, -1.0f, 1.0f, 0.0f, "mix57"); - configParam(MIX67_PARAM, -1.0f, 1.0f, 0.0f, "mix67"); - configParam(MIX77_PARAM, -1.0f, 1.0f, 0.0f, "mix77"); - configParam(MIX87_PARAM, -1.0f, 1.0f, 0.0f, "mix87"); - configParam(MIX18_PARAM, -1.0f, 1.0f, 0.0f, "mix18"); - configParam(MIX28_PARAM, -1.0f, 1.0f, 0.0f, "mix28"); - configParam(MIX38_PARAM, -1.0f, 1.0f, 0.0f, "mix38"); - configParam(MIX48_PARAM, -1.0f, 1.0f, 0.0f, "mix48"); - configParam(MIX58_PARAM, -1.0f, 1.0f, 0.0f, "mix58"); - configParam(MIX68_PARAM, -1.0f, 1.0f, 0.0f, "mix68"); - configParam(MIX78_PARAM, -1.0f, 1.0f, 0.0f, "mix78"); - configParam(MIX88_PARAM, -1.0f, 1.0f, 0.0f, "mix88"); - configParam(LEVEL_PARAM, 0.0f, 1.0f, 1.0f, "level"); + configParam(MIX11_PARAM, -1.0f, 1.0f, 0.0f, "Mix 1 1", "%", 0.0f, 100.0f); + configParam(MIX21_PARAM, -1.0f, 1.0f, 0.0f, "Mix 2 1", "%", 0.0f, 100.0f); + configParam(MIX31_PARAM, -1.0f, 1.0f, 0.0f, "Mix 3 1", "%", 0.0f, 100.0f); + configParam(MIX41_PARAM, -1.0f, 1.0f, 0.0f, "Mix 4 1", "%", 0.0f, 100.0f); + configParam(MIX51_PARAM, -1.0f, 1.0f, 0.0f, "Mix 5 1", "%", 0.0f, 100.0f); + configParam(MIX61_PARAM, -1.0f, 1.0f, 0.0f, "Mix 6 1", "%", 0.0f, 100.0f); + configParam(MIX71_PARAM, -1.0f, 1.0f, 0.0f, "Mix 7 1", "%", 0.0f, 100.0f); + configParam(MIX81_PARAM, -1.0f, 1.0f, 0.0f, "Mix 8 1", "%", 0.0f, 100.0f); + configParam(MIX12_PARAM, -1.0f, 1.0f, 0.0f, "Mix 1 2", "%", 0.0f, 100.0f); + configParam(MIX22_PARAM, -1.0f, 1.0f, 0.0f, "Mix 2 2", "%", 0.0f, 100.0f); + configParam(MIX32_PARAM, -1.0f, 1.0f, 0.0f, "Mix 3 2", "%", 0.0f, 100.0f); + configParam(MIX42_PARAM, -1.0f, 1.0f, 0.0f, "Mix 4 2", "%", 0.0f, 100.0f); + configParam(MIX52_PARAM, -1.0f, 1.0f, 0.0f, "Mix 5 2", "%", 0.0f, 100.0f); + configParam(MIX62_PARAM, -1.0f, 1.0f, 0.0f, "Mix 6 2", "%", 0.0f, 100.0f); + configParam(MIX72_PARAM, -1.0f, 1.0f, 0.0f, "Mix 7 2", "%", 0.0f, 100.0f); + configParam(MIX82_PARAM, -1.0f, 1.0f, 0.0f, "Mix 8 2", "%", 0.0f, 100.0f); + configParam(MIX13_PARAM, -1.0f, 1.0f, 0.0f, "Mix 1 3", "%", 0.0f, 100.0f); + configParam(MIX23_PARAM, -1.0f, 1.0f, 0.0f, "Mix 2 3", "%", 0.0f, 100.0f); + configParam(MIX33_PARAM, -1.0f, 1.0f, 0.0f, "Mix 3 3", "%", 0.0f, 100.0f); + configParam(MIX43_PARAM, -1.0f, 1.0f, 0.0f, "Mix 4 3", "%", 0.0f, 100.0f); + configParam(MIX53_PARAM, -1.0f, 1.0f, 0.0f, "Mix 5 3", "%", 0.0f, 100.0f); + configParam(MIX63_PARAM, -1.0f, 1.0f, 0.0f, "Mix 6 3", "%", 0.0f, 100.0f); + configParam(MIX73_PARAM, -1.0f, 1.0f, 0.0f, "Mix 7 3", "%", 0.0f, 100.0f); + configParam(MIX83_PARAM, -1.0f, 1.0f, 0.0f, "Mix 8 3", "%", 0.0f, 100.0f); + configParam(MIX14_PARAM, -1.0f, 1.0f, 0.0f, "Mix 1 4", "%", 0.0f, 100.0f); + configParam(MIX24_PARAM, -1.0f, 1.0f, 0.0f, "Mix 2 4", "%", 0.0f, 100.0f); + configParam(MIX34_PARAM, -1.0f, 1.0f, 0.0f, "Mix 3 4", "%", 0.0f, 100.0f); + configParam(MIX44_PARAM, -1.0f, 1.0f, 0.0f, "Mix 4 4", "%", 0.0f, 100.0f); + configParam(MIX54_PARAM, -1.0f, 1.0f, 0.0f, "Mix 5 4", "%", 0.0f, 100.0f); + configParam(MIX64_PARAM, -1.0f, 1.0f, 0.0f, "Mix 6 4", "%", 0.0f, 100.0f); + configParam(MIX74_PARAM, -1.0f, 1.0f, 0.0f, "Mix 7 4", "%", 0.0f, 100.0f); + configParam(MIX84_PARAM, -1.0f, 1.0f, 0.0f, "Mix 8 4", "%", 0.0f, 100.0f); + configParam(MIX15_PARAM, -1.0f, 1.0f, 0.0f, "Mix 1 5", "%", 0.0f, 100.0f); + configParam(MIX25_PARAM, -1.0f, 1.0f, 0.0f, "Mix 2 5", "%", 0.0f, 100.0f); + configParam(MIX35_PARAM, -1.0f, 1.0f, 0.0f, "Mix 3 5", "%", 0.0f, 100.0f); + configParam(MIX45_PARAM, -1.0f, 1.0f, 0.0f, "Mix 4 5", "%", 0.0f, 100.0f); + configParam(MIX55_PARAM, -1.0f, 1.0f, 0.0f, "Mix 5 5", "%", 0.0f, 100.0f); + configParam(MIX65_PARAM, -1.0f, 1.0f, 0.0f, "Mix 6 5", "%", 0.0f, 100.0f); + configParam(MIX75_PARAM, -1.0f, 1.0f, 0.0f, "Mix 7 5", "%", 0.0f, 100.0f); + configParam(MIX85_PARAM, -1.0f, 1.0f, 0.0f, "Mix 8 5", "%", 0.0f, 100.0f); + configParam(MIX16_PARAM, -1.0f, 1.0f, 0.0f, "Mix 1 6", "%", 0.0f, 100.0f); + configParam(MIX26_PARAM, -1.0f, 1.0f, 0.0f, "Mix 2 6", "%", 0.0f, 100.0f); + configParam(MIX36_PARAM, -1.0f, 1.0f, 0.0f, "Mix 3 6", "%", 0.0f, 100.0f); + configParam(MIX46_PARAM, -1.0f, 1.0f, 0.0f, "Mix 4 6", "%", 0.0f, 100.0f); + configParam(MIX56_PARAM, -1.0f, 1.0f, 0.0f, "Mix 5 6", "%", 0.0f, 100.0f); + configParam(MIX66_PARAM, -1.0f, 1.0f, 0.0f, "Mix 6 6", "%", 0.0f, 100.0f); + configParam(MIX76_PARAM, -1.0f, 1.0f, 0.0f, "Mix 7 6", "%", 0.0f, 100.0f); + configParam(MIX86_PARAM, -1.0f, 1.0f, 0.0f, "Mix 8 6", "%", 0.0f, 100.0f); + configParam(MIX17_PARAM, -1.0f, 1.0f, 0.0f, "Mix 1 7", "%", 0.0f, 100.0f); + configParam(MIX27_PARAM, -1.0f, 1.0f, 0.0f, "Mix 2 7", "%", 0.0f, 100.0f); + configParam(MIX37_PARAM, -1.0f, 1.0f, 0.0f, "Mix 3 7", "%", 0.0f, 100.0f); + configParam(MIX47_PARAM, -1.0f, 1.0f, 0.0f, "Mix 4 7", "%", 0.0f, 100.0f); + configParam(MIX57_PARAM, -1.0f, 1.0f, 0.0f, "Mix 5 7", "%", 0.0f, 100.0f); + configParam(MIX67_PARAM, -1.0f, 1.0f, 0.0f, "Mix 6 7", "%", 0.0f, 100.0f); + configParam(MIX77_PARAM, -1.0f, 1.0f, 0.0f, "Mix 7 7", "%", 0.0f, 100.0f); + configParam(MIX87_PARAM, -1.0f, 1.0f, 0.0f, "Mix 8 7", "%", 0.0f, 100.0f); + configParam(MIX18_PARAM, -1.0f, 1.0f, 0.0f, "Mix 1 8", "%", 0.0f, 100.0f); + configParam(MIX28_PARAM, -1.0f, 1.0f, 0.0f, "Mix 2 8", "%", 0.0f, 100.0f); + configParam(MIX38_PARAM, -1.0f, 1.0f, 0.0f, "Mix 3 8", "%", 0.0f, 100.0f); + configParam(MIX48_PARAM, -1.0f, 1.0f, 0.0f, "Mix 4 8", "%", 0.0f, 100.0f); + configParam(MIX58_PARAM, -1.0f, 1.0f, 0.0f, "Mix 5 8", "%", 0.0f, 100.0f); + configParam(MIX68_PARAM, -1.0f, 1.0f, 0.0f, "Mix 6 8", "%", 0.0f, 100.0f); + configParam(MIX78_PARAM, -1.0f, 1.0f, 0.0f, "Mix 7 8", "%", 0.0f, 100.0f); + configParam(MIX88_PARAM, -1.0f, 1.0f, 0.0f, "Mix 8 8", "%", 0.0f, 100.0f); + configParam(LEVEL_PARAM, 0.0f, 1.0f, 1.0f, "Level", "%", 0.0f, 100.0f); } void process(const ProcessArgs& args) override; diff --git a/src/Mix1.hpp b/src/Mix1.hpp @@ -37,8 +37,8 @@ struct Mix1 : Module { Mix1() { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); - configParam(LEVEL_PARAM, 0.0f, 1.0f, fabsf(MixerChannel::minDecibels) / (MixerChannel::maxDecibels - MixerChannel::minDecibels), "level"); - configParam(MUTE_PARAM, 0.0f, 1.0f, 0.0f, "mute"); + configParam(LEVEL_PARAM, 0.0f, 1.0f, fabsf(MixerChannel::minDecibels) / (MixerChannel::maxDecibels - MixerChannel::minDecibels), "Level", "dB", 0.0f, MixerChannel::maxDecibels - MixerChannel::minDecibels, MixerChannel::minDecibels); + configParam(MUTE_PARAM, 0.0f, 1.0f, 0.0f, "Mute"); _channel = new MixerChannel( params[LEVEL_PARAM], diff --git a/src/Mix4.hpp b/src/Mix4.hpp @@ -69,20 +69,20 @@ struct Mix4 : Module { Mix4() { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); float levelDefault = fabsf(MixerChannel::minDecibels) / (MixerChannel::maxDecibels - MixerChannel::minDecibels); - configParam(LEVEL1_PARAM, 0.0f, 1.0f, levelDefault, "ch1_level"); - configParam(PAN1_PARAM, -1.0f, 1.0f, 0.0f, "ch1_pan"); - configParam(MUTE1_PARAM, 0.0f, 3.0f, 0.0f, "ch1_mute"); - configParam(LEVEL2_PARAM, 0.0f, 1.0f, levelDefault, "ch2_level"); - configParam(PAN2_PARAM, -1.0f, 1.0f, 0.0f, "ch2_pan"); - configParam(MUTE2_PARAM, 0.0f, 3.0f, 0.0f, "ch2_mute"); - configParam(LEVEL3_PARAM, 0.0f, 1.0f, levelDefault, "ch3_level"); - configParam(PAN3_PARAM, -1.0f, 1.0f, 0.0f, "ch3_pan"); - configParam(MUTE3_PARAM, 0.0f, 3.0f, 0.0f, "ch3_mute"); - configParam(LEVEL4_PARAM, 0.0f, 1.0f, levelDefault, "ch4_level"); - configParam(PAN4_PARAM, -1.0f, 1.0f, 0.0f, "ch4_pan"); - configParam(MUTE4_PARAM, 0.0f, 3.0f, 0.0f, "ch4_mute"); - configParam(MIX_PARAM, 0.0f, 1.0f, levelDefault, "master_level"); - configParam(MIX_MUTE_PARAM, 0.0f, 1.0f, 0.0f, "master_mute"); + configParam(LEVEL1_PARAM, 0.0f, 1.0f, levelDefault, "Channel 1 level", " dB", 0.0f, MixerChannel::maxDecibels - MixerChannel::minDecibels, MixerChannel::minDecibels); + configParam(PAN1_PARAM, -1.0f, 1.0f, 0.0f, "Channel 1 panning", "%", 0.0f, 100.0f); + configParam(MUTE1_PARAM, 0.0f, 3.0f, 0.0f, "Channel 1 mute"); + configParam(LEVEL2_PARAM, 0.0f, 1.0f, levelDefault, "Channel 2 level", " dB", 0.0f, MixerChannel::maxDecibels - MixerChannel::minDecibels, MixerChannel::minDecibels); + configParam(PAN2_PARAM, -1.0f, 1.0f, 0.0f, "Channel 2 panning", "%", 0.0f, 100.0f); + configParam(MUTE2_PARAM, 0.0f, 3.0f, 0.0f, "Channel 2 mute"); + configParam(LEVEL3_PARAM, 0.0f, 1.0f, levelDefault, "Channel 3 level", " dB", 0.0f, MixerChannel::maxDecibels - MixerChannel::minDecibels, MixerChannel::minDecibels); + configParam(PAN3_PARAM, -1.0f, 1.0f, 0.0f, "Channel 3 panning", "%", 0.0f, 100.0f); + configParam(MUTE3_PARAM, 0.0f, 3.0f, 0.0f, "Channel 3 mute"); + configParam(LEVEL4_PARAM, 0.0f, 1.0f, levelDefault, "Channel 4 level", " dB", 0.0f, MixerChannel::maxDecibels - MixerChannel::minDecibels, MixerChannel::minDecibels); + configParam(PAN4_PARAM, -1.0f, 1.0f, 0.0f, "Channel 4 panning", "%", 0.0f, 100.0f); + configParam(MUTE4_PARAM, 0.0f, 3.0f, 0.0f, "Channel 4 mute"); + configParam(MIX_PARAM, 0.0f, 1.0f, levelDefault, "Master level", " dB", 0.0f, MixerChannel::maxDecibels - MixerChannel::minDecibels, MixerChannel::minDecibels); + configParam(MIX_MUTE_PARAM, 0.0f, 1.0f, 0.0f, "Master mute"); _channel1 = new MixerChannel(params[LEVEL1_PARAM], params[PAN1_PARAM], params[MUTE1_PARAM], inputs[IN1_INPUT], inputs[CV1_INPUT], inputs[PAN1_INPUT]); _channel2 = new MixerChannel(params[LEVEL2_PARAM], params[PAN2_PARAM], params[MUTE2_PARAM], inputs[IN2_INPUT], inputs[CV2_INPUT], inputs[PAN2_INPUT]); diff --git a/src/Mix8.hpp b/src/Mix8.hpp @@ -97,32 +97,32 @@ struct Mix8 : Module { Mix8() { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); float levelDefault = fabsf(MixerChannel::minDecibels) / (MixerChannel::maxDecibels - MixerChannel::minDecibels); - configParam(LEVEL1_PARAM, 0.0f, 1.0f, levelDefault, "ch1_level"); - configParam(PAN1_PARAM, -1.0f, 1.0f, 0.0f, "ch1_pan"); - configParam(MUTE1_PARAM, 0.0f, 3.0f, 0.0f, "ch1_mute"); - configParam(LEVEL2_PARAM, 0.0f, 1.0f, levelDefault, "ch2_level"); - configParam(PAN2_PARAM, -1.0f, 1.0f, 0.0f, "ch2_pan"); - configParam(MUTE2_PARAM, 0.0f, 3.0f, 0.0f, "ch2_mute"); - configParam(LEVEL3_PARAM, 0.0f, 1.0f, levelDefault, "ch3_level"); - configParam(PAN3_PARAM, -1.0f, 1.0f, 0.0f, "ch3_pan"); - configParam(MUTE3_PARAM, 0.0f, 3.0f, 0.0f, "ch3_mute"); - configParam(LEVEL4_PARAM, 0.0f, 1.0f, levelDefault, "ch4_level"); - configParam(PAN4_PARAM, -1.0f, 1.0f, 0.0f, "ch4_pan"); - configParam(MUTE4_PARAM, 0.0f, 3.0f, 0.0f, "ch4_mute"); - configParam(LEVEL5_PARAM, 0.0f, 1.0f, levelDefault, "ch5_level"); - configParam(PAN5_PARAM, -1.0f, 1.0f, 0.0f, "ch5_pan"); - configParam(MUTE5_PARAM, 0.0f, 3.0f, 0.0f, "ch5_mute"); - configParam(LEVEL6_PARAM, 0.0f, 1.0f, levelDefault, "ch6_level"); - configParam(PAN6_PARAM, -1.0f, 1.0f, 0.0f, "ch6_pan"); - configParam(MUTE6_PARAM, 0.0f, 3.0f, 0.0f, "ch6_mute"); - configParam(LEVEL7_PARAM, 0.0f, 1.0f, levelDefault, "ch7_level"); - configParam(PAN7_PARAM, -1.0f, 1.0f, 0.0f, "ch7_pan"); - configParam(MUTE7_PARAM, 0.0f, 3.0f, 0.0f, "ch7_mute"); - configParam(LEVEL8_PARAM, 0.0f, 1.0f, levelDefault, "ch8_level"); - configParam(PAN8_PARAM, -1.0f, 1.0f, 0.0f, "ch8_pan"); - configParam(MUTE8_PARAM, 0.0f, 3.0f, 0.0f, "ch8_mute"); - configParam(MIX_PARAM, 0.0f, 1.0f, levelDefault, "master_level"); - configParam(MIX_MUTE_PARAM, 0.0f, 1.0f, 0.0f, "master_mute"); + configParam(LEVEL1_PARAM, 0.0f, 1.0f, levelDefault, "Channel 1 level", " dB", 0.0f, MixerChannel::maxDecibels - MixerChannel::minDecibels, MixerChannel::minDecibels); + configParam(PAN1_PARAM, -1.0f, 1.0f, 0.0f, "Channel 1 panning", "%", 0.0f, 100.0f); + configParam(MUTE1_PARAM, 0.0f, 3.0f, 0.0f, "Channel 1 mute"); + configParam(LEVEL2_PARAM, 0.0f, 1.0f, levelDefault, "Channel 2 level", " dB", 0.0f, MixerChannel::maxDecibels - MixerChannel::minDecibels, MixerChannel::minDecibels); + configParam(PAN2_PARAM, -1.0f, 1.0f, 0.0f, "Channel 2 panning", "%", 0.0f, 100.0f); + configParam(MUTE2_PARAM, 0.0f, 3.0f, 0.0f, "Channel 2 mute"); + configParam(LEVEL3_PARAM, 0.0f, 1.0f, levelDefault, "Channel 3 level", " dB", 0.0f, MixerChannel::maxDecibels - MixerChannel::minDecibels, MixerChannel::minDecibels); + configParam(PAN3_PARAM, -1.0f, 1.0f, 0.0f, "Channel 3 panning", "%", 0.0f, 100.0f); + configParam(MUTE3_PARAM, 0.0f, 3.0f, 0.0f, "Channel 3 mute"); + configParam(LEVEL4_PARAM, 0.0f, 1.0f, levelDefault, "Channel 4 level", " dB", 0.0f, MixerChannel::maxDecibels - MixerChannel::minDecibels, MixerChannel::minDecibels); + configParam(PAN4_PARAM, -1.0f, 1.0f, 0.0f, "Channel 4 panning", "%", 0.0f, 100.0f); + configParam(MUTE4_PARAM, 0.0f, 3.0f, 0.0f, "Channel 4 mute"); + configParam(LEVEL5_PARAM, 0.0f, 1.0f, levelDefault, "Channel 5 level", " dB", 0.0f, MixerChannel::maxDecibels - MixerChannel::minDecibels, MixerChannel::minDecibels); + configParam(PAN5_PARAM, -1.0f, 1.0f, 0.0f, "Channel 5 panning", "%", 0.0f, 100.0f); + configParam(MUTE5_PARAM, 0.0f, 3.0f, 0.0f, "Channel 5 mute"); + configParam(LEVEL6_PARAM, 0.0f, 1.0f, levelDefault, "Channel 6 level", " dB", 0.0f, MixerChannel::maxDecibels - MixerChannel::minDecibels, MixerChannel::minDecibels); + configParam(PAN6_PARAM, -1.0f, 1.0f, 0.0f, "Channel 6 panning", "%", 0.0f, 100.0f); + configParam(MUTE6_PARAM, 0.0f, 3.0f, 0.0f, "Channel 6 mute"); + configParam(LEVEL7_PARAM, 0.0f, 1.0f, levelDefault, "Channel 7 level", " dB", 0.0f, MixerChannel::maxDecibels - MixerChannel::minDecibels, MixerChannel::minDecibels); + configParam(PAN7_PARAM, -1.0f, 1.0f, 0.0f, "Channel 7 panning", "%", 0.0f, 100.0f); + configParam(MUTE7_PARAM, 0.0f, 3.0f, 0.0f, "Channel 7 mute"); + configParam(LEVEL8_PARAM, 0.0f, 1.0f, levelDefault, "Channel 8 level", " dB", 0.0f, MixerChannel::maxDecibels - MixerChannel::minDecibels, MixerChannel::minDecibels); + configParam(PAN8_PARAM, -1.0f, 1.0f, 0.0f, "Channel 8 panning", "%", 0.0f, 100.0f); + configParam(MUTE8_PARAM, 0.0f, 3.0f, 0.0f, "Channel 8 mute"); + configParam(MIX_PARAM, 0.0f, 1.0f, levelDefault, "Master level", " dB", 0.0f, MixerChannel::maxDecibels - MixerChannel::minDecibels, MixerChannel::minDecibels); + configParam(MIX_MUTE_PARAM, 0.0f, 1.0f, 0.0f, "Master mute"); _channel1 = new MixerChannel(params[LEVEL1_PARAM], params[PAN1_PARAM], params[MUTE1_PARAM], inputs[IN1_INPUT], inputs[CV1_INPUT], inputs[PAN1_INPUT]); _channel2 = new MixerChannel(params[LEVEL2_PARAM], params[PAN2_PARAM], params[MUTE2_PARAM], inputs[IN2_INPUT], inputs[CV2_INPUT], inputs[PAN2_INPUT]); diff --git a/src/Mute8.hpp b/src/Mute8.hpp @@ -76,14 +76,14 @@ struct Mute8 : Module { Mute8() { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); - configParam(MUTE1_PARAM, 0.0f, 3.0f, 0.0f, "mute1"); - configParam(MUTE2_PARAM, 0.0f, 3.0f, 0.0f, "mute2"); - configParam(MUTE3_PARAM, 0.0f, 3.0f, 0.0f, "mute3"); - configParam(MUTE4_PARAM, 0.0f, 3.0f, 0.0f, "mute4"); - configParam(MUTE5_PARAM, 0.0f, 3.0f, 0.0f, "mute5"); - configParam(MUTE6_PARAM, 0.0f, 3.0f, 0.0f, "mute6"); - configParam(MUTE7_PARAM, 0.0f, 3.0f, 0.0f, "mute7"); - configParam(MUTE8_PARAM, 0.0f, 3.0f, 0.0f, "mute8"); + configParam(MUTE1_PARAM, 0.0f, 3.0f, 0.0f, "Mute 1"); + configParam(MUTE2_PARAM, 0.0f, 3.0f, 0.0f, "Mute 2"); + configParam(MUTE3_PARAM, 0.0f, 3.0f, 0.0f, "Mute 3"); + configParam(MUTE4_PARAM, 0.0f, 3.0f, 0.0f, "Mute 4"); + configParam(MUTE5_PARAM, 0.0f, 3.0f, 0.0f, "Mute 5"); + configParam(MUTE6_PARAM, 0.0f, 3.0f, 0.0f, "Mute 6"); + configParam(MUTE7_PARAM, 0.0f, 3.0f, 0.0f, "Mute 7"); + configParam(MUTE8_PARAM, 0.0f, 3.0f, 0.0f, "Mute 8"); onReset(); onSampleRateChange(); diff --git a/src/Nsgt.hpp b/src/Nsgt.hpp @@ -52,9 +52,9 @@ struct Nsgt : Module { Nsgt() { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); - configParam(THRESHOLD_PARAM, 0.0f, 1.0f, 0.8f, "threshold"); + configParam(THRESHOLD_PARAM, 0.0f, 1.0f, 0.8f, "Threshold", " dB", 0.0f, 30.0f, -24.0f); configParam(RATIO_PARAM, 0.0f, 1.0f, 0.552f, "ratio"); - configParam(KNEE_PARAM, 0.0f, 1.0f, 1.0f, "knee"); + configParam(KNEE_PARAM, 0.0f, 1.0f, 1.0f, "Knee"); onReset(); onSampleRateChange(); diff --git a/src/Offset.hpp b/src/Offset.hpp @@ -27,8 +27,8 @@ struct Offset : DisableOutputLimitModule { }; Offset() : DisableOutputLimitModule(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS) { - configParam(OFFSET_PARAM, -1.0f, 1.0f, 0.0f, "offset"); - configParam(SCALE_PARAM, -1.0f, 1.0f, 0.316f, "scale"); + configParam(OFFSET_PARAM, -1.0f, 1.0f, 0.0f, "Offset", "V", 0.0f, 5.0f); + configParam(SCALE_PARAM, -1.0f, 1.0f, 0.316f, "Scale", "%", 0.0f, 100.0f); } void process(const ProcessArgs& args) override; diff --git a/src/OneEight.hpp b/src/OneEight.hpp @@ -58,9 +58,9 @@ struct OneEight : Module { OneEight() { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); - configParam(STEPS_PARAM, 1.0f, 8.0f, 8.0f, "steps"); - configParam(DIRECTION_PARAM, 0.0f, 1.0f, 1.0f, "direction"); - configParam(SELECT_PARAM, 0.0f, 7.0f, 0.0f, "select"); + configParam(STEPS_PARAM, 1.0f, 8.0f, 8.0f, "Steps"); + configParam(DIRECTION_PARAM, 0.0f, 1.0f, 1.0f, "Direction"); + configParam(SELECT_PARAM, 0.0f, 7.0f, 0.0f, "Select step"); onReset(); onSampleRateChange(); diff --git a/src/Pan.hpp b/src/Pan.hpp @@ -43,8 +43,8 @@ struct Pan : Module { Pan() { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); - configParam(PAN1_PARAM, -1.0f, 1.0f, 0.0f, "pan1"); - configParam(PAN2_PARAM, -1.0f, 1.0f, 0.0f, "pan2"); + configParam(PAN1_PARAM, -1.0f, 1.0f, 0.0f, "Panning 1", "%", 0.0f, 100.0f); + configParam(PAN2_PARAM, -1.0f, 1.0f, 0.0f, "Panning 2", "%", 0.0f, 100.0f); onSampleRateChange(); } diff --git a/src/Pressor.hpp b/src/Pressor.hpp @@ -76,16 +76,16 @@ struct Pressor : Module { : _detectorRMS(1000.0f, 1.0f, 50.0f) { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); - configParam(THRESHOLD_PARAM, 0.0f, 1.0f, 0.8f, "threshold"); + configParam(THRESHOLD_PARAM, 0.0f, 1.0f, 0.8f, "Threshold", " dB", 0.0f, 30.0f, -24.0f); configParam(RATIO_PARAM, 0.0f, 1.0f, 0.552f, "ratio"); configParam(ATTACK_PARAM, 0.0f, 1.0f, 0.316f, "attack"); configParam(RELEASE_PARAM, 0.0f, 1.0f, 0.316f, "release"); - configParam(OUTPUT_GAIN_PARAM, 0.0f, 1.0f, 0.0f, "output_gain"); - configParam(INPUT_GAIN_PARAM, -1.0f, 1.0f, 0.0f, "input_gain"); - configParam(DETECTOR_MIX_PARAM, -1.0f, 1.0f, 0.0f, "detector_mix"); - configParam(MODE_PARAM, 0.0f, 1.0f, 1.0f, "mode"); - configParam(DECTECTOR_MODE_PARAM, 0.0f, 1.0f, 1.0f, "dectector_mode"); - configParam(KNEE_PARAM, 0.0f, 1.0f, 1.0f, "knee"); + configParam(OUTPUT_GAIN_PARAM, 0.0f, 1.0f, 0.0f, "Output gain", " dB", 0.0f, 24.0f); + configParam(INPUT_GAIN_PARAM, -1.0f, 1.0f, 0.0f, "Input gain", " dB", 0.0f, 12.0f); + configParam(DETECTOR_MIX_PARAM, -1.0f, 1.0f, 0.0f, "Detector mix", "%", 0.0f, 100.0f); + configParam(MODE_PARAM, 0.0f, 1.0f, 1.0f, "Mode"); + configParam(DECTECTOR_MODE_PARAM, 0.0f, 1.0f, 1.0f, "Dectector mode"); + configParam(KNEE_PARAM, 0.0f, 1.0f, 1.0f, "Knee"); onReset(); onSampleRateChange(); diff --git a/src/Reftone.hpp b/src/Reftone.hpp @@ -41,9 +41,9 @@ struct Reftone : Module { Reftone() { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); - configParam(PITCH_PARAM, 0.0f, 11.0f, 9.0f, "pitch"); - configParam(OCTAVE_PARAM, 1.0f, 8.0f, 4.0f, "octave"); - configParam(FINE_PARAM, -0.99f, 0.99f, 0.0f, "fine"); + configParam(PITCH_PARAM, 0.0f, 11.0f, 9.0f, "Pitch"); + configParam(OCTAVE_PARAM, 1.0f, 8.0f, 4.0f, "Octave"); + configParam(FINE_PARAM, -0.99f, 0.99f, 0.0f, "Fine tune", " cents", 0.0f, 100.0f); onSampleRateChange(); } diff --git a/src/SampleHold.hpp b/src/SampleHold.hpp @@ -47,10 +47,10 @@ struct SampleHold : Module { , _value2(0.0f) { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); - configParam(TRIGGER1_PARAM, 0.0f, 1.0f, 0.0f, "trigger1"); - configParam(TRIGGER2_PARAM, 0.0f, 1.0f, 0.0f, "trigger2"); - configParam(TRACK1_PARAM, 0.0f, 1.0f, 0.0f, "track1"); - configParam(TRACK2_PARAM, 0.0f, 1.0f, 0.0f, "track2"); + configParam(TRIGGER1_PARAM, 0.0f, 1.0f, 0.0f, "Trigger 1"); + configParam(TRIGGER2_PARAM, 0.0f, 1.0f, 0.0f, "Trigger 2"); + configParam(TRACK1_PARAM, 0.0f, 1.0f, 0.0f, "Track 1"); + configParam(TRACK2_PARAM, 0.0f, 1.0f, 0.0f, "Track 2"); onReset(); } diff --git a/src/Shaper.hpp b/src/Shaper.hpp @@ -93,11 +93,11 @@ struct Shaper : TriggerOnLoadModule { configParam(ON_PARAM, 0.0f, 1.0f, 0.32f, "on"); configParam(DECAY_PARAM, 0.0f, 1.0f, 0.32f, "decay"); configParam(OFF_PARAM, 0.0f, 1.0f, 0.07f, "off"); - configParam(ENV_PARAM, 0.0f, 1.0f, 1.0f, "env"); - configParam(SIGNAL_PARAM, 0.0f, 1.0f, 0.1f, "signal"); - configParam(TRIGGER_PARAM, 0.0f, 1.0f, 0.0f, "trigger"); - configParam(SPEED_PARAM, 0.0f, 1.0f, 1.0f, "speed"); - configParam(LOOP_PARAM, 0.0f, 1.0f, 1.0f, "loop"); + configParam(ENV_PARAM, 0.0f, 1.0f, 1.0f, "Env", "%", 0.0f, 100.0f); + configParam(SIGNAL_PARAM, 0.0f, 1.0f, 0.1f, "Signal", "x", 10.0f); + configParam(TRIGGER_PARAM, 0.0f, 1.0f, 0.0f, "Trigger"); + configParam(SPEED_PARAM, 0.0f, 1.0f, 1.0f, "Speed"); + configParam(LOOP_PARAM, 0.0f, 1.0f, 1.0f, "Loop"); onReset(); } diff --git a/src/ShaperPlus.hpp b/src/ShaperPlus.hpp @@ -100,11 +100,11 @@ struct ShaperPlus : TriggerOnLoadModule { configParam(ON_PARAM, 0.0f, 1.0f, 0.32f, "on"); configParam(DECAY_PARAM, 0.0f, 1.0f, 0.32f, "decay"); configParam(OFF_PARAM, 0.0f, 1.0f, 0.07f, "off"); - configParam(ENV_PARAM, 0.0f, 1.0f, 1.0f, "env"); - configParam(SIGNAL_PARAM, 0.0f, 1.0f, 0.1f, "signal"); - configParam(TRIGGER_PARAM, 0.0f, 1.0f, 0.0f, "trigger"); - configParam(SPEED_PARAM, 0.0f, 1.0f, 1.0f, "speed"); - configParam(LOOP_PARAM, 0.0f, 1.0f, 1.0f, "loop"); + configParam(ENV_PARAM, 0.0f, 1.0f, 1.0f, "Env", "%", 0.0f, 100.0f); + configParam(SIGNAL_PARAM, 0.0f, 1.0f, 0.1f, "Signal", "x", 10.0f); + configParam(TRIGGER_PARAM, 0.0f, 1.0f, 0.0f, "Trigger"); + configParam(SPEED_PARAM, 0.0f, 1.0f, 1.0f, "Speed"); + configParam(LOOP_PARAM, 0.0f, 1.0f, 1.0f, "Loop"); onReset(); } diff --git a/src/Stack.hpp b/src/Stack.hpp @@ -45,10 +45,10 @@ struct Stack : Module { Stack() { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); - configParam(SEMIS_PARAM, 0.0f, 11.0f, 0.0f, "semis"); - configParam(OCTAVE_PARAM, -3.0f, 3.0f, 0.0f, "octave"); - configParam(FINE_PARAM, -0.99f, 0.99f, 0.0f, "fine"); - configParam(QUANTIZE_PARAM, 0.0f, 1.0f, 1.0f, "quantize"); + configParam(SEMIS_PARAM, 0.0f, 11.0f, 0.0f, "Semitones"); + configParam(OCTAVE_PARAM, -3.0f, 3.0f, 0.0f, "Octaves"); + configParam(FINE_PARAM, -0.99f, 0.99f, 0.0f, "Fine tune", " cents", 0.0f, 100.0f); + configParam(QUANTIZE_PARAM, 0.0f, 1.0f, 1.0f, "Quantize"); } void process(const ProcessArgs& args) override; diff --git a/src/Switch.hpp b/src/Switch.hpp @@ -38,8 +38,8 @@ struct Switch : Module { Switch() { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); - configParam(GATE_PARAM, 0.0f, 10.0f, 0.0f, "gate"); - configParam(LATCH_PARAM, 0.0f, 1.0f, 0.0f, "latch"); + configParam(GATE_PARAM, 0.0f, 10.0f, 0.0f, "Gate"); + configParam(LATCH_PARAM, 0.0f, 1.0f, 0.0f, "Latch"); onReset(); } diff --git a/src/UMix.hpp b/src/UMix.hpp @@ -42,7 +42,7 @@ struct UMix : Module { UMix() { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); - configParam(LEVEL_PARAM, 0.0f, 1.0f, 1.0f, "level"); + configParam(LEVEL_PARAM, 0.0f, 1.0f, 1.0f, "Level", "%", 0.0f, 100.0f); } json_t* dataToJson() override; diff --git a/src/VCAmp.hpp b/src/VCAmp.hpp @@ -40,7 +40,7 @@ struct VCAmp : Module { VCAmp() { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); - configParam(LEVEL_PARAM, 0.0f, 1.0f, fabs(minDecibels) / (maxDecibels - minDecibels), "level"); + configParam(LEVEL_PARAM, 0.0f, 1.0f, fabs(minDecibels) / (maxDecibels - minDecibels), "Level", " dB", 0.0f, maxDecibels - minDecibels, minDecibels); onSampleRateChange(); _rms.setSensitivity(0.05f); diff --git a/src/VCO.hpp b/src/VCO.hpp @@ -3,6 +3,7 @@ #include "bogaudio.hpp" #include "dsp/filter.hpp" #include "dsp/oscillator.hpp" +#include "dsp/pitch.hpp" #include "dsp/signal.hpp" using namespace bogaudio::dsp; @@ -71,12 +72,12 @@ struct VCO : Module { VCO() { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); - configParam(FREQUENCY_PARAM, -3.0f, 6.0f, 0.0f, "frequency"); - configParam(FINE_PARAM, -1.0f, 1.0f, 0.0f, "fine"); - configParam(SLOW_PARAM, 0.0f, 1.0f, 0.0f, "slow"); - configParam(PW_PARAM, -1.0f, 1.0f, 0.0f, "pw"); - configParam(FM_PARAM, 0.0f, 1.0f, 0.0f, "fm"); - configParam(FM_TYPE_PARAM, 0.0f, 1.0f, 1.0f, "fm_type"); + configParam(FREQUENCY_PARAM, -3.0f, 6.0f, 0.0f, "Frequency", " Hz", 2.0f, referenceFrequency); + configParam(FINE_PARAM, -1.0f, 1.0f, 0.0f, "Fine tune", " cents", 0.0f, 100.0f); + configParam(SLOW_PARAM, 0.0f, 1.0f, 0.0f, "Slow mode"); + configParam(PW_PARAM, -1.0f, 1.0f, 0.0f, "Pulse width", "%", 0.0f, 100.0f*0.5f*(1.0f - 2.0f * _square.minPulseWidth), 50.0f); + configParam(FM_PARAM, 0.0f, 1.0f, 0.0f, "FM depth", "%", 0.0f, 100.0f); + configParam(FM_TYPE_PARAM, 0.0f, 1.0f, 1.0f, "FM mode"); onReset(); setSampleRate(APP->engine->getSampleRate()); diff --git a/src/Walk.hpp b/src/Walk.hpp @@ -45,9 +45,9 @@ struct Walk : Module { Walk() { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); - configParam(RATE_PARAM, 0.0f, 1.0f, 0.1f, "rate"); - configParam(OFFSET_PARAM, -1.0f, 1.0f, 0.0f, "offset"); - configParam(SCALE_PARAM, 0.0f, 1.0f, 1.0f, "scale"); + configParam(RATE_PARAM, 0.0f, 1.0f, 0.1f, "Rate", "%", 0.0f, 100.0f); + configParam(OFFSET_PARAM, -1.0f, 1.0f, 0.0f, "Offset", "V", 0.0f, 5.0f); + configParam(SCALE_PARAM, 0.0f, 1.0f, 1.0f, "Scale", "%", 0.0f, 100.0f); onReset(); } diff --git a/src/Walk2.hpp b/src/Walk2.hpp @@ -78,12 +78,12 @@ struct Walk2 : Module { , _jumpTo(NULL) { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); - configParam(RATE_X_PARAM, 0.0f, 1.0f, 0.1f, "rate_x"); - configParam(RATE_Y_PARAM, 0.0f, 1.0f, 0.1f, "rate_y"); - configParam(OFFSET_X_PARAM, -1.0f, 1.0f, 0.0f, "offset_x"); - configParam(OFFSET_Y_PARAM, -1.0f, 1.0f, 0.0f, "offset_y"); - configParam(SCALE_X_PARAM, 0.0f, 1.0f, 1.0f, "scale_x"); - configParam(SCALE_Y_PARAM, 0.0f, 1.0f, 1.0f, "scale_y"); + configParam(RATE_X_PARAM, 0.0f, 1.0f, 0.1f, "Rate X", "%", 0.0f, 100.0f); + configParam(RATE_Y_PARAM, 0.0f, 1.0f, 0.1f, "Rate Y", "%", 0.0f, 100.0f); + configParam(OFFSET_X_PARAM, -1.0f, 1.0f, 0.0f, "Offset X", "V", 0.0f, 5.0f); + configParam(OFFSET_Y_PARAM, -1.0f, 1.0f, 0.0f, "Offset Y", "V", 0.0f, 5.0f); + configParam(SCALE_X_PARAM, 0.0f, 1.0f, 1.0f, "Scale X", "%", 0.0f, 100.0f); + configParam(SCALE_Y_PARAM, 0.0f, 1.0f, 1.0f, "Scale Y", "%", 0.0f, 100.0f); onReset(); onSampleRateChange(); diff --git a/src/XCO.hpp b/src/XCO.hpp @@ -3,6 +3,7 @@ #include "bogaudio.hpp" #include "dsp/filter.hpp" #include "dsp/oscillator.hpp" +#include "dsp/pitch.hpp" #include "dsp/signal.hpp" using namespace bogaudio::dsp; @@ -119,23 +120,23 @@ struct XCO : Module { XCO() { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); - configParam(FREQUENCY_PARAM, -3.0f, 6.0f, 0.0f, "frequency"); - configParam(FINE_PARAM, -1.0f, 1.0f, 0.0f, "fine"); - configParam(SLOW_PARAM, 0.0f, 1.0f, 0.0f, "slow"); - configParam(FM_DEPTH_PARAM, 0.0f, 1.0f, 0.0f, "fm_depth"); - configParam(FM_TYPE_PARAM, 0.0f, 1.0f, 1.0f, "fm_type"); - configParam(SQUARE_PW_PARAM, -0.97f, 0.97f, 0.0f, "square_pw"); - configParam(SQUARE_PHASE_PARAM, -1.0f, 1.0f, 0.0f, "square_phase"); - configParam(SQUARE_MIX_PARAM, 0.0f, 1.0f, 1.0f, "square_mix"); - configParam(SAW_SATURATION_PARAM, 0.0f, 1.0f, 0.0f, "saw_saturation"); - configParam(SAW_PHASE_PARAM, -1.0f, 1.0f, 0.0f, "saw_phase"); - configParam(SAW_MIX_PARAM, 0.0f, 1.0f, 1.0f, "saw_mix"); - configParam(TRIANGLE_SAMPLE_PARAM, 0.0f, 1.0f, 0.0f, "triangle_sample"); - configParam(TRIANGLE_PHASE_PARAM, -1.0f, 1.0f, 0.0f, "triangle_phase"); - configParam(TRIANGLE_MIX_PARAM, 0.0f, 1.0f, 1.0f, "triangle_mix"); - configParam(SINE_FEEDBACK_PARAM, 0.0f, 1.0f, 0.0f, "sine_feedback"); - configParam(SINE_PHASE_PARAM, -1.0f, 1.0f, 0.0f, "sine_phase"); - configParam(SINE_MIX_PARAM, 0.0f, 1.0f, 1.0f, "sine_mix"); + configParam(FREQUENCY_PARAM, -3.0f, 6.0f, 0.0f, "Frequency", " Hz", 2.0f, referenceFrequency); + configParam(FINE_PARAM, -1.0f, 1.0f, 0.0f, "Fine tune", " cents", 0.0f, 100.0f); + configParam(SLOW_PARAM, 0.0f, 1.0f, 0.0f, "Slow mode"); + configParam(FM_DEPTH_PARAM, 0.0f, 1.0f, 0.0f, "FM depth", "%", 0.0f, 100.0f); + configParam(FM_TYPE_PARAM, 0.0f, 1.0f, 1.0f, "FM mode"); + configParam(SQUARE_PW_PARAM, -0.97f, 0.97f, 0.0f, "Square wave pulse width", "%", 0.0f, 100.0f); + configParam(SQUARE_PHASE_PARAM, -1.0f, 1.0f, 0.0f, "Square wave phase", "º", 0.0f, 180.0f); + configParam(SQUARE_MIX_PARAM, 0.0f, 1.0f, 1.0f, "Square wave mix", "%", 0.0f, 100.0f); + configParam(SAW_SATURATION_PARAM, 0.0f, 1.0f, 0.0f, "Saw wave saturation", "%", 0.0f, 100.0f); + configParam(SAW_PHASE_PARAM, -1.0f, 1.0f, 0.0f, "Saw wave phase", "º", 0.0f, 180.0f); + configParam(SAW_MIX_PARAM, 0.0f, 1.0f, 1.0f, "Saw wave mix", "%", 0.0f, 100.0f); + configParam(TRIANGLE_SAMPLE_PARAM, 0.0f, 1.0f, 0.0f, "Triangle wave sampling", "%", 0.0f, 100.0f); + configParam(TRIANGLE_PHASE_PARAM, -1.0f, 1.0f, 0.0f, "Triangle wave phase", "º", 0.0f, 180.0f); + configParam(TRIANGLE_MIX_PARAM, 0.0f, 1.0f, 1.0f, "Triangle wave mix", "%", 0.0f, 100.0f); + configParam(SINE_FEEDBACK_PARAM, 0.0f, 1.0f, 0.0f, "Sine wave feedback", "%", 0.0f, 100.0f); + configParam(SINE_PHASE_PARAM, -1.0f, 1.0f, 0.0f, "Sine wave phase", "º", 0.0f, 180.0f); + configParam(SINE_MIX_PARAM, 0.0f, 1.0f, 1.0f, "Sine wave mix", "%", 0.0f, 100.0f); onReset(); setSampleRate(APP->engine->getSampleRate()); diff --git a/src/XFade.hpp b/src/XFade.hpp @@ -42,9 +42,9 @@ struct XFade : Module { XFade() { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); - configParam(MIX_PARAM, -1.0f, 1.0f, 0.0f, "mix"); - configParam(CURVE_PARAM, 0.0f, 1.0f, 0.5f, "curve"); - configParam(LINEAR_PARAM, 0.0f, 1.0f, 0.0f, "linear"); + configParam(MIX_PARAM, -1.0f, 1.0f, 0.0f, "Mix", "%", 0.0f, 100.0f); + configParam(CURVE_PARAM, 0.0f, 1.0f, 0.5f, "Curve"); + configParam(LINEAR_PARAM, 0.0f, 1.0f, 0.0f, "Linear"); onSampleRateChange(); }