summaryrefslogtreecommitdiffstats
path: root/src/core/hle/service/apt/apt.cpp
diff options
context:
space:
mode:
authorJamePeng <jame_peng@sina.com>2016-03-28 23:25:05 +0200
committerJamePeng <jame_peng@sina.com>2016-04-04 20:04:58 +0200
commitaf9a8258b93e4fd6a0fc1980fadfd07330d00de2 (patch)
tree77d68557293259917538b36f2eb8f5d00887dd48 /src/core/hle/service/apt/apt.cpp
parentAppend the missing function name"GetAppletInfo" to APT:A (diff)
downloadyuzu-af9a8258b93e4fd6a0fc1980fadfd07330d00de2.tar
yuzu-af9a8258b93e4fd6a0fc1980fadfd07330d00de2.tar.gz
yuzu-af9a8258b93e4fd6a0fc1980fadfd07330d00de2.tar.bz2
yuzu-af9a8258b93e4fd6a0fc1980fadfd07330d00de2.tar.lz
yuzu-af9a8258b93e4fd6a0fc1980fadfd07330d00de2.tar.xz
yuzu-af9a8258b93e4fd6a0fc1980fadfd07330d00de2.tar.zst
yuzu-af9a8258b93e4fd6a0fc1980fadfd07330d00de2.zip
Diffstat (limited to '')
-rw-r--r--src/core/hle/service/apt/apt.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/core/hle/service/apt/apt.cpp b/src/core/hle/service/apt/apt.cpp
index a49365287..6d72e8188 100644
--- a/src/core/hle/service/apt/apt.cpp
+++ b/src/core/hle/service/apt/apt.cpp
@@ -397,6 +397,23 @@ void GetAppletInfo(Service::Interface* self) {
LOG_WARNING(Service_APT, "(stubbed) called appid=%u", app_id);
}
+void GetStartupArgument(Service::Interface* self) {
+ u32* cmd_buff = Kernel::GetCommandBuffer();
+ u32 parameter_size = cmd_buff[1];
+ StartupArgumentType startup_argument_type = static_cast<StartupArgumentType>(cmd_buff[2]);
+
+ if (parameter_size >= 0x300) {
+ LOG_ERROR(Service_APT, "Parameter size is outside the valid range (capped to 0x300): parameter_size=0x%08x", parameter_size);
+ return;
+ }
+
+ LOG_WARNING(Service_APT,"(stubbed) called startup_argument_type=%u , parameter_size=0x%08x , parameter_value=0x%08x",
+ startup_argument_type, parameter_size, Memory::Read32(cmd_buff[41]));
+
+ cmd_buff[1] = RESULT_SUCCESS.raw;
+ cmd_buff[2] = (parameter_size > 0) ? 1 : 0;
+}
+
void Init() {
AddService(new APT_A_Interface);
AddService(new APT_S_Interface);