From 8bd5927278af004e494eb75e892c95fdc8280b58 Mon Sep 17 00:00:00 2001 From: aliaspider Date: Thu, 5 Nov 2015 16:11:47 +0100 Subject: more cleanups --- src/frame_skip.cpp | 99 ------------------------------------------------------ 1 file changed, 99 deletions(-) delete mode 100644 src/frame_skip.cpp (limited to 'src/frame_skip.cpp') diff --git a/src/frame_skip.cpp b/src/frame_skip.cpp deleted file mode 100644 index d656a0d..0000000 --- a/src/frame_skip.cpp +++ /dev/null @@ -1,99 +0,0 @@ -#include -#include -#include -#include -#include "frame_skip.h" -#include "memmap.h" - -#ifndef uclock_t -#define uclock_t unsigned int -#endif - -#define TICKS_PER_SEC 1000000UL -//#define CPU_FPS 60 -static int CPU_FPS=60; -static uclock_t F; - -#define MAX_FRAMESKIP 10 - - -static char init_frame_skip = 1; -char skip_next_frame = 0; -static struct timeval init_tv = { 0, 0 }; - - -void reset_frame_skip(void) -{ - //static Uint8 init=0; - - init_tv.tv_usec = 0; - init_tv.tv_sec = 0; - skip_next_frame = 0; - init_frame_skip = 1; - CPU_FPS=Memory.ROMFramesPerSecond; - - F = (uclock_t) ((double) TICKS_PER_SEC / CPU_FPS); -} - -uclock_t get_ticks(void) -{ - struct timeval tv; - - gettimeofday(&tv, 0); - if (init_tv.tv_sec == 0) - init_tv = tv; - return (tv.tv_sec - init_tv.tv_sec) * TICKS_PER_SEC + tv.tv_usec - - init_tv.tv_usec; - - -} - -int frame_skip(void) -{ - static int f2skip; - static uclock_t sec = 0; - static uclock_t rfd; - static uclock_t target; - static int nbFrame = 0; - static int skpFrm = 0; - - if (init_frame_skip) { - init_frame_skip = 0; - target = get_ticks(); - nbFrame = 0; - //f2skip=0; - //skpFrm=0; - sec = 0; - return 0; - } - - target += F; - if (f2skip > 0) { - f2skip--; - skpFrm++; - return 1; - } else - skpFrm = 0; - - - rfd = get_ticks(); - - if (rfd < target && f2skip == 0) { - while (get_ticks() < target); - } else { - f2skip = (rfd - target) / (double) F; - if (f2skip > MAX_FRAMESKIP) { - f2skip = MAX_FRAMESKIP; - reset_frame_skip(); - } - // printf("Skip %d frame(s) %lu %lu\n",f2skip,target,rfd); - } - - - nbFrame++; - if (get_ticks() - sec >= TICKS_PER_SEC) { - nbFrame = 0; - sec = get_ticks(); - } - return 0; -} -- cgit v1.2.3