summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/core/hle/service/gsp.cpp71
1 files changed, 40 insertions, 31 deletions
diff --git a/src/core/hle/service/gsp.cpp b/src/core/hle/service/gsp.cpp
index 7c80ab8b5..df23ac542 100644
--- a/src/core/hle/service/gsp.cpp
+++ b/src/core/hle/service/gsp.cpp
@@ -13,37 +13,46 @@
13 13
14namespace GSP_GPU { 14namespace GSP_GPU {
15 15
16const HLE::FunctionDef FunctionTable[] = { 16void RegisterInterruptRelayQueue(Service::Interface* self) {
17 {0x00010082, NULL, "WriteHWRegs"}, 17 u32* cmd_buff = (u32*)HLE::GetPointer(HLE::CMD_BUFFER_ADDR + Service::kCommandHeaderOffset);
18 {0x00020084, NULL, "WriteHWRegsWithMask"}, 18 u32 flags = cmd_buff[1];
19 {0x00030082, NULL, "WriteHWRegRepeat"}, 19 u32 event_handle = cmd_buff[3]; // TODO(bunnei): Implement event handling
20 {0x00040080, NULL, "ReadHWRegs"}, 20 cmd_buff[4] = self->NewHandle();
21 {0x00050200, NULL, "SetBufferSwap"}, 21
22 {0x00060082, NULL, "SetCommandList"}, 22 return;
23 {0x000700C2, NULL, "RequestDma"}, 23}
24 {0x00080082, NULL, "FlushDataCache"}, 24
25 {0x00090082, NULL, "InvalidateDataCache"}, 25const Interface::FunctionInfo FunctionTable[] = {
26 {0x000A0044, NULL, "RegisterInterruptEvents"}, 26 {0x00010082, NULL, "WriteHWRegs"},
27 {0x000B0040, NULL, "SetLcdForceBlack"}, 27 {0x00020084, NULL, "WriteHWRegsWithMask"},
28 {0x000C0000, NULL, "TriggerCmdReqQueue"}, 28 {0x00030082, NULL, "WriteHWRegRepeat"},
29 {0x000D0140, NULL, "SetDisplayTransfer"}, 29 {0x00040080, NULL, "ReadHWRegs"},
30 {0x000E0180, NULL, "SetTextureCopy"}, 30 {0x00050200, NULL, "SetBufferSwap"},
31 {0x000F0200, NULL, "SetMemoryFill"}, 31 {0x00060082, NULL, "SetCommandList"},
32 {0x00100040, NULL, "SetAxiConfigQoSMode"}, 32 {0x000700C2, NULL, "RequestDma"},
33 {0x00110040, NULL, "SetPerfLogMode"}, 33 {0x00080082, NULL, "FlushDataCache"},
34 {0x00120000, NULL, "GetPerfLog"}, 34 {0x00090082, NULL, "InvalidateDataCache"},
35 {0x00130042, NULL, "RegisterInterruptRelayQueue"}, 35 {0x000A0044, NULL, "RegisterInterruptEvents"},
36 {0x00140000, NULL, "UnregisterInterruptRelayQueue"}, 36 {0x000B0040, NULL, "SetLcdForceBlack"},
37 {0x00150002, NULL, "TryAcquireRight"}, 37 {0x000C0000, NULL, "TriggerCmdReqQueue"},
38 {0x00160042, NULL, "AcquireRight"}, 38 {0x000D0140, NULL, "SetDisplayTransfer"},
39 {0x00170000, NULL, "ReleaseRight"}, 39 {0x000E0180, NULL, "SetTextureCopy"},
40 {0x00180000, NULL, "ImportDisplayCaptureInfo"}, 40 {0x000F0200, NULL, "SetMemoryFill"},
41 {0x00190000, NULL, "SaveVramSysArea"}, 41 {0x00100040, NULL, "SetAxiConfigQoSMode"},
42 {0x001A0000, NULL, "RestoreVramSysArea"}, 42 {0x00110040, NULL, "SetPerfLogMode"},
43 {0x001B0000, NULL, "ResetGpuCore"}, 43 {0x00120000, NULL, "GetPerfLog"},
44 {0x001C0040, NULL, "SetLedForceOff"}, 44 {0x00130042, RegisterInterruptRelayQueue, "RegisterInterruptRelayQueue"},
45 {0x001D0040, NULL, "SetTestCommand"}, 45 {0x00140000, NULL, "UnregisterInterruptRelayQueue"},
46 {0x001E0080, NULL, "SetInternalPriorities"}, 46 {0x00150002, NULL, "TryAcquireRight"},
47 {0x00160042, NULL, "AcquireRight"},
48 {0x00170000, NULL, "ReleaseRight"},
49 {0x00180000, NULL, "ImportDisplayCaptureInfo"},
50 {0x00190000, NULL, "SaveVramSysArea"},
51 {0x001A0000, NULL, "RestoreVramSysArea"},
52 {0x001B0000, NULL, "ResetGpuCore"},
53 {0x001C0040, NULL, "SetLedForceOff"},
54 {0x001D0040, NULL, "SetTestCommand"},
55 {0x001E0080, NULL, "SetInternalPriorities"},
47}; 56};
48 57
49//////////////////////////////////////////////////////////////////////////////////////////////////// 58////////////////////////////////////////////////////////////////////////////////////////////////////