It's because you are using Sin( EnormousAngle ). The bigger the angle the less accurate Sin( angle ).
In your case a change to Sin( ms Mod 360 ) is probably good enough.
In general you might want to record StartTime = Millisecs() near the start of you program. Then use ms = Millisecs() - StartTime. This will keep the values relatively small.
In your case a change to Sin( ms Mod 360 ) is probably good enough.
In general you might want to record StartTime = Millisecs() near the start of you program. Then use ms = Millisecs() - StartTime. This will keep the values relatively small.