#include <revolution/nand.h>
#define NAND_ACCESS_READ 0x01
#define NAND_ACCESS_WRITE 0x02
#define NAND_ACCESS_RW (NAND_ACCESS_READ | NAND_ACCESS_WRITE)
s32 NANDSafeOpen(const char *path, NANDFileInfo *info, u8 accType, void *buf, u32 length);
path |
File name to open. |
info |
Pointer to a NANDFileInfo structure. |
accType |
Access type. Specifies either NAND_ACCESS_READ, NAND_ACCESS_WRITE or NAND_ACCESS_RW. |
buf |
Specifies the leading address of the buffer to be used when copying files. The buffer must be 32-byte aligned. |
length |
Specifies the size of the buffer to be used when copying files. Buffer size must be a multiple of 32 bytes. We recommend a size between 4 KB and 16 KB. |
Returns one of the following codes:
NAND_RESULT_OK
NAND_RESULT_ACCESS
NAND_RESULT_AUTHENTICATION
NAND_RESULT_CORRUPT
NAND_RESULT_ECC_CRIT
NAND_RESULT_INVALID
NAND_RESULT_MAXBLOCKS
NAND_RESULT_MAXFD
NAND_RESULT_MAXFILES
NAND_RESULT_NOEXISTS
NAND_RESULT_UNKNOWN
NAND_RESULT_FATAL_ERROR
Opens a file in a manner that guarantees the atomic nature of file updates. The file opened using this function must be closed using NANDSafeClose or NANDSafeCloseAsync.
NANDSafeOpenAsync, NANDSafeClose, NANDSafeCloseAsync
08/15/2006 Initial version.
CONFIDENTIAL