can I make a suggestion? a square function is a lot less CPU intensive than an expo function. to the ear, there's very little different between a square and an expo. I'd suggest using a square, then halve it. X *= X; X >>=1 ; Paul