summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/core/hle/service/am/am.cpp60
-rw-r--r--src/core/hle/service/am/am.h12
2 files changed, 36 insertions, 36 deletions
diff --git a/src/core/hle/service/am/am.cpp b/src/core/hle/service/am/am.cpp
index 9c44e27c6..336593108 100644
--- a/src/core/hle/service/am/am.cpp
+++ b/src/core/hle/service/am/am.cpp
@@ -285,39 +285,28 @@ ISelfController::ISelfController(std::shared_ptr<NVFlinger::NVFlinger> nvflinger
285 285
286ISelfController::~ISelfController() = default; 286ISelfController::~ISelfController() = default;
287 287
288void ISelfController::SetFocusHandlingMode(Kernel::HLERequestContext& ctx) { 288void ISelfController::LockExit(Kernel::HLERequestContext& ctx) {
289 // Takes 3 input u8s with each field located immediately after the previous
290 // u8, these are bool flags. No output.
291 LOG_WARNING(Service_AM, "(STUBBED) called"); 289 LOG_WARNING(Service_AM, "(STUBBED) called");
292 290
293 IPC::RequestParser rp{ctx};
294
295 struct FocusHandlingModeParams {
296 u8 unknown0;
297 u8 unknown1;
298 u8 unknown2;
299 };
300 auto flags = rp.PopRaw<FocusHandlingModeParams>();
301
302 IPC::ResponseBuilder rb{ctx, 2}; 291 IPC::ResponseBuilder rb{ctx, 2};
303 rb.Push(RESULT_SUCCESS); 292 rb.Push(RESULT_SUCCESS);
304} 293}
305 294
306void ISelfController::SetRestartMessageEnabled(Kernel::HLERequestContext& ctx) { 295void ISelfController::UnlockExit(Kernel::HLERequestContext& ctx) {
307 LOG_WARNING(Service_AM, "(STUBBED) called"); 296 LOG_WARNING(Service_AM, "(STUBBED) called");
308 297
309 IPC::ResponseBuilder rb{ctx, 2}; 298 IPC::ResponseBuilder rb{ctx, 2};
310 rb.Push(RESULT_SUCCESS); 299 rb.Push(RESULT_SUCCESS);
311} 300}
312 301
313void ISelfController::SetPerformanceModeChangedNotification(Kernel::HLERequestContext& ctx) { 302void ISelfController::GetLibraryAppletLaunchableEvent(Kernel::HLERequestContext& ctx) {
314 IPC::RequestParser rp{ctx}; 303 LOG_WARNING(Service_AM, "(STUBBED) called");
315 304
316 bool flag = rp.Pop<bool>(); 305 launchable_event.writable->Signal();
317 LOG_WARNING(Service_AM, "(STUBBED) called flag={}", flag);
318 306
319 IPC::ResponseBuilder rb{ctx, 2}; 307 IPC::ResponseBuilder rb{ctx, 2, 1};
320 rb.Push(RESULT_SUCCESS); 308 rb.Push(RESULT_SUCCESS);
309 rb.PushCopyObjects(launchable_event.readable);
321} 310}
322 311
323void ISelfController::SetScreenShotPermission(Kernel::HLERequestContext& ctx) { 312void ISelfController::SetScreenShotPermission(Kernel::HLERequestContext& ctx) {
@@ -337,40 +326,51 @@ void ISelfController::SetOperationModeChangedNotification(Kernel::HLERequestCont
337 rb.Push(RESULT_SUCCESS); 326 rb.Push(RESULT_SUCCESS);
338} 327}
339 328
340void ISelfController::SetOutOfFocusSuspendingEnabled(Kernel::HLERequestContext& ctx) { 329void ISelfController::SetPerformanceModeChangedNotification(Kernel::HLERequestContext& ctx) {
341 // Takes 3 input u8s with each field located immediately after the previous
342 // u8, these are bool flags. No output.
343 IPC::RequestParser rp{ctx}; 330 IPC::RequestParser rp{ctx};
344 331
345 bool enabled = rp.Pop<bool>(); 332 bool flag = rp.Pop<bool>();
346 LOG_WARNING(Service_AM, "(STUBBED) called enabled={}", enabled); 333 LOG_WARNING(Service_AM, "(STUBBED) called flag={}", flag);
347 334
348 IPC::ResponseBuilder rb{ctx, 2}; 335 IPC::ResponseBuilder rb{ctx, 2};
349 rb.Push(RESULT_SUCCESS); 336 rb.Push(RESULT_SUCCESS);
350} 337}
351 338
352void ISelfController::LockExit(Kernel::HLERequestContext& ctx) { 339void ISelfController::SetFocusHandlingMode(Kernel::HLERequestContext& ctx) {
340 // Takes 3 input u8s with each field located immediately after the previous
341 // u8, these are bool flags. No output.
353 LOG_WARNING(Service_AM, "(STUBBED) called"); 342 LOG_WARNING(Service_AM, "(STUBBED) called");
354 343
344 IPC::RequestParser rp{ctx};
345
346 struct FocusHandlingModeParams {
347 u8 unknown0;
348 u8 unknown1;
349 u8 unknown2;
350 };
351 auto flags = rp.PopRaw<FocusHandlingModeParams>();
352
355 IPC::ResponseBuilder rb{ctx, 2}; 353 IPC::ResponseBuilder rb{ctx, 2};
356 rb.Push(RESULT_SUCCESS); 354 rb.Push(RESULT_SUCCESS);
357} 355}
358 356
359void ISelfController::UnlockExit(Kernel::HLERequestContext& ctx) { 357void ISelfController::SetRestartMessageEnabled(Kernel::HLERequestContext& ctx) {
360 LOG_WARNING(Service_AM, "(STUBBED) called"); 358 LOG_WARNING(Service_AM, "(STUBBED) called");
361 359
362 IPC::ResponseBuilder rb{ctx, 2}; 360 IPC::ResponseBuilder rb{ctx, 2};
363 rb.Push(RESULT_SUCCESS); 361 rb.Push(RESULT_SUCCESS);
364} 362}
365 363
366void ISelfController::GetLibraryAppletLaunchableEvent(Kernel::HLERequestContext& ctx) { 364void ISelfController::SetOutOfFocusSuspendingEnabled(Kernel::HLERequestContext& ctx) {
367 LOG_WARNING(Service_AM, "(STUBBED) called"); 365 // Takes 3 input u8s with each field located immediately after the previous
366 // u8, these are bool flags. No output.
367 IPC::RequestParser rp{ctx};
368 368
369 launchable_event.writable->Signal(); 369 bool enabled = rp.Pop<bool>();
370 LOG_WARNING(Service_AM, "(STUBBED) called enabled={}", enabled);
370 371
371 IPC::ResponseBuilder rb{ctx, 2, 1}; 372 IPC::ResponseBuilder rb{ctx, 2};
372 rb.Push(RESULT_SUCCESS); 373 rb.Push(RESULT_SUCCESS);
373 rb.PushCopyObjects(launchable_event.readable);
374} 374}
375 375
376void ISelfController::SetScreenShotImageOrientation(Kernel::HLERequestContext& ctx) { 376void ISelfController::SetScreenShotImageOrientation(Kernel::HLERequestContext& ctx) {
diff --git a/src/core/hle/service/am/am.h b/src/core/hle/service/am/am.h
index 565dd8e9e..222e6bcde 100644
--- a/src/core/hle/service/am/am.h
+++ b/src/core/hle/service/am/am.h
@@ -117,17 +117,17 @@ public:
117 ~ISelfController() override; 117 ~ISelfController() override;
118 118
119private: 119private:
120 void SetFocusHandlingMode(Kernel::HLERequestContext& ctx);
121 void SetRestartMessageEnabled(Kernel::HLERequestContext& ctx);
122 void SetPerformanceModeChangedNotification(Kernel::HLERequestContext& ctx);
123 void SetOperationModeChangedNotification(Kernel::HLERequestContext& ctx);
124 void SetOutOfFocusSuspendingEnabled(Kernel::HLERequestContext& ctx);
125 void LockExit(Kernel::HLERequestContext& ctx); 120 void LockExit(Kernel::HLERequestContext& ctx);
126 void UnlockExit(Kernel::HLERequestContext& ctx); 121 void UnlockExit(Kernel::HLERequestContext& ctx);
127 void GetLibraryAppletLaunchableEvent(Kernel::HLERequestContext& ctx); 122 void GetLibraryAppletLaunchableEvent(Kernel::HLERequestContext& ctx);
123 void SetScreenShotPermission(Kernel::HLERequestContext& ctx);
124 void SetOperationModeChangedNotification(Kernel::HLERequestContext& ctx);
125 void SetPerformanceModeChangedNotification(Kernel::HLERequestContext& ctx);
126 void SetFocusHandlingMode(Kernel::HLERequestContext& ctx);
127 void SetRestartMessageEnabled(Kernel::HLERequestContext& ctx);
128 void SetOutOfFocusSuspendingEnabled(Kernel::HLERequestContext& ctx);
128 void SetScreenShotImageOrientation(Kernel::HLERequestContext& ctx); 129 void SetScreenShotImageOrientation(Kernel::HLERequestContext& ctx);
129 void CreateManagedDisplayLayer(Kernel::HLERequestContext& ctx); 130 void CreateManagedDisplayLayer(Kernel::HLERequestContext& ctx);
130 void SetScreenShotPermission(Kernel::HLERequestContext& ctx);
131 void SetHandlesRequestToDisplay(Kernel::HLERequestContext& ctx); 131 void SetHandlesRequestToDisplay(Kernel::HLERequestContext& ctx);
132 void SetIdleTimeDetectionExtension(Kernel::HLERequestContext& ctx); 132 void SetIdleTimeDetectionExtension(Kernel::HLERequestContext& ctx);
133 void GetIdleTimeDetectionExtension(Kernel::HLERequestContext& ctx); 133 void GetIdleTimeDetectionExtension(Kernel::HLERequestContext& ctx);