diff --git a/csound-expression.cabal b/csound-expression.cabal
--- a/csound-expression.cabal
+++ b/csound-expression.cabal
@@ -1,5 +1,5 @@
 Name:          csound-expression
-Version:       5.0.0
+Version:       5.0.1
 Cabal-Version: >= 1.6
 License:       BSD3
 License-file:  LICENSE
@@ -79,7 +79,7 @@
   Ghc-Options:    -Wall
   Build-Depends:
         base >= 4, base < 5, process, data-default, Boolean >= 0.1.0, colour >= 2.0, transformers >= 0.3, containers,
-        csound-expression-typed >= 0.0.9.2, csound-expression-dynamic >= 0.1.6, temporal-media >= 0.6.1,
+        csound-expression-typed >= 0.0.9.3, csound-expression-dynamic >= 0.1.6, temporal-media >= 0.6.1,
         csound-expression-opcodes >= 0.0.3.1
   Hs-Source-Dirs:      src/
   Exposed-Modules:
diff --git a/src/Csound/Air/Misc.hs b/src/Csound/Air/Misc.hs
--- a/src/Csound/Air/Misc.hs
+++ b/src/Csound/Air/Misc.hs
@@ -521,16 +521,16 @@
 ------------------------------------------------------
 -- wave shaper
 
--- | Wave shaper. The signal should be bepolar. It ranges within the interval [-1, 1].
+-- | Wave shaper. The signal should be bipolar. It ranges within the interval [-1, 1].
 --
 -- > wshaper table amount asig
 --
 -- wave shaper transforms the input signal with the table. 
--- The amount of transformation scales the signal from 0 to 10. 
+-- The amount of transformation scales the signal from 0 to 1. 
 -- the amount is ratio of scaling. It expects the values from the interval [0, 1].
 -- 
 wshaper :: Tab -> Sig -> Sig -> Sig
-wshaper t amt asig = tablei (0.5 + amt * asig / 20) t `withD` 1 
+wshaper t amt asig = tablei (10 * amt * asig / 20) t `withDs` [1, 0.5]
 
 -- | Wave shaper with sigmoid.
 -- 
@@ -546,23 +546,23 @@
 --
 -- > genSaturator 5
 mildSaturator :: Sig -> Sig -> Sig
-mildSaturator = genSaturator 10
+mildSaturator = genSaturator 1
 
 -- | Alias for
 --
 -- > genSaturator 10
 saturator :: Sig -> Sig -> Sig
-saturator = genSaturator 15
+saturator = genSaturator 1.5
 
 -- | Alias for
 --
 -- > genSaturator 50
 hardSaturator :: Sig -> Sig -> Sig
-hardSaturator = genSaturator 35
+hardSaturator = genSaturator 3.5
 
 -- | Alias for
 --
 -- > genSaturator 100
 hardSaturator2 :: Sig -> Sig -> Sig
-hardSaturator2 = genSaturator 65
+hardSaturator2 = genSaturator 6.5
 
diff --git a/src/Csound/Air/Wav.hs b/src/Csound/Air/Wav.hs
--- a/src/Csound/Air/Wav.hs
+++ b/src/Csound/Air/Wav.hs
@@ -31,6 +31,7 @@
     -- * Writing sound files
     SampleFormat(..),
     writeSigs, writeWav, writeAiff, writeWav1, writeAiff1,
+    dumpWav, dumpWav1,
 
     -- * Utility
     lengthSnd, segments,
@@ -250,6 +251,14 @@
 -- | Writes wav files.
 writeWav :: String -> (Sig, Sig) -> SE ()
 writeWav file = writeSigs Wav Int16 file . \(a, b) -> [a, b]
+
+-- | Dumps signals to file and sends the audio through. Useful to monitor the signals.
+dumpWav :: String -> (Sig, Sig) -> SE (Sig, Sig)
+dumpWav file asig = writeWav file asig >> return asig
+
+-- | Dumps mono signal to file and sends the audio through. Useful to monitor the signals.
+dumpWav1 :: String -> Sig -> SE Sig
+dumpWav1 file asig = writeWav file (asig, asig) >> return asig
 
 -- | Writes aiff files.
 writeAiff :: String -> (Sig, Sig) -> SE ()
