diff options
| author | degasus <wickmarkus@web.de> | 2013-03-06 15:59:29 +0100 |
|---|---|---|
| committer | degasus <wickmarkus@web.de> | 2013-03-06 15:59:29 +0100 |
| commit | a1c5e90083fa3b895936b16eb17f1184e55f29de (patch) | |
| tree | 709d35e563e2810fc25e752bd8dcf74377900fff /Source/Plugins/Plugin_VideoSoftware/Src/SWCommandProcessor.cpp | |
| parent | a2bb7d576671881433157d17fd5343fe6c0ca73f (diff) | |
| parent | 8d5299c20b69f524b20a8d9451aaf754b36690cc (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.cpp | 15 |
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(); } } |
