#include <revolution/wpad.h>
#define WPAD_CHAN0 0
#define WPAD_CHAN1 1
#define WPAD_CHAN2 2
#define WPAD_CHAN3 3
#define WPAD_MEM_GAMEDATA_LEN 3888
s32 WPADWriteGameData( s32 chan, void *p_buf, u16 len, u16 offset, WPADCallback callback );
chan |
One of WPAD_CHANn values. |
p_buf |
The starting address of the data to be saved. |
len |
Size of the data to be saved. |
offset |
The offset from the ending address of the game data's file information (the starting address for where game data can be actually written) to the starting address for the write process. |
callback |
Callback function to notify about the result. |
Returns one of the following codes:
WPAD_ERR_NONE
WPAD_ERR_NO_CONTROLLER
WPAD_ERR_BUSY
Writes data to the internal memory of the Wii Remote for the specified channel. This function registers the command used to read data to the library. The WPAD library processes registered commands when other commands are not running.
For saving game data, 4000 bytes are allocated within the internal memory but the first 112 bytes are used by the library to manage file information. Although the application can actually save game data to the 3888 bytes from the 16th to the 4000th byte, this 16th byte has an offset value of 0 within the library, so there is no need to be particularly aware of it.
The set game title and the date and time on which the file was saved are saved in the file information with the WPADSetGameTitle and WPADSetGameTitleWChar functions, respectively. The WPADGetGameTitle and WPADGetGameDataTimeStamp functions, respectively, can also get that data.
The return values have the following meanings:
WPAD_ERR_NONE | The WPAD library received a command. |
WPAD_ERR_BUSY | The WPAD library was unable to receive a command. |
WPAD_ERR_NO_CONTROLLER | The connection was broken. |
In addition, if a callback function is set, the callback function returns the following error codes when the processing is complete. Their meanings are as follows:
WPAD_ERR_NONE |
The command was processed normally. |
WPAD_ERR_TRANSFER |
A communications error prevented normal processing of the command. |
WPAD_ERR_NO_CONTROLLER |
The connection was broken. |
WPAD Functions
WPADReadGameData
WPADSetGameTitle
WPADSetGameTitleWChar
WPADGetGameTitle
WPADGetGameDataTimeStamp
08/15/2006 Initial version.
CONFIDENTIAL