;  #############################################################
;  soundfile ex5-10 : global stereo reverberation and echo instrument
;  #############################################################

galeft init 0     ; initialize left channel global variable
garight init 0     ; initialize right channel global variable

MARIMBA([ ; send output to global stereo reverberator
galeft = sqrt(p10) *  a1  + galeft
garight = sqrt(1. - p10) *  a1  + garight])


instr 99      ; global reverberation instrument
krevamount   line  p4, p3, p5   ; % signal to be reverberated
adryleft = (1 - krevamount) * galeft  ; direct signal -- no reverberation
adryright = (1 - krevamount) * garight  ; direct signal -- no reverberation

irevtime = p6 ; reverberation time

awetleft  nreverb  krevamount * galeft , irevtime, p7
awetright  nreverb  krevamount * garight , irevtime, p7
 ; add 4 echos, but only to dry signals 
aechosleft  multitap adryleft, p8,p9,   p10,p11,   p12,p13,   p14,p15
aechosright multitap adryright, p8,p9,   p10,p11,   p12,p13,   p14,p15
outs awetleft + adryleft + aechosleft, awetright + adryright + aechosright  
galeft = 0                ; clear global variable 
garight = 0                ; clear global variable 
endin

