X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=drivers%2Fcli%2Fthrottle.c;h=91879aecc0e1e7262ac5f605725150bc2bf8f3d8;hb=5232c20c0fa2c80964fe1d3f597c239bcf93d6fc;hp=604cef7ccc51bd4d1f21e472f30e62ab0a4fd716;hpb=c62d28102c77e19c291c78bf6bf7f0a81abd54b9;p=fceu.git diff --git a/drivers/cli/throttle.c b/drivers/cli/throttle.c index 604cef7..91879ae 100644 --- a/drivers/cli/throttle.c +++ b/drivers/cli/throttle.c @@ -7,7 +7,10 @@ static uint64 desiredfps; void RefreshThrottleFPS(void) { - desiredfps=FCEUI_GetDesiredFPS()>>8; + 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(). */ } @@ -23,7 +26,7 @@ static uint64 GetCurTime(void) return(ret); } -void SpeedThrottle(void) +INLINE void SpeedThrottle(void) { static uint64 ttime,ltime; @@ -32,7 +35,9 @@ void SpeedThrottle(void) ttime=GetCurTime(); if( (ttime-ltime) < (tfreq/desiredfps) ) + { goto waiter; + } if( (ttime-ltime) >= (tfreq*4/desiredfps)) ltime=ttime; else