summaryrefslogtreecommitdiff
path: root/Source/Core/VideoCommon/Src/BPStructs.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Core/VideoCommon/Src/BPStructs.cpp')
-rw-r--r--Source/Core/VideoCommon/Src/BPStructs.cpp17
1 files changed, 13 insertions, 4 deletions
diff --git a/Source/Core/VideoCommon/Src/BPStructs.cpp b/Source/Core/VideoCommon/Src/BPStructs.cpp
index e330e984cb..171bfc5147 100644
--- a/Source/Core/VideoCommon/Src/BPStructs.cpp
+++ b/Source/Core/VideoCommon/Src/BPStructs.cpp
@@ -27,15 +27,20 @@
#include "OpcodeDecoding.h"
#include "VertexLoader.h"
#include "VertexShaderManager.h"
+#include "Thread.h"
using namespace BPFunctions;
+// FIXME: Hangs load-state, but should fix graphic-heavy games state loading
+//Common::CriticalSection s_bpCritical;
+
void BPInit()
{
memset(&bpmem, 0, sizeof(bpmem));
bpmem.bpMask = 0xFFFFFF;
}
+
// ----------------------------------------------------------------------------------------------------------
// Write to the Bypass Memory (Bypass Raster State Registers)
/* ------------------
@@ -73,6 +78,9 @@ void BPWritten(const Bypass& bp)
//default: break;
//}
+ // FIXME: Hangs load-state, but should fix graphic-heavy games state loading
+ //s_bpCritical.Enter();
+
FlushPipeline();
((u32*)&bpmem)[bp.address] = bp.newvalue;
@@ -605,10 +613,11 @@ void BPWritten(const Bypass& bp)
default:
WARN_LOG(VIDEO, "Unknown BP opcode: address = 0x%08x value = 0x%08x", bp.address, bp.newvalue);
break;
- }
-
- }
-
+ }
}
+
+ // FIXME: Hangs load-state, but should fix graphic-heavy games state loading
+ //s_bpCritical.Leave();
+}
}