Most of the bugs fixed
Sine wave generation and played directly from memory