From c76dd371f3d1c746e9e2c4eb0aba5f5782640549 Mon Sep 17 00:00:00 2001 From: raven02 Date: Sun, 21 Dec 2014 01:13:10 +0800 Subject: [PATCH 1/4] RSX: vertex data regression fix --- rpcs3/Emu/RSX/GL/GLGSRender.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rpcs3/Emu/RSX/GL/GLGSRender.cpp b/rpcs3/Emu/RSX/GL/GLGSRender.cpp index c55c1962a4..a2c202f0c8 100644 --- a/rpcs3/Emu/RSX/GL/GLGSRender.cpp +++ b/rpcs3/Emu/RSX/GL/GLGSRender.cpp @@ -984,7 +984,7 @@ void GLGSRender::EnableVertexData(bool indexed_draw) LOG_ERROR(RSX, "GLGSRender::EnableVertexData: Bad vertex data type (%d)!", m_vertex_data[i].type); } - if(0 && !m_vertex_data[i].addr) + if(!m_vertex_data[i].addr) { switch(m_vertex_data[i].type) { From c63f370d8bed36331a9a7a790907ebccade4c039 Mon Sep 17 00:00:00 2001 From: raven02 Date: Sun, 21 Dec 2014 01:14:27 +0800 Subject: [PATCH 2/4] regression fix #1 --- rpcs3/Emu/RSX/RSXThread.cpp | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/rpcs3/Emu/RSX/RSXThread.cpp b/rpcs3/Emu/RSX/RSXThread.cpp index 62606796a8..11f6b14668 100644 --- a/rpcs3/Emu/RSX/RSXThread.cpp +++ b/rpcs3/Emu/RSX/RSXThread.cpp @@ -3,7 +3,7 @@ #include "Utilities/Log.h" #include "Emu/Memory/Memory.h" #include "Emu/System.h" -#include "Emu/RSX/GSManager.h" +#include "Emu/RSX/GSManage #include "RSXThread.h" #include "Emu/SysCalls/Callback.h" @@ -95,11 +95,11 @@ RSXVertexData::RSXVertexData() void RSXVertexData::Reset() { - //frequency = 0; - //stride = 0; - //size = 0; - //type = 0; - //addr = 0; + frequency = 0; + stride = 0; + size = 0; + type = 0; + addr = 0; data.clear(); } @@ -428,7 +428,7 @@ void RSXThread::DoCmd(const u32 fcmd, const u32 cmd, const u32 args_addr, const u8 v2 = a0 >> 16; u8 v3 = a0 >> 24; - //m_vertex_data[index].Reset(); + m_vertex_data[index].Reset(); m_vertex_data[index].size = 4; m_vertex_data[index].type = CELL_GCM_VERTEX_UB; m_vertex_data[index].data.push_back(v0); @@ -447,7 +447,7 @@ void RSXThread::DoCmd(const u32 fcmd, const u32 cmd, const u32 args_addr, const float v0 = (float&)a0; float v1 = (float&)a1; - //m_vertex_data[index].Reset(); + m_vertex_data[index].Reset(); m_vertex_data[index].type = CELL_GCM_VERTEX_F; m_vertex_data[index].size = 2; u32 pos = m_vertex_data[index].data.size(); @@ -471,7 +471,7 @@ void RSXThread::DoCmd(const u32 fcmd, const u32 cmd, const u32 args_addr, const float v2 = (float&)a2; float v3 = (float&)a3; - //m_vertex_data[index].Reset(); + m_vertex_data[index].Reset(); m_vertex_data[index].type = CELL_GCM_VERTEX_F; m_vertex_data[index].size = 4; u32 pos = m_vertex_data[index].data.size(); @@ -2418,4 +2418,4 @@ void RSXThread::WriteIO32(u32 addr, u32 value) { throw fmt::Format("%s(rsxio_addr=0x%x): RSXIO memory not mapped", __FUNCTION__, addr); } -} \ No newline at end of file +} From 612d11bd0387863293c217e12479d92fce36c5a7 Mon Sep 17 00:00:00 2001 From: raven02 Date: Sun, 21 Dec 2014 01:42:15 +0800 Subject: [PATCH 3/4] Minor fix --- rpcs3/Emu/RSX/RSXThread.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rpcs3/Emu/RSX/RSXThread.cpp b/rpcs3/Emu/RSX/RSXThread.cpp index 11f6b14668..a16d538fef 100644 --- a/rpcs3/Emu/RSX/RSXThread.cpp +++ b/rpcs3/Emu/RSX/RSXThread.cpp @@ -3,7 +3,7 @@ #include "Utilities/Log.h" #include "Emu/Memory/Memory.h" #include "Emu/System.h" -#include "Emu/RSX/GSManage +#include "Emu/RSX/GSManager.h #include "RSXThread.h" #include "Emu/SysCalls/Callback.h" From 7c9062fd3d6b7ff5c4edb0050f7d2b9c7fc59037 Mon Sep 17 00:00:00 2001 From: raven02 Date: Sun, 21 Dec 2014 01:54:01 +0800 Subject: [PATCH 4/4] fix :) --- rpcs3/Emu/RSX/RSXThread.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/rpcs3/Emu/RSX/RSXThread.cpp b/rpcs3/Emu/RSX/RSXThread.cpp index a16d538fef..e3b1281fd6 100644 --- a/rpcs3/Emu/RSX/RSXThread.cpp +++ b/rpcs3/Emu/RSX/RSXThread.cpp @@ -3,7 +3,7 @@ #include "Utilities/Log.h" #include "Emu/Memory/Memory.h" #include "Emu/System.h" -#include "Emu/RSX/GSManager.h +#include "Emu/RSX/GSManager.h" #include "RSXThread.h" #include "Emu/SysCalls/Callback.h"