/************************* iir instrument *********************
resons(cf,bw,amp,  cf2,bw2,amp2,  ... cfn,bwn,ampn)
-----sets up bank of parallel resons
-----if cf < 15 it is in 8ve.pc form, else in hz
envelope(time0,amp0, time1,amp1, ...  timen,ampn)
-----draws overall envelope curve for note (defaults to 1)
inputsig(start,dur,inputskip)
-----reads resons into an input file (make sure you call input("fn") first)
buzz(start,dur,amp,pitch)
-----reads buzz into reson bank
-----if pitch < 15 it is in 8ve.pc form, else in hz
noise(start,dur,amp)
-----reads white noise into reson bank
****************************************************************/
/***********   examples  ************/
output("sf/formant")
dur = 4
start = -4
envelope(0,0,1,1,2,0)
for(i=0; i<4; i=i+.25)
{
setup(x=cpsoct(6+i),.1*x,1,x2=1000,.1*x2,1,x3=2236,.1*x3,1)
buzz(start=start+dur,dur,1,x)
}

output("sf/noise.formant")
dur = 4
start = -4
envelope(0,0,1,1,2,0)
for(i=0; i<4; i=i+.25)
{
setup(x=cpsoct(6+i),.01*x,1,x2=1000,.01*x2,1,x3=2236,.01*x3,1)
noise(start=start+dur,dur,1)
}

output("sf/bandwidth.test")
dur = 4
start = -4
envelope(0,0,1,1,2,0)
for(i=.1; i>0; i=i-.0075)
{
setup(x=cpsoct(8.00),i*x,1)
noise(start=start+dur,dur,1,x)
}

input("sf/junk.snd")
output("sf/filterjunk")
inputsig(start=0,dur=5,inskip=0)
