From 3d7a74f166fabd5ae015fa2151412e0ea4ece811 Mon Sep 17 00:00:00 2001 From: falkTX Date: Tue, 7 Dec 2021 19:16:59 +0000 Subject: [PATCH] Add labels for inputs and outputs, add bypass config Based on https://github.com/n0jo/rackwindows/pull/13 Signed-off-by: falkTX --- src/bitshiftgain.cpp | 10 +++++++++- src/capacitor.cpp | 7 +++++++ src/capacitor_stereo.cpp | 15 ++++++++++++++- src/chorus.cpp | 12 +++++++++++- src/console.cpp | 13 +++++++++++++ src/console_mm.cpp | 9 +++++++++ src/distance.cpp | 7 +++++++ src/golem.cpp | 11 ++++++++++- src/holt.cpp | 9 +++++++++ src/hombre.cpp | 7 +++++++ src/interstage.cpp | 8 ++++++++ src/monitoring.cpp | 10 +++++++++- src/mv.cpp | 12 ++++++++++++ src/rasp.cpp | 9 +++++++++ src/reseq.cpp | 10 ++++++++++ src/tape.cpp | 10 ++++++++++ src/tremolo.cpp | 8 ++++++++ src/vibrato.cpp | 12 ++++++++++++ 18 files changed, 174 insertions(+), 5 deletions(-) diff --git a/src/bitshiftgain.cpp b/src/bitshiftgain.cpp index eef630e..72bb186 100644 --- a/src/bitshiftgain.cpp +++ b/src/bitshiftgain.cpp @@ -52,7 +52,15 @@ struct Bitshiftgain : Module { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); configParam(SHIFT_A_PARAM, -8.0, 8.0, 0.0, "Shift"); configParam(SHIFT_B_PARAM, -8.0, 8.0, 0.0, "Shift/Offset"); - configParam(LINK_PARAM, 0.f, 1.f, 0.0, "Link"); + configSwitch(LINK_PARAM, 0.f, 1.f, 0.0, "Link", {"Not linked", "Linked"}); + + configInput(IN_A_INPUT, "Signal A"); + configInput(IN_B_INPUT, "Signal B"); + configOutput(OUT_A_OUTPUT, "Signal A"); + configOutput(OUT_B_OUTPUT, "Signal B"); + + configBypass(IN_A_INPUT, OUT_A_OUTPUT); + configBypass(IN_B_INPUT, OUT_B_OUTPUT); onReset(); } diff --git a/src/capacitor.cpp b/src/capacitor.cpp index 8cdf9e6..62987b4 100644 --- a/src/capacitor.cpp +++ b/src/capacitor.cpp @@ -75,6 +75,13 @@ struct Capacitor : Module { configParam(LOWPASS_PARAM, 0.f, 1.f, 1.f, "Lowpass"); configParam(HIGHPASS_PARAM, 0.f, 1.f, 0.f, "Highpass"); + configInput(LOWPASS_CV_INPUT, "Lowpass CV"); + configInput(HIGHPASS_CV_INPUT, "Highpass CV"); + configInput(IN_INPUT, "Signal"); + configOutput(OUT_OUTPUT, "Signal"); + + configBypass(IN_INPUT, OUT_OUTPUT); + onReset(); } diff --git a/src/capacitor_stereo.cpp b/src/capacitor_stereo.cpp index 5b35415..1619cb7 100644 --- a/src/capacitor_stereo.cpp +++ b/src/capacitor_stereo.cpp @@ -96,7 +96,20 @@ struct Capacitor_stereo : Module { configParam(HIGHPASS_L_PARAM, 0.f, 1.f, 0.f, "Highpass L"); configParam(HIGHPASS_R_PARAM, 0.f, 1.f, 0.f, "Highpass R"); configParam(DRYWET_PARAM, 0.f, 1.f, 1.f, "Dry/Wet"); - configParam(LINK_PARAM, 0.f, 1.f, 1.f, "Link"); + configSwitch(LINK_PARAM, 0.f, 1.f, 1.f, "Link", {"Not linked", "Linked"}); + + configInput(LOWPASS_CV_L_INPUT, "Lowpass L CV"); + configInput(LOWPASS_CV_R_INPUT, "Lowpass R CV"); + configInput(HIGHPASS_CV_L_INPUT, "Highpass L CV"); + configInput(HIGHPASS_CV_R_INPUT, "Highpass R CV"); + configInput(DRYWET_CV_INPUT, "Dry/wet CV"); + configInput(IN_L_INPUT, "Signal L"); + configInput(IN_R_INPUT, "Signal R"); + configOutput(OUT_L_OUTPUT, "Signal L"); + configOutput(OUT_R_OUTPUT, "Signal R"); + + configBypass(IN_L_INPUT, OUT_L_OUTPUT); + configBypass(IN_R_INPUT, OUT_R_OUTPUT); isLinked = true; onReset(); diff --git a/src/chorus.cpp b/src/chorus.cpp index 55a15fd..236fee6 100644 --- a/src/chorus.cpp +++ b/src/chorus.cpp @@ -79,7 +79,17 @@ struct Chorus : Module { configParam(SPEED_PARAM, 0.f, 1.f, 0.5f, "Speed"); configParam(RANGE_PARAM, 0.f, 1.f, 0.f, "Range"); configParam(DRYWET_PARAM, 0.f, 1.f, 1.f, "Dry/Wet"); - configParam(ENSEMBLE_PARAM, 0.f, 1.f, 0.f, "Ensemble"); + configSwitch(ENSEMBLE_PARAM, 0.f, 1.f, 0.f, "Ensemble", {"Off", "On"}); + + configInput(SPEED_CV_INPUT, "Speed CV"); + configInput(RANGE_CV_INPUT, "Range CV"); + configInput(IN_L_INPUT, "Signal L"); + configInput(IN_R_INPUT, "Signal R"); + configOutput(OUT_L_OUTPUT, "Signal L"); + configOutput(OUT_R_OUTPUT, "Signal R"); + + configBypass(IN_L_INPUT, OUT_L_OUTPUT); + configBypass(IN_R_INPUT, OUT_R_OUTPUT); isEnsemble = false; onReset(); diff --git a/src/console.cpp b/src/console.cpp index 2a89817..7380f3a 100644 --- a/src/console.cpp +++ b/src/console.cpp @@ -58,6 +58,19 @@ struct Console : Module { { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); + for (int i = 0; i < 9; i++) { + configInput(IN_L_INPUTS + i, string::f("Channel %d L", i + 1)); + configInput(IN_R_INPUTS + i, string::f("Channel %d R", i + 1)); + } + configInput(IN_ST_L_INPUT, "Stereo Channel L"); + configInput(IN_ST_R_INPUT, "Stereo Channel R"); + + configOutput(OUT_L_OUTPUT, "Mixed L"); + configOutput(OUT_R_OUTPUT, "Mixed R"); + + configBypass(IN_L_INPUTS + 0, OUT_L_OUTPUT); + configBypass(IN_R_INPUTS + 0, OUT_R_OUTPUT); + consoleType = loadConsoleType(); lightDivider.setDivision(512); onReset(); diff --git a/src/console_mm.cpp b/src/console_mm.cpp index f85c176..e171439 100644 --- a/src/console_mm.cpp +++ b/src/console_mm.cpp @@ -63,6 +63,15 @@ struct Console_mm : Module { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); configParam(LEVEL_PARAM, -1.f, 1.f, 0.f, "Drive", "%", 0.f, 100.f); + configInput(IN_INPUTS + 0, "Poly 1-8"); + configInput(IN_INPUTS + 1, "Poly 9-16"); + configInput(IN_INPUTS + 2, "Poly Grp/Aux"); + configOutput(DIRECT_OUTPUTS + 0, "Poly 1-8"); + configOutput(DIRECT_OUTPUTS + 1, "Poly 9-16"); + configOutput(DIRECT_OUTPUTS + 2, "Poly Grp/Aux"); + configOutput(OUT_OUTPUTS + 0, "Mix L"); + configOutput(OUT_OUTPUTS + 1, "Mix R"); + consoleType = loadConsoleType(); directOutMode = loadDirectOutMode(); onReset(); diff --git a/src/distance.cpp b/src/distance.cpp index 5884597..ee8a565 100644 --- a/src/distance.cpp +++ b/src/distance.cpp @@ -69,6 +69,13 @@ struct Distance : Module { configParam(DISTANCE_PARAM, 0.f, 1.f, 0.f, "Distance"); configParam(DRYWET_PARAM, 0.f, 1.f, 1.f, "Dry/Wet"); + configInput(DISTANCE_CV_INPUT, "Distance CV"); + configInput(DRYWET_CV_INPUT, "Dry/wet CV"); + configInput(IN_INPUT, "Signal"); + configOutput(OUT_OUTPUT, "Signal"); + + configBypass(IN_INPUT, OUT_OUTPUT); + onReset(); } diff --git a/src/golem.cpp b/src/golem.cpp index 14d73bf..14f5535 100644 --- a/src/golem.cpp +++ b/src/golem.cpp @@ -63,7 +63,16 @@ struct Golem : Module { configParam(OFFSET_PARAM, -1.f, 1.f, 0.f, "Offset"); configParam(BALANCE_TRIM_PARAM, -1.f, 1.f, 0.f, "Balance CV"); configParam(OFFSET_TRIM_PARAM, -1.f, 1.f, 0.f, "Offset CV"); - configParam(PHASE_PARAM, 0.f, 2.f, 0.f, "Phase"); + configSwitch(PHASE_PARAM, 0.f, 2.f, 0.f, "Phase", {"Off", "Flip polarity channel A", "Flip polarity channel B"}); + + configInput(BALANCE_CV_INPUT, "Balance CV"); + configInput(OFFSET_CV_INPUT, "Offset CV"); + configInput(IN_A_INPUT, "Channel A"); + configInput(IN_B_INPUT, "Channel B"); + configOutput(OUT_POS_OUTPUT, "Positive Signal"); + configOutput(OUT_NEG_OUTPUT, "Negative Signal"); + + configBypass(IN_A_INPUT, OUT_POS_OUTPUT); delayMode = DI; balanceTrimRange = BIPOLAR; diff --git a/src/holt.cpp b/src/holt.cpp index 276c140..c930872 100644 --- a/src/holt.cpp +++ b/src/holt.cpp @@ -222,6 +222,15 @@ struct Holt : Module { configParam(FREQUENCY_PARAM, 0.f, 1.f, 1.f, "Frequency"); configParam(RESONANCE_PARAM, 0.f, 1.f, 0.f, "Resonance"); configParam(POLES_PARAM, 0.f, 1.f, 1.f, "Poles"); + + configInput(FREQUENCY_CV_INPUT, "Frequency CV"); + configInput(RESONANCE_CV_INPUT, "Resonance CV"); + configInput(POLES_CV_INPUT, "Poles CV"); + configInput(IN_INPUT, "Signal"); + configOutput(OUT_OUTPUT, "Signal"); + + configBypass(IN_INPUT, OUT_OUTPUT); + onReset(); } diff --git a/src/hombre.cpp b/src/hombre.cpp index 19bd79c..3b697af 100644 --- a/src/hombre.cpp +++ b/src/hombre.cpp @@ -63,6 +63,13 @@ struct Hombre : Module { configParam(VOICING_PARAM, 0.f, 1.f, 0.5f, "Voicing"); configParam(INTENSITY_PARAM, 0.f, 1.f, 0.5f, "Intensity"); + configInput(VOICING_CV_INPUT, "Voicing CV"); + configInput(INTENSITY_CV_INPUT, "Intensity CV"); + configInput(IN_INPUT, "Signal"); + configOutput(OUT_OUTPUT, "Signal"); + + configBypass(IN_INPUT, OUT_OUTPUT); + onReset(); } diff --git a/src/interstage.cpp b/src/interstage.cpp index 9d60c62..f878249 100644 --- a/src/interstage.cpp +++ b/src/interstage.cpp @@ -67,6 +67,14 @@ struct Interstage : Module { { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); + configInput(IN_L_INPUT, "Signal L"); + configInput(IN_R_INPUT, "Signal R"); + configOutput(OUT_L_OUTPUT, "Signal L"); + configOutput(OUT_R_OUTPUT, "Signal R"); + + configBypass(IN_L_INPUT, OUT_L_OUTPUT); + configBypass(IN_R_INPUT, OUT_R_OUTPUT); + onReset(); } diff --git a/src/monitoring.cpp b/src/monitoring.cpp index 7bda8b3..0681222 100644 --- a/src/monitoring.cpp +++ b/src/monitoring.cpp @@ -88,7 +88,15 @@ struct Monitoring : Module { config(NUM_PARAMS, NUM_INPUTS, NUM_OUTPUTS, NUM_LIGHTS); configParam(MODE_PARAM, 0.f, 8.f, 0.f, "Mode"); configParam(CANS_PARAM, 0.f, 4.f, 0.f, "Cans"); - configParam(DITHER_PARAM, 0.f, 2.f, 0.f, "Dither"); + configSwitch(DITHER_PARAM, 0.f, 2.f, 0.f, "Dither", {"Off", "24 bit", "16 bit"}); + + configInput(IN_L_INPUT, "Signal L"); + configInput(IN_R_INPUT, "Signal R"); + configOutput(OUT_L_OUTPUT, "Signal L"); + configOutput(OUT_R_OUTPUT, "Signal R"); + + configBypass(IN_L_INPUT, OUT_L_OUTPUT); + configBypass(IN_R_INPUT, OUT_R_OUTPUT); onReset(); } diff --git a/src/mv.cpp b/src/mv.cpp index ad2c018..aa0369e 100644 --- a/src/mv.cpp +++ b/src/mv.cpp @@ -209,6 +209,18 @@ struct Mv : Module { configParam(DRYWET_CV_PARAM, -1.f, 1.f, 0.f, "Dry/Wet CV"); configParam(REGEN_CV_PARAM, -1.f, 1.f, 0.f, "Regeneration CV"); + configInput(DEPTH_CV_INPUT, "Depth CV"); + configInput(BRIGHT_CV_INPUT, "Brightness CV"); + configInput(DRYWET_CV_INPUT, "Dry/wet CV"); + configInput(REGEN_CV_INPUT, "Regeneration CV"); + configInput(IN_L_INPUT, "Signal L"); + configInput(IN_R_INPUT, "Signal R"); + configOutput(OUT_L_OUTPUT, "Signal L"); + configOutput(OUT_R_OUTPUT, "Signal R"); + + configBypass(IN_L_INPUT, OUT_L_OUTPUT); + configBypass(IN_R_INPUT, OUT_R_OUTPUT); + onReset(); } diff --git a/src/rasp.cpp b/src/rasp.cpp index f44b699..8be1729 100644 --- a/src/rasp.cpp +++ b/src/rasp.cpp @@ -77,6 +77,15 @@ struct Rasp : Module { } void onReset() override + configInput(CLAMP_CV_INPUT, "Clamp CV"); + configInput(LIMIT_CV_INPUT, "Limit CV"); + configInput(IN_INPUT, "Signal"); + configOutput(CLAMP_OUTPUT, "Clamp"); + configOutput(LIMIT_OUTPUT, "Limit"); + + configBypass(IN_INPUT, CLAMP_OUTPUT); + configBypass(IN_INPUT, LIMIT_OUTPUT); + { onSampleRateChange(); diff --git a/src/reseq.cpp b/src/reseq.cpp index ee963c2..a605a97 100644 --- a/src/reseq.cpp +++ b/src/reseq.cpp @@ -77,6 +77,16 @@ struct Reseq : Module { } configParam(DRYWET_PARAM, 0.f, 1.f, 1.f, "Dry/Wet"); + configInput(RESO_CV_INPUTS + 0, "Reso I CV"); + configInput(RESO_CV_INPUTS + 1, "Reso II CV"); + configInput(RESO_CV_INPUTS + 2, "Reso III CV"); + configInput(RESO_CV_INPUTS + 3, "Reso IV CV"); + configInput(DRYWET_CV_INPUT, "Dry/wet CV"); + configInput(IN_INPUT, "Signal"); + configOutput(OUT_OUTPUT, "Signal"); + + configBypass(IN_INPUT, OUT_OUTPUT); + onReset(); } diff --git a/src/tape.cpp b/src/tape.cpp index a42c1bb..4e9e9c1 100644 --- a/src/tape.cpp +++ b/src/tape.cpp @@ -62,6 +62,16 @@ struct Tape : Module { configParam(SLAM_PARAM, 0.f, 1.f, 0.5f, "Slam", "%", 0, 100); configParam(BUMP_PARAM, 0.f, 1.f, 0.5f, "Bump", "%", 0, 100); + configInput(SLAM_CV_INPUT, "Slam CV"); + configInput(BUMP_CV_INPUT, "Bump CV"); + configInput(IN_L_INPUT, "Signal L"); + configInput(IN_R_INPUT, "Signal R"); + configOutput(OUT_L_OUTPUT, "Signal L"); + configOutput(OUT_R_OUTPUT, "Signal R"); + + configBypass(IN_L_INPUT, OUT_L_OUTPUT); + configBypass(IN_R_INPUT, OUT_R_OUTPUT); + onReset(); } diff --git a/src/tremolo.cpp b/src/tremolo.cpp index 086e61b..33037e3 100644 --- a/src/tremolo.cpp +++ b/src/tremolo.cpp @@ -71,6 +71,14 @@ struct Tremolo : Module { configParam(SPEED_PARAM, 0.f, 1.f, 0.f, "Speed"); configParam(DEPTH_PARAM, 0.f, 1.f, 0.f, "Depth"); + configInput(CLOCK_CV_INPUT, "Clock CV"); + configInput(SPEED_CV_INPUT, "Speed CV"); + configInput(DEPTH_CV_INPUT, "Depth CV"); + configInput(IN_INPUT, "Signal"); + configOutput(OUT_OUTPUT, "Signal"); + + configBypass(IN_INPUT, OUT_OUTPUT); + onReset(); } diff --git a/src/vibrato.cpp b/src/vibrato.cpp index 8841b2b..8f4d89a 100644 --- a/src/vibrato.cpp +++ b/src/vibrato.cpp @@ -95,6 +95,18 @@ struct Vibrato : Module { configParam(FMDEPTH_PARAM, 0.f, 1.f, 0.f, "FM Depth"); configParam(INVWET_PARAM, 0.f, 1.f, 0.5f, "Inv/Wet"); + configInput(SPEED_CV_INPUT, "Speed CV"); + configInput(DEPTH_CV_INPUT, "Depth CV"); + configInput(FMSPEED_CV_INPUT, "FM Speed CV"); + configInput(FMDEPTH_CV_INPUT, "FM Depth CV"); + configInput(INVWET_CV_INPUT, "Inv/Wet CV"); + configInput(IN_INPUT, "Signal"); + configOutput(OUT_OUTPUT, "Signal"); + configOutput(EOC_OUTPUT, "EOC"); + configOutput(EOC_FM_OUTPUT, "FM EOC"); + + configBypass(IN_INPUT, OUT_OUTPUT); + onReset(); }