desc:Boost Pedal

slider1:5<-9,18,0.1>-Pre-Input Gain (dB)
slider2:-32<-64,6,.1>Low  (dB)
slider3:2.5<-48,6,.1>Mid (dB)
slider4:-48<-64,6,.1>High (dB)
slider5:600<5,1000,10>-Lower EQ Band Split
slider6:2400<1200,7200,10>-Higher EQ Band Split
slider7:0<-24,6,0.1>Level (dB)

@init
cDenorm=10^-30;

@slider
preGain=2 ^ (slider1/6);
splitLow=slider5;
splitHigh=slider6;
mstrOut=2 ^ (slider7/6);

band1=2^(slider2)/6;
band2=2^(slider3)/6;
band3=2^(slider4)/6;

freqHP = min(splitHigh,srate);
xHP = exp(-2.0*$pi*freqHP/srate);
a0HP = 1.0-xHP;
b1HP = -xHP;

freqLP = min(min(splitLow,srate),splitHigh);
xLP = exp(-2.0*$pi*freqLP/srate);
a0LP = 1.0-xLP;
b1LP = -xLP;

@sample
spl0 = spl0*preGain;
spl0 = min(max(spl0,-1),1);

toneSpank=abs(spl0)*0.5;

s0 = spl0;

lowSpl = (tmplLP = a0LP*s0 - b1LP*tmplLP + cDenorm);
highSpl = s0 - (tmplHP = a0HP*s0 - b1HP*tmplHP + cDenorm);
midSpl = s0 - lowSpl - highSpl;

lowSpl=lowSpl*band1*(1-toneSpank);
midSpl=midSpl*band2;
highSpl=highSpl*band3*(toneSpank+0.5);

spl0=(lowSpl+midSpl+highSpl)*mstrOut;

spl1=spl0;
