@@ -142,7 +142,7 @@ LFOWidget::LFOWidget() { | |||||
addOutput(createOutput<PJ301MPort>(Vec(80, 320), module, LFO::SAW_OUTPUT)); | addOutput(createOutput<PJ301MPort>(Vec(80, 320), module, LFO::SAW_OUTPUT)); | ||||
addOutput(createOutput<PJ301MPort>(Vec(114, 320), module, LFO::SQR_OUTPUT)); | addOutput(createOutput<PJ301MPort>(Vec(114, 320), module, LFO::SQR_OUTPUT)); | ||||
addChild(createValueLight<SmallLight<GreenRedPolarityLight>>(Vec(99, 41), &module->lights[0])); | |||||
addChild(createValueLight<SmallLight<GreenRedPolarityLight>>(Vec(99, 42), &module->lights[0])); | |||||
} | } | ||||
@@ -36,8 +36,8 @@ void VCMixer::step() { | |||||
float ch1 = inputs[CH1_INPUT].value * params[CH1_PARAM].value * clampf(inputs[CH1_CV_INPUT].normalize(10.0) / 10.0, 0.0, 1.0); | float ch1 = inputs[CH1_INPUT].value * params[CH1_PARAM].value * clampf(inputs[CH1_CV_INPUT].normalize(10.0) / 10.0, 0.0, 1.0); | ||||
float ch2 = inputs[CH2_INPUT].value * params[CH2_PARAM].value * clampf(inputs[CH2_CV_INPUT].normalize(10.0) / 10.0, 0.0, 1.0); | float ch2 = inputs[CH2_INPUT].value * params[CH2_PARAM].value * clampf(inputs[CH2_CV_INPUT].normalize(10.0) / 10.0, 0.0, 1.0); | ||||
float ch3 = inputs[CH3_INPUT].value * params[CH3_PARAM].value * clampf(inputs[CH3_CV_INPUT].normalize(10.0) / 10.0, 0.0, 1.0); | float ch3 = inputs[CH3_INPUT].value * params[CH3_PARAM].value * clampf(inputs[CH3_CV_INPUT].normalize(10.0) / 10.0, 0.0, 1.0); | ||||
float cv = inputs[MIX_CV_INPUT].normalize(10.0); | |||||
float mix = (ch1 + ch2 + ch3) * params[MIX_PARAM].value * cv / 10.0; | |||||
float cv = fmaxf(inputs[MIX_CV_INPUT].normalize(10.0) / 10.0, 0.0); | |||||
float mix = (ch1 + ch2 + ch3) * params[MIX_PARAM].value * cv; | |||||
outputs[CH1_OUTPUT].value = ch1; | outputs[CH1_OUTPUT].value = ch1; | ||||
outputs[CH2_OUTPUT].value = ch2; | outputs[CH2_OUTPUT].value = ch2; | ||||
@@ -57,9 +57,8 @@ struct VCO : Module { | |||||
void VCO::step() { | void VCO::step() { | ||||
bool analog = params[MODE_PARAM].value < 1.0; | |||||
// TODO Soft sync features | |||||
bool soft = params[SYNC_PARAM].value < 1.0; | |||||
bool analog = params[MODE_PARAM].value > 0.0; | |||||
bool soft = params[SYNC_PARAM].value <= 0.0; | |||||
if (analog) { | if (analog) { | ||||
// Adjust pitch slew | // Adjust pitch slew | ||||
@@ -233,7 +232,7 @@ VCOWidget::VCOWidget() { | |||||
addOutput(createOutput<PJ301MPort>(Vec(80, 320), module, VCO::SAW_OUTPUT)); | addOutput(createOutput<PJ301MPort>(Vec(80, 320), module, VCO::SAW_OUTPUT)); | ||||
addOutput(createOutput<PJ301MPort>(Vec(114, 320), module, VCO::SQR_OUTPUT)); | addOutput(createOutput<PJ301MPort>(Vec(114, 320), module, VCO::SQR_OUTPUT)); | ||||
addChild(createValueLight<SmallLight<GreenRedPolarityLight>>(Vec(99, 41), &module->lights[0])); | |||||
addChild(createValueLight<SmallLight<GreenRedPolarityLight>>(Vec(99, 42), &module->lights[0])); | |||||
} | } | ||||