summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar bunnei2014-12-03 01:06:09 -0500
committerGravatar bunnei2014-12-09 19:07:14 -0500
commit3e1654eaa85830d68577e7b24f314940f4c3cb1f (patch)
treea8d63386692198cfcc807943d86ec4cefd098db7
parentGPU: Fixed bug in command list size decoding. (diff)
downloadyuzu-3e1654eaa85830d68577e7b24f314940f4c3cb1f.tar.gz
yuzu-3e1654eaa85830d68577e7b24f314940f4c3cb1f.tar.xz
yuzu-3e1654eaa85830d68577e7b24f314940f4c3cb1f.zip
GSP: Updated RegisterInterruptRelayQueue to return expected magic number.
-rw-r--r--src/core/hle/service/gsp_gpu.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/core/hle/service/gsp_gpu.cpp b/src/core/hle/service/gsp_gpu.cpp
index 0d3a52478..d9a76ab1b 100644
--- a/src/core/hle/service/gsp_gpu.cpp
+++ b/src/core/hle/service/gsp_gpu.cpp
@@ -162,7 +162,8 @@ static void RegisterInterruptRelayQueue(Service::Interface* self) {
162 162
163 _assert_msg_(GSP, (g_interrupt_event != 0), "handle is not valid!"); 163 _assert_msg_(GSP, (g_interrupt_event != 0), "handle is not valid!");
164 164
165 cmd_buff[2] = g_thread_id++; // ThreadID 165 cmd_buff[1] = 0x2A07; // Value verified by 3dmoo team, purpose unknown, but needed for GSP init
166 cmd_buff[2] = g_thread_id++; // Thread ID
166 cmd_buff[4] = g_shared_memory; // GSP shared memory 167 cmd_buff[4] = g_shared_memory; // GSP shared memory
167 168
168 Kernel::SignalEvent(g_interrupt_event); // TODO(bunnei): Is this correct? 169 Kernel::SignalEvent(g_interrupt_event); // TODO(bunnei): Is this correct?
@@ -305,6 +306,8 @@ static void ExecuteCommand(const Command& command, u32 thread_id) {
305/// This triggers handling of the GX command written to the command buffer in shared memory. 306/// This triggers handling of the GX command written to the command buffer in shared memory.
306static void TriggerCmdReqQueue(Service::Interface* self) { 307static void TriggerCmdReqQueue(Service::Interface* self) {
307 308
309 DEBUG_LOG(GSP, "called");
310
308 // Iterate through each thread's command queue... 311 // Iterate through each thread's command queue...
309 for (unsigned thread_id = 0; thread_id < 0x4; ++thread_id) { 312 for (unsigned thread_id = 0; thread_id < 0x4; ++thread_id) {
310 CommandBuffer* command_buffer = (CommandBuffer*)GetCommandBuffer(thread_id); 313 CommandBuffer* command_buffer = (CommandBuffer*)GetCommandBuffer(thread_id);