Difference between revisions of "Vpad.rpl"
Jump to navigation
Jump to search
NWPlayer123 (talk | contribs) (More data) |
NWPlayer123 (talk | contribs) (Added more data, converted values) |
||
Line 20: | Line 20: | ||
!Description | !Description | ||
|- | |- | ||
− | | | + | |2 |
|2 | |2 | ||
|Buttons, ABXY, Left, Right, Up, Down in that order (bits) | |Buttons, ABXY, Left, Right, Up, Down in that order (bits) | ||
|- | |- | ||
− | | | + | |3 |
|1 | |1 | ||
|Buttons, ZL, ZR, L, R, +, -, Power/Home, Sync in that order (bits) | |Buttons, ZL, ZR, L, R, +, -, Power/Home, Sync in that order (bits) | ||
|- | |- | ||
− | | | + | |12 |
|8 | |8 | ||
|Left Joystick, vectors for X and Y | |Left Joystick, vectors for X and Y | ||
|- | |- | ||
− | | | + | |20 |
|8 | |8 | ||
|Right Joystick, vectors for X and Y | |Right Joystick, vectors for X and Y | ||
|- | |- | ||
− | | | + | !colspan="3"|Touchscreen Input |
+ | |- | ||
+ | |82 | ||
|2 | |2 | ||
|Touchscreen X | |Touchscreen X | ||
|- | |- | ||
− | | | + | |84 |
|2 | |2 | ||
|Touchscreen Y | |Touchscreen Y | ||
|- | |- | ||
− | | | + | |86 |
|2 | |2 | ||
|Flag for if touchscreen is currently being touched (1 = Yes, 0 = No) | |Flag for if touchscreen is currently being touched (1 = Yes, 0 = No) | ||
|- | |- | ||
− | | | + | |88 |
|2 | |2 | ||
|Coordinate validation (0 = All Valid, 1 = Invalid X, 2 = Invalid Y, 3 = Both Invalid) | |Coordinate validation (0 = All Valid, 1 = Invalid X, 2 = Invalid Y, 3 = Both Invalid) | ||
|- | |- | ||
− | | | + | |90 |
|2 | |2 | ||
|Modified Touchscreen X? | |Modified Touchscreen X? | ||
|- | |- | ||
− | | | + | |92 |
|2 | |2 | ||
|Modified Touchscreen Y? | |Modified Touchscreen Y? | ||
|- | |- | ||
− | | | + | |94 |
|2 | |2 | ||
|Modified Flag for if touchscreen is currently being touched (1 = Yes, 0 = No)? | |Modified Flag for if touchscreen is currently being touched (1 = Yes, 0 = No)? | ||
|- | |- | ||
− | | | + | |96 |
|2 | |2 | ||
|Modified Coordinate validation (0 = All Valid, 1 = Invalid X, 2 = Invalid Y, 3 = Both Invalid)? | |Modified Coordinate validation (0 = All Valid, 1 = Invalid X, 2 = Invalid Y, 3 = Both Invalid)? | ||
|- | |- | ||
− | | | + | |98 |
|2 | |2 | ||
|Modified Touchscreen X? | |Modified Touchscreen X? | ||
|- | |- | ||
− | | | + | |100 |
|2 | |2 | ||
|Modified Touchscreen Y? | |Modified Touchscreen Y? | ||
|- | |- | ||
− | | | + | |102 |
|2 | |2 | ||
|Modified Flag for if touchscreen is currently being touched (1 = Yes, 0 = No)? | |Modified Flag for if touchscreen is currently being touched (1 = Yes, 0 = No)? | ||
|- | |- | ||
− | | | + | |104 |
|2 | |2 | ||
|Modified Coordinate validation (0 = All Valid, 1 = Invalid X, 2 = Invalid Y, 3 = Both Invalid)? | |Modified Coordinate validation (0 = All Valid, 1 = Invalid X, 2 = Invalid Y, 3 = Both Invalid)? | ||
|- | |- | ||
− | | | + | !colspan="3"|Other Data |
+ | |- | ||
+ | |160 | ||
|1 | |1 | ||
|Something related to volume slider | |Something related to volume slider | ||
|- | |- | ||
− | | | + | |161 |
|1 | |1 | ||
|Battery related. Charge level? out of 6 | |Battery related. Charge level? out of 6 | ||
|- | |- | ||
− | | | + | |163 |
|1 | |1 | ||
|Something related to volume slider(one less than 0xA0) | |Something related to volume slider(one less than 0xA0) | ||
|- | |- | ||
− | | | + | |164 |
|8 | |8 | ||
|Padding? | |Padding? |
Revision as of 01:52, 5 April 2015
This controls communication with the Gamepad, using VPADBASE internally.
Functions
Name | Prototype | Description |
---|---|---|
VPADRead | int VPADRead(int padnum, void *buffer, int length, int *err); | Stores raw controller data in buffer |
Structures
VPAD Data
Can be gotten using VPADRead(), length seems to control the max amount of "datasets" to keep. A single dataset containing raw controller data is 0xAC bytes.
Offset | Length | Description |
---|---|---|
2 | 2 | Buttons, ABXY, Left, Right, Up, Down in that order (bits) |
3 | 1 | Buttons, ZL, ZR, L, R, +, -, Power/Home, Sync in that order (bits) |
12 | 8 | Left Joystick, vectors for X and Y |
20 | 8 | Right Joystick, vectors for X and Y |
Touchscreen Input | ||
82 | 2 | Touchscreen X |
84 | 2 | Touchscreen Y |
86 | 2 | Flag for if touchscreen is currently being touched (1 = Yes, 0 = No) |
88 | 2 | Coordinate validation (0 = All Valid, 1 = Invalid X, 2 = Invalid Y, 3 = Both Invalid) |
90 | 2 | Modified Touchscreen X? |
92 | 2 | Modified Touchscreen Y? |
94 | 2 | Modified Flag for if touchscreen is currently being touched (1 = Yes, 0 = No)? |
96 | 2 | Modified Coordinate validation (0 = All Valid, 1 = Invalid X, 2 = Invalid Y, 3 = Both Invalid)? |
98 | 2 | Modified Touchscreen X? |
100 | 2 | Modified Touchscreen Y? |
102 | 2 | Modified Flag for if touchscreen is currently being touched (1 = Yes, 0 = No)? |
104 | 2 | Modified Coordinate validation (0 = All Valid, 1 = Invalid X, 2 = Invalid Y, 3 = Both Invalid)? |
Other Data | ||
160 | 1 | Something related to volume slider |
161 | 1 | Battery related. Charge level? out of 6 |
163 | 1 | Something related to volume slider(one less than 0xA0) |
164 | 8 | Padding? |