From: notaz Date: Fri, 2 Mar 2012 21:11:45 +0000 (+0200) Subject: gpulib: yet another frameskip hack X-Git-Tag: r14~2 X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=1e07f71d8e8645f9060fcb2ed13f4cb4e0267982;p=pcsx_rearmed.git gpulib: yet another frameskip hack or should I call it heuristic? --- diff --git a/plugins/gpulib/gpu.c b/plugins/gpulib/gpu.c index df0099c6..aefd53b6 100644 --- a/plugins/gpulib/gpu.c +++ b/plugins/gpulib/gpu.c @@ -397,7 +397,8 @@ static noinline int do_cmd_buffer(uint32_t *data, int count) continue; } - if (gpu.frameskip.active && gpu.frameskip.allow) + // 0xex cmds might affect frameskip.allow, so pass to do_cmd_list_skip + if (gpu.frameskip.active && (gpu.frameskip.allow || ((data[pos] >> 24) & 0xf0) == 0xe0)) pos += do_cmd_list_skip(data + pos, count - pos, &cmd); else { pos += do_cmd_list(data + pos, count - pos, &cmd);