HID services: Difference between revisions

No edit summary
(One intermediate revision by the same user not shown)
Line 7,849: Line 7,849:
|-
|-
| 0x0 || 0x8 || Buttons (only bit0 is used)
| 0x0 || 0x8 || Buttons (only bit0 is used)
|}
= PowerInfo =
This is "nn::hidtypes::PowerInfo".
{| class="wikitable" border="1"
|-
! Offset
! Size
! Description
|-
| 0x0 || 0x4 || BatteryLevel
|-
| 0x4 || 0x4 || [[#PowerAttribute]]
|}
= PowerAttribute =
This is "nn::hidtypes::PowerAttribute". This is a 32-bit flag.
{| class="wikitable" border="1"
!  Bits
!  Description
|-
| 0
| IsPowered
|-
| 1
| IsCharging
|}
= HdlsAttribute =
This is "nn::hidtypes::HdlsAttribute". This is a 32-bit flag.
{| class="wikitable" border="1"
!  Bits
!  Description
|-
| 0
| HasVirtualSixAxisSensorAcceleration
|-
| 1
| HasVirtualSixAxisSensorAngle
|}
|}


Line 7,925: Line 7,967:


= HdlsDeviceInfo =
= HdlsDeviceInfo =
This is a 0x10-byte struct.
This is "nn::hid::debug::HdlsDeviceInfo". This is a 0x10-byte struct.


{| class="wikitable" border="1"
{| class="wikitable" border="1"
Line 7,964: Line 8,006:


= HdlsState =
= HdlsState =
This is a 0x24-byte struct.
This is "nn::hid::debug::HdlsState". This is a 0x24-byte struct.


{| class="wikitable" border="1"
{| class="wikitable" border="1"
Line 7,992: Line 8,034:
! Offset || Size || Description
! Offset || Size || Description
|-
|-
| 0x0 || 0x4 || BatteryLevel for the main PowerInfo.
| 0x0 || 0x8 || [[#PowerInfo]]
|-
| 0x4 || 0x4 || Flags. Used to set the main PowerInfo for [[#NpadSystemProperties]]. Bit0 -> IsPowered, bit1 -> IsCharging.
|-
|-
| 0x8 || 0x8 || [[#NpadButton|Buttons]], masked with 0xfffffffff00fffff. See above table regarding HOME/Capture buttons.
| 0x8 || 0x8 || [[#NpadButton|Buttons]], masked with 0xfffffffff00fffff. See above table regarding HOME/Capture buttons.
Line 8,005: Line 8,045:
|}
|}


[12.0.0+] (0x0x40-bytes):
[12.0.0+] (0x40-bytes):
 
{| class="wikitable" border="1"
{...}
|-
! Offset || Size || Description
|-
| 0x0 || 0x8 || [[#PowerInfo]]
|-
| 0x8 || 0x8 || [[#NpadButton|Buttons]], masked with 0xfffffffff00fffff. See above table regarding HOME/Capture buttons.
|-
| 0x10 || 0x10(4*2*2) || Joystick data.
|-
| 0x20 || 0xC || VirtualSixAxisSensorAcceleration
|-
| 0x2C || 0xC || VirtualSixAxisSensorAngle
|-
| 0x38 || 0x4 || [[#HdlsAttribute]]
|-
| 0x3C || 0x1 || Indicator
|-
| 0x3D || 0x3 || Padding
|}


= DebugRegisteredDevice =
= DebugRegisteredDevice =