Line 20:
Line 20:
! Input cmd u32 || Input cmd size || Reply size
! Input cmd u32 || Input cmd size || Reply size
|-
|-
β
| 0x00020000 || 0x4 || 0x8
+
| [[#0x00020000]] || 0x4 || 0x8
|-
|-
β
| 0x00020100 || 0x4 || 0x10
+
| [[#0x00020100]] || 0x4 || 0x10
|-
|-
β
| 0x00020101 || 0x4 || 0x8
+
| [[#0x00020101]] || 0x4 || 0x8
|-
|-
β
| 0x00020504 || 0x4 || 0x8
+
| [[#0x00020104]] || 0x4 || 0x8
|-
|-
β
| 0x00023104 || 0x4 || 0x8
+
| [[#0x00020204]] || 0x4 || 0x8
|-
|-
β
| 0x00023204 || 0x4 || 0x8
+
| [[#0x00020304]] || 0x4 || 0x8
|-
|-
β
| 0x04013104 || 0x8 || 0x8
+
| [[#0x00020404]] || 0x4 || 0x8
+
|-
+
| [[#0x00020504]] || 0x4 || 0x8
+
|-
+
| [[#0x00020A04]] || 0x4 || 0x14
+
|-
+
| [[#0x00023104]] || 0x4 || 0x8
+
|-
+
| [[#0x00023204]] || 0x4 || 0x8
+
|-
+
| [[#0x04013104]] || 0x8 || 0x8
|}
|}
Line 54:
Line 64:
== 0x00020101 ==
== 0x00020101 ==
This is used with EnableJoyPollingReceiveMode/GetJoyPollingReceivedData. Reply+0x4 is an u16 which is copied to an output struct, the [[HID_services#JoyPollingReceivedData|timestamp]] is also copied.
This is used with EnableJoyPollingReceiveMode/GetJoyPollingReceivedData. Reply+0x4 is an u16 which is copied to an output struct, the [[HID_services#JoyPollingReceivedData|timestamp]] is also copied.
+
+
== 0x00020104 ==
+
Reply+0x4 is the output 16bit value.
+
+
See [[#0x00020A04]].
+
+
== 0x00020204 ==
+
Reply+0x4 is the output 16bit value.
+
+
See [[#0x00020A04]].
+
+
== 0x00020304 ==
+
Reply+0x4 is the output 16bit value.
+
+
See [[#0x00020A04]].
+
+
== 0x00020404 ==
+
Reply+0x4 is the output 16bit value.
+
+
See [[#0x00020A04]].
== 0x00020504 ==
== 0x00020504 ==
Reply+0x4 is a s16 which is used with the output from calling a func (which uses various other cmds) to generate a value which is written to the output param.
Reply+0x4 is a s16 which is used with the output from calling a func (which uses various other cmds) to generate a value which is written to the output param.
+
+
== 0x00020A04 ==
+
The app uses cmd [[#0x00020000]] first. When u8 reply_x5 from that cmd is >=0x20, it proceeds to use cmd 0x00020A04 then returns. Otherwise, the following cmds are used with the output being copied to the output struct, then returns: [[#0x00020104]] (output_struct+0x0), [[#0x00020204]] (output_struct+0x2), [[#0x00020404]] (output_struct+0x6), [[#0x00020304]] (output_struct+0x4).
+
+
Reply:
+
+
{| class="wikitable" border="1"
+
|-
+
! Offset || Size || Description
+
|-
+
| 0x4 || 0x2 || 16bit value copied to output_struct+0x0.
+
|-
+
| 0x8 || 0x2 || 16bit value copied to output_struct+0x2.
+
|-
+
| 0xC || 0x2 || 16bit value copied to output_struct+0x4.
+
|-
+
| 0x10 || 0x2 || 16bit value copied to output_struct+0x6.
+
|}
== 0x00023104 ==
== 0x00023104 ==