HID services: Difference between revisions

No edit summary
Line 755: Line 755:


== GetUniquePadDeviceTypeSetInternal ==
== GetUniquePadDeviceTypeSetInternal ==
Takes an input u64 '''UniquePadId''', returns a "nn::hid::detail::DeviceTypeInternal".
Takes an input u64 '''UniquePadId''', returns an [[#DeviceTypeInternal]].
 
The output is an u32. [9.0.0+] The output is an u8 "nn::hidtypes::DeviceType".


== GetAbstractedPadHandles ==
== GetAbstractedPadHandles ==
Line 970: Line 968:
! Offset || Size || Description
! Offset || Size || Description
|-
|-
| 0x0 || 0x4 || Only one bit can be set, see below.
| 0x0 || 0x4 || [[#DeviceTypeInternal]]
|-
|-
| 0x4 || 0x4 || RGBA Single Body Color
| 0x4 || 0x4 || RGBA Single Body Color
Line 986: Line 984:
! Offset || Size || Description
! Offset || Size || Description
|-
|-
| 0x0 || 0x1 || Type value, must match certain values (not used with the below table).
| 0x0 || 0x1 || [[#DeviceTypeInternal]]
|-
|-
| 0x1 || 0x1 || [[#NpadInterfaceType]]. Similar to the field from the old struct.
| 0x1 || 0x1 || [[#NpadInterfaceType]]. Similar to the field from the old struct.
Line 1,003: Line 1,001:
This is a 0x10-byte struct. [9.0.0+] This is a 0x14-byte struct.
This is a 0x10-byte struct. [9.0.0+] This is a 0x14-byte struct.


Bits for the above type field:
== DeviceTypeInternal ==
This is an u32 "nn::hid::detail::DeviceTypeInternal".
 
[9.0.0+] This an u8 "nn::hidtypes::DeviceType".
 
Bits for "nn::hid::detail::DeviceTypeInternal", only 1 bit can be set:


{| class="wikitable" border="1"
{| class="wikitable" border="1"
Line 1,051: Line 1,054:
|}
|}


u8 for the above type field:
u8 values for "nn::hidtypes::DeviceType", must match one of the these values:


{| class="wikitable" border="1"
{| class="wikitable" border="1"