Changes

Jump to navigation Jump to search
3,993 bytes added ,  19:34, 27 November 2020
Line 16: Line 16:  
| 31 || [[#ActivateKeyboard]]
 
| 31 || [[#ActivateKeyboard]]
 
|-
 
|-
| 32 || [6.0.0+] SendKeyboardLockKeyEvent
+
| 32 || [6.0.0+] [[#SendKeyboardLockKeyEvent]]
 
|-
 
|-
| 40 || AcquireXpadIdEventHandle
+
| 40 || [[#AcquireXpadIdEventHandle]]
 
|-
 
|-
| 41 || ReleaseXpadIdEventHandle
+
| 41 || [[#ReleaseXpadIdEventHandle]]
 
|-
 
|-
| 51 || ActivateXpad
+
| 51 || [[#ActivateXpad]]
 
|-
 
|-
| 55 || GetXpadIds
+
| 55 || [[#GetXpadIds]]
 
|-
 
|-
| 56 || ActivateJoyXpad
+
| 56 || [[#ActivateJoyXpad]]
 
|-
 
|-
| 58 || GetJoyXpadLifoHandle
+
| 58 || [[#GetJoyXpadLifoHandle]]
 
|-
 
|-
| 59 || GetJoyXpadIds
+
| 59 || [[#GetJoyXpadIds]]
 
|-
 
|-
| 60 || ActivateSixAxisSensor
+
| 60 || [[#ActivateSixAxisSensor]]
 
|-
 
|-
| 61 || DeactivateSixAxisSensor
+
| 61 || [[#DeactivateSixAxisSensor]]
 
|-
 
|-
| 62 || GetSixAxisSensorLifoHandle
+
| 62 || [[#GetSixAxisSensorLifoHandle]]
 
|-
 
|-
| 63 || ActivateJoySixAxisSensor
+
| 63 || [[#ActivateJoySixAxisSensor]]
 
|-
 
|-
| 64 || DeactivateJoySixAxisSensor
+
| 64 || [[#DeactivateJoySixAxisSensor]]
 
|-
 
|-
| 65 || GetJoySixAxisSensorLifoHandle
+
| 65 || [[#GetJoySixAxisSensorLifoHandle]]
 
|-
 
|-
 
| 66 || [[#StartSixAxisSensor]]
 
| 66 || [[#StartSixAxisSensor]]
Line 258: Line 258:  
| 529 || [8.0.0+] SetDisallowedPalmaConnection
 
| 529 || [8.0.0+] SetDisallowedPalmaConnection
 
|-
 
|-
| 1000 || SetNpadCommunicationMode
+
| 1000 || [[#SetNpadCommunicationMode]]
 
|-
 
|-
| 1001 || GetNpadCommunicationMode
+
| 1001 || [[#GetNpadCommunicationMode]]
 
|-
 
|-
| 1002 || [9.0.0+] SetTouchScreenConfiguration
+
| 1002 || [9.0.0+] [[#SetTouchScreenConfiguration]]
 
|-
 
|-
| 1003 || [9.0.0+] IsFirmwareUpdateNeededForNotification
+
| 1003 || [9.0.0+] [[#IsFirmwareUpdateNeededForNotification]]
 
|-
 
|-
| 2000 || [10.0.0+] ActivateDigitizer
+
| 2000 || [10.0.0+] [[#ActivateDigitizer]]
 
|}
 
|}
   Line 283: Line 283:  
== ActivateKeyboard ==
 
== ActivateKeyboard ==
 
Takes a PID and an [[AM_services|AppletResourceUserId]], no output.
 
Takes a PID and an [[AM_services|AppletResourceUserId]], no output.
 +
 +
== SendKeyboardLockKeyEvent ==
 +
Takes a PID, an u32 BitFlagSet [[#KeyboardLockKeyEvent]], and an [[AM_services|AppletResourceUserId]], no output.
 +
 +
This is identical to the hidsys cmd.
 +
 +
== AcquireXpadIdEventHandle ==
 +
Takes an input u64, returns an output handle.
 +
 +
[10.0.0+] Stubbed, just returns 0.
 +
 +
== ReleaseXpadIdEventHandle ==
 +
Takes an input u64, no output.
 +
 +
[10.0.0+] Stubbed, just returns 0.
 +
 +
== ActivateXpad ==
 +
Takes a PID, an u32 "nn::hid::BasicXpadId", an [[AM_services|AppletResourceUserId]], no output.
 +
 +
[10.0.0+] Stubbed, just returns 0.
 +
 +
== GetXpadIds ==
 +
Takes a type-0xA output buffer containing an array of u32 "nn::hid::BasicXpadId", returns an output s64 total_out (which is exposed by sdknso as a s32).
 +
 +
[10.0.0+] Now returns a hard-coded list of Ids.
 +
 +
== ActivateJoyXpad ==
 +
Takes an input u32 "nn::hid::JoyXpadId", no output.
 +
 +
[10.0.0+] Stubbed, just returns 0.
 +
 +
== GetJoyXpadLifoHandle ==
 +
Takes an input u32 "nn::hid::JoyXpadId", returns an output handle.
 +
 +
[10.0.0+] Stubbed, just returns 0.
 +
 +
== GetJoyXpadIds ==
 +
Takes a type-0xA output buffer containing an array of u32 "nn::hid::BasicXpadId", returns an output s64.
 +
 +
[10.0.0+] Stubbed, just returns 0.
 +
 +
== ActivateSixAxisSensor ==
 +
Takes an input u32 "nn::hid::JoyXpadId", no output.
 +
 +
[10.0.0+] Stubbed, just returns 0.
 +
 +
== DeactivateSixAxisSensor ==
 +
Takes an input u32 "nn::hid::JoyXpadId", no output.
 +
 +
[10.0.0+] Stubbed, just returns 0.
 +
 +
== GetSixAxisSensorLifoHandle ==
 +
Takes an input u32 "nn::hid::JoyXpadId", returns an output handle.
 +
 +
[10.0.0+] Stubbed, just returns 0.
 +
 +
== ActivateJoySixAxisSensor ==
 +
Takes an input u32 "nn::hid::JoyXpadId", no output.
 +
 +
[10.0.0+] Stubbed, just returns 0.
 +
 +
== DeactivateJoySixAxisSensor ==
 +
Takes an input u32 "nn::hid::JoyXpadId", no output.
 +
 +
[10.0.0+] Stubbed, just returns 0.
 +
 +
== GetJoySixAxisSensorLifoHandle ==
 +
Takes an input u32 "nn::hid::JoyXpadId", returns an output handle.
 +
 +
[10.0.0+] Stubbed, just returns 0.
    
== StartSixAxisSensor ==
 
== StartSixAxisSensor ==
Line 380: Line 450:     
== DeactivateNpad ==
 
== DeactivateNpad ==
Takes a PID-descriptor and an [[AM_services|AppletResourceUserId]]. No output.
+
Takes a PID and an [[AM_services|AppletResourceUserId]]. No output.
    
This just returns 0.
 
This just returns 0.
 +
 +
[10.0.0+] sdknso now uses the hiddbg [[#DeactivateNpad_2|cmd]] instead.
    
== AcquireNpadStyleSetUpdateEventHandle ==
 
== AcquireNpadStyleSetUpdateEventHandle ==
Line 462: Line 534:  
Takes a PID, a [[#NpadStyleSet]], an [[AM_services|AppletResourceUserId]], a [[#NpadButtonSet]], no output.
 
Takes a PID, a [[#NpadStyleSet]], an [[AM_services|AppletResourceUserId]], a [[#NpadButtonSet]], no output.
   −
Only 1 bit can be set in the [[#NpadStyleSet]].
+
Exactly 1 bit must be set in the [[#NpadStyleSet]]. Multiple button bits can be set.
 +
 
 +
This assigns the button(s) which trigger the CaptureButton.
    
== ClearNpadCaptureButtonAssignment ==
 
== ClearNpadCaptureButtonAssignment ==
Line 605: Line 679:  
Takes an input u32, returns an output bool.
 
Takes an input u32, returns an output bool.
   −
sdknso only exposes the hidsys version of this cmd.
+
sdknso exposes this under "nn::hid::system::". [10.0.0+] sdknso now only exposes the hidsys version of this cmd.
    
== HasLeftRightBattery ==
 
== HasLeftRightBattery ==
 
Takes an input u32, returns two output bools.
 
Takes an input u32, returns two output bools.
   −
sdknso only exposes the hidsys version of this cmd.
+
sdknso exposes this under "nn::hid::system::". [10.0.0+] sdknso now only exposes the hidsys version of this cmd.
    
== GetNpadInterfaceType ==
 
== GetNpadInterfaceType ==
Line 617: Line 691:  
The NpadInterfaceType must be 1-4, otherwise this will Abort.
 
The NpadInterfaceType must be 1-4, otherwise this will Abort.
   −
sdknso only exposes the hidsys version of this cmd.
+
sdknso exposes this under "nn::hid::system::". [10.0.0+] sdknso now only exposes the hidsys version of this cmd.
    
== GetNpadLeftRightInterfaceType ==
 
== GetNpadLeftRightInterfaceType ==
 
Takes an input u32 [[#NpadIdType]], returns two output u8s [[#NpadInterfaceType]].
 
Takes an input u32 [[#NpadIdType]], returns two output u8s [[#NpadInterfaceType]].
   −
sdknso only exposes the hidsys version of this cmd.
+
sdknso exposes this under "nn::hid::system::". [10.0.0+] sdknso now only exposes the hidsys version of this cmd.
    
== GetNpadOfHighestBatteryLevel ==
 
== GetNpadOfHighestBatteryLevel ==
 
Takes a PID, a type-0x9 input buffer containing an array of u32 [[#NpadIdType]], an u64 [[AM_services|AppletResourceUserId]], returns an output u32 [[#NpadIdType]].
 
Takes a PID, a type-0x9 input buffer containing an array of u32 [[#NpadIdType]], an u64 [[AM_services|AppletResourceUserId]], returns an output u32 [[#NpadIdType]].
 +
 +
[[#NpadIdType|Handheld]] is ignored.
 +
 +
== SetNpadCommunicationMode ==
 +
Takes a PID, an [[AM_services|AppletResourceUserId]], a s64 [[#NpadCommunicationMode]], no output.
 +
 +
== GetNpadCommunicationMode ==
 +
No input, returns an output s64 [[#NpadCommunicationMode]].
 +
 +
sdknso uses a switch-statement to determine the value to write to the output [[#NpadCommunicationMode]], with the s64 (written value is the same as the s64). sdknso will Abort if the s64 is not 0-3.
 +
 +
== SetTouchScreenConfiguration ==
 +
Takes a PID, a [[#TouchScreenConfigurationForNx]], an [[AM_services|AppletResourceUserId]], no output.
 +
 +
== IsFirmwareUpdateNeededForNotification ==
 +
Takes a PID, a s32, an [[AM_services|AppletResourceUserId]], returns an output bool.
 +
 +
sdknso passes hard-coded value 1 for the s32.
 +
 +
== ActivateDigitizer ==
 +
Takes a PID and an [[AM_services|AppletResourceUserId]], no output.
    
== IAppletResource ==
 
== IAppletResource ==
Line 694: Line 789:  
| 60 || [9.0.0+] ClearNpadSystemCommonPolicy
 
| 60 || [9.0.0+] ClearNpadSystemCommonPolicy
 
|-
 
|-
| 61 || [10.0.0+] DeactivateNpad
+
| 61 || [10.0.0+] [[#DeactivateNpad_2|DeactivateNpad]]
 
|-
 
|-
 
| 62 || [10.0.0+] ForceDisconnectNpad
 
| 62 || [10.0.0+] ForceDisconnectNpad
Line 890: Line 985:  
| 2002 || [10.0.0+] UnsetDigitizerAutoPilotState
 
| 2002 || [10.0.0+] UnsetDigitizerAutoPilotState
 
|}
 
|}
 +
 +
== DeactivateNpad ==
 +
Takes a PID and an [[AM_services|AppletResourceUserId]], no output.
 +
 +
This just returns 0.
    
== StartFirmwareUpdate ==
 
== StartFirmwareUpdate ==
Line 1,046: Line 1,146:  
! Cmd || Name
 
! Cmd || Name
 
|-
 
|-
| 31 || SendKeyboardLockKeyEvent
+
| 31 || [[#SendKeyboardLockKeyEvent_2|SendKeyboardLockKeyEvent]]
 
|-
 
|-
 
| 101 || AcquireHomeButtonEventHandle
 
| 101 || AcquireHomeButtonEventHandle
Line 1,110: Line 1,210:  
| 315 || [9.0.0+] GetAppletDetailedUiType
 
| 315 || [9.0.0+] GetAppletDetailedUiType
 
|-
 
|-
| 316 || [10.0.0+] GetNpadInterfaceType
+
| 316 || [10.0.0+] [[#GetNpadInterfaceType]]
 
|-
 
|-
| 317 || [10.0.0+] GetNpadLeftRightInterfaceType
+
| 317 || [10.0.0+] [[#GetNpadLeftRightInterfaceType]]
 
|-
 
|-
| 318 || [10.0.0+] HasBattery
+
| 318 || [10.0.0+] [[#HasBattery]]
 
|-
 
|-
| 319 || [10.0.0+] HasLeftRightBattery
+
| 319 || [10.0.0+] [[#HasLeftRightBattery]]
 
|-
 
|-
 
| 321 || [3.0.0+] [[#GetUniquePadsFromNpad]]
 
| 321 || [3.0.0+] [[#GetUniquePadsFromNpad]]
Line 1,404: Line 1,504:  
| 1283 || [10.0.0+] [[#GetHidButtonConfigRight]]
 
| 1283 || [10.0.0+] [[#GetHidButtonConfigRight]]
 
|}
 
|}
 +
 +
== SendKeyboardLockKeyEvent ==
 +
Takes an u32 BitFlagSet [[#KeyboardLockKeyEvent]], no output.
    
== GetMaskedSupportedNpadStyleSet ==
 
== GetMaskedSupportedNpadStyleSet ==
Line 5,193: Line 5,296:  
| Reserved
 
| Reserved
 
|}
 
|}
 +
 +
= TouchScreenConfigurationForNx =
 +
This is "nn::hid::TouchScreenConfigurationForNx". This is a 0x10-byte struct with 1-byte alignment.
    
= InputSourceState =
 
= InputSourceState =
Line 5,589: Line 5,695:  
= KeyboardKeySet =
 
= KeyboardKeySet =
 
This is "nn::hid::KeyboardKeySet". This is a BitFlagSet object for [[#KeyboardKey]].
 
This is "nn::hid::KeyboardKeySet". This is a BitFlagSet object for [[#KeyboardKey]].
 +
 +
= KeyboardLockKeyEvent =
 +
This is "nn::hid::KeyboardLockKeyEvent" / "nn::hid::system::KeyboardLockKeyEvent".
    
= BasicXpadButtonSet =
 
= BasicXpadButtonSet =
Line 5,983: Line 6,092:  
|-
 
|-
 
| 1 || Single
 
| 1 || Single
 +
|}
 +
 +
= NpadCommunicationMode =
 +
This is "nn::hid::NpadCommunicationMode".
 +
 +
{| class="wikitable" border="1"
 +
!  Value
 +
!  Description
 +
|-
 +
| 0 ||
 +
|-
 +
| 1 ||
 +
|-
 +
| 2 ||
 +
|-
 +
| 3 ||
 
|}
 
|}
  

Navigation menu