beg dur freq amp mc-ratio index)
  (let* ((start (seconds->samples beg))
         (end (+ start (seconds->samples dur)))
         (cr 0.0)
	 (cr-incr (hz->radians freq))
	 (md-incr (hz->radians (* freq mc-ratio)))
	 (md 0.0) ; (* 0.5 (+ pi md-incr)))
         (fm-index (/ (* 2 pi index mc-ratio freq) *clm-srate*))) ; hz->radians with complex arg and result
    (do ((i start (+ i 1)))
	((= i end))
      (outa i (* amp (real-part (sin cr)))) ; or magnitude in place of real-part
      (set! cr (+ cr cr-incr (*