SIO2 Command Sequence
The PS2 supports both DualShock and DualShock 2 controllers natively. However, certain games require DS2.
Input Format
Cmd Reply
42h ID_lo
??h ID_hi
??h Buttons_lo
??h Buttons_hi
---- transfer stops here if digital ----
??h Analog right joystick, y-axis (00h = upmost, 80h = centered, FFh = downmost)
??h Analog right joystick, x-axis (00h = leftmost, 80h = centered, FFh = rightmost)
??h Analog left joystick, y-axis (see above)
??h Analog right joystick, x-axis (see above)
---- transfer stops here if not DS2 ----
??h D-pad right pressure (00h = no pressure, FFh = max pressure)
??h D-pad left pressure
??h D-pad up pressure
??h D-pad down pressure
??h Triangle pressure
??h Circle pressure
??h Cross pressure
??h Square pressure
??h L1 pressure
??h R1 pressure
??h L2 pressure
??h R2 pressure
Button bits
0=pressed, 1=released
| bit | button |
|---|---|
| 0 | Select |
| 1 | L3 |
| 2 | R3 |
| 3 | Start |
| 4 | D-pad Up |
| 5 | D-pad Right |
| 6 | D-pad Down |
| 7 | D-pad Left |
| 8 | L2 |
| 9 | R2 |
| 10 | L1 |
| 11 | R1 |
| 12 | Triangle |
| 13 | Circle |
| 14 | Cross |
| 15 | Square |