diff options
| author | Subv <subv2112@gmail.com> | 2014-11-23 11:06:54 -0500 | 
|---|---|---|
| committer | Subv <subv2112@gmail.com> | 2014-11-30 19:50:14 -0500 | 
| commit | 4cdaac44d300531eaffa29cb826183aaf905ee6f (patch) | |
| tree | e3cd1c3a2dfc9598b430d983fd8da52e3387c5d5 /src/core/hle | |
| parent | aa986370f3d19d93c24fcd158c551f2a994eec58 (diff) | |
PTM_U: Implemented the GetShellState function.
Diffstat (limited to 'src/core/hle')
| -rw-r--r-- | src/core/hle/service/ptm_u.cpp | 19 | 
1 files changed, 18 insertions, 1 deletions
diff --git a/src/core/hle/service/ptm_u.cpp b/src/core/hle/service/ptm_u.cpp index d9122dbbc..1ce32ee4a 100644 --- a/src/core/hle/service/ptm_u.cpp +++ b/src/core/hle/service/ptm_u.cpp @@ -11,13 +11,30 @@  namespace PTM_U { +static bool shell_open = true; + +/* + * PTM_User::GetShellState service function. + *  Outputs: + *      1 : Result of function, 0 on success, otherwise error code + *      2 : Whether the 3DS's physical shell casing is open (1) or closed (0) + */ +static void GetShellState(Service::Interface* self) { +    u32* cmd_buff = Service::GetCommandBuffer(); + +    cmd_buff[1] = 0; +    cmd_buff[2] = shell_open ? 1 : 0; + +    DEBUG_LOG(KERNEL, "PTM_U::GetShellState called"); +} +  const Interface::FunctionInfo FunctionTable[] = {      {0x00010002, nullptr,               "RegisterAlarmClient"},      {0x00020080, nullptr,               "SetRtcAlarm"},      {0x00030000, nullptr,               "GetRtcAlarm"},      {0x00040000, nullptr,               "CancelRtcAlarm"},      {0x00050000, nullptr,               "GetAdapterState"}, -    {0x00060000, nullptr,               "GetShellState"}, +    {0x00060000, GetShellState,         "GetShellState"},      {0x00070000, nullptr,               "GetBatteryLevel"},      {0x00080000, nullptr,               "GetBatteryChargeState"},      {0x00090000, nullptr,               "GetPedometerState"},  | 
