NANDCreateAsync

Syntax

#include 

#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 );

Arguments

filename Specifies the filename.
perm File permissions. Specified by taking the bitwise OR of NAND_PERM_*.
attr 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.

Return Values

The result codes that may be returned by NANDCreateAsync are listed below. Returns NAND_RESULT_OK when the request begins normally.

NAND_RESULT_OK
NAND_RESULT_ACCESS
NAND_RESULT_ALLOC_FAILED
NAND_RESULT_BUSY
NAND_RESULT_INVALID
NAND_RESULT_FATAL_ERROR

The result codes that may be passed to the callback function are listed below.

NAND_RESULT_OK
NAND_RESULT_ACCESS
NAND_RESULT_CORRUPT
NAND_RESULT_EXISTS
NAND_RESULT_INVALID
NAND_RESULT_MAXFILES
NAND_RESULT_NOEXISTS
NAND_RESULT_UNKNOWN
NAND_RESULT_FATAL_ERROR

Description

Asynchronously creates a new file. The specified permissions and attributes are given to the file. At a minimum, the file must be granted NAND_PERM_OWNER_READ permission. If NAND_PERM_OWNER_READ permission is not granted, the function returns NAND_RESULT_INVALID. If nonusable characters are used for the filename, the function returns NAND_RESULT_INVALID. The usable characters include three symbols [ _ - . ], and all alphanumeric characters (0-9, a-z, and A-Z). NAND_RESULT_BUSY is returned and this function call is denied when the queue for accepting requests inside the library is full.

This function updates the FAT of the Wii console NAND memory.

See Also

NANDCreate
NANDDelete
NANDDeleteAsync

Revision History

2009/07/28 Explained that NAND_RESULT_INVALID is returned when an invalid filename is specified for the argument.
2008/08/01 Revised the result codes that are passed to the callback function.
2008/05/13 Added description of the result codes passed to the callback function.
2008/04/23 Commented about updating the FAT.
2006/11/13 Added an explanation about the need to grant NAND_PERM_OWNER_READ permission.
2006/08/30 Added the NAND_RESULT_NOEXISTS result code.
2006/06/16 Initial version.


CONFIDENTIAL