                                                (- (* 2 (lf-pulse:kr rate (+ 0.5 phase_offset) pulse_width)) 1)
                                                (lf-tri:kr rate (- double_phase_offset 1))
                                                (sin-osc:kr rate (* (- phase_offset 0.25) (* Math/PI 2)))])
-          amp-mul             (- (* 2 (> invert_wave 0)) 1)
+          amp-mul             (* -1 (- (* 2 (> invert_wave 0)) 1))
           slice-amp           (* ctl-wave amp-mul)
-          slice-amp           (/ (+ 1 slice-amp) 2)
-          slice-amp           (lin-lin slice-amp 0 1 amp_min amp_max)
+          slice-amp           (lin-lin slice-amp -1 1 amp_min amp_max)
           [in-l in-r]         (in out_bus 2)
           [new-l new-r]       (* slice-amp [in-l in-r])
           fin-l               (x-fade2 in-l new-l (- (* mix 2) 1) amp)

                                               (- (* 2 (lf-pulse:kr rate (+ 0.5 phase_offset) pulse_width)) 1)
                                               (lf-tri:kr rate (- double_phase_offset 1))
                                               (sin-osc:kr rate (* (- phase_offset 0.25) (* Math/PI 2)))])
          ctl-wave-mul        (- (* 2 (> invert_wave 0)) 1)

          cutoff-freq         (lin-exp:kr (* ctl-wave-mul ctl-wave) -1 1 cutoff_min cutoff_max)


                                               (- (* 2 (lf-pulse:kr rate (+ 0.5 phase_offset) pulse_width)) 1)
                                               (lf-tri:kr rate (- double_phase_offset 1))
                                               (sin-osc:kr rate (* (- phase_offset 0.25) (* Math/PI 2)))])
          amp-mul             (* -1 (- (* 2 (> invert_wave 0)) 1))
          slice-amp           (* ctl-wave amp-mul)
          slice-amp           (lin-lin slice-amp -1 1 amp_min amp_max)
          [in-l in-r]         (in in_bus 2)
          [new-l new-r]       (* slice-amp [in-l in-r])
          fin-l               (x-fade2 in-l new-l (- (* mix 2) 1) amp)
