1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
2<html>
3
4<head>
5<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
6<META http-equiv="Content-Style-Type" content="text/css">
7<LINK rel="stylesheet" type="text/css" href="../CSS/revolution.css">
8<title>NANDWriteAsync</title>
9</head>
10
11<body>
12
13<h1>NANDWriteAsync</h1>
14
15<h2>C Specification</h2>
16<dl><dd><pre><code>
17#include &lt;revolution/nand.h&gt;
18
19typedef void (*NANDCallback)( s32 result, NANDCommandBlock *block );
20
21s32 NANDWriteAsync( NANDFileInfo *info, const void *buf, u32 length, NANDCallback cb, NANDCommandBlock *block );
22</code></pre></dd></dl>
23
24<h2>Arguments</h2>
25<p>
26<TABLE border="1" >
27  <tr>
28<TD valign="top" width="120" bgcolor="#ffffe8"><CODE><STRONG><EM>info</EM></STRONG></CODE></TD>
29<TD width="520">Pointer to a <CODE>NANDFileInfo</CODE> structure.</TD>
30  </tr>
31  <tr>
32<TD valign="top" width="120" bgcolor="#ffffe8"><CODE><STRONG><EM>buf</EM></STRONG></CODE></TD>
33<TD width="520">Pointer to the start of the data that will be written to Wii console NAND memory. The buffer storing the data must be 32-byte aligned.</TD>
34  </tr>
35  <tr>
36<TD valign="top" width="120" bgcolor="#ffffe8"><CODE><STRONG><EM>length</EM></STRONG></CODE></TD>
37<TD width="520">Number of bytes of data to write to Wii console NAND memory.</TD>
38  </tr>
39  <tr>
40<TD valign="top" width="120" bgcolor="#ffffe8"><CODE><STRONG><EM>cb</EM></STRONG></CODE></TD>
41<TD width="520">Callback function to call when this function completes processing.</TD>
42  </tr>
43  <tr>
44<TD valign="top" width="120" bgcolor="#ffffe8"><CODE><STRONG><EM>block</EM></STRONG></CODE></TD>
45<TD width="520">Command block structure to be passed to the callback function.</TD>
46  </tr>
47</TABLE>
48</p>
49
50<h2>Return Values</h2>
51<p>
52Returns <CODE>NAND_RESULT_OK</CODE> when the request begins normally. When the write is successful, the number of bytes for the written data is passed to the callback function.
53<p>
54<code>NAND_RESULT_ACCESS<br> NAND_RESULT_ALLOC_FAILED<br> NAND_RESULT_AUTHENTICATION<br> NAND_RESULT_BUSY<br> NAND_RESULT_CORRUPT<br> NAND_RESULT_ECC_CRIT<br> NAND_RESULT_INVALID<br> NAND_RESULT_MAXBLOCKS<br> NAND_RESULT_UNKNOWN<br> NAND_RESULT_FATAL_ERROR<br></code>
55</p>
56</p>
57
58<H2>Description</H2>
59<p>
60Asynchronously writes data to a file. <code>NAND_RESULT_BUSY</code> is returned and this function call is denied when the queue for accepting requests inside the library is full.
61</p>
62
63<h2>See Also</h2>
64<p>
65<code><a href="./NANDRead.html">NANDRead</a></code>, <code><a href="./NANDReadAsync.html">NANDReadAsync</a></code>, <code><a href="./NANDWrite.html">NANDWrite</a></code>, <code><a href="./NANDSeek.html">NANDSeek</a></code>, <code><a href="./NANDSeekAsync.html">NANDSeekAsync</a></code>
66</p>
67
68<H2>Revision History</H2>
69<p>
702006/10/31 Unified terminology.<br>2006/09/19 Added ECC_CRIT result code.<br>2006/09/07 Eliminated the restriction that the data-write size had to be a multiple of 32 bytes.<br>2006/08/15 Added AUTHENTICATION result code.<br>2006/06/16 Initial version. <BR>
71</p>
72
73
74<hr>
75<P>CONFIDENTIAL</p>
76</BODY>
77</HTML>
78