Result ptmInit();
Result ptmExit();
+Result PTMU_GetShellState(Handle* servhandle, u8 *out);
Result PTMU_GetBatteryLevel(Handle* servhandle, u8 *out);
Result PTMU_GetBatteryChargeState(Handle* servhandle, u8 *out);
+Result PTMU_GetPedometerState(Handle* servhandle, u8 *out);
Result PTMU_GetTotalStepCount(Handle* servhandle, u32 *steps);
return svcCloseHandle(ptmHandle);
}
+Result PTMU_GetShellState(Handle* servhandle, u8 *out)
+{
+ if(!servhandle)servhandle=&ptmHandle;
+ Result ret=0;
+ u32 *cmdbuf = getThreadCommandBuffer();
+
+ cmdbuf[0] = 0x00060000;
+
+ if((ret = svcSendSyncRequest(*servhandle))!=0)return ret;
+
+ *out = (u8)cmdbuf[2];
+
+ return (Result)cmdbuf[1];
+}
+
Result PTMU_GetBatteryLevel(Handle* servhandle, u8 *out)
{
if(!servhandle)servhandle=&ptmHandle;
return (Result)cmdbuf[1];
}
+Result PTMU_GetPedometerState(Handle* servhandle, u8 *out)
+{
+ if(!servhandle)servhandle=&ptmHandle;
+ Result ret=0;
+ u32 *cmdbuf = getThreadCommandBuffer();
+
+ cmdbuf[0] = 0x00090000;
+
+ if((ret = svcSendSyncRequest(*servhandle))!=0)return ret;
+
+ *out = (u8)cmdbuf[2];
+
+ return (Result)cmdbuf[1];
+}
+
Result PTMU_GetTotalStepCount(Handle* servhandle, u32 *steps)
{
if(!servhandle)servhandle=&ptmHandle;