From 5ac99d3ad53cefed0bd6f9d1606ba5f1acb49696 Mon Sep 17 00:00:00 2001 From: Flyinghead Date: Tue, 11 Dec 2018 23:14:14 +0100 Subject: [PATCH] pvr: gouraud affects drawing. don't die if render queue not empty after waiting. --- core/hw/pvr/ta_ctx.cpp | 3 +-- core/hw/pvr/ta_structs.h | 4 ++-- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/core/hw/pvr/ta_ctx.cpp b/core/hw/pvr/ta_ctx.cpp index caf6f3e37..7cb056636 100644 --- a/core/hw/pvr/ta_ctx.cpp +++ b/core/hw/pvr/ta_ctx.cpp @@ -156,8 +156,7 @@ bool QueueRender(TA_context* ctx) // sh4 run at > 120% on the last slice // and SynchronousRendering is enabled frame_finished.Wait(); - verify(!rqueue); - } + } if (rqueue) { // FIXME if the discarded render is a RTT we'll have a texture missing. But waiting for the current frame to finish kills performance... diff --git a/core/hw/pvr/ta_structs.h b/core/hw/pvr/ta_structs.h index b1134e652..d9646d28d 100644 --- a/core/hw/pvr/ta_structs.h +++ b/core/hw/pvr/ta_structs.h @@ -2,7 +2,7 @@ #pragma once //bits that affect drawing (for caching params) -#define PCW_DRAW_MASK (0x000000CC) +#define PCW_DRAW_MASK (0x000000CE) #pragma pack(push, 1) // n = 1 // Global Param/misc structs @@ -13,7 +13,7 @@ union PCW { //Obj Control //affects drawing ? u32 UV_16bit : 1; //0 - u32 Gouraud : 1; //0 + u32 Gouraud : 1; //1 u32 Offset : 1; //1 u32 Texture : 1; //1 u32 Col_Type : 2; //00