about summary refs log tree commit diff stats
path: root/src/main.c
diff options
context:
space:
mode:
authorCharadon <dev@iotib.net>2022-06-13 10:41:01 -0400
committerCharadon <dev@iotib.net>2022-06-13 10:41:01 -0400
commitbba57e993eff1f73bf7e6d6e263e2dced0a2c859 (patch)
treebd739bda0f3906dfa43b6b1be6e6a70d69f51758 /src/main.c
parentd491de9371c4e62ee26f49729c0e3da32c5db336 (diff)
downloadPong-C-bba57e993eff1f73bf7e6d6e263e2dced0a2c859.tar.gz
Fixed internal clock speed, not a pretty fix though.
Diffstat (limited to 'src/main.c')
-rw-r--r--src/main.c17
1 files changed, 9 insertions, 8 deletions
diff --git a/src/main.c b/src/main.c
index 923fa22..aebc6aa 100644
--- a/src/main.c
+++ b/src/main.c
@@ -50,23 +50,24 @@ void set_screen_mode() {
 
 static int internal_clock() {
 	const struct timespec Delay = {
-		0, 99999
+		0, 9999
 	};
 	struct timespec Remaining = {
 		0, 0
 	};
+	double OldTime = GetTime();
 	while(GameGoing == true) {
-		SDL_AtomicAdd(&Ticks, 1);
-		double OldTime = GetTime();
-		nanosleep(&Delay, &Remaining);
+		//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\n", (NewTime-OldTime), (1.0/60.0f));
+
+		printf("%lf,%lf,%d\n", GetTime(),(NewTime-OldTime), SDL_AtomicGet(&Ticks));
 	}
 	return(0);
 }