JasonWoof Got questions, comments, patches, etc.? Contact Jason Woofenden
Added a 1ns sleep after every frame
[vor.git] / main.c
diff --git a/main.c b/main.c
index 2bf7715..4a482fc 100644 (file)
--- a/main.c
+++ b/main.c
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
+#include <time.h>
 
 #include "font.h"
 
 #include "args.h"
 #include "common.h"
-#include "config.h"
+#include "vorconfig.h"
 #include "dust.h"
 #include "file.h"
 #include "float.h"
@@ -68,6 +69,8 @@ struct dot {
        int heat;     // heat multiplier (color).
 };
 
+void draw(void);
+
 struct dot edot[MAXENGINEDOTS], *dotptr = edot;
 struct dot bdot[MAXBANGDOTS];
 
@@ -135,6 +138,14 @@ extern int optind, opterr, optopt;
 // ************************************* FUNCS
 
 void
+tiny_sleep() {
+       struct timespec t;
+       t.tv_sec = 0;
+       t.tv_nsec = 1;
+       nanosleep(&t, 0);
+}
+
+void
 init_engine_dots() {
        int i;
        for(i = 0; i<MAXENGINEDOTS; i++) {
@@ -362,6 +373,9 @@ void
 toggle_fullscreen() {
        opt_fullscreen = 1 - opt_fullscreen;
        set_video_mode();
+       if(paused) {
+               draw();
+       }
 }
 
 
@@ -830,6 +844,8 @@ gameloop() {
                        state = HIGH_SCORE_DISPLAY;
                        state_timeout = 400;
                }
+
+               tiny_sleep();
        }
 }