#include <sys/time.h>
#include "main.h"
+#include "gp2x.h"
#include "throttle.h"
#if 0
#else
extern uint8 PAL;
-extern int FSkip, FSkip_setting;
+extern int FSkip;
static int usec_aim = 0, usec_done = 0;
static int skip_count = 0;
usec_done += tv_now.tv_usec - tv_prev.tv_usec;
#ifdef FRAMESKIP
- if (FSkip_setting >= 0)
+ if (Settings.frameskip >= 0)
{
- if (skip_count >= FSkip_setting)
+ if (skip_count >= Settings.frameskip)
skip_count = 0;
else {
skip_count++;
FSkip = 1;
}
}
- else if (usec_done > usec_aim)
+ else if (usec_done > usec_aim + 1024*4)
{
/* auto frameskip */
- if (usec_done - usec_aim > 150000)
- usec_done = usec_aim = 0; // too much behind, try to recover..
- FSkip = 1;
+ if (usec_done - usec_aim > 1024*32)
+ usec_done = usec_aim = 1; // too much behind, try to recover..
+ else
+ FSkip = 1;
tv_prev = tv_now;
return;
}