X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?p=fceu.git;a=blobdiff_plain;f=drivers%2Fgp2x%2Fthrottle.c;fp=drivers%2Fgp2x%2Fthrottle.c;h=c52eb6857876df0f8562d81ed1a18d9cc0267372;hp=b6b628ce392f3099498dd58f54b31b3b25b750ec;hb=2a6855a31daf79cad83545b1eeee646e10481e5e;hpb=078eb4c0d0ff99a90f5ea0f9a9dbf9ec780650cc diff --git a/drivers/gp2x/throttle.c b/drivers/gp2x/throttle.c index b6b628c..c52eb68 100644 --- a/drivers/gp2x/throttle.c +++ b/drivers/gp2x/throttle.c @@ -3,57 +3,18 @@ #include "gp2x.h" #include "throttle.h" -#if 0 -static uint64 tfreq; -static uint64 desiredfps; - -void RefreshThrottleFPS(void) -{ - uint64 f=FCEUI_GetDesiredFPS(); - // great, a bit faster than before - //f = (f*65) >> 6; - desiredfps=f>>8; - tfreq=1000000; - tfreq<<=16; /* Adjustment for fps returned from FCEUI_GetDesiredFPS(). */ -} - -static uint64 GetCurTime(void) -{ - uint64 ret; - struct timeval tv; - - gettimeofday(&tv,0); - ret=(uint64)tv.tv_sec*1000000; - ret+=tv.tv_usec; - return(ret); -} - -INLINE void SpeedThrottle(void) -{ - static uint64 ttime,ltime; - - waiter: - - ttime=GetCurTime(); - - if( (ttime-ltime) < (tfreq/desiredfps) ) - { - goto waiter; - } - if( (ttime-ltime) >= (tfreq*4/desiredfps)) - ltime=ttime; - else - ltime+=tfreq/desiredfps; -} - -#else extern uint8 PAL; extern int FSkip; static int usec_aim = 0, usec_done = 0; static int skip_count = 0; -INLINE void SpeedThrottle(void) +void RefreshThrottleFPS(void) +{ + usec_aim = usec_done = skip_count = 0; +} + +void SpeedThrottle(void) { static struct timeval tv_prev; struct timeval tv_now; @@ -108,5 +69,4 @@ INLINE void SpeedThrottle(void) usec_done = usec_done - usec_aim + 1; // reset to prevent overflows usec_aim = 0; } -#endif