HID services: Difference between revisions

Line 2,266: Line 2,266:


The TransferMemory is created with an user-specified output buffer, with permissions=R--.
The TransferMemory is created with an user-specified output buffer, with permissions=R--.
The content of the TransferMemory depends of the [[#JoyPollingMode]]. This is used by GetJoyPollingReceivedData. Structure of the TransferMemory (DisableSixAxisPollingDataAccessor, EnableSixAxisPollingDataAccessor, JoyButtonOnlyPollingDataAccessor):
{| class="wikitable" border="1"
|-
! Offset || Size || Description
|-
| 0x0 || 0x4 || Result.
|-
| 0x0 || 0x4 || Padding.
|-
| 0x8 || 0x18 || Initialized sysmodule-side, not used by sdknso.
|-
| 0x20 || 0x8 || Latest entry.
|-
| 0x28 || 0x8 || Total entries.
|}
The entries specific to the [[#JoyPollingMode]] follow, with 0xA entries total. Each entry starts with an u64 timestamp. Structure for each mode, after the timestamp:
DisableSixAxisPollingDataAccessor:
{| class="wikitable" border="1"
|-
! Offset || Size || Description
|-
| 0x0 || 0x26 || Data
|-
| 0x26 || 0x1 || Size of data.
|-
| 0x27 || 0x1 || Padding
|-
| 0x28 || 0x8 || Timestamp
|}
JoyEnableSixAxisPollingDataAccessor:
{| class="wikitable" border="1"
|-
! Offset || Size || Description
|-
| 0x0 || 0x8 || Data
|-
| 0x8 || 0x1 || Size of data.
|-
| 0x9 || 0x7 || Padding
|-
| 0x10 || 0x8 || Timestamp
|}
JoyButtonOnlyPollingDataAccessor:
{| class="wikitable" border="1"
|-
! Offset || Size || Description
|-
| 0x0 || 0x2C || Data
|-
| 0x2C || 0x1 || Size of data.
|-
| 0x2D || 0x3 || Padding
|-
| 0x30 || 0x8 || Timestamp
|}


== DisableJoyPollingReceiveMode ==
== DisableJoyPollingReceiveMode ==