Difference between revisions of "IRRST Shared Memory"

From 3dbrew
Jump to navigation Jump to search
Line 22: Line 22:
 
| Index in the following array which was last updated by IR module.
 
| Index in the following array which was last updated by IR module.
 
|-
 
|-
| 0x24
+
| 0x18
 
| 0x80
 
| 0x80
 
| Array of 8 entries, where each entry(see below) is 0x10-bytes.
 
| Array of 8 entries, where each entry(see below) is 0x10-bytes.
Line 37: Line 37:
 
|-
 
|-
 
| 0x0
 
| 0x0
| 0x2
+
| 0x4
| 16bit value (probably C-Stick)
+
| PAD state
|-
 
| 0x2
 
| 0x2
 
| 16bit value (probably C-Stick)
 
 
|-
 
|-
 
| 0x4
 
| 0x4
 
| 0x4
 
| 0x4
| PAD state
+
| ?
 
|-
 
|-
 
| 0x8
 
| 0x8
Line 53: Line 49:
 
|-
 
|-
 
| 0xC
 
| 0xC
| 0x4
+
| 0x2
| ?
+
| 16bit value (probably C-Stick)
 +
|-
 +
| 0xE
 +
| 0x2
 +
| 16bit value (probably C-Stick)
 
|}
 
|}

Revision as of 05:19, 14 October 2014

This is the shared-memory for "ir:rst". The additional New 3DS HID data is stored here. The structure of this is similar to the HID_Shared_Memory sections.

The total size of this shared-mem is 0x98-bytes.

Offset 0x0

Relative offset Size Description
0x0 0x8 svcGetSystemTick tick-count output, for when IR module updates entry index0 in the below array.
0x8 0x8 Before the above tick-count field is updated, that value is copied into this field. Therefore, this contains the tick-count for the previous time that entry index0 in the below array was updated by IR module.
0x10 0x4 Index in the following array which was last updated by IR module.
0x18 0x80 Array of 8 entries, where each entry(see below) is 0x10-bytes.

IR module first updates index0, then index1, and so on. When updating the array when the index is already 7, the index is reset to 0.

Entry format

Relative offset Size Description
0x0 0x4 PAD state
0x4 0x4 ?
0x8 0x4 ?
0xC 0x2 16bit value (probably C-Stick)
0xE 0x2 16bit value (probably C-Stick)