NANDCreate

Syntax

#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

s32 NANDCreate(const char *filename, u8 perm, u8 attr);

Arguments

filename Specifies the file name.
perm File permissions. Specify by taking the logical sum of NAND_PERM_*.
attr Specifies the file attributes.

Return Values

Returns one of the following codes.

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

Description

Creates a new file. The specified permissions and attributes are given to the file. However, the file must be granted at least the NAND_PERM_OWNER_READ permission. If the NAND_PERM_OWNER_READ permission is not granted, the function will return NAND_RESULT_INVALID.

This function may put the current thread to sleep. For precautions related to calling similar functions, see Interrupts and Callback Functions.

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

See Also

NANDCreateAsync, NANDDelete, NANDDeleteAsync, Interrupts and Callback Functions

Revision History

2008/04/23 Commented about updating the FAT.
2007/09/25 Added information about the sleep status of threads.
2006/11/30 Added the NAND_RESULT_ALLOC_FAILED and NAND_RESULT_BUSY codes.
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