From 3171c3df690e9d4be1f5cdb4de6ca168422de78f Mon Sep 17 00:00:00 2001 From: noah the goodra Date: Fri, 24 Mar 2017 15:21:14 -0500 Subject: [PATCH] updated the implementation of GetAppletManInfo to include the latest information from 3dbrew --- src/core/hle/service/apt/apt.cpp | 6 +++--- src/core/hle/service/apt/apt.h | 8 ++++++++ 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/src/core/hle/service/apt/apt.cpp b/src/core/hle/service/apt/apt.cpp index 1517d3a2f..2d6da104a 100644 --- a/src/core/hle/service/apt/apt.cpp +++ b/src/core/hle/service/apt/apt.cpp @@ -132,14 +132,14 @@ void Enable(Service::Interface* self) { void GetAppletManInfo(Service::Interface* self) { u32* cmd_buff = Kernel::GetCommandBuffer(); - u32 unk = cmd_buff[1]; + AppletPosition applet_position = reinterpret_cast(cmd_buff[1]); cmd_buff[1] = RESULT_SUCCESS.raw; // No error - cmd_buff[2] = 0; + cmd_buff[2] = reinterpret_cast(applet_position); cmd_buff[3] = 0; cmd_buff[4] = static_cast(AppletId::HomeMenu); // Home menu AppID cmd_buff[5] = static_cast(AppletId::Application); // TODO(purpasmart96): Do this correctly - LOG_WARNING(Service_APT, "(STUBBED) called unk=0x%08X", unk); + LOG_WARNING(Service_APT, "(STUBBED) called unk=0x%08X", applet_position); } void IsRegistered(Service::Interface* self) { diff --git a/src/core/hle/service/apt/apt.h b/src/core/hle/service/apt/apt.h index e63b61450..b4b2ebfd6 100644 --- a/src/core/hle/service/apt/apt.h +++ b/src/core/hle/service/apt/apt.h @@ -113,6 +113,14 @@ enum class ScreencapPostPermission : u32 { EnableScreenshotPostingToMiiverse = 2, DisableScreenshotPostingToMiiverse = 3 }; +enum class AppletPosition : u32 { + POS_NONE = -1, + POS_APP = 0, + POS_APPLIB = 1, + POS_SYS = 2, + POS_SYSLIB = 3, + POS_RESIDENT = 4 +}; /// Send a parameter to the currently-running application, which will read it via ReceiveParameter void SendParameter(const MessageParameter& parameter);