#include "swap.h"
#include "plugin_lib.h"
+#include "pcnt.h"
// misc globals
int iResX;
unsigned short usCursorActive = 0;
char * pCaptionText;
-static int fbw, fbh, fb24bpp;
-static int flip_cnt, flips_per_sec;
-
#ifndef __arm__
#define bgr555_to_rgb565 memcpy
#define bgr888_to_rgb888 memcpy
{
bgr555_to_rgb565(dest, srcs, w * 2);
}
- pl_text_out16(2, fbh - 10, "%2d %2.1f", flips_per_sec, fps_cur);
}
}
-#include "pcnt.h"
-
void DoBufferSwap(void)
{
- static int fps_counter;
+ static int fbw, fbh, fb24bpp;
+
if (PSXDisplay.DisplayMode.x == 0 || PSXDisplay.DisplayMode.y == 0)
return;
pl_fbdev_set_mode(fbw, fbh, fb24bpp ? 24 : 16);
}
+ pcnt_start(PCNT_BLIT);
blit();
- pl_fbdev_flip();
-
- pcnt_end(PCNT_ALL);
+ pcnt_end(PCNT_BLIT);
- {
- static int oldsec;
- struct timeval tv;
- flip_cnt++;
- gettimeofday(&tv, 0);
- if (tv.tv_sec != oldsec) {
- flips_per_sec = flip_cnt;
- flip_cnt = 0;
- oldsec = tv.tv_sec;
- }
- }
- if (++fps_counter == 60/6) {
- pcnt_print(fps_cur);
- fps_counter = 0;
- }
-
- pcnt_start(PCNT_ALL);
+ pl_fbdev_flip();
}
void DoClearScreenBuffer(void) // CLEAR DX BUFFER