diff options
Diffstat (limited to 'src/main.c')
-rw-r--r-- | src/main.c | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/src/main.c b/src/main.c index aebc6aa..923fa22 100644 --- a/src/main.c +++ b/src/main.c @@ -50,24 +50,23 @@ void set_screen_mode() { static int internal_clock() { const struct timespec Delay = { - 0, 9999 + 0, 99999 }; struct timespec Remaining = { 0, 0 }; - double OldTime = GetTime(); while(GameGoing == true) { - //nanosleep(&Delay, &Remaining); + SDL_AtomicAdd(&Ticks, 1); + double OldTime = GetTime(); + nanosleep(&Delay, &Remaining); double NewTime = GetTime(); + while((NewTime-OldTime) > (1.0/60.0f)) { + NewTime = GetTime(); + } while((NewTime-OldTime) < (1.0/60.0f)) { NewTime = GetTime(); - } - if((NewTime-OldTime) >= (1.0/60.0f)) { - SDL_AtomicAdd(&Ticks, 1); - OldTime = GetTime(); } - - printf("%lf,%lf,%d\n", GetTime(),(NewTime-OldTime), SDL_AtomicGet(&Ticks)); + printf("%lf, %lf\n", (NewTime-OldTime), (1.0/60.0f)); } return(0); } |