--- tankrev.scm.old 2016-10-27 13:00:36.796027776 +0200 +++ tankrev.scm 2016-10-27 12:56:39.534048759 +0200 @@ -36,7 +36,7 @@ ;; To enter taps and sizes as prescribed in Dattorros article directly: -(define (smpls->samples smpl) +(define-macro (smpls->samples smpl) (let ((FS 29761)) ;orig. srate (round (* (/ *clm-srate* FS) smpl)))) @@ -105,21 +105,21 @@ (* (smpls->samples 8) (oscil excursion_48))))))))) ;; tap reflections and output: (outa i - (+ (* +0.6 (tap delay_48_54 (- (smpls->samples 266)))) - (* +0.6 (tap delay_48_54 (- (smpls->samples 2974)))) - (* -0.6 (tap diffuser_55_59 (- (smpls->samples 1913)))) - (* +0.6 (tap delay_59_63 (- (smpls->samples 1996)))) - (* -0.6 (tap delay_24_30 (- (smpls->samples 1990)))) - (* -0.6 (tap diffuser_31_33 (- (smpls->samples 187)))) - (* -0.6 (tap delay_33_39 (- (smpls->samples 1066)))))) + (+ (* +0.6 (tap delay_48_54 (smpls->samples 266))) + (* +0.6 (tap delay_48_54 (smpls->samples 2974))) + (* -0.6 (tap diffuser_55_59 (smpls->samples 1913))) + (* +0.6 (tap delay_59_63 (smpls->samples 1996))) + (* -0.6 (tap delay_24_30 (smpls->samples 1990))) + (* -0.6 (tap diffuser_31_33 (smpls->samples 187))) + (* -0.6 (tap delay_33_39 (smpls->samples 1066))))) (outb i - (+ (* +0.6 (tap delay_24_30 (- (smpls->samples 353)))) - (* +0.6 (tap delay_24_30 (- (smpls->samples 3627)))) - (* -0.6 (tap diffuser_31_33 (- (smpls->samples 1228)))) - (* +0.6 (tap delay_33_39 (- (smpls->samples 2673)))) - (* -0.6 (tap delay_48_54 (- (smpls->samples 2111)))) - (* -0.6 (tap diffuser_55_59 (- (smpls->samples 335)))) - (* -0.6 (tap delay_59_63 (- (smpls->samples 121)))))) + (+ (* +0.6 (tap delay_24_30 (smpls->samples 353))) + (* +0.6 (tap delay_24_30 (smpls->samples 3627))) + (* -0.6 (tap diffuser_31_33 (smpls->samples 1228))) + (* +0.6 (tap delay_33_39 (smpls->samples 2673))) + (* -0.6 (tap delay_48_54 (smpls->samples 2111))) + (* -0.6 (tap diffuser_55_59 (smpls->samples 335))) + (* -0.6 (tap delay_59_63 (smpls->samples 121))))) )))))