From 8bb5da3b0626130fde53d4a1c65a7466d98f580a Mon Sep 17 00:00:00 2001 From: raven02 Date: Tue, 3 Jun 2014 18:32:27 +0800 Subject: [PATCH] Speedup write color buffers --- rpcs3/Emu/GS/GL/GLGSRender.cpp | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/rpcs3/Emu/GS/GL/GLGSRender.cpp b/rpcs3/Emu/GS/GL/GLGSRender.cpp index 70851051ed..33bd1b2619 100644 --- a/rpcs3/Emu/GS/GL/GLGSRender.cpp +++ b/rpcs3/Emu/GS/GL/GLGSRender.cpp @@ -485,6 +485,9 @@ void GLGSRender::WriteDepthBuffer() return; } + // Reset the flag + m_set_context_dma_z = false; + u32 address = GetAddress(m_surface_offset_z, m_context_dma_z - 0xfeed0000); if(!Memory.IsGoodAddr(address)) { @@ -509,6 +512,9 @@ void GLGSRender::WriteColourBufferA() return; } + // Reset the flag + m_set_context_dma_color_a = false; + u32 address = GetAddress(m_surface_offset_a, m_context_dma_color_a - 0xfeed0000); if(!Memory.IsGoodAddr(address)) { @@ -529,6 +535,9 @@ void GLGSRender::WriteColourBufferB() return; } + // Reset the flag + m_set_context_dma_color_b = false; + u32 address = GetAddress(m_surface_offset_b, m_context_dma_color_b - 0xfeed0000); if(!Memory.IsGoodAddr(address)) { @@ -549,6 +558,9 @@ void GLGSRender::WriteColourBufferC() return; } + // Reset the flag + m_set_context_dma_color_c = false; + u32 address = GetAddress(m_surface_offset_c, m_context_dma_color_c - 0xfeed0000); if(!Memory.IsGoodAddr(address)) { @@ -569,6 +581,9 @@ void GLGSRender::WriteColourBufferD() return; } + // Reset the flag + m_set_context_dma_color_d = false; + u32 address = GetAddress(m_surface_offset_d, m_context_dma_color_d - 0xfeed0000); if(!Memory.IsGoodAddr(address)) {