summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/core/hle/service/apt.cpp32
1 files changed, 31 insertions, 1 deletions
diff --git a/src/core/hle/service/apt.cpp b/src/core/hle/service/apt.cpp
index d73dadf5a..3753f1107 100644
--- a/src/core/hle/service/apt.cpp
+++ b/src/core/hle/service/apt.cpp
@@ -73,6 +73,36 @@ void ReceiveParameter(Service::Interface* self) {
73 WARN_LOG(KERNEL, "(STUBBED) called app_id=0x%08X, buffer_size=0x%08X", app_id, buffer_size); 73 WARN_LOG(KERNEL, "(STUBBED) called app_id=0x%08X, buffer_size=0x%08X", app_id, buffer_size);
74} 74}
75 75
76/**
77* APT_U::GlanceParameter service function
78* Inputs:
79* 1 : AppID
80* 2 : Parameter buffer size, max size is 0x1000
81* Outputs:
82* 1 : Result of function, 0 on success, otherwise error code
83* 2 : Unknown, for now assume AppID of the process which sent these parameters
84* 3 : Unknown, for now assume Signal type
85* 4 : Actual parameter buffer size, this is <= to the the input size
86* 5 : Value
87* 6 : Handle from the source process which set the parameters, likely used for shared memory
88* 7 : Size
89* 8 : Output parameter buffer ptr
90*/
91void GlanceParameter(Service::Interface* self) {
92 u32* cmd_buff = Service::GetCommandBuffer();
93 u32 app_id = cmd_buff[1];
94 u32 buffer_size = cmd_buff[2];
95 cmd_buff[1] = 0; // No error
96 cmd_buff[2] = 0;
97 cmd_buff[3] = static_cast<u32>(SignalType::AppJustStarted); // Signal type
98 cmd_buff[4] = 0;
99 cmd_buff[5] = 0;
100 cmd_buff[6] = 0;
101 cmd_buff[7] = 0;
102 cmd_buff[8] = 0;
103 WARN_LOG(KERNEL, "(STUBBED) called app_id=0x%08X, buffer_size=0x%08X", app_id, buffer_size);
104}
105
76const Interface::FunctionInfo FunctionTable[] = { 106const Interface::FunctionInfo FunctionTable[] = {
77 {0x00010040, GetLockHandle, "GetLockHandle"}, 107 {0x00010040, GetLockHandle, "GetLockHandle"},
78 {0x00020080, Initialize, "Initialize"}, 108 {0x00020080, Initialize, "Initialize"},
@@ -87,7 +117,7 @@ const Interface::FunctionInfo FunctionTable[] = {
87 {0x000B0040, InquireNotification, "InquireNotification"}, 117 {0x000B0040, InquireNotification, "InquireNotification"},
88 {0x000C0104, nullptr, "SendParameter"}, 118 {0x000C0104, nullptr, "SendParameter"},
89 {0x000D0080, ReceiveParameter, "ReceiveParameter"}, 119 {0x000D0080, ReceiveParameter, "ReceiveParameter"},
90 {0x000E0080, nullptr, "GlanceParameter"}, 120 {0x000E0080, GlanceParameter, "GlanceParameter"},
91 {0x000F0100, nullptr, "CancelParameter"}, 121 {0x000F0100, nullptr, "CancelParameter"},
92 {0x001000C2, nullptr, "DebugFunc"}, 122 {0x001000C2, nullptr, "DebugFunc"},
93 {0x001100C0, nullptr, "MapProgramIdForDebug"}, 123 {0x001100C0, nullptr, "MapProgramIdForDebug"},