From e1813589863b130483ef8f632e3fcb0914b2526c Mon Sep 17 00:00:00 2001 From: ramapcsx2 Date: Mon, 1 Aug 2011 17:18:13 +0000 Subject: [PATCH] Hack for GSdx hardware to fix inverted videos that showed up with the new GIF rewrite. The problem as I understood is is incomplete COLCLAMP support. Thanks to sudo for the hack :) (Unfortunately we couldn't find out more about why these FMV also *all* flicker.) git-svn-id: http://pcsx2.googlecode.com/svn/trunk@4837 96395faa-99c1-11dd-bbfe-3dabce05a288 --- pcsx2/GS.cpp | 3 ++- plugins/GSdx/GSRendererDX.h | 6 +++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/pcsx2/GS.cpp b/pcsx2/GS.cpp index 5cc3f2ae26..779f10a8e6 100644 --- a/pcsx2/GS.cpp +++ b/pcsx2/GS.cpp @@ -79,7 +79,8 @@ static __fi void gsCSRwrite( const tGS_CSR& csr ) SIGNAL_IMR_Pending = false; #else - GUNIT_WARN("csr.RESET"); + GUNIT_WARN("GUNIT_WARN: csr.RESET"); + Console.Warning( "csr.RESET" ); //gifUnit.Reset(true); // Don't think gif should be reset... gifUnit.gsSIGNAL.queued = false; GetMTGS().SendSimplePacket(GS_RINGTYPE_RESET, 0, 0, 0); diff --git a/plugins/GSdx/GSRendererDX.h b/plugins/GSdx/GSRendererDX.h index 7dc2f29b01..cbec37fe12 100644 --- a/plugins/GSdx/GSRendererDX.h +++ b/plugins/GSdx/GSRendererDX.h @@ -248,7 +248,7 @@ public: } } - if(env.COLCLAMP.CLAMP == 0) + if (env.COLCLAMP.CLAMP == 0 && /* hack */ !tex) { ps_sel.colclip = 1; } @@ -357,7 +357,7 @@ public: { dev->DrawPrimitive(); - if(env.COLCLAMP.CLAMP == 0) + if (env.COLCLAMP.CLAMP == 0 && /* hack */ !tex) { GSDeviceDX::OMBlendSelector om_bselneg(om_bsel); GSDeviceDX::PSSelector ps_selneg(ps_sel); @@ -422,7 +422,7 @@ public: dev->DrawPrimitive(); - if(env.COLCLAMP.CLAMP == 0) + if (env.COLCLAMP.CLAMP == 0 && /* hack */ !tex) { GSDeviceDX::OMBlendSelector om_bselneg(om_bsel); GSDeviceDX::PSSelector ps_selneg(ps_sel);