#include <cafe/pads/wpad/wpad.h>

#define WPAD_CHAN0               0
#define WPAD_CHAN1               1
#define WPAD_CHAN2               2
#define WPAD_CHAN3               3

#define WPAD_DEV_CORE            0
#define WPAD_DEV_FREESTYLE       1
#define WPAD_DEV_CLASSIC         2
#define WPAD_DEV_UNKNOWN         255
#define WPAD_DEV_NOT_FOUND       253
#define WPAD_DEV_FUTURE          251

BOOL WPADAttachDummyExtension( s32 chan, u32 type );


chan One of the WPAD_CHANn values.
type One of the WPAD_DEV_*.

Return Values

Returns TRUE if the device type was successfully changed and FALSE otherwise.


Changes the Wii remote device type for the specified channel without actually plugging in an external extension controller to the Wii remote assigned to the specified channel. Call this function when nothing is inserted in the Wii remote. No change can be made if an external extension controller is already plugged into the Wii remote. The Wii MotionPlus is treated as an external extension controller. If it is plugged into the Wii remote this function will not be able to change the device type.

Because this function is used for debugging applications, it works only with the debug version library. It does not work with the release version library, where FALSE is always the return value.

Do Not Call From

Background Do not call this function from the background.
Interrupt handler Do not call this function from any interrupt handler.
Exception handler Do not call this function from any exception handler.
Production code Do not call this function in production code. It is available only for debugging purposes.
Multiple Cores Do not call this function from more than one Core.

See Also


Revision History

2013-05-08 Automated cleanup pass.
2010-04-29 Added a note about the Wii MotionPlus.
2007-05-02 Changed so that FALSE is always returned with the release version.
2007-04-18 Initial version.