Line 16:
Line 16:
===Wii Remote Data===
===Wii Remote Data===
Can be gotten using WPADRead().
Can be gotten using WPADRead().
+
+
{| class="wikitable"
+
!Name
+
!Prototype
+
|-
+
|WPADStatus
+
|
+
<syntaxhighlight lang="C">
+
#define WPAD_BUTTON_LEFT 0x0001
+
#define WPAD_BUTTON_RIGHT 0x0002
+
#define WPAD_BUTTON_DOWN 0x0004
+
#define WPAD_BUTTON_UP 0x0008
+
#define WPAD_BUTTON_PLUS 0x0010
+
#define WPAD_BUTTON_2 0x0100
+
#define WPAD_BUTTON_1 0x0200
+
#define WPAD_BUTTON_B 0x0400
+
#define WPAD_BUTTON_A 0x0800
+
#define WPAD_BUTTON_MINUS 0x1000
+
#define WPAD_BUTTON_Z 0x2000
+
#define WPAD_BUTTON_C 0x4000
+
#define WPAD_BUTTON_HOME 0x8000
+
+
#define WPAD_EXT_CORE 0
+
#define WPAD_EXT_NUNCHUK 1
+
#define WPAD_EXT_CLASSIC 2
+
#define WPAD_EXT_MPLUS 5
+
#define WPAD_EXT_MPLUS_NUNCHUK 6
+
#define WPAD_EXT_MPLUS_CLASSIC 7
+
+
typedef struct {
+
uint16 x; /* Resolution is 1024 */
+
uint16 y; /* Resolution is 768 */
+
uint16 size;
+
uint8 ID;
+
uint8 pad;
+
} IRObject;
+
+
typedef struct {
+
uint16 buttons; /* See WPAD_BUTTON */
+
uint16 accelX; /* Resolution is 1024 */
+
uint16 accelY; /* Resolution is 1024 */
+
uint16 accelZ; /* Resolution is 1024 */
+
IRObject IR[4]; /* Max number of objects */
+
uint8 ext; /* Extension, see WPAD_EXT */
+
uint8 err; /* Error codes */
+
} WPADStatus; /* Normal Wiimote */
+
+
typedef struct {
+
uint16 buttons; /* See WPAD_BUTTON */
+
uint16 accelX; /* Resolution is 1024 */
+
uint16 accelY; /* Resolution is 1024 */
+
uint16 accelZ; /* Resolution is 1024 */
+
IRObject IR[4]; /* Max number of objects */
+
uint8 ext; /* Extension, see WPAD_EXT */
+
uint8 err; /* Error codes */
+
uint16 ncAccX; /* Resolution is 1024 */
+
uint16 ncAccY; /* Resolution is 1024 */
+
uint16 ncAccZ; /* Resolution is 1024 */
+
uint16 ncStickX; /* Resolution is 256 */
+
uint16 ncStickY; /* Resolution is 256 */
+
} WPADNCStatus; /* Nunchuk extension */
+
+
typedef struct {
+
uint16 buttons; /* See WPAD_BUTTON */
+
uint16 accelX; /* Resolution is 1024 */
+
uint16 accelY; /* Resolution is 1024 */
+
uint16 accelZ; /* Resolution is 1024 */
+
IRObject IR[4]; /* Max number of objects */
+
uint8 ext; /* Extension, see WPAD_EXT */
+
uint8 err; /* Error codes */
+
uint16 pad[6]; /* Padding, Classic/Nunchuk? */
+
uint8 status; /* WiiMotionPlus */
+
uint8 reserved;
+
uint16 pitch; /* WiiMotionPlus */
+
uint16 yaw; /* WiiMotionPlus */
+
uint16 roll; /* WiiMotionPlus */
+
} WPADMPStatus; /* WiiMotionPlus */
+
+
</syntaxhighlight>
+
|}