From 8d177742ae929559545fdc409695b901897a7804 Mon Sep 17 00:00:00 2001 From: Kartik Date: Mon, 10 Jul 2017 18:13:24 +0530 Subject: [PATCH] Add PTMU_GetAdapterState (#361) --- libctru/include/3ds/services/ptmu.h | 5 +++++ libctru/source/services/ptmu.c | 13 +++++++++++++ 2 files changed, 18 insertions(+) diff --git a/libctru/include/3ds/services/ptmu.h b/libctru/include/3ds/services/ptmu.h index a5822ce..1ba4e97 100644 --- a/libctru/include/3ds/services/ptmu.h +++ b/libctru/include/3ds/services/ptmu.h @@ -40,3 +40,8 @@ Result PTMU_GetPedometerState(u8 *out); */ Result PTMU_GetTotalStepCount(u32 *steps); +/** + * @brief Gets whether the adapter is plugged in or not + * @param out Pointer to write the adapter state to. + */ +Result PTMU_GetAdapterState(bool *out); diff --git a/libctru/source/services/ptmu.c b/libctru/source/services/ptmu.c index e302e63..8db305d 100644 --- a/libctru/source/services/ptmu.c +++ b/libctru/source/services/ptmu.c @@ -94,3 +94,16 @@ Result PTMU_GetTotalStepCount(u32 *steps) return (Result)cmdbuf[1]; } +Result PTMU_GetAdapterState(bool *out) +{ + Result ret=0; + u32 *cmdbuf = getThreadCommandBuffer(); + + cmdbuf[0] = IPC_MakeHeader(0x5,0,0); // 0x50000 + + if(R_FAILED(ret = svcSendSyncRequest(ptmuHandle)))return ret; + + *out = cmdbuf[2] & 0xFF; + + return (Result)cmdbuf[1]; +}