X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?p=pcsx_rearmed.git;a=blobdiff_plain;f=frontend%2Fplugin_lib.c;h=b60c1cdfbfa50e221161b25d455b357a3a54f1f8;hp=da25c6e15ed4ade9a36eacec4c2e2c5ab2f9fee4;hb=47f3758357b605deeaefe94e457d28470bf5aaa3;hpb=76f7048eff4f5357df048268e40b5bc6b9387fe5 diff --git a/frontend/plugin_lib.c b/frontend/plugin_lib.c index da25c6e1..b60c1cdf 100644 --- a/frontend/plugin_lib.c +++ b/frontend/plugin_lib.c @@ -109,6 +109,9 @@ static __attribute__((noinline)) void draw_active_chans(void) static void *pl_vout_set_mode(int w, int h, int bpp) { + // special h handling, Wipeout likes to change it by 1-6 + h = (h + 7) & ~7; + if (w == pl_vout_w && h == pl_vout_h && bpp == pl_vout_bpp) return pl_vout_buf; @@ -126,7 +129,10 @@ static void *pl_vout_set_mode(int w, int h, int bpp) if (pl_vout_buf == NULL) fprintf(stderr, "failed to set mode\n"); + + // menu decides on layer size, we commit it menu_notify_mode_change(w, h, bpp); + omap_enable_layer(1); return pl_vout_buf; } @@ -304,7 +310,7 @@ void pl_frame_limit(void) if (!(g_opts & OPT_NO_FRAMELIM) && diff > frame_interval) { // yay for working usleep on pandora! //printf("usleep %d\n", diff - frame_interval / 2); - usleep(diff - frame_interval / 2); + usleep(diff - frame_interval); } if (pl_rearmed_cbs.frameskip) {