summaryrefslogtreecommitdiff
path: root/Source/Plugins/Plugin_VideoSoftware/Src/SWCommandProcessor.cpp
diff options
context:
space:
mode:
authordegasus <wickmarkus@web.de>2013-03-06 15:59:29 +0100
committerdegasus <wickmarkus@web.de>2013-03-06 15:59:29 +0100
commita1c5e90083fa3b895936b16eb17f1184e55f29de (patch)
tree709d35e563e2810fc25e752bd8dcf74377900fff /Source/Plugins/Plugin_VideoSoftware/Src/SWCommandProcessor.cpp
parenta2bb7d576671881433157d17fd5343fe6c0ca73f (diff)
parent8d5299c20b69f524b20a8d9451aaf754b36690cc (diff)
Merge branch 'master' into GLSL-master
Conflicts: CMakeLists.txt Source/Core/DolphinWX/CMakeLists.txt Source/Core/DolphinWX/Src/GLInterface.h Source/Core/VideoCommon/Src/PixelShaderGen.cpp Source/Core/VideoCommon/Src/TextureCacheBase.cpp Source/Core/VideoCommon/Src/VertexManagerBase.cpp Source/Plugins/Plugin_VideoDX11/Src/VertexManager.cpp Source/Plugins/Plugin_VideoDX9/Src/VertexManager.cpp Source/Plugins/Plugin_VideoOGL/Plugin_VideoOGL.vcxproj Source/Plugins/Plugin_VideoOGL/Plugin_VideoOGL.vcxproj.filters Source/Plugins/Plugin_VideoOGL/Src/GLUtil.h Source/Plugins/Plugin_VideoOGL/Src/PixelShaderCache.cpp Source/Plugins/Plugin_VideoOGL/Src/TextureCache.cpp Source/Plugins/Plugin_VideoOGL/Src/VertexManager.cpp Source/Plugins/Plugin_VideoOGL/Src/VertexShaderCache.cpp Source/Plugins/Plugin_VideoOGL/Src/main.cpp
Diffstat (limited to 'Source/Plugins/Plugin_VideoSoftware/Src/SWCommandProcessor.cpp')
-rw-r--r--Source/Plugins/Plugin_VideoSoftware/Src/SWCommandProcessor.cpp15
1 files changed, 12 insertions, 3 deletions
diff --git a/Source/Plugins/Plugin_VideoSoftware/Src/SWCommandProcessor.cpp b/Source/Plugins/Plugin_VideoSoftware/Src/SWCommandProcessor.cpp
index b9afc1abb5..6cc4ee4dc8 100644
--- a/Source/Plugins/Plugin_VideoSoftware/Src/SWCommandProcessor.cpp
+++ b/Source/Plugins/Plugin_VideoSoftware/Src/SWCommandProcessor.cpp
@@ -57,6 +57,15 @@ CPReg cpreg; // shared between gfx and emulator thread
void DoState(PointerWrap &p)
{
p.Do(cpreg);
+ p.DoArray(commandBuffer, commandBufferSize);
+ p.Do(readPos);
+ p.Do(writePos);
+ p.Do(et_UpdateInterrupts);
+ p.Do(interruptSet);
+ p.Do(interruptWaiting);
+
+ // Is this right?
+ p.DoArray(g_pVideoData,writePos);
}
// does it matter that there is no synchronization between threads during writes?
@@ -115,15 +124,15 @@ void RunGpu()
if (!SConfig::GetInstance().m_LocalCoreStartupParameter.bCPUThread)
{
// We are going to do FP math on the main thread so have to save the current state
- SaveSSEState();
- LoadDefaultSSEState();
+ FPURoundMode::SaveSIMDState();
+ FPURoundMode::LoadDefaultSIMDState();
// run the opcode decoder
do {
RunBuffer();
} while (cpreg.ctrl.GPReadEnable && !AtBreakpoint() && cpreg.readptr != cpreg.writeptr);
- LoadSSEState();
+ FPURoundMode::LoadSIMDState();
}
}