From 8627ab85a4b4ddeee5a135a695a7d02602b78c8f Mon Sep 17 00:00:00 2001 From: hemmer <915048+hemmer@users.noreply.github.com> Date: Sat, 19 Oct 2024 19:03:06 +0100 Subject: [PATCH] Fix Bandit normalling --- src/Bandit.cpp | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/Bandit.cpp b/src/Bandit.cpp index 36b48d3..19ef647 100644 --- a/src/Bandit.cpp +++ b/src/Bandit.cpp @@ -150,11 +150,11 @@ struct Bandit : Module { const float_4 outHigh = 0.7 * 2 * filterHigh[c / 4][1].process(filterHigh[c / 4][0].process((inHigh + inAll) * highGain)); outputs[HIGH_OUTPUT].setVoltageSimd(outHigh, c); - - mixOutput = outputs[LOW_OUTPUT].isConnected() ? inputs[LOW_RETURN_INPUT].getPolyVoltageSimd(c) : outLow; - mixOutput += outputs[LOW_MID_OUTPUT].isConnected() ? inputs[LOW_MID_RETURN_INPUT].getPolyVoltageSimd(c) : outLowMid; - mixOutput += outputs[HIGH_MID_OUTPUT].isConnected() ? inputs[HIGH_MID_RETURN_INPUT].getPolyVoltageSimd(c) : outHighMid; - mixOutput += outputs[HIGH_OUTPUT].isConnected() ? inputs[HIGH_RETURN_INPUT].getPolyVoltageSimd(c) : outHigh; + // the fx return input is normalled to the fx send output + mixOutput = inputs[LOW_RETURN_INPUT].getNormalPolyVoltageSimd(outLow, c); + mixOutput += inputs[LOW_MID_RETURN_INPUT].getNormalPolyVoltageSimd(outLowMid, c); + mixOutput += inputs[HIGH_MID_RETURN_INPUT].getNormalPolyVoltageSimd(outHighMid, c); + mixOutput += inputs[HIGH_RETURN_INPUT].getNormalPolyVoltageSimd(outHigh, c); mixOutput = mixOutput * clamp(inputs[ALL_CV_INPUT].getNormalPolyVoltageSimd(10.f, c) / 10.f, 0.f, 1.f); outputs[MIX_OUTPUT].setVoltageSimd(mixOutput, c);