The processing sequence shown here is just one example. The application does not need to follow this exactly.
NAND_RESULT_CORRUPT indicates that the entire Wii system memory has been corrupted and is irrecoverable. You cannot expect the Wii to restart when its entire system memory has been corrupted. Therefore, if this error is encountered, not only must you stop any application program processes, but also disable the reset/shutdown processes (which are normally enabled) that correspond to the RESET/POWER buttons, and prioritize the notification as much as possible to the player about the contents of this error message.
NAND_RESULT_MAXBLOCKS and NAND_RESULT_MAXFILES errors should not arise. The appearance of these error codes thus indicates the possibility of a bug in the system program or application program. While in this status, system operation cannot be guaranteed. We thus recommend that, if possible, you display the specified error message when either of the error codes NAND_RESULT_MAXBLOCKS or NAND_RESULT_MAXFILES is encountered. and that you do not return to the executing routine of the application program itself.
NAND_RESULT_UNKNOWN or unexpected error codes strongly suggests a bug on the SDK side. As you might expect, the system's operation cannot be guaranteed if these errors are encountered, so we recommend that you display the prescribed error message and do not restore the original processing routine of the application program.
NAND_RESULT_CORRUPT, NAND_RESULT_MAXBLOCKS, NAND_RESULT_MAXFILES, NAND_RESULT_BUSY, or NAND_RESULT_ALLOC_FAILED. See the description (Figure 2).
NAND_RESULT_ECC_CRIT or NAND_RESULT_AUTHENTICATION, you can assume that the original file has been damaged. Therefore, after you finish releasing all resources using a NANDSimpleSafeCancel[Async] call, the figure shows the confirmation process of deleting the damaged file. (Notify the player that the save file has been destroyed and request confirmation to delete the file. Also see Figure 2.)
NAND_RESULT_ECC_CRIT or NAND_RESULT_AUTHENTICATION are reported for the NANDRead[Async] or NANDWrite[Async] calls near the center of Figure 3, this indicates that the temporary file created internally by the NANDSimpleSafe functions has been corrupted. (You can assume that the contents of the original file are probably undamaged.) In contrast to the above case, do not proceed directly to the confirmation of deletion of the damaged file; instead, redo the save process from the beginning.
2007/06/xx Revised Figure 2. Added the flows to NAND_RESULT_UNKNOWN and unexpected result codes.
2007/05/09 Added the descriptive text for each figure.
2007/05/09 Added an error process sequence diagram applicable when using NANDSimpleSafe functions.
2007/05/09 Moved the descriptions of supplemental items.
2007/02/xx Added a supplement regarding the cases of insufficient memory and insufficient inodes at the same time.
2006/11/30 Added support for the error codes NAND_RESULT_ALLOC_FAILED NAND_RESULT_MAXBLOCKS and NAND_RESULT_MAXFILES.
2006/09/19 Unified terminology. Deleted the word 'entry.'
2006/08/30 Initial version.