Vpad.rpl: Difference between revisions

From WiiUBrew
Jump to navigation Jump to search
Added more data
Functions: VPADRead() does not return a pointer, and clarify some parameters
Line 8: Line 8:
|-
|-
|VPADRead
|VPADRead
|void *VPADRead(int chan, void *buffer, int length, int* err);
|int VPADRead(int padnum, void *buffer, int length, int *err);
|Stores raw controller data in buffer
|Stores raw controller data in buffer
|}
|}

Revision as of 23:44, 4 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

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.

Structure

Offset Length Description
0x2 2 Buttons, ABXY, Left, Right, Up, Down in that order (bits)
0x3 1 Buttons, ZL, ZR, L, R, +, -, Power/Home, Sync in that order (bits)
0xC 8 Left Joystick, vectors for X and Y
0x14 8 Right Joystick, vectors for X and Y
0xA0 1 Something related to volume slider
0xA1 1 Battery related. Charge level? out of 6
0xA3 1 Something related to volume slider(one less than 0xA0)
0xA4 8 Padding?