#include <revolution/nand.h>
#define NAND_PERM_OTHER_READ 0x01
#define NAND_PERM_OTHER_WRITE 0x02
#define NAND_PERM_GROUP_READ 0x04
#define NAND_PERM_GROUP_WRITE 0x08
#define NAND_PERM_OWNER_READ 0x10
#define NAND_PERM_OWNER_WRITE 0x20
typedef void (*NANDCallback)( s32 result, NANDCommandBlock *block );
s32 NANDCreateAsync( const char *filename, u8 perm, u8 attr, NANDCallback cb, NANDCommandBlock *block );
|
Specifies the file name. |
|
File permissions. Specify by taking the logical sum of NAND_PERM_*. |
|
Specifies the file attributes. |
cb |
Callback function to call when this function completes processing. |
block |
Command block structure to be passed to the callback function. |
Returns NAND_RESULT_OK when the request begins normally.
NAND_RESULT_OK
NAND_RESULT_ACCESS
NAND_RESULT_ALLOC_FAILED
NAND_RESULT_BUSY
NAND_RESULT_CORRUPT
NAND_RESULT_EXISTS
NAND_RESULT_INVALID
NAND_RESULT_MAXFILES
NAND_RESULT_NOEXISTS
NAND_RESULT_UNKNOWN
NAND_RESULT_FATAL_ERROR
Asynchronously creates a new file. The specified permissions and attributes are given to the file. However, the file must be granted at least NAND_PERM_OWNER_READ permission.If NAND_PERM_OWNER_READ permission is not granted, the function returns NAND_RESULT_INVALID. NAND_RESULT_BUSY is returned and this function call is denied when the queue for accepting requests inside the library is full.
NANDCreate, NANDDelete, NANDDeleteAsync
2006/11/13 Added explanation about the need to grant NAND_PERM_OWNER_READ permission.
2006/08/30 Added NAND_RESULT_NOEXISTS result code.
2006/06/16 Initial version.
CONFIDENTIAL