HID services: Difference between revisions
Line 402: | Line 402: | ||
The size of the first TransferMemory is 0x1000 with MemoryPermission=read-only, while the second one has size 0x7F000 with MemoryPermission=none. sdknso uses an user-specified buffer for this, with the second tmem immediately following the first one. sdknso later uses data at buf+0 for loading SevenSixAxisSensor state. | The size of the first TransferMemory is 0x1000 with MemoryPermission=read-only, while the second one has size 0x7F000 with MemoryPermission=none. sdknso uses an user-specified buffer for this, with the second tmem immediately following the first one. sdknso later uses data at buf+0 for loading SevenSixAxisSensor state. | ||
The data at tmem+0 has the following structure: | |||
{| class="wikitable" border="1" | |||
|- | |||
! Offset || Size || Description | |||
|- | |||
| 0x0 || 0x10 || Unused by sdknso. | |||
|- | |||
| 0x10 || 0x8 || Latest entry. | |||
|- | |||
| 0x18 || 0x8 || Total entries. | |||
|- | |||
| 0x20 || 0xA50(0x21*0x50) || Array of the below entries. | |||
|} | |||
Entry: | |||
{| class="wikitable" border="1" | |||
|- | |||
! Offset || Size || Description | |||
|- | |||
| 0x0 || 0x8 || Timestamp | |||
|- | |||
| 0x8 || 0x10 || Used by sdknso. | |||
|- | |||
| 0x10 || 0x40 || SevenSixAxisSensorState | |||
|} | |||
SevenSixAxisSensorState: | |||
{| class="wikitable" border="1" | |||
|- | |||
! Offset || Size || Description | |||
|- | |||
| 0x0 || 0x8 || First timestamp. | |||
|- | |||
| 0x8 || 0x8 || Second timestamp (in samples). | |||
|- | |||
| 0x10 || 0x8 || ? | |||
|- | |||
| 0x18 || 0x28 || float data | |||
|} | |||
== FinalizeSevenSixAxisSensor == | == FinalizeSevenSixAxisSensor == |