From 89c0de4234815e0fa9e8399b940ecec6c89a062b Mon Sep 17 00:00:00 2001 From: notaz Date: Mon, 19 Dec 2011 23:32:49 +0200 Subject: gpu_neon: make use of unai's lineskip mode --- plugins/gpu_neon/unai_if.cpp | 13 +++++++++---- plugins/gpu_unai/gpu_command.h | 2 ++ 2 files changed, 11 insertions(+), 4 deletions(-) (limited to 'plugins') diff --git a/plugins/gpu_neon/unai_if.cpp b/plugins/gpu_neon/unai_if.cpp index 67e045d..4e3e7f9 100644 --- a/plugins/gpu_neon/unai_if.cpp +++ b/plugins/gpu_neon/unai_if.cpp @@ -39,10 +39,10 @@ #define FRAME_HEIGHT 512 #define FRAME_OFFSET(x,y) (((y)<<10)+(x)) -static bool isSkip = false; /* skip frame (info coming from GPU) */ -static int linesInterlace = 0; /* internal lines interlace */ - +#define isSkip 0 /* skip frame (info coming from GPU) */ #define alt_fps 0 +static int linesInterlace; /* internal lines interlace */ +static int force_interlace; static bool light = true; /* lighting */ static bool blend = true; /* blending */ @@ -165,9 +165,13 @@ extern const unsigned char cmd_lengths[256]; void do_cmd_list(unsigned int *list, int list_len) { unsigned int cmd, len; - unsigned int *list_end = list + list_len; + linesInterlace = force_interlace; +#ifndef __ARM_ARCH_7A__ /* XXX */ + linesInterlace |= gpu.status.interlace; +#endif + for (; list < list_end; list += 1 + len) { cmd = *list >> 24; @@ -274,6 +278,7 @@ void renderer_flush_queues(void) void renderer_set_config(const struct rearmed_cbs *cbs) { + force_interlace = cbs->gpu_unai.lineskip; enableAbbeyHack = cbs->gpu_unai.abe_hack; light = !cbs->gpu_unai.no_light; blend = !cbs->gpu_unai.no_blend; diff --git a/plugins/gpu_unai/gpu_command.h b/plugins/gpu_unai/gpu_command.h index a5b61b6..d380dae 100644 --- a/plugins/gpu_unai/gpu_command.h +++ b/plugins/gpu_unai/gpu_command.h @@ -373,7 +373,9 @@ void gpuSendPacketFunction(const int PRIM) break; case 0xA0: // sys ->vid gpuLoadImage(); // prim handles updateLace && skip +#ifndef isSkip // not a define if (alt_fps) isSkip=false; +#endif DO_LOG(("gpuLoadImage(0x%x)\n",PRIM)); break; case 0xC0: // vid -> sys -- cgit v1.2.3