you probably won't be happy with that one because it uses floating-point which is emulated fairly slowly. i've been meaning to port some fixed-point code but no doubt someone else has done that already.