X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?p=pcsx_rearmed.git;a=blobdiff_plain;f=frontend%2Fplugin_lib.c;h=e93c12f949c368d6bee5049136524ec420058021;hp=084ff1e22d3b79235596f717d900786965a97fc5;hb=24de2dd4dbdd50e44c91c40ebbc7d59ee1c0ac9b;hpb=2f546f9ace7c7e4b0957aff512dc0616b01b3976 diff --git a/frontend/plugin_lib.c b/frontend/plugin_lib.c index 084ff1e2..e93c12f9 100644 --- a/frontend/plugin_lib.c +++ b/frontend/plugin_lib.c @@ -24,6 +24,7 @@ #include "omap.h" #include "menu.h" #include "main.h" +#include "plat.h" #include "pcnt.h" #include "pl_gun_ts.h" #include "../libpcsxcore/new_dynarec/new_dynarec.h" @@ -33,7 +34,7 @@ int in_type1, in_type2; int in_a1[2] = { 127, 127 }, in_a2[2] = { 127, 127 }; int in_keystate, in_state_gun; int pl_flip_cnt; -static void *ts; +void *tsdev; void *pl_vout_buf; static int pl_vout_w, pl_vout_h, pl_vout_bpp; static int vsync_cnt, flips_per_sec, tick_per_sec; @@ -209,11 +210,15 @@ static void pl_vout_close(void) void *pl_prepare_screenshot(int *w, int *h, int *bpp) { +#if defined(VOUT_FBDEV) *w = pl_vout_w; *h = pl_vout_h; *bpp = pl_vout_bpp; return pl_vout_buf; +#else + return plat_prepare_screenshot(w, h, bpp); +#endif } static void update_input(void) @@ -248,8 +253,8 @@ static void update_input(void) void pl_update_gun(int *xn, int *xres, int *y, int *in) { - if (ts) - pl_gun_ts_update(ts, xn, y, in); + if (tsdev) + pl_gun_ts_update(tsdev, xn, y, in); *xres = pl_vout_w; *y = *y * pl_vout_h >> 10; @@ -470,8 +475,12 @@ void pl_start_watchdog(void) void pl_init(void) { + extern unsigned int hSyncCount; // from psxcounters + pl_vout_w = pl_vout_h = 256; pl_vout_bpp = 16; - ts = pl_gun_ts_init(); + tsdev = pl_gun_ts_init(); + + pl_rearmed_cbs.gpu_hcnt = &hSyncCount; }