summaryrefslogtreecommitdiff
path: root/Source/Core/VideoBackends
diff options
context:
space:
mode:
authorScott Mansell <phiren@gmail.com>2015-05-30 00:42:45 +1200
committerScott Mansell <phiren@gmail.com>2015-05-30 04:09:27 +1200
commitf57517f1a05db1790f853bf43d6093c19478b4ce (patch)
tree4874138fabc5e0c892013d6151e6d19dd2b2c1ba /Source/Core/VideoBackends
parent6d916762fb52a85aa086ef0cb6516cc63fbe775b (diff)
Clean up cached_arraybases. Update VideoSW to new scheme.
Move ownership of cached_arraybases from CPMemory to VertexLoaderManager to better match it usage.
Diffstat (limited to 'Source/Core/VideoBackends')
-rw-r--r--Source/Core/VideoBackends/Software/CPMemLoader.cpp1
-rw-r--r--Source/Core/VideoBackends/Software/SWVertexLoader.cpp4
2 files changed, 4 insertions, 1 deletions
diff --git a/Source/Core/VideoBackends/Software/CPMemLoader.cpp b/Source/Core/VideoBackends/Software/CPMemLoader.cpp
index 39627f1953..d1ebe6cc87 100644
--- a/Source/Core/VideoBackends/Software/CPMemLoader.cpp
+++ b/Source/Core/VideoBackends/Software/CPMemLoader.cpp
@@ -48,7 +48,6 @@ void SWLoadCPReg(u32 sub_cmd, u32 value)
// Pointers to vertex arrays in GC RAM
case 0xA0:
g_main_cp_state.array_bases[sub_cmd & 0xF] = value;
- cached_arraybases[sub_cmd & 0xF] = Memory::GetPointer(value);
break;
case 0xB0:
diff --git a/Source/Core/VideoBackends/Software/SWVertexLoader.cpp b/Source/Core/VideoBackends/Software/SWVertexLoader.cpp
index d77bbc810b..d745ed9507 100644
--- a/Source/Core/VideoBackends/Software/SWVertexLoader.cpp
+++ b/Source/Core/VideoBackends/Software/SWVertexLoader.cpp
@@ -16,8 +16,10 @@
#include "VideoBackends/Software/XFMemLoader.h"
#include "VideoCommon/VertexLoaderBase.h"
+#include "VideoCommon/VertexLoaderManager.h"
#include "VideoCommon/VertexLoaderUtils.h"
+
SWVertexLoader::SWVertexLoader() :
m_VertexSize(0)
{
@@ -176,6 +178,8 @@ void SWVertexLoader::LoadVertex()
// reserve memory for the destination of the vertex loader
m_LoadedVertices.resize(vdec.stride + 4);
+ VertexLoaderManager::UpdateVertexArrayPointers();
+
// convert the vertex from the gc format to the videocommon (hardware optimized) format
u8* old = g_video_buffer_read_ptr;
int converted_vertices = m_CurrentLoader->RunVertices(