rendered paste bodystatic int DrawFrame()
{
if(DEBUG)
iprintf("HIT DRAWFRAME\n");
// Now final frame is drawn:
PicoScan=EmulateScan; // Setup scanline callback
DoFrame();
PicoScan=NULL;
pdFrameCount++;
return 0;
}
void EmulateFrame()
{
if(DEBUG)
iprintf("HIT EMULATEFRAME\n");
int i=0,need=0;
int time=0,frame=0;
if (choosingfile || RomData==NULL) {
//iprintf("YOUR ROM DATA IS NULL THAT IS NOT GOOD\n");
// swiDelay(100000);
return;
}
dsFrameCount++;
if(dsFrameCount > 59) {
FPS = pdFrameCount;
pdFrameCount = dsFrameCount = 0;
}
need = DESIRED_FPS - FPS;
iprintf("\x1b[19;0HFPS: %d \n",FPS);
iprintf("Need: %d ",need);
if(need <= 0) {
return;
}
if (need>MAX_FRAMESKIP) need=MAX_FRAMESKIP; // Limit frame skipping
for (i=0;i<need-1;i++) {
DoFrame(); // Frame skip if needed
}
DrawFrame();
return;
}