1<!DOCTYPE html
2	PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
3	 "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
4<html xmlns="http://www.w3.org/1999/xhtml" lang="ja" xml:lang="ja">
5<head>
6<title>Revolution SDK Release Notes</title>
7<meta http-equiv="Content-Type" content="text/html; charset=windows-1252" />
8</head>
9<body>
10
11<h1>Revolution SDK Release Notes</h1>
12<hr />
13<dl>
14<dt><a href="#20070828p4">* 2007/08/28 SDK Version 3.1 Patch 4</a> (2008/01/31)</dt>
15<dd><a href="#note402">Note 402 (TOOL): Merged <CODE>setncountrycode</CODE> to <CODE>setcountrycode</CODE></a></dd>
16<dd><a href="#note401">Note 401 (OS): Eliminated a bug that prevented the reset code from being set</a></dd>
17<dd><a href="#note400">Note 400 (OS): Added a feature for recovering from screen burn-in reduction with RESET</a></dd>
18<dd><a href="#note399">Note 399: Mod Chip Countermeasures</a></dd>
19</dl>
20<dl>
21<dt><a href="#20070828p3">* 2007/08/28 SDK Version 3.1 Patch 3</a> (2007/12/11)</dt>
22<dd><a href="#note398">Note 398 (WPAD): Removed feature setting functions for the Wii Remote from public availability</a></dd>
23<dd><a href="#note397">Note 397 (WPAD): Updated the function reference manual and sample demos</a></dd>
24<dd><a href="#note396">Note 396 (NAND): Revised the NANDSimpleSafeClose and NANDSafeClose functions</a></dd>
25<dd><a href="#note395">Note 395 (GX): Corrected a bug with the GXGetCPUFifo function</a></dd>
26<dd><a href="#note394">Note 394 (TOOL): Revisions to ndrun_prechecker</a></dd>
27<dd><a href="#note393">Note 393 (OS): Changed the type of an argument to the OSInitStopwatch function</a></dd>
28<dd><a href="#note392">Note 392 (OS): Changed the specifications of the OSSetResetCallback and OSSetPowerCallback functions</a></dd>
29<dd><a href="#note391">Note 391 (WPAD): Fixed a bug in which a freeze would occur if repeated resets are issued when OSExec is running</a></dd>
30</dl>
31<dl>
32<dt><a href="#20070828p2">* 2007/08/28 SDK Version 3.1 Patch 2</a> (2007/10/12)</dt>
33<dd><a href="#note390">Note 390 (TOOL): Fixed a defect in ndrun_prechecker.</a></dd>
34</dl>
35<dl>
36<dt><a href="#20070828p1">* 2007/08/28 SDK Version 3.1 Patch 1</a> (2007/10/10)</dt>
37<dd><a href="#note389">Note 389 (TOOL): System firmware Version 35.4.16 release</a></dd>
38<dd><a href="#note388">Note 388 (TOOL): Updated the DEVKIT system menu</a></dd>
39<dd><a href="#note387">Note 387 (OS): Relaxed size restrictions on programs that are loaded by default</a></dd>
40<dd><a href="#note386">Note 386 (OS): Added information on functions that can put the current thread to sleep</a></dd>
41<dd><a href="#note385">Note 385 (OS): Fixed a bug wherein boot cache determination would fail at application completion</a></dd>
42<dd><a href="#note384">Note 384 (OS): Fixed a bug that caused OSFatal to behave incorrectly for applications created using NADK</a></dd>
43<dd><a href="#note383">Note 383 (PAD): Fixed a bug that prevented recovery from the active screen burn-in reduction state when using the DK Bongos</a></dd>
44<dd><a href="#note382">Note 382 (MIX, SEQ, SYN): Support for multiple initialization function invocations</a></dd>
45<dd><a href="#note381">Note 381 (AXART): Added the AXARTRemoveArticulator function</a></dd>
46<dd><a href="#note380">Note 380 (AXFX): Added reference pages for expansion functions (Exp-type)</a></dd>
47<dd><a href="#note379">Note 379 (DOC): Added a document related to the Dolby Pro Logic II license</a></dd>
48<dd><a href="#note378">Note 378 (SC): Added a new function for checking the Parental Controls password</a></dd>
49</dl>
50<dl>
51<dt><a href="#20070828">* 2007/08/28 SDK Version 3.1</a> (2007/08/28)</dt>
52<dd><a href="#note377">Note 377 (TOOL): System firmware Version 33.4.16 release</a></dd>
53</dl>
54<dl>
55<dt><a href="#20070808">* 2007/08/08 SDK Version 3.1 RC2</a> (2007/08/08)</dt>
56<dd><a href="#note376">Note 376 (TOOL): System firmware Version 33.4.15 release</a></dd>
57<dd><a href="#note375">Note 375 (TOOL): Added features to the DEVKIT system menu</a></dd>
58<dd><a href="#note374">Note 374 (SC): Added a new function for getting Parental Controls information</a></dd>
59<dd><a href="#note373">Note 373 (CX): Fixed a problem with Huffman compression when a value is encoded with 18 bits or more</a></dd>
60<dd><a href="#note372">Note 372 (THP): Fixed a bug that caused error when monaural sound file was used with THPConv(D).exe</a></dd>
61<dd><a href="#note371">Note 371 (RSO): Included the RSO package</a></dd>
62</dl>
63<dl>
64<dt><a href="#20070720">* 2007/07/20 SDK Version 3.1 RC1</a> (2007/07/20)</dt>
65<dd><a href="#note370">Note 370 (TOOL): System firmware Version 33.4.14 release</a></dd>
66<dd><a href="#note369">Note 369 (TOOL): Updated the DEVKIT system menu</a></dd>
67<dd><a href="#note368">Note 368 (KBD/KPR): Added Japanese language function reference manual</a></dd>
68<dd><a href="#note367">Note 367 (KPAD): Added new play mode</a></dd>
69<dd><a href="#note366">Note 366 (WPAD): Added and deleted sample demos</a></dd>
70<dd><a href="#note365">Note 365 (WPAD): Fixed the following bug: exception occurs if registration function is called when WPAD_SYNC_EVT_BUSY</a></dd>
71<dd><a href="#note364">Note 364 (WPAD): Fixed a bug that caused failure at next startup if reset during registration process</a></dd>
72<dd><a href="#note363">Note 363 (MAN): Changed format of the top page of Function Reference</a></dd>
73<dd><a href="#note362">Note 362 (DVD): Updated automatic fatal error messages</a></dd>
74<dd><a href="#note361">Note 361 (VI): Added VIResetDimmingCount</a></dd>
75<dd><a href="#note360">Note 360 (MEM): Fixed a bug related to unlocking with MEMResizeForMBlockExpHeap()</a></dd>
76<dd><a href="#note359">Note 359 (AXFX): Corrected Early Reflection of AXFXReverbHi/AXFXReverbHiDpl2</a></dd>
77<dd><a href="#note358">Note 358 (AX): Corrected a bug related to execution of new DSP task during AXQuit()</a></dd>
78</dl>
79<dl>
80<dt><a href="#20070509p4">* 2007/05/09 SDK Version 3.0 Patch 4</a> (2007/06/28)</dt>
81<dd><a href="#note357">Note 357 (TOOL): System firmware Version 31.4.13 release</a></dd>
82<dd><a href="#note356">Note 356 (DVD) Corrected errors in manual</a></dd>
83<dd><a href="#note355">Note 355 (KBD/KPR): Corrected a number of problems</a></dd>
84<dd><a href="#note354">Note 354 (KPAD): Made a correction such that when the device type is WPAD_DEV_FUTURE the input can be obtained in KPAD1 style</a></dd>
85<dd><a href="#note353">Note 353 (WPAD): Fixed a bug that caused an exception and halt at next startup if Wii shut down during registration process</a></dd>
86</dl>
87<dl>
88<dt><a href="#20070509p3">* 2007/05/09 SDK Version 3.0 Patch 3</a> (2007/06/21)</dt>
89<dd><a href="#note352">Note 352 (TOOL): System firmware Version 31.4.12 release</a></dd>
90<dd><a href="#note351">Note 351 (KBD/KPR): Corrected a number of problems</a></dd>
91<dd><a href="#note350">Note 350 (WPAD): Fixed a bug that allowed connection of simple-paired Wii Remote even after shutdown</a></dd>
92<dd><a href="#note349">Note 349 (WPAD): Fixed a bug that caused failure of Wii Remote registration until Wii was reset</a></dd>
93<dd><a href="#note348">Note 348 (DEMO): Added a setting to allocate XFB in MEM2</a></dd>
94</dl>
95<dl>
96<dt><a href="#20070509p2">* 2007/05/09 SDK Version 3.0 Patch 2</a> (2007/06/07)</dt>
97<dd><a href="#note347">Note 347 (TOOL): System firmware Version 31.4.11 release</a></dd>
98<dd><a href="#note346">Note 346 (TOOL): Corrected operation of ntcompress tool when acting to decompress illegal data</a></dd>
99<dd><a href="#note345">Note 345 (KBD): Fixed a bug that prevented recovery from the screen burn-in reduction state</a></dd>
100<dd><a href="#note344">Note 344 (KBD/KPR): Made additions and corrections to API</a></dd>
101<dd><a href="#note343">Note 343 (WPAD): Changed the internal processing of WPADGetInfo(Async)</a></dd>
102<dd><a href="#note342">Note 342 (WPAD): Fixed a bug that stopped the transfer of controller data from the Wii Remote</a></dd>
103<dd><a href="#note341">Note 341 (KPAD): Corrected error handling of the Wii Remote's controller data</a></dd>
104<dd><a href="#note340">Note 340 (KPAD): Added functions to correct the Nunchuk motion sensor</a></dd>
105<dd><a href="#note339">Note 339 (CX): Fixed a problem with uncompression when the source data size is not aligned to 4 bytes for Huffman compression</a></dd>
106<dd><a href="#note338">Note 338 (CX): Fixed a bug such that during streaming uncompression an error would return if the compressed data was invalid</a></dd>
107<dd><a href="#note337">Note 337 (CX): Added LZ77 extended compression</a></dd>
108<dd><a href="#note336">Note 336 (CX): Added uncompression size specification for streaming uncompression</a></dd>
109</dl>
110<dl>
111<dt><a href="#20070509p1">* 2007/05/09 SDK Version 3.0 Patch 1</a> (2007/05/24)</dt>
112<dd><a href="#note335">Note 335 (TOOL): System firmware Version 31.4.8 release</a></dd>
113<dd><a href="#note334">Note 334 (CX): Added functions for secure data uncompression</a></dd>
114</dl>
115<dl>
116<dt><a href="#20070509">* 2007/05/09 SDK 3.0</a> (2007/05/09)</dt>
117<dd><a href="#note333">Note 333 (TOOL): System firmware Version 31.4.7 release</a></dd>
118<dd><a href="#note332">Note 332 (TOOL): Updated the DEVKIT system menu</a></dd>
119<dd><a href="#note331">Note 331 (KPAD): Added functions for getting parameters</a></dd>
120<dd><a href="#note330">Note 330 (KPAD): Made the KPADInit function non-blocking</a></dd>
121<dd><a href="#note329">Note 329 (WPAD): Stopped the release of the wpad_tool[D].elf and wpad_get_ver[D].elf tools</a></dd>
122<dd><a href="#note328">Note 328 (WPAD): Changed specifications for simple pairing</a></dd>
123<dd><a href="#note327">Note 327 (WPAD): Changed specifications for the WPADAttach(detach)DummyExtension functions</a></dd>
124<dd><a href="#note326">Note 326 (WPAD): Corrected shifts in each coordinate axis of the DPD module</a></dd>
125<dd><a href="#note325">Note 325 (NAND): Added a function for getting the usage status of /tmp</a></dd>
126<dd><a href="#note324">Note 324 (NAND): Added a function for getting the usage status of the home directory</a></dd>
127<dd><a href="#note323">Note 323 (NAND): Added functions of type NANDSimpleSafe</a></dd>
128<dd><a href="#note322">Note 322 (NAND): Changed the method for dealing with the NAND_RESULT_BUSY and NAND_RESULT_ALLOC_FAILED errors</a></dd>
129<dd><a href="#note321">Note 321 (PAD): Pulled the <I>simple</I> demo</a></dd>
130<dd><a href="#note320">Note 320 (KPAD): Added  the keyboard library</a></dd>
131<dd><a href="#note319">Note 319 (MAN): Corrected broken links in the function reference manual</a></dd>
132<dd><a href="#note318">Note 318 (OS): Added the function reference for OSGetAppType</a></dd>
133<dd><a href="#note317">Note 317 (MIDI): Added the MIDI adapter library</a></dd>
134</dl>
135<dl>
136<dt><a href="#20061130p6">* 2006/11/30 SDK Version 2.4 Patch 6</a> (2007/05/18)</dt>
137<dd><a href="#note320">Note 320 (KPAD): Corrected error handling of the Wii Remote's controller data</a></dd>
138<dd><a href="#note319">Note 319 (WPAD): Changed the internal processing of WPADGetInfo(Async)</a></dd>
139<dd><a href="#note318">Note 318 (WPAD): Fixed a bug that stopped the transfer of controller data from the Wii Remote</a></dd>
140<dd><a href="#note317">Note 317 (WPAD): Changed specifications for the WPADAttach(detach)DummyExtension functions</a></dd>
141</dl>
142<dl>
143<dt><a href="#20061130p5">* 2006/11/30 SDK 2.4 patch 5</a> (2007/05/09)</dt>
144<dd><a href="#note316">Note 316 (WPAD): Fixed a bug that caused the Wii Remote to be inoperable if an extension controller was inserted and removed immediately</a></dd>
145</dl>
146<dl>
147<dt><a href="#20061130p4">* 2006/11/30 SDK Version 2.4 Patch 4</a> (2007/04/25)</dt>
148<dd><a href="#note315">Note 315 (NAND): Updated the function reference manual</a></dd>
149<dd><a href="#note314">Note 314 (KPAD): Added a sample demo for detecting the direction that the Wii Remote is swung</a></dd>
150<dd><a href="#note313">Note 313 (KPAD): Corrected errors in manuals</a></dd>
151<dd><a href="#note312">Note 312 (KPAD): For the Sensor Bar placement position, changed the corrective processing to be enabled by default</a></dd>
152<dd><a href="#note311">Note 311 (KPAD): Fixed a bug related to maximum stored data passed to KPADRead</a></dd>
153<dd><a href="#note310">Note 310 (WPAD): Updated Function Reference</a></dd>
154<dd><a href="#note309">Note 309 (WPAD): To a tool added Wii Remote memory initialization</a></dd>
155<dd><a href="#note308">Note 308 (WPAD): Fixed a bug in the system's Bluetooth wireless module</a></dd>
156<dd><a href="#note307">Note 307 (WPAD): Corrected the following bug: if a deallocator that uses a mutex is registered, the execution halts on ASSERT when a FATAL error occurs</a></dd>
157<dd><a href="#note306">Note 306 (WPAD): Fixed the following bug: if the WPADGetInfoAsync function is called frequently, the external extension controllers are not recognized</a></dd>
158<dd><a href="#note305">Note 305 (WPAD): Reduced the time before the Player LEDs go off when disconnection is performed with the WPADDisconnect function</a></dd>
159<dd><a href="#note304">Note 304 (WPAD): Changed the amount of time before signal interference causes a disconnect</a></dd>
160<dd><a href="#note303">Note 303 (WPAD): Added functions for debugging external extension controller processing</a></dd>
161<dd><a href="#note302">Note 302 (WPAD): Updated the sample demos</a></dd>
162<dd><a href="#note301">Note 301 (DVD): Corrected automatic fatal error messages</a></dd>
163<dd><a href="#note300">Note 300 (DOC): Added the contact information for the Roland Corporation's licensing department</a></dd>
164<dd><a href="#note299">Note 290 (OS): Added the function reference for OSGetAppGamename</a></dd>
165<dd><a href="#note298">Note 298 (OS): Made fixes for debugging of relocatable module</a></dd>
166<dd><a href="#note297">Note 297 (AX): Corrected the bug that caused noise during the streaming playback of the ADPCM data</a></dd>
167</dl>
168<dl>
169<dt><a href="#20061130p3">* 2006/11/30 SDK Version 2.4 Patch 3</a> (2007/03/01)</dt>
170<dd><a href="#note296">Note 296 (TOOL): System firmware Version 21.2.2 release</a></dd>
171<dd><a href="#note295">Note 295 (TOOL): Added features to the DEVKIT system menu</a></dd>
172<dd><a href="#note294">Note 294 (TOOL): Corrected features in the DEVKIT system menu</a></dd>
173<dd><a href="#note293">Note 293 (ENC): Corrected a problem where the returned number of converted characters was incorrect</a></dd>
174<dd><a href="#note292">Note 292 (ENC): Added a conversion table stripping feature</a></dd>
175<dd><a href="#note291">Note 291 (ENC): Added/revised manuals and demos</a></dd>
176</dl>
177<dl>
178<dt><a href="#20061130p2">* 2006/11/30 SDK Version 2.4 Patch 2</a> (2007/01/10)</dt>
179<dd><a href="#note290">Note 290 (OS): Added a description to the function reference for OSInitFastCast</a></dd>
180<dd><a href="#note289">Note 289 (FNT): Added the FNT library</a></dd>
181<dd><a href="#note288">Note 288 (HIO2): Corrected a problem that occurred when HIO2Init was called multiple times</a></dd>
182<dd><a href="#note287">Note 287 (HIO2): Revised the function reference for HIO2EnumDevices</a></dd>
183<dd><a href="#note286">Note 286 (THP): Revised THPConv(D).exe such that it would not perform sampling during execution</a></dd>
184<dd><a href="#note285">Note 285 (THP): Revised a description related to playback frequency to match that of Wii</a></dd>
185<dd><a href="#note284">Note 284 (AX): Corrected a problem where axstream would not support data of a size smaller than the buffer size</a></dd>
186<dd><a href="#note283">Note 283 (AX): Updated the AX Application manual</a></dd>
187<dd><a href="#note282">Note 282 (WPAD): Corrected a problem where data could not be obtained when connected with an undefined controller plugged in</a></dd>
188<dd><a href="#note281">Note 281 (WPAD): Corrected the range of stick values given for WPADCLStatus</a></dd>
189<dd><a href="#note280">Note 280 (DVD): Corrected a problem where shutdown processing was not being performed correctly when an automatic Fatal message was issued</a></dd>
190</dl>
191<dl>
192<dt><a href="#20061130p1">* 2006/11/30 SDK Version 2.3 Patch 1</a> (2006/12/18)</dt>
193<dd><a href="#note279">Note 279 (AX): Revised the DSP load estimate again</a></dd>
194<dd><a href="#note278">Note 278 (AX): Corrected a problem where the mixing volume would not update correctly</a></dd>
195<dd><a href="#note277">Note 277 (NAND): Added a description of the prohibition on frequent Read access</a></dd>
196<dd><a href="#note276">Note 276 (TOOL): Added the wpad_mem_util tool</a></dd>
197<dd><a href="#note275">Note 275 (OS): Corrected a bug that occurred when the OSFatal function was run from callback</a></dd>
198<dd><a href="#note274">Note 274 (OS): Revised debug message during the reset and shutdown process</a></dd>
199<dd><a href="#note273">Note 273 (OS): Stop WiiConnect24 operations by default</a></dd>
200</dl>
201<dl>
202<dt><a href="#20061130">* 2006/11/30 SDK 2.4</a> (2006/11/30)</dt>
203<dd><a href="#note272">Note 272 (TOOL): System firmware Version 17.2.0 release</a></dd>
204<dd><a href="#note271">Note 271 (TOOL): Fixed bugs in the DEVKIT system menu save-data controls</a></dd>
205<dd><a href="#note270">Note 270 (MIX): Corrected forgotten initialization of the MIXChannel structure members</a></dd>
206<dd><a href="#note269">Note 269 (AX): Implemented mixer control for the Wii Remote speaker</a></dd>
207<dd><a href="#note268">Note 268 (AX): Implemented LPF and biquad filters for audio output from the controller speaker</a></dd>
208<dd><a href="#note267">Note 267 (AX): Deleted temporary implementation of HPF and added a biquad filter</a></dd>
209<dd><a href="#note266">Note 266 (AX): Accounted for delay in response to AI/DSP interrupts when calculating the estimated load on the DSP</a></dd>
210<dd><a href="#note265">Note 265 (AX/SEQ/SP/SYN): Removed zero buffer</a></dd>
211<dd><a href="#note264">Note 264 (WPAD): Added the WPADControlExtGimmick function</a></dd>
212<dd><a href="#note263">Note 263 (WPAD): Canceled the restriction mentioned in Note 163</a></dd>
213<dd><a href="#note262">Note 262 (WPAD): Changed specifications during simple pairing when reconnecting an already paired remote</a></dd>
214<dd><a href="#note261">Note 261 (WPAD): Fixed a bug where updates of autosampling would fail</a></dd>
215<dd><a href="#note260">Note 260 (WPAD): Fixed a bug causing registration information to be erased</a></dd>
216<dd><a href="#note259">Note 259 (CARD): Revised the CARDMount[Async] function</a></dd>
217<dd><a href="#note258">Note 258 (NAND): Changed the order in which the save data banner is created</a></dd>
218<dd><a href="#note257">Note 257 (NAND): Added a guard mechanism when opening or closing files</a></dd>
219<dd><a href="#note256">Note 256 (NAND): Prohibited the creation of files and directories by an owner without read privileges</a></dd>
220<dd><a href="#note255">Note 255 (NAND): Corrected instructions on using the NANDGetAvailableArea[Async] function</a></dd>
221<dd><a href="#note254">Note 254 (NAND): Corrected a mistake in the description of the NANDSetStatus[Async] function</a></dd>
222<dd><a href="#note253">Note 253 (CX): Added a decompress option to the ntcompress tool</a></dd>
223<dd><a href="#note252">Note 252 (CX): Expanded alignment options of the ntcompress tool</a></dd>
224<dd><a href="#note251">Note 251 (ENC): Revised conversion rules</a></dd>
225</dl>
226<dl>
227<dt><a href="#20061026p9">* 2006/October 26, 2006 SDK Version 2.3 Patch 9</a> (2006/11/17)</dt>
228<dd><a href="#note250">Note 250 (TOOL): System firmware Version 15.1.1 release</a></dd>
229</dl>
230<dl>
231<dt><a href="#20061026p8">* 2006/October 26, 2006 SDK Version 2.3 Patch 8</a> (2006/11/14)</dt>
232<dd><a href="#note249">Note 249 (TOOL): System firmware Version 13.0.10 release</a></dd>
233</dl>
234<dl>
235<dt><a href="#20061026p7">* 2006/10/26 SDK Version 2.3 Patch 7</a> (2006/11/12)</dt>
236<dd><a href="#note248">Note 248 (TOOL): System firmware Version 13.0.9 release </a></dd>
237</dl>
238<dl>
239<dt><a href="#20061026p6">* 2006/10/26 SDK Version 2.3 Patch 6</a> (2006/11/11)</dt>
240<dd><a href="#note247">Note 247 (TOOL): System firmware Version 13.0.8 release</a></dd>
241</dl>
242<dl>
243<dt><a href="#20061026p5">* 2006/10/26 SDK Version 2.3 Patch 5</a> (2006/11/09)</dt>
244<dd><a href="#note246">Note 246 (TOOL): System firmware Version 13.0.7 release.</a></dd>
245<dd><a href="#note245">Note 245 (ENC): Fixed a character conversion problem in the private memory area.</a></dd>
246<dd><a href="#note244">Note 244 (ENC): Fixed a bug in the read/write size.</a></dd>
247<dd><a href="#note243">Note 243 (ENC): Reduced the table size.</a></dd>
248</dl>
249<dl>
250<dt><a href="#20061026p4">* 2006/10/26 SDK Version 2.3 Patch 4</a> (2006/11/06)</dt>
251<dd><a href="#note242">Note 242 (TOOL): NDEV firmware Version 12.06 release.</a></dd>
252<dd><a href="#note241">Note 241 (ENC): Added support for additional character encodings.</a></dd>
253<dd><a href="#note240">Note 240 (NAND): Added a result code for synchronous functions.</a></dd>
254</dl>
255<dl>
256<dt><a href="#20061026p3">* 2006/10/26 SDK Version 2.3 Patch 3</a> (2006/11/03)</dt>
257<dd><a href="#note239">Note 239 (TOOL): NDEV firmware Version 12.05 release.</a></dd>
258<dd><a href="#note238">Note 238 (WPAD): Fixed the inconsistent pairing format between the Wii console and the Wii Remote.</a></dd>
259<dd><a href="#note237">Note 237 (WPAD): Revised the pairing method when the maximum number of devices is already paired.</a></dd>
260<dd><a href="#note236">Note 236 (ENC): Changed the method of conversion from the internal character encoding to ISO-8859-1.</a></dd>
261</dl>
262<dl>
263<dt><a href="#20061026p2">* 2006/10/26 SDK Version 2.3 Patch 2</a> (2006/10/31)</dt>
264<dd><a href="#note235">Note 235 (TOOL): NDEV firmware Version 12.03 release.</a></dd>
265<dd><a href="#note234">Note 234: Changed the file for the SDK version information.</a></dd>
266<dd><a href="#note233">Note 233 (SC): Added internal configuration items for the system menu.</a></dd>
267<dd><a href="#note232">Note 232 (KPAD): Fixed a bug with the acceleration tracking process.</a></dd>
268<dd><a href="#note231">Note 231 (ENC): Added a convertible character encoding and determination function.</a></dd>
269<dd><a href="#note230">Note 230 (ENC): Added the conversion context for use in character code conversion.</a></dd>
270<dd><a href="#note229">Note 229 (ENC): Added support for additional character encodings.</a></dd>
271</dl>
272<dl>
273<dt><a href="#20061026p1">* 2006/10/26 SDK Version 2.3 Patch 1</a> (2006/10/27)</dt>
274<dd><a href="#note228">Note 228 (TOOL): Revised the fwupdate script name and carriage return.</a></dd>
275<dd><a href="#note227">Note 227 (TOOL): Corrected the firmware build date that is output when running the fwupdate1202 script.</a></dd>
276<dd><a href="#note226">Note 226 (VI): Reinstated the VIEnableDimming function.</a></dd>
277<dd><a href="#note225">Note 225 (VI): Added the VISetTimeToDimming function.</a></dd>
278<dd><a href="#note224">Note 224 (VI): Removed the VI[Set/Get]ScreenSaverMode function.</a></dd>
279<dd><a href="#note223">Note 223 (MAN): Corrected several broken links in the manual.</a></dd>
280</dl>
281<dl>
282<dt><a href="#20061026">* 2006/10/26 SDK Version 2.3</a> (2006/10/26)</dt>
283<dd><a href="#note222">Note 222 (TOOL): NDEV firmware Version 12.02 release.</a></dd>
284<dd><a href="#note221">Note 221 (TOOL): Added a configuration file for save-data controls.</a></dd>
285<dd><a href="#note220">Note 220 (TOOL): Fixed bugs in the system menu save-data controls.</a></dd>
286<dd><a href="#note219">Note 219 (TOOL): Added support for the Wii Remote in the system menu.</a></dd>
287<dd><a href="#note218">Note 218 (TOOL): Fixed a bug in cardedit[D].elf.</a></dd>
288<dd><a href="#note217">Note 217 (KPAD): Released the KPAD library Version 2.</a></dd>
289<dd><a href="#note216">Note 216 (KPADOld): Fixed a memory-corruption bug that appeared when using Classic Controllers.</a></dd>
290<dd><a href="#note215">Note 215 (SC): Ended disclosure of WPAD library&ndash;specific functions.</a></dd>
291<dd><a href="#note214">Note 214 (SC): Ended disclosure of sound/video mode&ndash;related console setting change functions.</a></dd>
292<dd><a href="#note213">Note 213 (WPAD): Added the WPADGetDpdFormat function.</a></dd>
293<dd><a href="#note212">Note 212 (WPAD): Eliminated the WPADShutdown and the WPADReconnect functions.</a></dd>
294<dd><a href="#note211">Note 211 (WPAD): Fixed a bug in the reset/shutdown operation during pairing and pairing information removal.</a></dd>
295<dd><a href="#note210">Note 210 (WPAD): Fixed a bug that caused the completion callback to be called twice when the speaker was turned off.</a></dd>
296<dd><a href="#note209">Note 209 (WPAD): Added a speaker reset command.</a></dd>
297<dd><a href="#note208">Note 208 (WPAD): Fixed the misalignment of the origin on the Classic Controller L Stick.</a></dd>
298<dd><a href="#note207">Note 207 (WPAD): Fixed a bug that caused the fourth object coordinate of the Pointer to be incorrect when an extension controller was inserted.</a></dd>
299<dd><a href="#note206">Note 206 (OS): Revised the OSRestart function and the OSExecl or OSExecv function.</a></dd>
300<dd><a href="#note205">Note 205 (PAD): Added support for hot-swapping in the basic and cont demos.</a></dd>
301<dd><a href="#note204">Note 204 (DOC): Updated the operating system programming manual.</a></dd>
302<dd><a href="#note203">Note 203 (NAND): Revised the banner sample demo.</a></dd>
303<dd><a href="#note202">Note 202 (NAND): Added the NANDGetAvailableArea[Async] function.</a></dd>
304<dd><a href="#note201">Note 201 (AXART): Added support for the Wii Remote speaker.</a></dd>
305<dd><a href="#note200">Note 200 (MIX): Made the memory region for voice control data user-specifiable.</a></dd>
306<dd><a href="#note199">Note 199 (SYN): Made the memory region for voice control data user-specifiable.</a></dd>
307<dd><a href="#note198">Note 198 (AX): Added master volume functions.</a></dd>
308<dd><a href="#note197">Note 197 (AX): Fixed a bug that prevented the silent section of the DSP-ADPCM data from being silent.</a></dd>
309<dd><a href="#note196">Note 196 (AX): Added debug functions.</a></dd>
310<dd><a href="#note195">Note 195 (AX): Made the maximum voice count and the memory region for voice control data user-specifiable.</a></dd>
311<dd><a href="#note194">Note 194 (AX): Eliminated the voice update function.</a></dd>
312<dd><a href="#note193">Note 193 (AX): Changed AX_MAX_VOICE from 64 to 96.</a></dd>
313<dd><a href="#note192">Note 192 (AX): Increased the number of simultaneously playable sounds.</a></dd>
314</dl>
315<dl>
316<dt><a href="#20060907p10">* 2006/09/07 SDK Version 2.2 Patch 10</a> (2006/10/16)</dt>
317<dd><a href="#note191">Note 191 (KPAD): Changed the specifications so that controller information accessed by read_kpad* functions is synchronized with the associated error status.</a></dd>
318<dd><a href="#note190">Note 190 (DOC): Updated the Video Interface Library programming manual.</a></dd>
319<dd><a href="#note189">Note 189 (WPAD): Corrected a problem that caused values greater than 128 to be set for the audio volume, using the WPADSetSpeakerVolume function.</a></dd>
320<dd><a href="#note188">Note 188 (WPAD): Corrected the unstable behavior seen when the calendar was set to January 1, 2000, 00:00.</a></dd>
321<dd><a href="#note187">Note 187 (DVD): Corrected a problem that prevented the DVDCheckDiskAsync callback from returning after DVDCancel[Async] or DVDCancelAll[Async] was called in the DVD_STATE_NO_DISK or the DVD_STATE_RETRY state.</a></dd>
322<dd><a href="#note186">Note 186 (DVD): Corrected a problem that prevented subsequent disc insertions from being recognized if DVDCancel[Async] or DVDCancelAll[Async] was called during the DVD_STATE_NO_DISK state</a></dd>
323<dd><a href="#note185">Note 185 (Audio): Updated the end-user license agreement with Roland.</a></dd>
324</dl>
325<dl>
326<dt><a href="#20060907p9">* 2006/09/07 SDK Version 2.2 Patch 9</a> (2006/10/06)</dt>
327<dd><a href="#note184">Note 184 (TOOL): NDEV firmware Version 9.24 release.</a></dd>
328</dl>
329<dl>
330<dt><a href="#20060907p8">* 2006/09/07 SDK Version 2.2 Patch 8</a> (2006/10/03)</dt>
331<dd><a href="#note183">Note 183 (WPAD): Fixed a bug related to screen burn-in protection.</a></dd>
332<dd><a href="#note182">Note 182 (AX): Fixed the noise that occurred when AX_PB_STATE_STOP was specified repeatedly for the same voice.</a></dd>
333</dl>
334<dl>
335<dt><a href="#20060907p7">* 2006/09/07 SDK Version 2.2 Patch 7</a> (2006/10/01)</dt>
336<dd><a href="#note181">Note 181 (WPAD): Added Wii Remote tools.</a></dd>
337<dd><a href="#note180">Note 180 (WPAD): Fixed a bug that prevented the close callback for simple pairing from being called.</a></dd>
338<dd><a href="#note179">Note 179 (WPAD): Corrected a problem that prevented the search for devices from stopping during simple pairing.</a></dd>
339<dd><a href="#note178">Note 178 (WPAD): Fixed a bug that prevented the Wii Remote Rumble feature from stopping.</a></dd>
340<dd><a href="#note177">Note 177 (WPAD): Fixed a bug with re-registering a Wii Remote after an external extension controller was connected.</a></dd>
341<dd><a href="#note176">Note 176 (WPAD): Corrected a problem that prevented the Wii Remote from connecting to the Wii console for a while after batteries were removed and re-inserted.</a></dd>
342<dd><a href="#note175">Note 175 (WPAD): Fixed bugs in the WPADStartFastSyncDevice and the WPADStartFastSimpleSync functions.</a></dd>
343<dd><a href="#note174">Note 174 (WPAD): Corrected a problem with the pairing procedure.</a></dd>
344<dd><a href="#note173">Note 173 (WPAD): Reduced the speaker sound distortion from weak signals.</a></dd>
345<dd><a href="#note172">Note 172 (WPAD): Fixed a memory leak inside the communication stack.</a></dd>
346</dl>
347<dl>
348<dt><a href="#20060907p6">* 2006/09/07 SDK Version 2.2 Patch 6</a> (2006/09/29)</dt>
349<dd><a href="#note171">Note 171 (WPAD): Calling the WPADShutdown() or the WPADReconnect() function inside the reset/shutdown functions.</a></dd>
350</dl>
351<dl>
352<dt><a href="#20060907p5">* 2006/09/07 SDK Version 2.2 Patch 5</a> (2006/09/29)</dt>
353<dd><a href="#note170">Note 170 (CARD): Fixed a bug that prevented Nintendo GameCube Memory Cards from being mounted correctly.</a></dd>
354<dd><a href="#note169">Note 169 (DVD): Fixed a bug that caused a freeze when issuing disc requests from multiple threads.</a></dd>
355<dd><a href="#note168">Note 168 (WPAD): Fixed a bug that caused the timestamp of the game data stored in the Wii Remote memory to be incorrect.</a></dd>
356<dd><a href="#note167">Note 167 (KPAD): Fixed a bug that caused corruption of controller data when inserting and removing an external extension controller.</a></dd>
357</dl>
358<dl>
359<dt><a href="#20060907p4">* 2006/09/07 SDK Version 2.2 Patch 4</a> (2006/09/27)</dt>
360<dd><a href="#note166">Note 166 (TOOL): NDEV firmware Version 9.23 release.</a></dd>
361<dd><a href="#note165">Note 165 (WPAD): Fixed a bug that prevented origin reset from being performed with the Classic Controller.</a></dd>
362<dd><a href="#note164">Note 164 (WPAD): Fixed a bug that disabled registration operations when SYNCHRO was pressed for 10 or more seconds during the registration operation.</a></dd>
363<dd><a href="#note163">Note 163 (WPAD): Added restrictions on the WPADInit, the WPADReconnect, and the WPADShutdown functions.</a></dd>
364<dd><a href="#note162">Note 162 (WPAD): Changed the function of the WPADSetAcceptConnection function.</a></dd>
365<dd><a href="#note161">Note 161 (WPAD): Changed the Wii Remote memory file information configuration function.</a></dd>
366<dd><a href="#note160">Note 160 (WPAD): Fixed a bug that caused registration information to be lost.</a></dd>
367<dd><a href="#note159">Note 159 (KPAD): Fixed a bug that caused controller data of the remote to become irretrievable.</a></dd>
368<dd><a href="#note158">Note 158 (VI): Fixed a bug that caused noise to be seen when switching applications.</a></dd>
369<dd><a href="#note157">Note 157 (AX): Added Aux bus return volume set/get functions.</a></dd>
370<dd><a href="#note156">Note 156 (AX): Fixed a bug that occurs when setting the delta value of the volume envelope.</a></dd>
371</dl>
372<dl>
373<dt><a href="#20060907p3">* 2006/09/07 SDK Version 2.2 Patch 3</a> (2006/09/22)</dt>
374<dd><a href="#note155">Note 155 (TOOL): NDEV firmware Version 9.22 release.</a></dd>
375<dd><a href="#note154">Note 154 (VI): Fixed a bug that caused noise to be seen on the TV screen during OSShutdownSystem.</a></dd>
376<dd><a href="#note153">Note 153 (DVD): Fixed a bug that caused programs to freeze when run in the NO DISK state.</a></dd>
377</dl>
378<dl>
379<dt><a href="#20060907p2">* 2006/09/07 SDK Version 2.2 Patch 2</a> (2006/09/22)</dt>
380<dd><a href="#note152">Note 152 (TOOL): NDEV firmware Version 9.21 release.</a></dd>
381<dd><a href="#note151">Note 151 (WPAD): Fixed a bug that caused the Control Stick to become misaligned.</a></dd>
382<dd><a href="#note150">Note 150 (WPAD): Fixed a bug that prevented the callback for the internal memory access function from being called.</a></dd>
383<dd><a href="#note149">Note 149 (WPAD): Added error codes</a></dd>
384<dd><a href="#note148">Note 148 (VI): Fixed a bug that caused the application to freeze while running or recovering from the screen burn-in protection feature.</a></dd>
385</dl>
386<dl>
387<dt><a href="#20060907p1">* 2006/09/07 SDK Version 2.2 Patch 1</a> (2006/09/20)</dt>
388<dd><a href="#note147">Note 147 (WPAD): Fixed bugs</a></dd>
389<dd><a href="#note146">Note 146 (WPAD): Timeout after command transfer.</a></dd>
390<dd><a href="#note145">Note 145 (WPAD): Rumble can now be turned off mid-rumble by turning off the Rumble feature.</a></dd>
391<dd><a href="#note144">Note 144 (WPAD): Changed the timing with which the WPADShutdown function is called internally.</a></dd>
392<dd><a href="#note143">Note 143 (WPAD): Changed the WPADDisconnect function specification.</a></dd>
393<dd><a href="#note142">Note 142 (WPAD): Item pertaining to the WLAN signal interference avoidance process.</a></dd>
394<dd><a href="#note141">Note 141 (WPAD): Added functions.</a></dd>
395<dd><a href="#note140">Note 140 (WPAD): Removed the WPADClearPortMapTable function.</a></dd>
396<dd><a href="#note139">Note 139 (KPAD): Fixed a bug that occurred when an attachment was quickly hot-swapped.</a></dd>
397<dd><a href="#note138">Note 138 (NAND): Fixed a bug that caused the NANDSafe series functions to return unexpected result codes.</a></dd>
398<dd><a href="#note137">Note 137 (NAND): Established banner file format, and added new functions.</a></dd>
399<dd><a href="#note136">Note 136 (OS): Added a feature for checking the firmware required by the application.</a></dd>
400<dd><a href="#note135">Note 135 (DVD): Stopped the use of the drive state DVD_STATE_NO_INPUT during the controller input standby status.</a></dd>
401<dd><a href="#note134">Note 134 (DVD): Added official support for the automatic FATAL message.</a></dd>
402<dd><a href="#note133">Note 133 (TOOL): Added screen burn-in protection settings to the system menu.</a></dd>
403<dd><a href="#note132">Note 132 (TOOL): Temporarily stopped the automatic update feature in the firmware system menu.</a></dd>
404<dd><a href="#note131">Note 131 (TOOL): Added a Wii Sensor Bar sensitivity setting to the system menu.</a></dd>
405<dd><a href="#note130">Note 130 (VI): Removed the VIGetDVDStopMotorCount function.</a></dd>
406<dd><a href="#note129">Note 129 (VI): Fixed a bug that prevented the screen from returning to its original state when the console was reset with screen burn-in protection running.</a></dd>
407<dd><a href="#note128">Note 128 (VI): Fixed a bug that caused the TV to display noise when the system entered IDLE mode or a hardware was reset.</a></dd>
408<dd><a href="#note127">Note 127 (WENC): Fixed a bug that prevented sound effects from playing back correctly from the Wii Remote speaker.</a></dd>
409<dd><a href="#note126">Note 126 (DSP): Fixed a bug that caused calling the AXQuit function to output an error and stop the application.</a></dd>
410</dl>
411<dl>
412<dt><a href="#20060907">* 2006/09/07 SDK Version 2.2</a> (2006/09/07)</dt>
413<dd><a href="#note125">Note 125 (TOOL): Changed the save-data specification.</a></dd>
414<dd><a href="#note124">Note 124 (TOOL): Added a drive protection setting to the system menu.</a></dd>
415<dd><a href="#note123">Note 123 (KPAD): Added functions for improving pointing.</a></dd>
416<dd><a href="#note122">Note 122 (KPAD): Added support for the Classic Controller.</a></dd>
417<dd><a href="#note121">Note 121 (KPAD): Changed the behavior when dealing with unknown attachments.</a></dd>
418<dd><a href="#note120">Note 120 (KPAD): Added functions for enabling/disabling the Pointer.</a></dd>
419<dd><a href="#note119">Note 119 (KPAD): Expanded the sample demo program.</a></dd>
420<dd><a href="#note118">Note 118 (AX): Added an AUX callback acquisition function.</a></dd>
421<dd><a href="#note117">Note 117 (WENC): Deleted WENC_FLAG_LAST from the flag passed to WENCGetEncodeData().</a></dd>
422<dd><a href="#note116">Note 116 (NAND): Fixed a bug in the NANDReadDir[Async] Function Reference page.</a></dd>
423<dd><a href="#note115">Note 115 (NAND): Removed write size restriction.</a></dd>
424<dd><a href="#note114">Note 114 (NAND): Added the NANDCheck() sample demo program.</a></dd>
425<dd><a href="#note113">Note 113 (OS): Revised the RESET callback process.</a></dd>
426<dd><a href="#note112">Note 112 (SC): Precaution for calling SCFlush*().</a></dd>
427<dd><a href="#note111">Note 111 (SC): Fixed a bug in SCFlushAsync(), and added a callback argument value.</a></dd>
428<dd><a href="#note110">Note 110 (SC): Fixed a bug in SCFlush().</a></dd>
429<dd><a href="#note109">Note 109 (SC): Automatic call of SCInit().</a></dd>
430<dd><a href="#note108">Note 108 (TOOL): Fixed a bug in makeo.exe.</a></dd>
431<dd><a href="#note107">Note 107 (TOOL): Added a disc country code configuration tool.</a></dd>
432<dd><a href="#note106">Note 106 (TOOL): Corrected a problem that prevented termination of setsmem2size in error from being detected.</a></dd>
433<dd><a href="#note105">Note 105 (DVD): Added the drive state DVD_STATE_NO_INPUT while waiting for controller input.</a></dd>
434<dd><a href="#note104">Note 104 (DVD): Fixed the system language setting that was not reflected in the automatic fatal message.</a></dd>
435<dd><a href="#note103">Note 103 (WPAD): Added device type values.</a></dd>
436<dd><a href="#note102">Note 102 (WPAD): Changed the battery level threshold value, and added the voltage level CRITICAL.</a></dd>
437<dd><a href="#note101">Note 101 (WPAD): Changed how the SyncCallback function is called.</a></dd>
438<dd><a href="#note100">Note 100 (WPAD): Added support for origin reset.</a></dd>
439<dd><a href="#note99">Note 99 (WPAD): Changed how the controller port is allocated.</a></dd>
440<dd><a href="#note98">Note 98 (WPAD): Changed how the Wii Remote setting information is handled.</a></dd>
441<dd><a href="#note97">Note 97 (WPAD): Fixed bugs</a></dd>
442<dd><a href="#note96">Note 96 (WPAD): Added functions.</a></dd>
443<dd><a href="#note95">Note 95 (PAD): Added functions related to the clamp process.</a></dd>
444<dd><a href="#note94">Note 94 (VI): Added support functions for screen burn-in protection and stopping the drive motor.</a></dd>
445</dl>
446<dl>
447<dt><a href="#20060821p1">* 2006/08/21 SDK Version 2.1 Patch 1</a> (2006/08/30)</dt>
448<dd><a href="#note93">Note 93 (TOOL): Added support for firmware/system menu auto-update.</a></dd>
449<dd><a href="#note92">Note 92 (TOOL): Added features to the system menu.</a></dd>
450<dd><a href="#note91">Note 91 (WPAD): Call WPAD termination before reset/shutdown.</a></dd>
451<dd><a href="#note90">Note 90 (OS): Re-released the OSExec function.</a></dd>
452<dd><a href="#note89">Note 89 (OS): Added OSSwitchFiberEx().</a></dd>
453<dd><a href="#note88">Note 88 (OS): Added periodic access to NAND by the system.</a></dd>
454<dd><a href="#note87">Note 87 (NAND): Automatic call of NANDInit().</a></dd>
455<dd><a href="#note86">Note 86 (NAND): Fixed a bug that occurred when the full path name was exactly 32 bytes.</a></dd>
456<dd><a href="#note85">Note 85 (NAND): Added a function that determines whether the file or directory can be created.</a></dd>
457<dd><a href="#note84">Note 84 (NAND): Added result codes that were omitted.</a></dd>
458<dd><a href="#note83">Note 83 (SC): Added the return values for SCGetLanguage.</a></dd>
459<dd><a href="#note82">Note 82 (GD): Added and edited descriptions of GD demo debug output.</a></dd>
460<dd><a href="#note81">Note 81 (GX): Added and edited descriptions of GX demo debug output.</a></dd>
461<dd><a href="#note80">Note 80 (WENC): Added the WENC library.</a></dd>
462<dd><a href="#note79">Note 79 (CX): Released the compression/decompression library.</a></dd>
463<dd><a href="#note78">Note 78 (ENC): Added the ENC library.</a></dd>
464</dl>
465<dl>
466<dt><a href="#20060821">* 2006/08/21 SDK Version 2.1</a> (2006/08/21)</dt>
467<dd><a href="#note77">Note 77 (WPAD): Added support for status of simple pairing.</a></dd>
468<dd><a href="#note76">Note 76 (WPAD): Added functions.</a></dd>
469<dd><a href="#note75">Note 75 (WPAD): Fixed a bug related to hot plug-in or removal of external extension controllers.</a></dd>
470<dd><a href="#note74">Note 74 (WPAD): Changed the number of units that can be paired.</a></dd>
471<dd><a href="#note73">Note 73 (WPAD): Added Full mode to the Pointer.</a></dd>
472<dd><a href="#note72">Note 72 (WPAD): Changed the clamp process.</a></dd>
473<dd><a href="#note71">Note 71 (WPAD): Fixed a bug that halved the pointer sampling rate.</a></dd>
474<dd><a href="#note70">Note 70 (WPAD): Fixed a bug in the Rumble feature.</a></dd>
475<dd><a href="#note69">Note 69 (MEM): Added measures to prevent a performance drop when securing 32-byte alignment from the extended heap.</a></dd>
476<dd><a href="#note68">Note 68 (AX): Added support for Wii Remote speaker output.</a></dd>
477<dd><a href="#note67">Note 67 (AX): Fixed a bug that prevented de-pop from operating with voices that had been panned.</a></dd>
478<dd><a href="#note66">Note 66 (OS): Expanded the alarm features.</a></dd>
479<dd><a href="#note65">Note 65 (KPAD): Various fixes and expansions.</a></dd>
480<dd><a href="#note64">Note 64 (ARC): Added const.</a></dd>
481<dd><a href="#note63">Note 63 (MEM): Fixed a bug in the MEMFindParentHeap() function.</a></dd>
482<dd><a href="#note62">Note 62 (NAND): Added and deleted error codes.</a></dd>
483<dd><a href="#note61">Note 61 (NAND): Revised NANDInit().</a></dd>
484<dd><a href="#note60">Note 60 (NAND): Added functions.</a></dd>
485<dd><a href="#note59">Note 59 (NAND): Corrected a problem that caused unknown error code to be displayed during read/write.</a></dd>
486<dd><a href="#note58">Note 58 (OS): Updated the functions related to reset and shutdown.</a></dd>
487<dd><a href="#note57">Note 57 (OS): Added OSSleep* functions.</a></dd>
488<dd><a href="#note56">Note 56 (SC): Added Wii Remote setup items.</a></dd>
489<dd><a href="#note55">Note 55 (SC): Deleted the emulation functions.</a></dd>
490<dd><a href="#note54">Note 54 (SC): Prohibited use of previous versions of the SC library.</a></dd>
491<dd><a href="#note53">Note 53 (HIO2): Corrected a problem with heavy loads on the host CPU.</a></dd>
492<dd><a href="#note52">Note 52 (DOC): Revised the third chapter &quot;Running a Simple Demo&quot; in the <I>Revolution Build System Guide</I>.</a></dd>
493<dd><a href="#note51">Note 51 (VI): Changed the default setting for the trap filter.</a></dd>
494<dd><a href="#note50">Note 50 (VI): Fixed a bug that prevented disabling the trap filter.</a></dd>
495<dd><a href="#note49">Note 49 (VI): Ended support for 50&nbsp;Hz mode for progressive display.</a></dd>
496</dl>
497<dl>
498<dt><a href="#20060620">* 2006/06/20 SDK Version 2.0</a> (2006/06/20)</dt>
499<dd><a href="#note48">Note 48 (ALL): Deleted the sample demo elf/map file.</a></dd>
500<dd><a href="#note47">Note 47 (ALL): Changed the NDEV that is the target of operations.</a></dd>
501<dd><a href="#note46">Note 46 (ALL): Changed the build target to RVL.</a></dd>
502<dd><a href="#note45">Note 45 (MIX): Corrected a problem with setting AuxB and AuxC controllers in DPL2 mode.</a></dd>
503<dd><a href="#note44">Note 44 (KPAD): Changed the module name, and added support for UI tool Version 4.</a></dd>
504<dd><a href="#note43">Note 43 (WPAD): Added support for using the Wii Remote (both Bluetooth wired/wireless versions).</a></dd>
505<dd><a href="#note42">Note 42 (WPAD): Changed module names.</a></dd>
506<dd><a href="#note41">Note 41 (WPAD): Enabled sharing of some member offsets of the WPADFSStatus structure by WPADStatus.</a></dd>
507<dd><a href="#note40">Note 40 (TOOL): Added a system menu to the boot program.</a></dd>
508<dd><a href="#note39">Note 39 (TOOL): Revised the Revolution shell execution file (RVL_NDEV.bat).</a></dd>
509<dd><a href="#note38">Note 38 (AI): Corrected a problem with the hardware sampling rate converter.</a></dd>
510<dd><a href="#note37">Note 37 (AX): Corrected a problem with the memory interface of the audio subsystem.</a></dd>
511<dd><a href="#note36">Note 36 (AXFX): Changed the effect library.</a></dd>
512<dd><a href="#note35">Note 35 (DVD): Changed the DVDCheckDisk function from synchronous to asynchronous.</a></dd>
513<dd><a href="#note34">Note 34 (DVD): Enabled the automatic FATAL message mode by default.</a></dd>
514<dd><a href="#note33">Note 33 (SC): Added the SC library.</a></dd>
515<dd><a href="#note32">Note 32 (VI): PAL development</a></dd>
516<dd><a href="#note31">Note 31 (VI): Added progressive scan mode for PAL, EURGB60, and MPAL.</a></dd>
517<dd><a href="#note30">Note 30 (VI): Added a support function for switching progressive mode.</a></dd>
518<dd><a href="#note29">Note 29 (OS): Temporarily deleted the OSExec function.</a></dd>
519<dd><a href="#note28">Note 28 (OS): Added a MEM2 memory size simulation feature.</a></dd>
520<dd><a href="#note27">Note 27 (OS): Changed OSInit so that it checks the Apploader target.</a></dd>
521<dd><a href="#note26">Note 26 (OS): Changed the OS_CORE_CLOCK and OS_BUS_CLOCK default values in the os.h header file.</a></dd>
522<dd><a href="#note25">Note 25 (GX): Corrected a problem with the TEV compare feature.</a></dd>
523<dd><a href="#note24">Note 24 (GX): Changed the ASSERT of the FIFO get function to a warning message.</a></dd>
524<dd><a href="#note23">Note 23 (NAND): Added the NAND library.</a></dd>
525<dd><a href="#note22">Note 22 (HIO2): Added a description to the HIO2 function reference page.</a></dd>
526<dd><a href="#note21">Note 21 (AR, ARQ): Deleted the ar.h and the arq.h header files.</a></dd>
527<dd><a href="#note20">Note 20 (ARC): Added the ARC library (archiver).</a></dd>
528</dl>
529<dl>
530<dt><a href="#20060322p2">* 2006/03/22 SDK Version 1.0 Patch 2</a> (2006/04/18)</dt>
531<dd><a href="#note19">Note 19 (AXART): Corrected the update formula for each LFO frame.</a></dd>
532<dd><a href="#note18">Note 18 (AXART): Corrected a problem that prevented the update amount for each LFO frame from corresponding to the frame length (3&nbsp;ms) in the new AX library.</a></dd>
533<dd><a href="#note17">Note 17 (HIO2): Corrected a problem that prevented the HIO2ReadAsync function calls on the host side from returning on rare occasions</a>.</dd>
534<dd><a href="#note16">Note 16 (DOC): Added notes to section 2.4, Error Codes, in the PAD Library Programmer Guide</a></dd>
535</dl>
536<dl>
537<dt><a href="#20060322p1">* 2006/03/22 SDK Version 1.0 Patch 1</a> (2006/04/07)</dt></dt>
538<dd><a href="#note15">Note 15 (GX): Added an ASSERT check for attempts to place a FIFO in the MEM2 region</a>.</dd>
539<dd><a href="#note14">Note 14 (OS): Added support for an external main memory 64&nbsp;MB environment.</a></dd>
540<dd><a href="#note13">Note 13 (OS): Increased the speed of clearing the arena when using OSInit().</a></dd>
541<dd><a href="#note12">Note 12 (OS): Added a 7&nbsp;MB size restriction on programs loaded using Apploader.</a></dd>
542<dd><a href="#note11">Note 11 (MAN): Corrected links on the top page.</a></dd>
543<dd><a href="#note10">Note 10 (MAN): Changed the description of the hio2 sample demos.</a></dd>
544<dd><a href="#note9">Note 9 (EXI): Improved the transfer rate of the HIO2 library and the OSReport function.</a></dd>
545<dd><a href="#note8">Note 8 (HIO2): Corrected a problem with HIO2ReadStatus (RVL side).</a></dd>
546<dd><a href="#note7">Note 7 (DOC): Debugged pre-built sample demos.</a></dd>
547<dd><a href="#note6">Note 6 (DOC): Added NDEV DIP switch settings.</a></dd>
548<dd><a href="#note5">Note 5 (MEM): Released MEM library source code.</a></dd>
549<dd><a href="#note4">Note 4 (MEM): Eliminated the alignment restriction for memory block allocation.</a></dd>
550<dd><a href="#note3">Note 3 (MEM): Corrected a problem that prevented freeing unused memory normally from the heap.</a></dd>
551<dd><a href="#note2">Note 2 (KPAD): Corrected an error in the formula for calculating the acceleration of the Nunchuk.</a></dd>
552</dl>
553<dl>
554<dt><a href="#20060322">* 2006/03/22 SDK Version 1.0</a> (2006/03/22)</dt>
555<dd><a href="#note1">Note 1: SDK Version 1.0 Initial Release.</a></dd>
556</dl>
557
558<hr />
559
560<h2 style="line-height: 0"><a name="20070828p4" id="20070828p4">* 2007/08/28 SDK Version 3.1 Patch 4 </a> <div style="text-align: right">(2008/01/31)</div></h2><hr />
561<h3><a name="note402" id="note402">Note 402 (TOOL): Merged <CODE>setncountrycode</CODE> to <CODE>setcountrycode</CODE></a></h3>
562<p>Merged <CODE>setncountrycode</CODE> that was included in the NADK package to <CODE>setcountrycode</CODE>.</p><p>As a result, when the country code is configured using <CODE>setcountrycode</CODE>, the NAND application's country code will now be configured at the same time.</p>
563<hr />
564<h3><a name="note401" id="note401">Note 401 (OS): Eliminated a bug that prevented the reset code from being set</a></h3>
565<p>This bug prevented the specified value from being applied, and caused <CODE>0x80000001</CODE> to always be returned.
566</p><p>
567This problem has been corrected.
568</p>
569
570<hr />
571<h3><a name="note400" id="note400">Note 400 (OS): Added a feature for recovering from screen burn-in reduction with RESET</a></h3>
572<p>
573When RESET is pressed, the normal state will be restored from the screen burn-in reduction state.
574</p>
575<p>This revision is included in the SDK since the 2007/05/09 release of the SDK, Version 3.0.</p>
576
577<hr />
578<h3><a name="note399" id="note399">Note 399: Mod Chip Countermeasures</a></h3>
579<p>A mod chip detection feature has been included in the library since Version 3.0 of the SDK. When a mod chip is detected, the following error message will be displayed on the screen:
580</p><p>
581Error #001<br>Unauthorized device has been detected.
582</p><p>
583If customers inquire about this error, direct them to remove the mod chip from the Wii console.
584</p>
585
586<hr />
587<h2 style="line-height: 0"><a name="20070828p3" id="20070828p3">* 2007/08/28 SDK Version 3.1 Patch 3 </a> <div style="text-align: right">(2007/12/11)</div></h2><hr />
588<h3><a name="note398" id="note398">Note 398 (WPAD): Removed feature setting functions for the Wii Remote from public availability</a></h3>
589<p>The <CODE>WPADSaveConfig</CODE>, <CODE>WPADEnableMotor</CODE>, and <CODE>WPADSetSpeakerVolume</CODE> functions were designed so that they could only be called from the HOME Menu, but the HOME Menu library has been removed from public availability, so these functions have also been retracted, and their declarations have been deleted from the header files. In addition, related descriptions have been deleted from the function reference manual.</p>
590
591<hr />
592<h3><a name="note397" id="note397">Note 397 (WPAD): Updated the function reference manual and sample demos</a></h3>
593<p>The following information was updated about the return value of the <CODE>WPADProbe</CODE> function and the <CODE>err</CODE> member of the <CODE>WPADStatus</CODE> structure:
594<ul>
595<li>&quot;Introduction&quot;</li>
596<li>&quot;WPADRead&quot;</li>
597<li>&quot;WPADStatus-Related&quot;</li>
598</ul>
599
600The sample demos were also updated to match the updated information.</p>
601
602<hr />
603<h3><a name="note396" id="note396">Note 396 (NAND): Revised the NANDSimpleSafeClose and NANDSafeClose functions</a></h3>
604<p>
605Revised inappropriate error codes that were being returned.
606</p><p>
607If the type of access to a file is not yet known, the value that is returned was changed from <CODE>NAND_RESULT_FATAL_ERROR</CODE> to <CODE>NAND_RESULT_INVALID</CODE>.</p>
608
609<hr />
610<h3><a name="note395" id="note395">Note 395 (GX): Corrected a bug with the GXGetCPUFifo function</a></h3>
611<p>
612When <CODE>GXGetCPUFifo </CODE>was called, programs would freeze in certain conditions, but this has been corrected.</p>
613
614<hr />
615<h3><a name="note394" id="note394">Note 394 (TOOL): Revisions to ndrun_prechecker</a></h3>
616<p>The check process has been revised.
617</p><p>
618All titles that use Revolution SDK Extensions and Revolution DWC must use the extended firmware (former name: &quot;firmware for titles with network support&quot;).
619</p><p>
620After the application of this revision, a warning will be shown if an attempt is made to start an application that uses Revolution SDK Extensions or Revolution DWC with the standard firmware (former name: &quot;firmware for titles without network support&quot;).</p>
621
622<hr />
623<h3><a name="note393" id="note393">Note 393 (OS): Changed the type of an argument to the OSInitStopwatch function</a></h3>
624<p>In order to support literal strings, the type of the second argument to the <CODE>OSInitStopwatch</CODE> function was changed from <CODE>char*</CODE> to <CODE>const char*</CODE>.</p>
625
626<hr />
627<h3><a name="note392" id="note392">Note 392 (OS): Changed the specifications of the OSSetResetCallback and OSSetPowerCallback functions</a></h3>
628<p>The registered callback function will now be deleted by specifying NULL to the arguments of the <CODE>OSSetResetCallback</CODE> and <CODE>OSSetPowerCallback</CODE> functions.</p><p>
629Also, if the <CODE>OSSetResetCallback</CODE> or <CODE>OSSetPowerCallback</CODE> functions are used when a callback function is not registered, these functions used to return the address of an internal function, but they have been changed so that they will return NULL in such cases.</p>
630
631<hr />
632<h3><a name="note391" id="note391">Note 391 (WPAD): Fixed a bug in which a freeze would occur if repeated resets are issued when OSExec is running</a></h3>
633<p>The reset operation was disabled while running <CODE>OSExec[l/v]</CODE>.</p>
634
635<hr />
636<h2 style="line-height: 0"><a name="20070828p2" id="20070828p2">* 2007/08/28 SDK Version 3.1 Patch 2</a> <div style="text-align: right">(2007/10/12)</div></h2><hr />
637<h3><a name="note390" id="note390">Note 390 (TOOL): Fixed a defect in ndrun_prechecker.</a></h3>
638<p>If <CODE>ndrun_prechecker</CODE> was run while the target .ddf file (such as the <CODE>sample.ddf</CODE> file corresponding to <CODE>sample.elf</CODE>) did not exist, there was a bug that would display a log to the shell showing shell script syntax errors yet the precheck process itself was successful even though the error log was displayed in the shell.</p>
639<p>This problem has been corrected.</p>
640
641<hr />
642<h2 style="line-height: 0"><a name="20070828p1" id="20070828p1">* 2007/08/28 SDK Version 3.1 Patch 1</a> <div style="text-align: right">(2007/10/10)</div></h2><hr />
643<h3><a name="note389" id="note389">Note 389 (TOOL): System firmware Version 35.4.16 release</a></h3>
644<p>Released firmware for network-enabled titles.</p><p>
645Update system firmware after applying this patch and before running applications. From now on, select from two types of firmware for each title: firmware for titles with network support, and firmware for titles without network support. For details, refer to the Cautions section of the SDK readme. For instructions on updating the version, refer to the Installation Procedure section of the SDK readme.
646</p>
647
648<hr />
649<h3><a name="note388" id="note388">Note 388 (TOOL): Updated the DEVKIT system menu</a></h3>
650<p>The DEVKIT system menu now supports the latest version of firmware.
651</p>
652
653<hr />
654<h3><a name="note387" id="note387">Note 387 (OS): Relaxed size restrictions on programs that are loaded by default</a></h3>
655<p>Expanded the size limitation from the prior 7 MB to 9 MB on programs that are loaded by default.</p>
656
657<hr />
658<h3><a name="note386" id="note386">Note 386 (OS): Added information on functions that can put the current thread to sleep</a></h3>
659<p>Added a note to the Function Reference Manual page for each Revolution SDK function that can put the current thread to sleep. Interaction between a thread's sleeping status and callback functions is explained in the Interrupts and Callback Functions page (OS &gt; Overview &gt; Interrupts and Callback Functions).</p>
660
661<hr />
662<h3><a name="note385" id="note385">Note 385 (OS): Fixed a bug wherein boot cache determination would fail at application completion</a></h3>
663<p>For certain conditions there was a problem that caused boot cache determination to fail when exiting the application.
664</p><p>
665This problem has been corrected.</p>
666
667<hr />
668<h3><a name="note384" id="note384">Note 384 (OS): Fixed a bug that caused OSFatal to behave incorrectly for applications created using NADK</a></h3>
669<p>There was a bug that caused OSFatal to behave incorrectly for applications created using NADK.
670</p><p>
671This problem has been corrected.</p>
672
673<hr />
674<h3><a name="note383" id="note383">Note 383 (PAD): Fixed a bug that prevented recovery from the active screen burn-in reduction state when using the DK Bongos</a></h3>
675<p>
676There was a bug wherein input from the DK Bongos could not make the system recover from the active screen burn-in reduction state.
677</p><p>
678This problem has been corrected.</p>
679
680<hr />
681<h3><a name="note382" id="note382">Note 382 (MIX, SEQ, SYN): Support for multiple initialization function invocations</a></h3>
682<p>Support has been added for multiple invocations of the following library initialization functions: <CODE>MIXInit()</CODE>, <CODE>SEQInit()</CODE>, and <CODE>SYNInit()</CODE>. Starting on the second invocation, these functions will exit without any processing if called multiple times.</p>
683
684<hr />
685<h3><a name="note381" id="note381">Note 381 (AXART): Added the AXARTRemoveArticulator function</a></h3>
686<p>Added the <CODE>AXARTRemoveArticulator</CODE> function.</p><p>This function is used when removing an arbitrary articulator from an articulator list.</p>
687
688<hr />
689<h3><a name="note380" id="note380">Note 380 (AXFX): Added reference pages for expansion functions (Exp-type)</a></h3>
690<p>Added explanations to <CODE>AX_Applications.jp.pdf</CODE> and made function reference additions for the expansion functions (<CODE>Exp</CODE>).</p>
691
692<hr />
693<h3><a name="note379" id="note379">Note 379 (DOC): Added a document related to the Dolby Pro Logic II license</a></h3>
694<p>Added the following document related to the Dolby Pro Logic II license.</p>
695<CODE>/docs/ja_JP/License/Dolby/DPL2_for_Wii_J.pdf</CODE>
696</p><p>
697Please check the content.</p>
698
699<hr />
700<h3><a name="note378" id="note378">Note 378 (SC): Added a new function for checking the Parental Controls password</a></h3>
701<p>
702Added a new function, <CODE>SCCheckPCPassword</CODE>, to check if the string specified as an argument matches the password set in the Wii Menu's Parental Controls. </p><p>
703For details, refer to the function reference manual.</p>
704
705<hr />
706<h2 style="line-height: 0"><a name="20070828" id="20070828">* 2007/08/28 SDK3.1</a> <div style="text-align: right">(2007/08/28)</div></h2><hr />
707<h3><a name="note377" id="note377">Note 377 (TOOL): System firmware Version 33.4.16 release</a></h3>
708<p>Update the system firmware (formerly NDEV firmware) after applying this patch and before running applications.
709</p><p>
710For instructions about updating the version, see the &quot;Installation Procedure&quot; section of the SDK's readme.
711</p>
712
713<hr />
714<h2 style="line-height: 0"><a name="20070808" id="20070808">* 2007/08/08 SDK3.1 RC2</a> <div style="text-align: right">(2007/08/08)</div></h2><hr />
715<h3><a name="note376" id="note376">Note 376 (TOOL): System firmware Version 33.4.15 release</a></h3>
716<p>Update system firmware (formerly NDEV firmware) after applying this patch and before running applications.
717</p><p>
718For instructions about updating the version, see the Installation Procedure section of the SDK's readme.
719</p>
720
721<hr />
722<h3><a name="note375" id="note375">Note 375 (TOOL): Added features to the DEVKIT system menu</a></h3>
723<p>Added development console initialization to the DEVKIT system menu.</p><p>For details, see &quot;NDEV System Menu&quot;, under &quot;Development Console Settings&quot; in the &quot;Tools&quot; section of the manual.</p>
724
725<hr />
726<h3><a name="note374" id="note374">Note 374 (SC): Added a new function for getting Parental Controls information</a></h3>
727<p>Added a new function, <CODE>SCCheckPCMessageRestriction</CODE>, for checking whether the following Parental Controls setting in the Wii Menu is allowed: &quot;Online user-to-user communication and the exchange of user generated content&quot;.
728</p><p>
729For more details, consult the man page for each function.</p>
730
731<hr />
732<h3><a name="note373" id="note373">Note 373 (CX): Fixed a problem with Huffman compression when a value is encoded with 18 bits or more</a></h3>
733<p>A bug was found that, when 8-bit Huffman compression was performed on data, would cause compression results to become invalid if a value was encoded to 18 bits or greater and the code started with a 1.</p><p>
734This may occur for data of several megabytes or more that is unbalanced in a specific pattern.</p><p>
735This problem has been corrected.</p>
736
737<hr />
738<h3><a name="note372" id="note372">Note 372 (THP): Fixed a bug that caused error when monaural sound file was used with THPConv(D).exe</a></h3>
739<p>There was a problem where <CODE>THPConv(D).exe</CODE> would output an error and stop if a monaural sound file was used when creating THP data.
740</p><p>
741This problem has been corrected.</p>
742
743<hr />
744<h3><a name="note371" id="note371">Note 371 (RSO): Included the RSO package</a></h3>
745<p>The RSO package has been included in the SDK; previously, it had been released separately.</p>
746<p>
747The RSO module included in this SDK is the same as the RSO package released on 2006/12/19 (<CODE>RVL_RSO_SDK_061219.zip</CODE>), apart from revisions in the manual to some of the demos' explanations.</p>
748
749<hr />
750<h2 style="line-height: 0"><a name="20070720" id="20070720">2007/07/20 SDK Version 3.1 RC1</a> <div style="text-align: right">(2007/07/20)</div></h2><hr />
751<h3><a name="note370" id="note370">Note 370 (TOOL): System firmware Version 33.4.14 release</a></h3>
752<p>Update system firmware (formerly NDEV firmware) after applying this patch and before running applications.
753</p><p>
754For instructions about updating the version, see the Installation Procedure section of the SDK's readme.
755</p>
756
757<hr />
758<h3><a name="note369" id="note369">Note 369 (TOOL): Updated the DEVKIT system menu</a></h3>
759<p>The DEVKIT system menu now supports the latest version of firmware.</p>
760
761<hr />
762<h3><a name="note368" id="note368">Note 368 (KBD/KPR): Added Japanese language function reference manual</a></h3>
763<p>Added the Function Reference Manual in Japanese.</p>
764
765<hr />
766<h3><a name="note367" id="note367">Note 367 (KPAD): Added new play mode</a></h3>
767<p>Added a new play mode for when the play radius has been set for the values of the pointer's coordinates, horizontal parameters, distance, and motion sensors.
768</p><p>
769With the previous method, even within the play range, the values would gradually start to move as they approached the boundary of the play radius, resulting in smooth changes in values. In contrast, this new method distinguishes sharply between whether or not the values are changed based on the boundary of the play radius, and does not change the values at all within the play range.
770</p><p>
771With the previous method, making the play radius too large would lead to behavior making it appear that the tracking had been made weaker. If you want to avoid this, you should probably consider using the new method.
772</p><p>
773In addition, the operation of switching between play modes has been added to the <CODE>kpadsample</CODE> sample demo, so you can check the differences in behavior between each method.</p>
774
775<hr />
776<h3><a name="note366" id="note366">Note 366 (WPAD): Added and deleted sample demos</a></h3>
777<p>Among the sample demos, there were demos that were not being used directly due to the added guidelines, so they were deleted. Also, a demo was added that combined several demos.
778</p><p>
779The demos that were added and deleted are shown below.
780</p><p>
781Deleted: <br>- accept<br> - check<br> - config<br> - distance<br> - handling<br> - pointing<br> - sampling<br> - shutdown<br> - simple<br> - sync-callback<br> <br>Added: <br>- wpadsample</p>
782
783<hr />
784<h3><a name="note365" id="note365">Note 365 (WPAD): Fixed the following bug: exception occurs if registration function is called when WPAD_SYNC_EVT_BUSY</a></h3>
785<p>There was a bug wherein if <CODE>WPAD_SYNC_EVT_BUSY</CODE> was returned to a callback that was set by a function like <CODE>WPADSetSyncDeviceCallback</CODE>, an exception would occur if the <CODE>WPADStartSyncDevice</CODE> function was called within that callback.
786</p><p>
787This bug was corrected by deleting <CODE>WPAD_SYNC_EVT_BUSY</CODE>.</p>
788
789<hr />
790<h3><a name="note364" id="note364">Note 364 (WPAD): Fixed a bug that caused failure at next startup if reset during registration process</a></h3>
791<p>There was a bug wherein if RESET was pressed immediately after pressing SYNCHRO at the particular timing, the reset process would complete, but the Bluetooth module would go out of control upon restarting, and the system would fail to start.
792</p><p>
793This problem has been corrected.</p>
794
795<hr />
796<h3><a name="note363" id="note363">Note 363 (MAN): Changed format of the top page of Function Reference</a></h3>
797<p>Partially changed the format of the top-level page of the Function Reference.</p>
798
799<hr />
800<h3><a name="note362" id="note362">Note 362 (DVD): Updated automatic fatal error messages</a></h3>
801<p>Updated the contents of the automatic fatal error messages.</p>
802
803<hr />
804<h3><a name="note361" id="note361">Note 361 (VI): Added VIResetDimmingCount</a></h3>
805<p>Added a function to reset the internal counter for screen burn-in reduction.
806</p><p>
807Caution must be taken when using this function. For details, refer to the function reference for <CODE>VIResetDimmingCount</CODE>.</p>
808
809<hr />
810<h3><a name="note360" id="note360">Note 360 (MEM): Fixed a bug related to unlocking with MEMResizeForMBlockExpHeap()</a></h3>
811<p>When <CODE>MEMResizeForMBlockExpHeap()</CODE> was used in thread-safe mode, there was a bug that caused it to exit without releasing the lock on the mutex if the required size could not be allocated from the available memory.
812</p><p>
813This problem has been corrected.</p>
814
815<hr />
816<h3><a name="note359" id="note359">Note 359 (AXFX): Corrected Early Reflection of AXFXReverbHi/AXFXReverbHiDpl2</a></h3>
817<p>There was a bug that caused &quot;Early Reflection&quot; not to work in <CODE>AXFXReverbHi</CODE> and <CODE>AXFXReverbHiDpl2</CODE>.
818</p><p>
819This problem has been corrected.</p>
820
821<hr />
822<h3><a name="note358" id="note358">Note 358 (AX): Corrected a bug related to execution of new DSP task during AXQuit()</a></h3>
823<p>There had been cases when the following errors would occur when <CODE>AXQuit()</CODE> was called, depending on the timing.
824</p><p>
825DSPAssertTask():Specified task not in active task list!in &quot;dsp.c&quot; on line 620.
826</p><p>
827This was occurring because while an audio DSP task being ended within <CODE>AXQuit()</CODE>, an AI interrupt occurred, and execution of the next DSP task was being requested.
828</p><p>
829This problem has been corrected.</p>
830
831<hr />
832<h2 style="line-height: 0"><a name="20070509p4" id="20070509p4">* 2007/5/9 SDK Version 3.0 Patch 4</a> <div style="text-align: right">(2007/06/28)</div></h2><hr />
833<h3><a name="note357" id="note357">Note 357 (TOOL): System firmware Version 31.4.13 release</a></h3>
834<p>Update the system firmware (formerly NDEV firmware) after applying this patch and before running applications.</p><p>
835For instructions about updating the <CODE>versionRefer</CODE>, see the Installation Procedure section of the SDK's readme file.
836</p>
837
838<hr />
839<h3><a name="note356" id="note356">Note 356 (DVD) Corrected errors in manual</a></h3>
840<p>Corrected errors in the manuals of the <CODE>DVDReadAsyncPrio</CODE>, <CODE>DVDSeekAsyncPrio</CODE>, and <CODE>DVDCheckDiskAsync</CODE> functions. These functions always return TRUE.</p>
841
842<hr />
843<h3><a name="note355" id="note355">Note 355 (KBD/KPR): Corrected a number of problems</a></h3>
844<p>Made a number of corrections. For details, see the function reference manual.</p>
845
846<hr />
847<h3><a name="note354" id="note354">Note 354 (KPAD): Made a correction such that when the device type is WPAD_DEV_FUTURE the input can be obtained in KPAD1 style</a></h3>
848<p>When input data from the Wii Remote was obtained directly from the ring buffer (KPAD1 style) instead of being obtained with the <CODE>KPADRead</CODE> function, the input data could not be obtained when the device type was WPAD_DEV_FUTURE.</p><p>
849This problem was corrected.</p>
850
851<hr />
852<h3><a name="note353" id="note353">Note 353 (WPAD): Fixed a bug that caused an exception and halt at next startup if Wii shut down during registration process</a></h3>
853<p>If the Wii console was shut down when it was registering the Wii Remote, certain timings would cause an exception to occur.</p><p>
854This situation has been corrected by not performing the shutdown until the system enters a state in which the registration process can be stopped safely, even if the system is shut down during the registration process.</p>
855
856<hr />
857<h2 style="line-height: 0"><a name="20070509p3" id="20070509p3">* 2007/5/9 SDK Version 3.0 Patch 3</a> <div style="text-align: right">(2007/06/21)</div></h2><hr />
858<h3><a name="note352" id="note352">Note 352 (TOOL): System firmware Version 31.4.12 release</a></h3>
859<p>Update system firmware (formerly NDEV firmware) after applying this patch and before running applications.
860</p><p>
861For instructions about updating the version, see the Installation Procedure section of the SDK's readme.
862</p>
863
864<hr />
865<h3><a name="note351" id="note351">Note 351 (KBD/KPR): Corrected a number of problems</a></h3>
866<p>Made a number of corrections. For details, see the function reference manual.
867</p>
868
869<hr />
870<h3><a name="note350" id="note350">Note 350 (WPAD): Fixed a bug that allowed connection of simple-paired Wii Remote even after shutdown</a></h3>
871<p>A bug existed that would cause simple registration information to be recorded at shutdown time, when WiiConnect24 was set to run while the console was in standby status.</p>
872<p>
873As a result, Wii Remotes that were registered using One Time Mode were able to connect even after the system was shut down and restarted.
874</p><p>
875This problem has been corrected.
876</p>
877
878<hr />
879<h3><a name="note349" id="note349">Note 349 (WPAD): Fixed a bug that caused failure of Wii Remote registration until Wii was reset</a></h3>
880<p>It was found that [this issue] does occur rarely, when trying to connect an already-registered Wii Remote to multiple consoles at the same time if the registration operation is started from the Wii console side.</p><p>This bug has been corrected such that it will not occur even in this type of situation.</p>
881
882<hr />
883<h3><a name="note348" id="note348">Note 348 (DEMO): Added a setting to allocate XFB in MEM2</a></h3>
884<p>A setting was added to allocate XFB in MEM2.</p>
885<p>
886This setting can be enabled by stating that <CODE>DemoUseMEM2XFB=TRUE</CODE> before calling the <CODE>DEMOInit()</CODE> function.</p>
887
888<hr />
889<h2 style="line-height: 0"><a name="20070509p2" id="20070509p2">* 2007/05/09 SDK Version 3.0 Patch 2</a> <div style="text-align: right">(2007/06/07)</div></h2><hr />
890<h3><a name="note347" id="note347">Note 347 (TOOL): System firmware Version 31.4.11 release</a></h3>
891<p>Update system firmware (formerly NDEV firmware) after applying this patch and before running applications.
892</p><p>
893For instructions about updating the version, see the Installation Procedure section of the SDK's readme.
894</p>
895
896<hr />
897<h3><a name="note346" id="note346">Note 346 (TOOL): Corrected operation of ntcompress tool when acting to decompress illegal data</a></h3>
898<p>There were occasions when the ntcompress program had crashed when illegal data was attempted to be extracted.</p><p>
899This has been corrected so that an error will be displayed, and the program will exit normally.</p>
900
901<hr />
902<h3><a name="note345" id="note345">Note 345 (KBD): Fixed a bug that prevented recovery from the screen burn-in reduction state</a></h3>
903<p>There was a bug that caused the system not to recover from screen burn-in reduction state even after keyboard input.</p><p>
904This problem has been corrected.</p>
905
906<hr />
907<h3><a name="note344" id="note344">Note 344 (KBD/KPR): Made additions and corrections to API</a></h3>
908<p>Additions and revisions were made to several functions. For details, see the <I>Function Reference Manual</I>.</p>
909
910<hr />
911<h3><a name="note343" id="note343">Note 343 (WPAD): Changed the internal processing of WPADGetInfo(Async)</a></h3>
912<p>To a bug that halted the controller data transfer, made the following fix: changed the WPADGetInfo(Async) function's internal processing for the case when no external extension controllers were inserted into the Wii Remote.</p>
913<p>
914Due to this change, the WPADProbe function will be returning WPAD_ERR_BUSY for some time after the WPADGetInfo(Async) function is called. However, there is no risk of losing data because they will be received correctly from the controller even during this period.
915</p>
916<p>*This revision is the same as the revision that was reported in SDK Version 2.4 Patch 6.</p>
917
918<hr />
919<h3><a name="note342" id="note342">Note 342 (WPAD): Fixed a bug that stopped the transfer of controller data from the Wii Remote</a></h3>
920<p>There was a bug that caused the Wii Remote to stop transferring the controller data if the WPADGetInfo(Async) function was used when removing an extension controller that returns WPAD_DEV_FUTURE as the device type from the Wii Remote.</p>
921<p>
922This problem has been corrected.</p>
923<p>*This revision is the same as the revision that was reported in SDK Version 2.4 Patch 6.</p>
924
925<hr />
926<h3><a name="note341" id="note341">Note 341 (KPAD): Corrected error handling of the Wii Remote's controller data</a></h3>
927<p>The WPADProbe function had been used to check the validity of data from within the sampling callback that is called when data is received. The status that is obtained by this function is irrelevant to the validity of the data, so there were cases when valid data was being wrongfully discarded.</p>
928<p>
929This problem has been corrected.</p>
930<p>*This revision is the same as the revision that was reported in SDK Version 2.4 Patch 6.</p>
931
932<hr />
933<h3><a name="note340" id="note340">Note 340 (KPAD): Added functions to correct the Nunchuk motion sensor</a></h3>
934<p>When the side of Nunchuk that contains the C and Z Buttons is [facing] away from the ground and the Nunchuk's Control Stick is perpendicular with the ground, the motion sensor will recognize [the Nunchuk] as being in a horizontal state. If correction is performed, [the Nunchuk] will also be recognized as being in a horizontal state when the side that contains the C and Z Buttons is [facing] toward the ground.</p>
935<p>
936The following functions were added for correction.<br>- KPADSetReviseMode()<br> - KPADReviseAcc()<br> - KPADGetReviseAngle()</p>
937
938<hr />
939<h3><a name="note339" id="note339">Note 339 (CX): Fixed a problem with uncompression when the source data size is not aligned to 4 bytes for Huffman compression</a></h3>
940<p>If the source data size is not 4-byte aligned during Huffman compression, there were cases in which the final 1-3 bytes were not extracted correctly when extracted with the CXReadUncompHuffman function. This has been corrected so that will be extracted correctly.</p>
941
942<hr />
943<h3><a name="note338" id="note338">Note 338 (CX): Fixed a bug such that during streaming uncompression an error would return if the compressed data was invalid</a></h3>
944<p>Corrected the CXReadUncompRL, CXReadUncompLZ, and CXReadUncomHuffman functions so that they will return negative error codes when an attempt is made to extract data that cannot be extracted (invalid compressed data).</p>
945
946<hr />
947<h3><a name="note337" id="note337">Note 337 (CX): Added LZ77 extended compression</a></h3>
948<p>Added an a format that extends the length size of LZ77 compression during compression. LZ77 compression can be done in the extended format by either specifying <CODE>-lex</CODE> as an option to <CODE>ntcompress</CODE> or by using the <CODE>CXCompressLZEx</CODE> function.</p>
949<p>
950Note that while the expansion function is the same as that for normal LZ77 compression, extraction is not possible using the LZ77 expansion functions included in previous SDKs.</p>
951
952<hr />
953<h3><a name="note336" id="note336">Note 336 (CX): Added uncompression size specification for streaming uncompression</a></h3>
954<p>The CXInitUncompContextRLFront, CXInitUncompContextLZFront, and CXInitUncompContextHuffmanFront functions were added as interfaces for specifying the data size to expand during streaming decompression.</p>
955
956<hr />
957<h2 style="line-height: 0"><a name="20070509p1" id="20070509p1">* 2007/05/09 SDK Version 3.0 Patch 1</a> <div style="text-align: right">(2007/05/24)</div></h2><hr />
958<h3><a name="note335" id="note335">Note 335 (TOOL): System firmware Version 31.4.8 release</a></h3>
959<p>Update the system firmware (formerly NDEV firmware) after applying this patch and before running applications.</p>
960<p>
961For instructions about updating the <CODE>versionRefer</CODE>, see the Installation Procedure section of the SDK's readme file.
962</p>
963
964<hr />
965<h3><a name="note334" id="note334">Note 334 (CX): Added functions for secure data uncompression</a></h3>
966<p>Functions were added for carrying out processing while heeding buffer overruns. They are the following five:</p><p>
967CXSecureUncompressAny()<br> CXSecureUncompressRL()<br> CXSecureUncompressLZ()<br> CXSecureUncompressHuffman()<br> CXSecureUnfilterDiff()<br>
968</p>
969
970<hr />
971<h2 style="line-height: 0"><a name="20070509" id="20070509">* 2007/05/09 SDK Version 3.0</a> <div style="text-align: right">(2007/05/09)</div></h2><hr />
972<h3><a name="note333" id="note333">Note 333 (TOOL): System firmware Version 31.4.7 release</a></h3>
973<p>Update the system firmware (formerly NDEV firmware) after applying this patch and before running applications.</p><p>For instructions about updating the versionRefer, see the Installation Procedure section of the SDK's readme. </p>
974
975<hr />
976<h3><a name="note332" id="note332">Note 332 (TOOL): Updated the DEVKIT system menu</a></h3>
977<p>Upgraded the DEVKIT system menu to version 1.13. </p><p>
978To the DEVKIT system menu, added the support for version 31 of the firmware. </p>
979
980<hr />
981<h3><a name="note331" id="note331">Note 331 (KPAD): Added functions for getting parameters</a></h3>
982<p>Previously, for the parameters used in pointing and speed calculations performed within the library, only the functions for setting the parameter values existed. We have added the functions for getting the values. </p><p>
983In addition, we added the corresponding function references. </p>
984
985<hr />
986<h3><a name="note330" id="note330">Note 330 (KPAD): Made the KPADInit function non-blocking</a></h3>
987<p>After the <CODE>WPADInit</CODE> function was called internally, the <CODE>KPADInit</CODE> function had to wait for the WPAD library to complete initialization. This was changed such that <CODE>KPADInit</CODE> no longer has to wait. </p><p>
988As before, KPAD library functions can be called after the <CODE>KPADInit</CODE> function. </p>
989
990<hr />
991<h3><a name="note329" id="note329">Note 329 (WPAD): Stopped the release of the wpad_tool[D].elf and wpad_get_ver[D].elf tools</a></h3>
992<p>When the communications module of the Wii Remote was unstable, these tools got released for use in bug analysis. Because the communications module of the Wii Remote has since stabilized, it is unnecessary to release these tools any longer. </p>
993
994<hr />
995<h3><a name="note328" id="note328">Note 328 (WPAD): Changed specifications for simple pairing</a></h3>
996<p>This involves the sharing of the same registration information by the Wii console and Wii Remote. In the past, when the Wii console was reset, the pairing information for the simple-paired Wii Remotes was cleared on the Wii console side. We have changed the specifications to not clear the registration information until the Wii console is shut down. </p><p>
997There is no compatibility with previous specifications. Thus, simple-paired Wii Remotes cannot be connected when you run applications built with pre-SDK2.4 versions of SDK. Re-running applications built with SDK3.0 or later will allow simple-paired Wii Remotes to connect. </p><p>
998However, if simple pairing is performed again while an application built with a pre-SDK2.4 version is running, the registration information on the Wii Remote side will be overwritten. Consequently, such Wii Remotes cannot connect even if an application built with SDK3.0 or a later version is run. </p>
999
1000<hr />
1001<h3><a name="note327" id="note327">Note 327 (WPAD): Changed specifications for the WPADAttach(detach)DummyExtension functions</a></h3>
1002<p>In the past, functions <CODE>WPADAttachDummyExtension</CODE> and <CODE>WPADDetachDummyExtension</CODE> were not included in the release versions of the library. To explain, these are the debug functions, and the release versions cannot be built using the same source code that is used in the debug versions. </p><p>
1003For convenience, these functions were included in the release versions of the library. This will enable you to build the release versions with the same source code. The functions were disabled in the release versions. </p>
1004
1005<hr />
1006<h3><a name="note326" id="note326">Note 326 (WPAD): Corrected shifts in each coordinate axis of the DPD module</a></h3>
1007<p>Even if the DPD captures the same object from the same location, the coordinate values returned by each module will shift. If the values are captured from the same location as the objects located at the four corners of the range that can be captured by DPD, these values will be written in the Wii Remote at the time of manufacture.
1008</p><p>
1009The WPAD library now uses these values to correct to the maximal possible extent the DPD coordinates received from the Wii Remote, and then to pass the coordinates to the application.</p>
1010
1011<hr />
1012<h3><a name="note325" id="note325">Note 325 (NAND): Added a function for getting the usage status of /tmp</a></h3>
1013<p>Added the <CODE>NANDGetTmpDirUsage[Async]</CODE> function. </p><p>This function can be used to get the number of FS blocks and inodes consumed by /tmp.
1014</p>
1015
1016<hr />
1017<h3><a name="note324" id="note324">Note 324 (NAND): Added a function for getting the usage status of the home directory</a></h3>
1018<p>Added the <CODE>NANDGetHomeDirUsage[Async]</CODE> function. </p><p>This function can be used to get the number of FS blocks and inodes consumed by the home directory.
1019</p>
1020
1021<hr />
1022<h3><a name="note323" id="note323">Note 323 (NAND): Added functions of type NANDSimpleSafe</a></h3>
1023<p>Previously, functions of type NANDSafe were prepared for updating file content atomically. However, their defect lay in having no means to recover from errors. </p><p>Functions of type NandSimpleSafe were added to take the place of the NANDSafe functions. </p>
1024
1025<hr />
1026<h3><a name="note322" id="note322">Note 322 (NAND): Changed the method for dealing with the NAND_RESULT_BUSY and NAND_RESULT_ALLOC_FAILED errors</a></h3>
1027<p>We changed the procedure for handling the NAND_RESULT_BUSY and NAND_RESULT_ALLOC_FAILED errors. </p><p>For details, refer to the Processing Sequence page of the NAND Function Reference Manual. </p>
1028
1029<hr />
1030<h3><a name="note321" id="note321">Note 321 (PAD): Pulled the <I>simple</I> demo</a></h3>
1031<p>Among the sample demos for the PAD library, the <CODE>simple</CODE> demo's release was stopped for the following reasons: </p>
1032<p>
1033- The described code does not comply with the guidelines.<br> - The content of the demo is sufficiently covered by the <CODE>basic</CODE> demo.</p>
1034
1035<hr />
1036<h3><a name="note320" id="note320">Note 320 (KPAD): Added the keyboard library</a></h3>
1037<p>Added the keyboard library.</p><p>
1038Added a library for using USB keyboards. </p>
1039
1040<hr />
1041<h3><a name="note319" id="note319">Note 319 (MAN): Corrected broken links in the function reference manual</a></h3>
1042<p>There were several broken links in the Function Reference Manual.
1043</p><p>
1044This problem has been corrected. </p>
1045
1046<hr />
1047<h3><a name="note318" id="note318">Note 318 (OS): Added the function reference for OSGetAppType</a></h3>
1048<p>Released the <CODE>OSGetAppType</CODE> function, which had only been used internally. </p>
1049<p>This function is used for getting the game type. For further details, see the OSGetAppType page of the Function Reference. </p>
1050
1051<hr />
1052<h3><a name="note317" id="note317">Note 317 (MIDI): Added the MIDI adapter library</a></h3>
1053<p>
1054Added a library for using MIDI adapters. </p>
1055<p>
1056MIDI adapters and this library are primarily designed to support the developers who work with sound. Consequently, you may not include this library in a finished product. </p>
1057
1058<hr />
1059<h2 style="line-height: 0"><a name="20061130p6" id="20061130p6">* 2006/11/30 SDK Version 2.4 Patch 6</a> <div style="text-align: right">(2007/05/18)</div></h2><hr />
1060<h3><a name="note320" id="note320">Note 320 (KPAD): Corrected error handling of the Wii Remote's controller data</a></h3>
1061<p>The controller data status used to be determined from the values of both the <CODE>WPADProbe</CODE> function and the <CODE>err</CODE> member of the <CODE>WPADStatus</CODE> structure. However, because only the value of <CODE>err</CODE> expresses the status of the controller data, a correction has been made such that the value of <CODE>WPADProbe</CODE> is not referenced. </p>
1062
1063<hr />
1064<h3><a name="note319" id="note319">Note 319 (WPAD): Changed the internal processing of WPADGetInfo(Async)</a></h3>
1065<p>To a bug that halted the controller data transfer, made the following fix: changed the <CODE>WPADGetInfo(Async)</CODE> function's internal processing for the case when no external extension controllers were inserted into the Wii Remote.</p>
1066<p>
1067Due to this change, the <CODE>WPADProbe</CODE> function will be returning <CODE>WPAD_ERR_BUSY</CODE> for some time after the <CODE>WPADGetInfo(Async)</CODE> function is called. However, there is no risk of losing data because they will be received correctly from the controller even during this period.</p>
1068
1069<hr />
1070<h3><a name="note318" id="note318">Note 318 (WPAD): Fixed a bug that stopped the transfer of controller data from the Wii Remote</a></h3>
1071<p>If a device that returned <CODE>WPAD_DEV_FUTURE</CODE> as the extension controller device type was removed from the Wii Remote, a bug would halt the controller data transfer from the Wii Remote when the <CODE>WPADGetInfo(Async)</CODE> function was used.</p><p>
1072This problem has been corrected.</p>
1073
1074<hr />
1075<h3><a name="note317" id="note317">Note 317 (WPAD): Changed specifications for the WPADAttach(detach)DummyExtension functions</a></h3>
1076<p>Because <CODE>WPADAttachDummyExtension</CODE> and <CODE>WPADDetachDummyExtension</CODE> are debug functions, they have not been included in the release versions of the library. Consequently, the same source code could not be used to build the release and the debug versions.</p>
1077<p>
1078For convenience, these functions have been disabled and in this form added to the release versions of the library, allowing you to build the release versions with the same source code.</p>
1079
1080<hr />
1081<h2 style="line-height: 0"><a name="20061130p5" id="20061130p5">* 2006/11/30 SDK Version 2.4 Patch 5</a> <div style="text-align: right">(2007/05/09)</div></h2><hr />
1082<h3><a name="note316" id="note316">Note 316 (WPAD): Fixed a bug that caused the Wii Remote to be inoperable if an extension controller was inserted and removed immediately</a></h3>
1083<p>Fixed the following bug: If a Wii Remote extension controller, such as the Nunchuk, was removed the instant it was inserted, often the input data of the Wii Remote could no longer be received.</p>
1084<p>
1085This bug was introduced with the corrections for SDK 2.4 patch 4. For this reason, it is not present in the earlier SDKs. </p>
1086<p>
1087This problem has been corrected.</p>
1088
1089<hr />
1090<h2 style="line-height: 0"><a name="20061130p4" id="20061130p4">* 2006/11/30 SDK Version 2.4 Patch 4</a> <div style="text-align: right">(2007/04/25)</div></h2><hr />
1091<h3><a name="note315" id="note315">Note 315 (NAND): Updated the function reference manual</a></h3>
1092<p>Added a note about handling of BUSY-related error codes to the &quot;Processing Sequence&quot; page.</p>
1093
1094<hr />
1095<h3><a name="note314" id="note314">Note 314 (KPAD): Added a sample demo for detecting the direction that the Wii Remote is swung</a></h3>
1096<p>This sample demo displays an arrow on the screen indicating the direction in which the Wii Remote was swung, and the algorithm for detecting the direction of the swing is included in the source of the sample demo.</p>
1097
1098<hr />
1099<h3><a name="note313" id="note313">Note 313 (KPAD): Corrected errors in manuals</a></h3>
1100<p>Corrected errors in the manuals of the <CODE>KPADEnableStickCrossClamp</CODE> and <CODE>KPADDisableStickCrossClamp</CODE> functions. These functions have no arguments.
1101</p>
1102
1103<hr />
1104<h3><a name="note312" id="note312">Note 312 (KPAD): For the Sensor Bar placement position, changed the corrective processing to be enabled by default</a></h3>
1105<p>The <CODE>KPADEnableAimingMode</CODE> function was changed so that it is called from within the <CODE>KPADInit</CODE> function so that correction processing for the Sensor Bar placement is enabled by default.
1106</p><p>
1107Revised the sample demo along with this.
1108</p>
1109
1110<hr />
1111<h3><a name="note311" id="note311">Note 311 (KPAD): Fixed a bug related to maximum stored data passed to KPADRead</a></h3>
1112<p>When a number lower than <CODE>KPAD_MAX_READ_BUFS</CODE>, 1 for example, is specified as the maximum number of stored data items passed to the <CODE>KPADRead</CODE> function, there were cases in which the actual repeat interval was longer than the button repeat time interval specified with the <CODE>KPADSetBtnRepeat</CODE> function.</p>
1113<p>
1114This problem has been corrected.
1115</p>
1116
1117<hr />
1118<h3><a name="note310" id="note310">Note 310 (WPAD): Updated Function Reference</a></h3>
1119<p>The following content was added to the &quot;Introduction&quot; page.
1120</p><p>
1121- Neither type of pairing can be performed while the pairing information is being deleted by holding the SYNCHRO<br>- Resetting the analog sticks on the Nunchuk and Classic Controller cannot be performed with a combination of buttons on the Wii Remote and the Classic Controller<br>- Stop the speaker during periods when it is not in use<br>
1122</p>
1123
1124<hr />
1125<h3><a name="note309" id="note309">Note 309 (WPAD): To a tool added Wii Remote memory initialization</a></h3>
1126<p>Added a feature that initializes the Wii Remote memory to the <CODE>wpad_mem_util.elf</CODE> tool for error-checking the Wii Remote memory.
1127</p>
1128
1129<hr />
1130<h3><a name="note308" id="note308">Note 308 (WPAD): Fixed a bug in the system's Bluetooth wireless module</a></h3>
1131<p>The Bluetooth wireless module that the system is equipped with checks the signal status every 10 seconds. If the console was reset while this task was being performed, there was a bug that prevented the module from sending or receiving signals. To recover from this issue, it was necessary to remove the console's AC adapter from the outlet.
1132</p><p>
1133This problem has been corrected.</p>
1134
1135<hr />
1136<h3><a name="note307" id="note307">Note 307 (WPAD): Corrected the following bug: if a deallocator that uses a mutex is registered, the execution halts on ASSERT when a FATAL error occurs</a></h3>
1137<p>When using a mutex within the deallocator function registered in the WPAD library and a FATAL error in DVD or other libraries occurred, there was a bug that halted on ASSERT when memory was released during handling of the FATAL error by the WPAD library.</p>
1138<p>
1139This problem has been corrected.</p>
1140
1141<hr />
1142<h3><a name="note306" id="note306">Note 306 (WPAD): Fixed the following bug: if the WPADGetInfoAsync function is called frequently, the external extension controllers are not recognized</a></h3>
1143<p>Within the library, there is a control queue for controlling the Wii Remote and a recognition queue for recognizing external extension controllers. Calling the WPADGetInfoAsync function will register a command in the control queue. Because there was a problem in the prioritization of the recognition queue and the control queue, there were times when commands in the recognition queue could not be processed if the control queue was constantly full with commands.</p>
1144<p>
1145This problem has been corrected.
1146</p>
1147
1148<hr />
1149<h3><a name="note305" id="note305">Note 305 (WPAD): Reduced the time before the Player LEDs go off when disconnection is performed with the WPADDisconnect function</a></h3>
1150<p>When connections were disconnected with the <CODE>WPADDisconnect</CODE> function, the Player Indicators were on for slightly less than 1 second after disconnection.</p>
1151<p>
1152This has been corrected so that the Player Indicators will go off immediately after disconnection.</p>
1153
1154<hr />
1155<h3><a name="note304" id="note304">Note 304 (WPAD): Changed the amount of time before signal interference causes a disconnect</a></h3>
1156<p>For the communication between the console and Wii Remotes, there is a disconnection feature after signals from the other side have been cut off for a fixed period of time due to signal interference. Until now, this time had been set to 2 seconds, but in preparation for the speeding up of application loads, it was changed to 1 second.
1157</p>
1158
1159<hr />
1160<h3><a name="note303" id="note303">Note 303 (WPAD): Added functions for debugging external extension controller processing</a></h3>
1161<p>For application debugging purpose, the <CODE>WPADAttachDummyExtension</CODE> debug function, which operates the library in almost the same way as if the external extension controller had been inserted (inserts a dummy device), and the <CODE>WPADDetachDummyExtension</CODE> debug function, which restores the device type to the Wii Remote, were added.</p>
1162<p>
1163However, please note that these functions can only be used with debug versions of the library, and will only operate correctly when nothing has been inserted into the Wii Remote.
1164</p>
1165
1166<hr />
1167<h3><a name="note302" id="note302">Note 302 (WPAD): Updated the sample demos</a></h3>
1168<p>In the accept, wpad_axdemo, <CODE>wpad_seqdemo</CODE>, and wpad_spdemo sample demos, the speaker was always running as long as the Wii Remote was connected. However, these demos have been revised to match the guidelines so that the speaker is stopped when not in use. In addition, in the memory sample demo, memory could not be read from or written to when the device type was set to values such as <CODE>WPAD_DEV_FUTURE</CODE>. The demo was changed so that this is now possible.</p>
1169
1170<hr />
1171<h3><a name="note301" id="note301">Note 301 (DVD): Corrected automatic fatal error messages</a></h3>
1172<p>A problem was fixed wherein the content of the automatic fatal error message was different than the content specified in the message list of the programming guidelines.</p>
1173
1174<hr />
1175<h3><a name="note300" id="note300">Note 300 (DOC): Added the contact information for the Roland Corporation's licensing department</a></h3>
1176<p>The contact information for the end-user licensing agreement with Roland Corporation was not listed. The contact information is listed in the following file.</p>
1177<p><CODE>docs/en_US/License/Roland/Roland_contact_info.txt</CODE></p>
1178
1179<hr />
1180<h3><a name="note299" id="note299">Note 290 (OS): Added the function reference for OSGetAppGamename</a></h3>
1181<p>Released <CODE>OSGetAppGamename</CODE>, which had been an internal function. This function is a function for getting game names. For details, see the <CODE>OSGetAppGamename </CODE>page of the function reference.
1182</p>
1183
1184<hr />
1185<h3><a name="note298" id="note298">Note 298 (OS): Made fixes for debugging of relocatable module</a></h3>
1186<p>The OS library was corrected for debugging of relocatable modules (REL).
1187</p>
1188
1189<hr />
1190<h3><a name="note297" id="note297">Note 297 (AX): Corrected the bug that caused noise during the streaming playback of the ADPCM data</a></h3>
1191<p>Noise was occurring because during streaming playback of ADPCM data with the sample program axstream.c, the loop context of the ADPCM data was not being updated correctly when the playback position looped from the end of the streaming buffer to the start.
1192</p><p>
1193This problem has been corrected.</p>
1194
1195<hr />
1196<h2 style="line-height: 0"><a name="20061130p3" id="20061130p3">* 2006/11/30 SDK Version 2.4 Patch 3</a> <div style="text-align: right">(2007/03/01)</div></h2><hr />
1197<h3><a name="note296" id="note296">Note 296 (TOOL): System firmware Version 21.2.2 release</a></h3>
1198<p>Update the system firmware (formerly NDEV firmware) after applying this patch and before running applications. Run the update program by starting a Bourne-again shell (bash) and entering &quot;fwupdate21_2_2&quot;. If the environment is customized or if things do not go smoothly using the method described above, go to the <CODE>RVL_SDK/RVL/bin/tools</CODE> directory and execute '<CODE>ODEM -r -l swupdate21_2_2_xx.gcm</CODE>'. (For xx, enter either &quot;jp&quot;, &quot;us&quot;, or &quot;eu&quot;.) The update will start automatically about 10 seconds after firmware starts. Once the update is complete, the message &quot;SWUpdate Successful&quot; appears on the screen, and the NDEV firmware is updated to Firmware 21.2.2 DEVKIT BOOT PROGRAM v1.11. If any versions are already higher than this, the update will fail after displaying &quot;Import: *** ...failed&quot;, but you can continue without any problems. </p>
1199
1200<hr />
1201<h3><a name="note295" id="note295">Note 295 (TOOL): Added features to the DEVKIT system menu</a></h3>
1202<p>Added Verify System Firmware and System Information to the DEVKIT system menu. For details, see &quot;DEVKIT System Menu&quot; in the &quot;Tools&quot; section of the manual.</p>
1203
1204<hr />
1205<h3><a name="note294" id="note294">Note 294 (TOOL): Corrected features in the DEVKIT system menu</a></h3>
1206<p>The following features of the DEVKIT system menu were corrected:
1207</p>
1208<p>
1209- Changed so that the log is always output to the screen<br>- Revised the content displayed on the screen</p>
1210
1211<hr />
1212<h3><a name="note293" id="note293">Note 293 (ENC): Corrected a problem where the returned number of converted characters was incorrect</a></h3>
1213<p>When specifying the size of the conversion destination buffer and converting from the internal character encoding to ISO-2022-JP, the post-conversion size was not being returned correctly. This problem has been corrected.</p>
1214
1215<hr />
1216<h3><a name="note292" id="note292">Note 292 (ENC): Added a conversion table stripping feature</a></h3>
1217<p>Added a feature to strip any unnecessary Japanese conversion tables.</p>
1218
1219<hr />
1220<h3><a name="note291" id="note291">Note 291 (ENC): Added/revised manuals and demos</a></h3>
1221<p>Added a description of a sample demo as well as a demo that uses alternate characters.<br>Deleted unnecessary code from the demo.</p>
1222
1223<hr />
1224<h2 style="line-height: 0"><a name="20061130p2" id="20061130p2">* 2006/11/30 SDK Version 2.4 Patch 2</a> <div style="text-align: right">(2007/01/10)</div></h2><hr />
1225<h3><a name="note290" id="note290">Note 290 (OS): Added a description to the function reference for OSInitFastCast</a></h3>
1226<p>Added a description to the function reference that the effect of the <CODE>OSInitFastCast</CODE> function is limited to threads that have called this function.</p>
1227
1228<hr />
1229<h3><a name="note289" id="note289">Note 289 (FNT): Added the FNT library</a></h3>
1230<p>A library for using Wii bitmap fonts, the FNT library has been added.</p>
1231<p>For details, see the function reference for the FNT library.</p>
1232
1233<hr />
1234<h3><a name="note288" id="note288">Note 288 (HIO2): Corrected a problem that occurred when HIO2Init was called multiple times</a></h3>
1235<p>There was a problem where an error would occur when <CODE>HIO2Open</CODE> would execute if <CODE>HIO2Init</CODE> is called again after already having been called.</p>
1236<p>This problem has been corrected.</p>
1237
1238<hr />
1239<h3><a name="note287" id="note287">Note 287 (HIO2): Revised the function reference for HIO2EnumDevices</a></h3>
1240<p>The type of return value for the host side (Win32) function <CODE>HIO2EnumDevices</CODE> was given as Boolean when actually it is s32.</p>
1241<p>
1242The function reference has been revised.</p>
1243
1244<hr />
1245<h3><a name="note286" id="note286">Note 286 (THP): Revised THPConv(D).exe such that it would not perform sampling during execution</a></h3>
1246<p>Unlike the GameCube, with the Wii, audio data is output at a set playback frequency (of 48,000 Hz or 32,000 Hz). It is no longer necessary when creating THP data to perform sampling for the purpose of fine tuning (48,000 Hz -&gt; 48,043 Hz/32,000 Hz -&gt; 32,028 Hz) of the playback frequency as when using the GameCube.,</p>
1247<p>
1248<CODE>THPConv(D).exe</CODE> has been revised so that sampling is not performed when conventionally executed without the -on option. In addition, the -on option has been deleted. However, to maintain compatibility, <CODE>THPConv(D).exe</CODE> will not stop on an option error even if the -on option is used with the new version of <CODE>THPConv(D).exe</CODE>. Furthermore, since there have been no changes to the THP data file format, the THP data version remains 1.1.</p>
1249
1250<hr />
1251<h3><a name="note285" id="note285">Note 285 (THP): Revised a description related to playback frequency to match that of Wii</a></h3>
1252<p>Notes related to the playback frequency of audio data when creating THP data have been revised to match Wii specifications.</p>
1253<p>
1254Unlike the GameCube, with the Wii, audio data is output at a set playback frequency (of 48,000 Hz or 32,000 Hz).</p>
1255
1256<hr />
1257<h3><a name="note284" id="note284">Note 284 (AX): Corrected a problem where axstream would not support data of a size smaller than the buffer size</a></h3>
1258<p>There was a problem when playing data having a size less than the streaming buffer size (<CODE>STREAMBUFFER_BYTES</CODE>) using <CODE>axstream.c</CODE>, the software streaming demo of the AX library, where noise would be emitted after playback of data ended and execution would stop on an assert from the DVD library.
1259</p><p>
1260This problem has been fixed.</p>
1261
1262<hr />
1263<h3><a name="note283" id="note283">Note 283 (AX): Updated the AX Application manual</a></h3>
1264<p>Descriptions in the &quot;AX Application&quot; manual (<CODE>AX_Applications.jp.pdf</CODE>) have been updated to match Revolution SDK specifications.</p>
1265
1266<hr />
1267<h3><a name="note282" id="note282">Note 282 (WPAD): Corrected a problem where data could not be obtained when connected with an undefined controller plugged in</a></h3>
1268<p>Sometimes input from the Wii Remote could not be obtained when connected to the Wii console if an undefined extension controller (a controller other than the Nunchuk or Classic Controller) had been plugged into the it while it was disconnected.</p>
1269<p>
1270Since data from the remote stops when an extension controller is plugged in, if a command requesting the transfer of data in extended controller data format was issued by the application despite the fact that specifications called for the transfer of commands that request the transfer of data in the immediately previous data format within the library, sometimes the application issued command would be sent first.
1271</p><p>
1272This problem has been corrected.</p>
1273
1274<hr />
1275<h3><a name="note281" id="note281">Note 281 (WPAD): Corrected the range of stick values given for WPADCLStatus</a></h3>
1276<p>Although the range of values that can be assumed by <CODE>clLStickX</CODE>, <CODE>clLStickY</CODE>, <CODE>clRStickX</CODE>, and <CODE>clRStickY</CODE> of <CODE>WPADCLStatus</CODE> was given in the man pages as -128 through 127, the actual allowable range of values is -512 through 511. This error has been corrected.</p>
1277
1278<hr />
1279<h3><a name="note280" id="note280">Note 280 (DVD): Corrected a problem where shutdown processing was not being performed correctly when an automatic Fatal message was issued</a></h3>
1280<p>A problem was corrected where the device and library would not close correctly when there was a Fatal error in the drive when automatic Fatal messages were enabled.</p>
1281
1282<hr />
1283<h2 style="line-height: 0"><a name="20061130p1" id="20061130p1">* 2006/11/30 SDK Version 2.4 Patch 1</a> <div style="text-align: right">(2006/12/18)</div></h2><hr />
1284<h3><a name="note279" id="note279">Note 279 (AX): Revised the DSP load estimate again</a></h3>
1285<p>The following measures have been taken regarding Release Note #266 &quot;(AX): Accounted for delay in response to AI/DSP interrupts when calculating the estimated load on the DSP.&quot;</p>
1286<BLOCKQUOTE><I>In the case of applications that aggressively use callbacks in response to timers and interrupts, audio frame processing may be delayed because it cannot be started immediately after an AI or DSP interrupt.<br> Because this delay was not accounted for in older versions of AX, the estimated DSP load was not calculated correctly in some cases. This problem was fixed. As a result of this revision, however, the number of AX voices has been reduced by about six voices on average.</I></BLOCKQUOTE>
1287<p>
1288However, with the above revision, we found that background music and sound effects would be cut off as a result of AX performing drop processing on all voices if an interrupt delay larger than expected occurred.</p>
1289<p>
1290The method of estimating the DSP load was therefore revised again.</p><p>
1291- The amount of interrupt delay was fixed (200 microseconds in release builds and 400 microseconds in debug builds) <br>- Even delays longer than the above set time occur, they will not cause voices to be dropped<br>- When delays longer than the above set time occur, they might cause noise.<br>
1292</p><p>
1293Even so, attention must be paid to interrupt delays that are longer than expected. As written in Chapter 7, &ldquo;Critical Sections&rdquo; of the Revolution SDK document OS.jp.pdf, applications must keep the period during which interrupts are disabled as short as possible.
1294</p><p>Particular attention must be paid when using <CODE>OSReport()</CODE> in debugging.
1295</p><p>
1296<CODE>OSReport()</CODE> takes time to complete. There is therefore a possibility that unstable application behavior may result if <CODE>OSReport()</CODE> is called while interrupts, such as those in the interrupt handler, are being disabled. <CODE>OSReport()</CODE> must be called while interrupts are enabled.
1297</p><p>
1298The amount of interrupt delay associated with this revision is based on the information described above.</p>
1299
1300<hr />
1301<h3><a name="note278" id="note278">Note 278 (AX): Corrected a problem where the mixing volume would not update correctly</a></h3>
1302<p>There were the following problems when a non-zero value was specified for the delta of the mixing parameter (<CODE>axpb.mix</CODE>).</p>
1303<p>
1304- Once the volume was set to a value of 0x8000 or more, the volume would not update to a value lower than 0x8000 even if a negative value was specified for the delta.<br>- Once the volume was set to a value of 0x7fff or less, the volume would not update to a value of 0x8000 or more even if a positive value was specified for the delta.<br>
1305</p><p>
1306This problem has been fixed.</p>
1307
1308<hr />
1309<h3><a name="note277" id="note277">Note 277 (NAND): Added a description of the prohibition on frequent Read access</a></h3>
1310<p>Frequent read access of Wii console NAND memory is prohibited because a characteristic of NAND flash devices is that persistent, repeated read access of a given memory region may result in corruption of data surrounding that region. A note warning of this matter has been added to the introduction page of the NAND function reference manual.</p>
1311
1312<hr />
1313<h3><a name="note276" id="note276">Note 276 (TOOL): Added the wpad_mem_util tool</a></h3>
1314<p>The function <CODE>wpad_mem_util </CODE>has been added to tools.</p>
1315<p>
1316Used to manipulate the system header region of Wii Remote memory, <CODE>wpad_mem_util[D].elf</CODE> is a utility tool designed to return <CODE>WPAD_ERR_NOPERM</CODE> or <CODE>WPAD_ERR_BROKEN</CODE> when the <CODE>WPADReadGameData</CODE> function is called.
1317</p><p>
1318Use this utility when debugging applications that use Wii Remote memory.</p>
1319
1320<hr />
1321<h3><a name="note275" id="note275">Note 275 (OS): Corrected a bug that occurred when the OSFatal function was run from callback</a></h3>
1322<p>When the <CODE>OSFatal</CODE> function was called from a callback function, the device and library close process did not run correctly. This problem was fixed.</p>
1323
1324<hr />
1325<h3><a name="note274" id="note274">Note 274 (OS): Revised debug message during the reset and shutdown process</a></h3>
1326<p>  Although there was a problem where the following debug message would be displayed when a reset/shutdown function was called, this has been corrected so that the message is no longer displayed.</p><p>
1327CallbackAsyncIpc:ret = 0</p>
1328
1329<hr />
1330<h3><a name="note273" id="note273">Note 273 (OS): Stop WiiConnect24 operations by default</a></h3>
1331<p>Applications developed under a Revolution SDK 2.4 environment automatically perform WiiConnect24-related communication processes if WiiConnect24 is enabled according to Wii console settings.</p>
1332<p>
1333Although this automatic process has been enabled regardless of whether the application supports WiiConnect24, the default setting for applications that do not support WiiConnect24 has been changed to stopped status.
1334</p><p>
1335Furthermore, the function <CODE>NWC24ResumeScheduler</CODE> for starting this automatic processing and NWC24SuspendScheduler, for stopping it, have been added.</p>
1336
1337<hr />
1338<h2 style="line-height: 0"><a name="20061130" id="20061130">* 2006/11/30 SDK 2.4</a> <div style="text-align: right">(2006/11/30)</div></h2><hr />
1339<h3><a name="note272" id="note272">Note 272 (TOOL): System firmware Version 17.2.0 release</a></h3>
1340<p>Update the system firmware (formerly NDEV firmware) after applying this patch and before running applications. </p>
1341<p>
1342Run the update program by starting a Bourne-again shell (bash) and entering &quot;fwupdate17_2_0&quot;.
1343</p><p>
1344If the environment is customized or if things do not go smoothly using the method described above, go to the RVL_SDK/RVL/bin/tools directory and execute '<CODE>ODEM -r -l swupdate17_2_0_xx.gcm</CODE>.'  (For xx, enter either &quot;jp&quot;, &quot;us&quot;, or &quot;eu&quot;.) The update will start automatically about 10 seconds after firmware starts. Once the update is complete, the message &quot;SWUpdate Successful&quot; appears on the screen, and the NDEV firmware is updated to Firmware 17.2.0 DEVKIT BOOT PROGRAM v1.10.
1345</p><p>
1346If any versions are already higher than this, the update will fail after displaying &quot;Import: *** ...failed&quot;, but you can continue without any problems.
1347</p>
1348
1349<hr />
1350<h3><a name="note271" id="note271">Note 271 (TOOL): Fixed bugs in the DEVKIT system menu save-data controls</a></h3>
1351<p>The following bugs were corrected in the DEVKIT System Menu save-data operations:</p>
1352<p>
1353- Could not get the application type from the settings file.<br>- With some operations, the process would hang when copying data.</p>
1354
1355<hr />
1356<h3><a name="note270" id="note270">Note 270 (MIX): Corrected forgotten initialization of the MIXChannel structure members</a></h3>
1357<p>When the mixer being used by <CODE>MIXInitSpecifyMem()</CODE> was initialized, if the memory region specified by the argument for the mixer was not initialized to zero the application would stop.</p>
1358<p>
1359This problem has been resolved.</p>
1360
1361<hr />
1362<h3><a name="note269" id="note269">Note 269 (AX): Implemented mixer control for the Wii Remote speaker</a></h3>
1363<p>Mixer control for the Wii Remote speaker has been implemented. This reduces the DSP burden when the Wii Remote speaker is being used.</p>
1364
1365<hr />
1366<h3><a name="note268" id="note268">Note 268 (AX): Implemented LPF and biquad filters for audio output from the controller speaker</a></h3>
1367<p>It is now possible to apply conventional LPF filters or the new Biquad filters to the Wii Remote speaker audio data immediately before down-sampling from 32kHz to 6kHz.
1368</p><p>
1369For details, read the AX man page.</p>
1370
1371<hr />
1372<h3><a name="note267" id="note267">Note 267 (AX): Deleted temporary implementation of HPF and added a biquad filter</a></h3>
1373<p>Eliminated HPF, which had been implemented as a tentative measure, and in its place added Biquad filters. For details, read the AX man page.</p>
1374
1375<hr />
1376<h3><a name="note266" id="note266">Note 266 (AX): Accounted for delay in response to AI/DSP interrupts when calculating the estimated load on the DSP</a></h3>
1377<p>For applications that make active use of callbacks for timers and various interrupts, this can delay the start of the audio frame process so it does not start immediately after the AI interrupt (or the DSP interrupt).</p>
1378<p>
1379Since the AX did not take this delay into consideration previously, there were cases where the DSP load was not correctly estimated.</p>
1380<p>
1381This problem has been resolved. However, the fix reduces the average number of AX voices by about six voices.</p>
1382
1383<hr />
1384<h3><a name="note265" id="note265">Note 265 (AX/SEQ/SP/SYN): Removed zero buffer</a></h3>
1385<p>It is no longer necessary to specify the zero-buffer in the AX voice parameter block when AX is playing audio data only once ('one-shot') without looping. However, to retain compatibility of the functions, <CODE>zeroBuffer</CODE> remains an argument in the <CODE>SEQ/SP/SYN</CODE> libraries. When using any of these libraries, specify NULL for the <CODE>zeroBuffer</CODE> argument.</p>
1386
1387<hr />
1388<h3><a name="note264" id="note264">Note 264 (WPAD): Added the WPADControlExtGimmick function</a></h3>
1389<p>This function sends general-purpose commands to an external extension controller, which is connected to the Wii Remote, for its unique processes.
1390</p><p>
1391The function is designed for external extension controllers that might be developed in the future. The Nunchuk and Classic Controller do nothing if they receive commands from this function.</p>
1392
1393<hr />
1394<h3><a name="note263" id="note263">Note 263 (WPAD): Canceled the restriction mentioned in Note 163</a></h3>
1395<p>Note 163 mentions a restriction that at least two seconds need to pass after stopping the WPAD library before the WPADInit function can be called. But because the boot process takes more than two seconds on the Wii console, application developers need not worry about this rule.</p>
1396
1397<hr />
1398<h3><a name="note262" id="note262">Note 262 (WPAD): Changed specifications during simple pairing when reconnecting an already paired remote</a></h3>
1399<p>For Wii Remotes that had already been paired, any button could be pressed for reconnection during the Wii console Simple Pairing process. However, on the Home Menu, the Reconnect screen instructs players to reconnect by pressing the 1 + 2 Buttons. To avoid user confusion, it is no longer possible to reconnect in any way other than instructed.</p>
1400<p>
1401As for Normal Pairing, the process is the same as before, allowing the reconnection of paired Wii Remotes during Normal Pairing.</p>
1402
1403<hr />
1404<h3><a name="note261" id="note261">Note 261 (WPAD): Fixed a bug where updates of autosampling would fail</a></h3>
1405<p>When auto-sampling was used to get data from the external extension controller and the Wii Remote, <CODE>WPAD_ERR_BUSY</CODE> would be set in the 'err' member of the sampling buffer's status structure. After getting more data and cycling around the buffer, the next time the structure was updated the data for the external extension controller would be all zeros.
1406</p><p>
1407This problem has been corrected.</p>
1408
1409<hr />
1410<h3><a name="note260" id="note260">Note 260 (WPAD): Fixed a bug causing registration information to be erased</a></h3>
1411<p>When the shutdown and reset processes were executed while <CODE>WPADGetStatus()</CODE> was returning <CODE>WPAD_STATE_ENABLED</CODE> the pairing information would be deleted.</p>
1412<p>
1413This problem has been corrected.</p>
1414
1415<hr />
1416<h3><a name="note259" id="note259">Note 259 (CARD): Revised the CARDMount[Async] function</a></h3>
1417<p>When MEM2 was allocated for the work area passed to the <CODE>CARDMount[Async]</CODE> function, sometimes even normal memory cards would not end normally and <CODE>CARD_RESULT_IOERROR</CODE> would be returned.
1418</p><p>
1419This problem has been corrected.</p>
1420
1421<hr />
1422<h3><a name="note258" id="note258">Note 258 (NAND): Changed the order in which the save data banner is created</a></h3>
1423<p>It was incorrectly stated that the save-data banner file should be created first. The opposite is correct: the save-data banner file should be created LAST. This correction has also be made to the 'banner' sample demo.</p>
1424
1425<hr />
1426<h3><a name="note257" id="note257">Note 257 (NAND): Added a guard mechanism when opening or closing files</a></h3>
1427<p>The <CODE>NAND_RESULT_INVALID</CODE> result code is now returned when NAND functions are called in an incorrect fashion for the opening and closing of files (for example, attempting to close a file twice, or attempting to use <CODE>NANDSafeClose[Async]</CODE> to close a file that has been opened with <CODE>NANDOpen[Async]</CODE>, and vice versa).</p>
1428
1429<hr />
1430<h3><a name="note256" id="note256">Note 256 (NAND): Prohibited the creation of files and directories by an owner without read privileges</a></h3>
1431<p>Files/directories that do not give Read authority to the Owner cannot be created. In the same way, permission operations that remove the owner's right to read existing files/directories have also been prohibited. These new restrictions have been written into the pertinent function reference manuals.
1432</p><p>
1433The information will also be placed in the next release of the <I>Guidelines</I>.
1434</p>
1435
1436<hr />
1437<h3><a name="note255" id="note255">Note 255 (NAND): Corrected instructions on using the NANDGetAvailableArea[Async] function</a></h3>
1438<p>The previous version of the <I>Function Reference Manual</I> said that it was permitted to use the <CODE>NANDGetAvailableArea[Async]</CODE> function as a substitute for <CODE>NANDCheck[Async]</CODE>. That permission has been retracted.</p>
1439
1440<hr />
1441<h3><a name="note254" id="note254">Note 254 (NAND): Corrected a mistake in the description of the NANDSetStatus[Async] function</a></h3>
1442<p>The previous version of the <I>Function Reference Manual</I> stated that the <CODE>NANDSetStatus[Async]()</CODE> could not execute if the file size was not zero. That statement is wrong. In actual fact, there are no restrictions on file size. The manual has been corrected.</p>
1443
1444<hr />
1445<h3><a name="note253" id="note253">Note 253 (CX): Added a decompress option to the ntcompress tool</a></h3>
1446<p>The -x option has been added to the ntcompress tool for uncompression of a compressed file on the PC.
1447</p><p>
1448For details, read the Tools -&gt; ntcompress section in the <I>Function Reference Manual</I>.</p>
1449
1450<hr />
1451<h3><a name="note252" id="note252">Note 252 (CX): Expanded alignment options of the ntcompress tool</a></h3>
1452<p>The -A option of the ntcompress tool, which specifies the alignment for the data size, has been extended so it can now be used to specify an alignment of 8, 16, or 32 bytes.</p>
1453<p>
1454For details, read the Tools -&gt; ntcompress section in the <I>Function Reference Manual</I>.</p>
1455
1456<hr />
1457<h3><a name="note251" id="note251">Note 251 (ENC): Revised conversion rules</a></h3>
1458<p>NEC kanji characters and the private area were assigned to 8-bit code when converting to ISO-2022-JP. The NEC kanji characters are now assigned to the equivalent characters as 7-bit code, and the private area has been revised to return <CODE>ENC_ERR_NO_MAP_RULE</CODE>.</p>
1459
1460<hr />
1461<h2 style="line-height: 0"><a name="20061026p9" id="20061026p9">October 26, 2006 SDK Version 2.3 Patch 9</a> <div style="text-align: right">(2006/11/17)</div></h2><hr />
1462<h3><a name="note250" id="note250">Note 250 (TOOL): System firmware Version 15.1.1 release</a></h3>
1463<p>Update the system firmware (formerly NDEV firmware) after applying this patch and before running applications. </p>
1464<p>
1465The update program is executed by starting a Bourne-again shell (bash) and entering &quot;fwupdate15_1_1&quot;.
1466</p><p>
1467If the environment is customized or if things do not go smoothly using the method described above, go to the RVL_SDK/RVL/bin/tools directory and run <CODE>ODEM -r -l swupdate15_1_1.gcm</CODE>. The update will start automatically about 10 seconds after firmware starts. Once the update is complete, &quot;SWUpdate Successful.&quot; will appear on the screen. The NDEV firmware is updated to Firmware 15.1.1 and DEVKIT BOOT PROGRAM v1.09.
1468</p><p>
1469If any versions are already higher than this, the update will fail after displaying &quot;Import: *** ...failed&quot;, but you can continue without any problems.
1470</p>
1471
1472<hr />
1473<h2 style="line-height: 0"><a name="20061026p8" id="20061026p8">* 2006/10/26 SDK Version 2.3 Patch 8</a> <div style="text-align: right">(2006/11/14)</div></h2><hr />
1474<h3><a name="note249" id="note249">Note 249 (TOOL): System firmware Version 13.0.10 release</a></h3>
1475<p>Update the system firmware (formerly NDEV firmware) after applying this patch and before running applications. </p>
1476<p>
1477Run the update program by starting a Bourne-again shell (bash) and entering &quot;fwupdate13010&quot;.
1478</p><p>
1479If the environment has been customized or if the above-described procedure does not work, go to the directory RVL_SDK/RVL/bin/tools, and run <CODE>ODEM -r -l swupdate13010.gcm</CODE>. The update will start automatically about 10 seconds after firmware starts. Once the update is completed, &quot;SWUpdate Successful.&quot; will appear on the screen, indicating that the NDEV firmware has been updated to Firmware 13.0.10 and DEVKIT BOOT PROGRAM v1.09.
1480</p><p>
1481If any versions are already higher than this, the update will fail after displaying &quot;Import: *** ...failed&quot;, but you can continue without any problems.
1482</p>
1483
1484<hr />
1485<h2 style="line-height: 0"><a name="20061026p7" id="20061026p7">* 2006/10/26 SDK Version 2.3 Patch 7</a> <div style="text-align: right">(2006/11/12)</div></h2><hr />
1486<h3><a name="note248" id="note248">Note 248 (TOOL): System firmware Version 13.0.9 release </a></h3>
1487<p>Update the system firmware (formerly NDEV firmware) after applying this patch and before running applications. </p>
1488<p>
1489Run the update program by starting a Bourne-again shell (bash) and entering &quot;fwupdate1309&quot;.
1490</p><p>
1491If the environment is customized or if things do not go smoothly using the method described above, go to the RVL_SDK/RVL/bin/tools directory, and run <CODE>ODEM -r -l swupdate1309.gcm</CODE>. The update will start automatically about 10 seconds after firmware starts. Once the update is complete, &quot;SWUpdate Successful.&quot; will appear on the screen. The NDEV firmware is updated to Firmware 13.0.9 and DEVKIT BOOT PROGRAM v1.09.
1492</p><p>
1493If any versions are already higher than this, the update will fail after displaying &quot;Import: *** ...failed&quot;, but you can continue without any problems.
1494</p>
1495
1496<hr />
1497<h2 style="line-height: 0"><a name="20061026p6" id="20061026p6">* 2006/10/26 SDK Version 2.3 Patch 6</a> <div style="text-align: right">(2006/11/11)</div></h2><hr />
1498<h3><a name="note247" id="note247">Note 247 (TOOL): System firmware Version 13.0.8 release</a></h3>
1499<p>Update the system firmware (formerly NDEV firmware) after applying this patch and before running applications. </p>
1500<p>
1501Run the update program by starting a Bourne-again shell (bash) and entering &quot;fwupdate1308&quot;.
1502</p><p>
1503If the environment is customized or if things do not go smoothly using the method described above, go to the <CODE>RVL_SDK/RVL/bin/tools</CODE> directory, and run <CODE>ODEM -r -l swupdate1308.gcm</CODE>. The update will start automatically about 10 seconds after firmware starts. Once the update is complete, &quot;SWUpdate Successful.&quot; will appear on the screen. The NDEV firmware is updated to Firmware 13.0.8 and DEVKIT BOOT PROGRAM v1.09.
1504</p><p>
1505If any versions are already higher than this, the update will fail after displaying &quot;Import: *** ...failed&quot;, but you can continue without any problems.
1506</p>
1507
1508<hr />
1509<h2 style="line-height: 0"><a name="20061026p5" id="20061026p5">* 2006/10/26 SDK Version 2.3 Patch 5</a> <div style="text-align: right">(2006/11/09)</div></h2><hr />
1510<h3><a name="note246" id="note246">Note 246 (TOOL): System firmware Version 13.0.7 release.</a></h3>
1511<p>Update the system firmware (formerly NDEV firmware) after applying this patch and before running applications. </p>
1512<p>
1513The update program is run by starting a Bourne-again shell (bash) and entering &quot;fwupdate1307&quot;.
1514</p><p>
1515If the environment is customized or if things do not go smoothly using the method described above, go to the <CODE>RVL_SDK/RVL/bin/tools</CODE> directory, and run <CODE>ODEM -r -l swupdate1307.gcm</CODE>. The update will start automatically about 10 seconds after firmware starts. Once the update is complete, &quot;SWUpdate Successful.&quot; will appear on the screen. The NDEV firmware is updated to Firmware 13.0.7 and DEVKIT BOOT PROGRAM v1.09.
1516</p><p>
1517If any versions are already higher than this, the update will fail after displaying &quot;Import: *** ...failed&quot;, but you can continue without any problems.
1518</p>
1519
1520<hr />
1521<h3><a name="note245" id="note245">Note 245 (ENC): Fixed a character conversion problem in the private memory area.</a></h3>
1522<p>When converting from the internal character encoding to the Japanese character encoding, part of the private memory area was not properly converted. This problem has been corrected.</p>
1523
1524<hr />
1525<h3><a name="note244" id="note244">Note 244 (ENC): Fixed a bug in the read/write size.</a></h3>
1526<p>When a little-endian BOM was attached to the conversion source Unicode character string, the correct read/write size was not returned. This problem has been corrected.</p>
1527
1528<hr />
1529<h3><a name="note243" id="note243">Note 243 (ENC): Reduced the table size.</a></h3>
1530<p>The size of the table used by the ENC library has been reduced.</p>
1531
1532<hr />
1533<h2 style="line-height: 0"><a name="20061026p4" id="20061026p4">* 2006/10/26 SDK Version 2.3 Patch 4</a> <div style="text-align: right">(2006/11/06)</div></h2><hr />
1534<h3><a name="note242" id="note242">Note 242 (TOOL): NDEV firmware Version 12.06 release.</a></h3>
1535<p>Update the NDEV firmware after applying this patch and before running applications. </p>
1536<p>
1537Run the update program by starting a Bourne-again shell (bash) and entering &quot;fwupdate1206&quot;.
1538</p><p>
1539If the environment is customized or if things do not go smoothly using the method described above, go to the <CODE>RVL_SDK/RVL/bin/tools</CODE> directory, and run <CODE>ODEM -r -l swupdate1206.gcm</CODE>. The update will start automatically about 10 seconds after firmware starts. Once the update is complete, &quot;SWUpdate Successful.&quot; will appear on the screen. The NDEV firmware is updated to Firmware 12.0.6 and DEVKIT BOOT PROGRAM v1.09.
1540</p><p>
1541If any versions are already higher than this, the update will fail after displaying &quot;Import: *** ...failed&quot;, but you can continue without any problems.
1542</p>
1543
1544<hr />
1545<h3><a name="note241" id="note241">Note 241 (ENC): Added support for additional character encodings.</a></h3>
1546<p>Inter-conversion between Windows-1252 and UTF-16BE is now supported.</p>
1547<p>
1548For details on the supported character encodings, see the ENC Function Introduction.</p>
1549
1550<hr />
1551<h3><a name="note240" id="note240">Note 240 (NAND): Added a result code for synchronous functions.</a></h3>
1552<p>(Information left out from the SDK Version 2.3 Release Notes)</p>
1553<p>Starting with SDK Version 2.3 (firmware Version 12.0.2), most synchronous NAND functions can return <CODE>NAND_RESULT_ALLOC_FAILED</CODE>. When a synchronous NAND function is called while the request queue is full (from calling asynchronous NAND functions multiple times in a short period of time, for example), the above result code may be returned.</p>
1554<p>
1555View the <CODE>NAND_RESULT_ALLOC_FAILED</CODE> returned by NAND synchronous function as a type of busy state. If this code is returned, wait for the request queue to be free before running the function again (as when an asynchronous function returns <CODE>NAND_RESULT_BUSY</CODE>). In the near future, the <CODE>NAND_RESULT_ALLOC_FAILED</CODE> result code will be rolled into <CODE>NAND_RESULT_BUSY</CODE>.</p>
1556<p>
1557This information is not currently found in the function reference manual. The manual will be revised in the next release.</p>
1558
1559<hr />
1560<h2 style="line-height: 0"><a name="20061026p3" id="20061026p3">* 2006/10/26 SDK Version 2.3 Patch 3</a> <div style="text-align: right">(2006/11/03)</div></h2><hr />
1561<h3><a name="note239" id="note239">Note 239 (TOOL): NDEV firmware Version 12.05 release.</a></h3>
1562<p>Update the NDEV firmware after applying this patch and before running applications. </p>
1563<p>
1564Run the update program by starting a Bourne-again shell (bash) and entering &quot;fwupdate1205&quot;.
1565</p><p>
1566If the environment is customized or if things do not go smoothly using the method described above, go to the <CODE>RVL_SDK/RVL/bin/tools</CODE> directory, and run <CODE>ODEM -r -l swupdate1205.gcm</CODE>. The update will start automatically about 10 seconds after firmware starts. Once the update is complete, &quot;SWUpdate Successful.&quot; will appear on the screen. The NDEV firmware is updated to Firmware 12.0.5 and DEVKIT BOOT PROGRAM v1.09.
1567</p><p>
1568If any versions are already higher than this, the update will fail after displaying &quot;Import: *** ...failed&quot;, but you can continue without any problems.
1569</p>
1570
1571<hr />
1572<h3><a name="note238" id="note238">Note 238 (WPAD): Fixed the inconsistent pairing format between the Wii console and the Wii Remote.</a></h3>
1573<p>The problem with inconsistent pairing format between the Wii console and the Wii Remote has been corrected.</p>
1574<p>
1575This bug was seen when a simple pairing was performed in the following way:
1576</p><p>
15771. Perform normal pairing between a Wii Remote and a Wii console (A).<br> 2. Perform normal pairing between the Wii Remote and another Wii console (B).<br> 3. Perform simple pairing between the Wii Remote and the first Wii console (A).<br>
1578</p>
1579In this case, the Wii console recognized the Wii Remote as a normal paired remote, but the Wii Remote recognized the Wii console as a simple paired console. This bug has been fixed, and both the console and the remote now recognize each other as a simple paired device.</p>
1580
1581<hr />
1582<h3><a name="note237" id="note237">Note 237 (WPAD): Revised the pairing method when the maximum number of devices is already paired.</a></h3>
1583<p>The method by which a new controller is paired when the maximum number of devices are already paired has been revised.</p>
1584<p>
1585Implementing this new method has corrected the problem, so a new controller can be connected in place of the device that was connected at first.
1586</p>
1587
1588<hr />
1589<h3><a name="note236" id="note236">Note 236 (ENC): Changed the method of conversion from the internal character encoding to ISO-8859-1.</a></h3>
1590<p>When converting from internal character encoding to ISO-8859-1, the conversion is now handled as ISO-8859-1. It was previously handled as Windows-1252.
1591</p>
1592<p>
1593When converting from ISO-8859-1 to internal encoding, the conversion is handled as Windows-1252, as before.
1594</p>
1595
1596<hr />
1597<h2 style="line-height: 0"><a name="20061026p2" id="20061026p2">* 2006/10/26 SDK Version 2.3 Patch 2</a> <div style="text-align: right">(2006/10/31)</div></h2><hr />
1598<h3><a name="note235" id="note235">Note 235 (TOOL): NDEV firmware Version 12.03 release.</a></h3>
1599<p>Update the NDEV firmware after applying this patch and before running applications. </p>
1600<p>
1601Run the update program by starting a Bourne-again shell (bash) and entering &quot;fwupdate1203&quot;.
1602</p><p>
1603If the environment is customized or if things do not go smoothly using the method described above, go to the <CODE>RVL_SDK/RVL/bin/tools</CODE> directory, and run <CODE>ODEM -r -l swupdate1203.gcm</CODE>. The update will start automatically about 10 seconds after firmware starts. Once the update is complete, &quot;SWUpdate Successful.&quot; will appear on the screen. The NDEV firmware is updated to Firmware 12.0.3 and DEVKIT BOOT PROGRAM v1.09.
1604</p><p>
1605If any versions are already higher than this, the update will fail after displaying &quot;Import: *** ...failed&quot;, but you can continue without any problems.
1606</p>
1607
1608<hr />
1609<h3><a name="note234" id="note234">Note 234: Changed the file for the SDK version information.</a></h3>
1610<p>The SDK version information is now stored in the <CODE>sdkver.h</CODE> header file, instead of the <CODE>revolution.h</CODE> header file. To maintain compatibility with the previous version, <CODE>sdkver.h</CODE> is included inside <CODE>revolution.h</CODE>.</p>
1611
1612<hr />
1613<h3><a name="note233" id="note233">Note 233 (SC): Added internal configuration items for the system menu.</a></h3>
1614<p>A private function used only in the system menu has been added to the SC library.
1615</p>
1616
1617<hr />
1618<h3><a name="note232" id="note232">Note 232 (KPAD): Fixed a bug with the acceleration tracking process.</a></h3>
1619<p>When the acceleration tracking parameter was set to a value other than 1.0, the x-axis acceleration tracking process in the Nunchuk did not run correctly. This bug does not affect the <CODE>KPADOld</CODE> library.</p>
1620<p>
1621This problem has been corrected.</p>
1622
1623<hr />
1624<h3><a name="note231" id="note231">Note 231 (ENC): Added a convertible character encoding and determination function.</a></h3>
1625<p>A function has been added for determining the character encoding convertible from the internal encoding, based on the selected conversion candidate.</p>
1626
1627<hr />
1628<h3><a name="note230" id="note230">Note 230 (ENC): Added the conversion context for use in character code conversion.</a></h3>
1629<p>Functions using conversion contexts have been added. With this change, an encoding determination from encoding name string expression, a carriage return code automatic conversion, and an alternate character automatic conversion are now supported.</p>
1630
1631<hr />
1632<h3><a name="note229" id="note229">Note 229 (ENC): Added support for additional character encodings.</a></h3>
1633<p>Inter-conversion between the following character encodings and UTF-16BE are now supported: US-ASCII, ISO-8859-2, ISO-8859-3, ISO-8859-7, ISO-8859-10, ISO-8859-15</p>
1634<p>
1635Conversion from the following character encodings to UTF-16BE (single direction) is now supported: UTF-7, UTF-16, UTF-16LE, Windows-1250, Windows-1253, Macintosh, x-mac-ce, x-mac-greek, IBM850, IBM852 </p>
1636<p>
1637For details on the supported character encodings, see the ENC Function Introduction.</p>
1638
1639<hr />
1640<h2 style="line-height: 0"><a name="20061026p1" id="20061026p1">* 2006/10/26 SDK Version 2.3 Patch 1</a> <div style="text-align: right">(2006/10/27)</div></h2><hr />
1641<h3><a name="note228" id="note228">Note 228 (TOOL): Revised the fwupdate script name and carriage return.</a></h3>
1642<p>The name of the <CODE>fwupdate</CODE> script has been updated to <CODE>fwupdate1202</CODE>.<BR />In addition, the line feed code of the script was set to CR+LF and has been changed to LF.</p>
1643
1644<hr />
1645<h3><a name="note227" id="note227">Note 227 (TOOL): Corrected the firmware build date that is output when running the fwupdate1202 script.</a></h3>
1646<p>The firmware build date output when running the <CODE>fwupdate1202</CODE> script (when running <CODE>swupdate1202.gcm</CODE> called inside <CODE>fwupdate1202</CODE>) has been corrected to 10/25/2006.</p>
1647
1648<hr />
1649<h3><a name="note226" id="note226">Note 226 (VI): Reinstated the VIEnableDimming function.</a></h3>
1650<p>This function had been removed in the SDK Version 2.3, but has been reinstated with this patch. Caution must be taken when using this function. See the <CODE>VIEnableDimming</CODE> function reference for details.</p>
1651
1652<hr />
1653<h3><a name="note225" id="note225">Note 225 (VI): Added the VISetTimeToDimming function.</a></h3>
1654<p>With the addition of this function, the wait time until screen burn-in protection is activated can now be changed. (This function has been added for SDK Version 2.3.))</p>
1655
1656<hr />
1657<h3><a name="note224" id="note224">Note 224 (VI): Removed the VI[Set/Get]ScreenSaverMode function.</a></h3>
1658<p>This function has been eliminated. In addition, the <CODE>videmo/src/dimming.c</CODE> demo content and manual pages have been revised to reflect this change.</p>
1659
1660<hr />
1661<h3><a name="note223" id="note223">Note 223 (MAN): Corrected several broken links in the manual.</a></h3>
1662<p>Fixed the broken links in the Audio, PAD, VI, and WPAD library manuals.</p>
1663
1664<hr />
1665<h2 style="line-height: 0"><a name="20061026" id="20061026">* 2006/10/26 SDK Version 2.3</a> <div style="text-align: right">(2006/10/26)</div></h2><hr />
1666<h3><a name="note222" id="note222">Note 222 (TOOL): NDEV firmware Version 12.02 release.</a></h3>
1667<p>Update the NDEV firmware after applying this patch and before running applications. </p>
1668<p>
1669The update program is run by opening a Bourne-again shell (bash) and entering &quot;fwupdate&quot;.
1670</p><p>
1671If the environment is customized or if things do not go smoothly using the method described above, go to the <CODE>RVL_SDK/RVL/bin/tools</CODE> directory, and run <CODE>ODEM -r -l swupdate.gcm</CODE>. The update will start automatically about 10 seconds after firmware starts. Once the update is complete, &quot;SWUpdate Successful.&quot; will appear on the screen. The NDEV firmware is updated to Firmware 12.0.2 and DEVKIT BOOT PROGRAM v1.09.
1672</p><p>
1673If any versions are already higher than this, the update will fail after displaying &quot;Import: *** ...failed&quot;, but you can continue without any problems.
1674</p>
1675
1676<hr />
1677<h3><a name="note221" id="note221">Note 221 (TOOL): Added a configuration file for save-data controls.</a></h3>
1678<p>Changed the NDEV system menu save-data operation so that configuration files are created when copying data to the SD Card. The file/directory permission and application types are stored in this file. See &quot;Tool -&gt; NDEV System Menu -&gt; Save Data Operation&quot; in the manual for details.
1679</p>
1680
1681<hr />
1682<h3><a name="note220" id="note220">Note 220 (TOOL): Fixed bugs in the system menu save-data controls.</a></h3>
1683<p>The following bugs have been found in the DEVKIT system menu save data:
1684</p><p>
1685- The file size is rounded up to a multiple of 32, and the end bits are filled with indeterminate values. - When a file of exactly 16 KB is copied, the size is set to 0.
1686</p><p>
1687This problem has been corrected.
1688</p>
1689
1690<hr />
1691<h3><a name="note219" id="note219">Note 219 (TOOL): Added support for the Wii Remote in the system menu.</a></h3>
1692<p>DEVKIT System Menu now supports the Wii Remote. For details, see &quot;DEVKIT System Menu&quot; in the &quot;Tools&quot; section of the manual.</p>
1693
1694<hr />
1695<h3><a name="note218" id="note218">Note 218 (TOOL): Fixed a bug in cardedit[D].elf.</a></h3>
1696<p>When formatting a memory card with <CODE>cardedit[D].elf</CODE> with the console language set to Japanese, the memory card was formatted with the opposite format, that is, in SJIS when ANSI was selected, or in ANSI when SJIS was selected.
1697</p><p>
1698This problem has been corrected.</p>
1699
1700<hr />
1701<h3><a name="note217" id="note217">Note 217 (KPAD): Released the KPAD library Version 2.</a></h3>
1702<p>The internal implementation of the KPAD library has been greatly revised. The earlier version of the KPAD library has been renamed to KPADOld library and will be eliminated in the near future. Use the new KPAD library from now on.</p>
1703<p>
1704The new library has the following characteristics:
1705</p><p>
1706- It cannot be used together with the KPADOld library. <br>- It uses the sampling callback of the WPAD library. If the application does not use any sampling callbacks, almost no change in the source code is necessary in transition from the KPADOld library.<br>- Changed reset timing of the internal work by <CODE>KPADReset</CODE><br>- The DPD and Motion Sensor values are less likely to fluctuate when swapping extension controllers<br>- A cross clamp has been added to the Nunchuk and Classic Controller Control stick clamp processing methods.<br>
1707</p>
1708<p>
1709See the Introduction to the <I>Function Reference Manual</I> for details.</p>
1710
1711<hr />
1712<h3><a name="note216" id="note216">Note 216 (KPADOld): Fixed a memory-corruption bug that appeared when using Classic Controllers.</a></h3>
1713<p>The buffer index was incremented before the sampling buffer data scan only when using the Classic Controller, resulting in occasional memory corruption.</p>
1714<p>
1715This problem has been corrected.
1716</p><p>
1717The KPAD library version from before Revolution SDK Version 2.3 has been renamed to <CODE>KPADOld</CODE> library.</p>
1718
1719<hr />
1720<h3><a name="note215" id="note215">Note 215 (SC): Ended disclosure of WPAD library&ndash;specific functions.</a></h3>
1721<p>The following functions specific to the WPAD library are no longer disclosed, and have been removed from the header file (/include/revolution/sc.h):
1722</p><p>
1723<CODE> SCGetWpadMotorMode()<br> SCGetWpadSensorBarPosition()<br> SCGetWpadSpeakerVolume()<br> SCSetWpadMotorMode()<br> SCSetWpadSensorBarPosition()<br> SCSetWpadSpeakerVolume()<br></CODE>
1724</p><p>
1725See &quot;No Longer Disclosed Functions&quot; in the <I>Function Reference Manual</I> for details.</p><p>
1726If you have already submitted the Master ROM for an application, resubmission is not necessary.</p>
1727
1728<hr />
1729<h3><a name="note214" id="note214">Note 214 (SC): Ended disclosure of sound/video mode&ndash;related console setting change functions.</a></h3>
1730<p>Changing the setting items for the console setting sound/video mode from the application is now prohibited.</p>
1731<p>
1732The following functions are no longer disclosed and have been removed from the header file (<CODE>/include/revolution/sc.h</CODE>):
1733</p><p>
1734<CODE> SCSetSoundMode()<br> SCSetProgressiveMode()<br> SCSetEuRgb60Mode()<br></CODE>
1735</p><p>
1736See &quot;No Longer Disclosed Functions&quot; in the <I>Function Reference Manual</I> for details.</p><p>
1737If you have already submitted the Master ROM for an application, resubmission is not necessary. If the removal of these function calls from the application is too difficult from scheduling point of view, please contact Nintendo.</p>
1738
1739<hr />
1740<h3><a name="note213" id="note213">Note 213 (WPAD): Added the WPADGetDpdFormat function.</a></h3>
1741<p>This function retrieves the mode in which the pointer for the Wii Remote operates.</p>
1742
1743<hr />
1744<h3><a name="note212" id="note212">Note 212 (WPAD): Eliminated the WPADShutdown and the WPADReconnect functions.</a></h3>
1745<p>Calling <CODE>WPADShutdown</CODE> and <CODE>WPADReconnect</CODE> while the function is already running causes future processes to run in an interrupt-prohibited state.
1746</p><p>
1747Because the shutdown/reset functions call these functions internally, calling these functions before the internal call causes this problem.
1748</p><p>
1749Changes have already been made to call these functions internally at shutdown/reset operations, so these functions have now been eliminated. The function will be left so that no code changes are necessary, but calls to these functions will no longer do anything.</p>
1750
1751<hr />
1752<h3><a name="note211" id="note211">Note 211 (WPAD): Fixed a bug in the reset/shutdown operation during pairing and pairing information removal.</a></h3>
1753<p>When RESET or the Power Button was pressed during pairing or pairing information removal, the state of the communication module occasionally became unstable.</p>
1754<p>
1755The reset/shutdown process has been changed to wait for pairing or removal of the pairing information to complete.</p>
1756
1757<hr />
1758<h3><a name="note210" id="note210">Note 210 (WPAD): Fixed a bug that caused the completion callback to be called twice when the speaker was turned off.</a></h3>
1759<p>When <CODE>WPAD_SPEAKER_OFF</CODE> was sent using the <CODE>WPADControlSpeaker</CODE> function, a completion notification callback was called twice.
1760</p><p>
1761This problem has been corrected.</p>
1762
1763<hr />
1764<h3><a name="note209" id="note209">Note 209 (WPAD): Added a speaker reset command.</a></h3>
1765<p>A <CODE>WPAD_SPEAKER_RESET</CODE> command has been added to the <CODE>WPADControlSpeaker</CODE> function. When this command is sent, the audio data stored in the speaker buffer is cleared.</p>
1766
1767<hr />
1768<h3><a name="note208" id="note208">Note 208 (WPAD): Fixed the misalignment of the origin on the Classic Controller L Stick.</a></h3>
1769<p>The origin of the L Stick on the Classic Controller became misaligned when the Classic Controller was attached and the data format was set to <CODE>WPAD_FMT_CLASSIC</CODE>.
1770</p><p>
1771This problem has been corrected.
1772</p>
1773
1774<hr />
1775<h3><a name="note207" id="note207">Note 207 (WPAD): Fixed a bug that caused the fourth object coordinate of the Pointer to be incorrect when an extension controller was inserted.</a></h3>
1776<p>A bug was found in the library regarding how the received data was interpreted. When a Nunchuk or a Classic Controller was attached and the Pointer used, and the Pointer recognized four objects, the x-coordinate of the fourth object was being masked by a 0-256 value. In addition, the x-coordinate was set to 3327 when the fourth object was not recognized.
1777</p><p>
1778When using the KPAD library, the pointed location sometimes shifted when inserting/removing an extension controller.
1779</p><p>
1780This problem has been corrected.</p>
1781
1782<hr />
1783<h3><a name="note206" id="note206">Note 206 (OS): Revised the OSRestart function and the OSExecl or OSExecv function.</a></h3>
1784<p>When a game disc could not be read or the disc was different from the current game after the <CODE>OSRestart</CODE> function or the <CODE>OSExecl</CODE> or <CODE>OSExecv</CODE> function was called, a hot reset was performed. This behavior has been changed to return execution to the system menu (the same as <CODE>OSRetrunToMenu</CODE>).</p>
1785
1786<hr />
1787<h3><a name="note205" id="note205">Note 205 (PAD): Added support for hot-swapping in the basic and cont demos.</a></h3>
1788<p>Added support for hot-swapping in the basic and the cont demo.</p>
1789
1790<hr />
1791<h3><a name="note204" id="note204">Note 204 (DOC): Updated the operating system programming manual.</a></h3>
1792<p>The programming manual of the operation system library has been updated.</p>
1793
1794<hr />
1795<h3><a name="note203" id="note203">Note 203 (NAND): Revised the banner sample demo.</a></h3>
1796<p>The previous banner sample demo did not load any image data with meaning, but this has been updated so that *.tpl files in  /dvddata/nanddemo/ can be used. In addition, a manual page for the banner sample demo has been created.</p>
1797
1798<hr />
1799<h3><a name="note202" id="note202">Note 202 (NAND): Added the NANDGetAvailableArea[Async] function.</a></h3>
1800<p>The <CODE>NANDGetAvailableArea[Async]</CODE> function obtains the number of available file system blocks and inodes for the application. It essentially provides the same function as <CODE>NANDCheck[Async]</CODE>.</p>
1801
1802<hr />
1803<h3><a name="note201" id="note201">Note 201 (AXART): Added support for the Wii Remote speaker.</a></h3>
1804<p>The following functions have been added to support the Wii Remote speaker:
1805</p><p>
1806<CODE>void AXARTInitArtFader       (AXART_FADER           *articulator);<br> void AXARTInitArtRmt         (AXART_RMT             *articulator);<br> void AXARTInitArtRmtFader    (AXART_RMT_FADER       *articulator);<br> void AXARTInitArtRmtAuxVolume(AXART_RMT_AUX_VOLUME  *articulator);<br></CODE>
1807</p><p>
1808For details, see the manual pages for each function.</p>
1809
1810<hr />
1811<h3><a name="note200" id="note200">Note 200 (MIX): Made the memory region for voice control data user-specifiable.</a></h3>
1812<p>As a result of the change with <CODE>AX_MAX_VOICES</CODE>, the size of the voice control data, which was defined as static in the library, has increased. To mitigate this issue, a mixer initialization function has been added so that the voice control data memory area can be specified by the user.</p>
1813<p>
1814<CODE>#define MIXGetMemorySize(num) ((sizeof(MIXChannel) + sizeof(MIXRmtChannel)) * num)<br> void MIXInitSpecifyMem(void* mem);</CODE>
1815</p><p>
1816For details, see the manual pages for each function.</p>
1817
1818<hr />
1819<h3><a name="note199" id="note199">Note 199 (SYN): Made the memory region for voice control data user-specifiable.</a></h3>
1820<p>As a result of the change with <CODE>AX_MAX_VOICES</CODE>, the size of the voice control data, which was defined as static in the library, has increased. To mitigate this issue, a synthesizer initialization function has been added so that the voice control data memory area can be specified by the user.
1821</p><p>
1822<CODE>#define SYNGetMemorySize(num) (sizeof(SYNVOICE) * num)<br> void SYNInitSpecifyMem(void* mem);</CODE>
1823</p><p>
1824For details, see the manual pages for each function. </p>
1825
1826<hr />
1827<h3><a name="note198" id="note198">Note 198 (AX): Added master volume functions.</a></h3>
1828<p>The following functions have been added for the master volume that is multiplied at DSP to AI output:</p><p>
1829u16  AXGetMasterVolume(void);<br> void AXSetMasterVolume(u16 volume);
1830</p><p>
1831For details, see the manual pages for each function.</p>
1832
1833<hr />
1834<h3><a name="note197" id="note197">Note 197 (AX): Fixed a bug that prevented the silent section of the DSP-ADPCM data from being silent.</a></h3>
1835<p>In certain DSP-ADPCM data that was compressed using <CODE>dsptool(D)</CODE>, the section that should have been silent was not.</p>
1836<p>
1837This problem has been corrected. A new dsptool(D).dll has been added for conversion to DSP-ADPCM.</p>
1838
1839<hr />
1840<h3><a name="note196" id="note196">Note 196 (AX): Added debug functions.</a></h3>
1841<p>The AX voice control data can now be placed in <CODE>MEM2</CODE>, which causes problems (such as generation of noise) due to the difference in the access speed of <CODE>MEM2</CODE> and <CODE>MEM1</CODE>. The following debug function has been added to correct this problem:
1842</p><p>
1843typedef void (*AXExceedCallback)(u32 cycles);<br> void AXRegisterExceedCallback(AXExceedCallback callback);
1844</p><p>
1845For details, see the manual pages for the function.
1846</p>
1847
1848<hr />
1849<h3><a name="note195" id="note195">Note 195 (AX): Made the maximum voice count and the memory region for voice control data user-specifiable.</a></h3>
1850<p>As a result of the change with <CODE>AX_MAX_VOICES</CODE>, the size of the voice control data, which was defined as static in the library, has increased. To mitigate this issue, an AX initialization function has been added so that the maximum voice count and the voice control data memory area are user-specifiable.
1851</p><p>
1852<CODE>#define AXGetMemorySize(num) ((sizeof(AXPB) + sizeof(AXPBITDBUFFER) + sizeof(AXVPB)) * num)<br> void AXInitSpecifyMem  (u32 num, void* mem);<br> void AXInitExSpecifyMem(u32 num, void* mem, u32 outputBufferMode);<br> u32  AXGetMaxVoices (void);</CODE><br> <br> For details, see the manual pages for each function.</p>
1853
1854<hr />
1855<h3><a name="note194" id="note194">Note 194 (AX): Eliminated the voice update function.</a></h3>
1856<p>To increase the number of simultaneously playable sounds, the voice update function, which was incompletely implemented, has been eliminated.
1857</p><p>
1858Therefore, the following functions have been eliminated: <br><br><CODE>void AXSetVoiceUpdateIncrement(AXVPB *p);<br> void AXSetVoiceUpdateWrite    (AXVPB *p, u16 param, u16 data);</CODE><br><br> In addition, a voice update member has been removed from the parameter block.</p>
1859
1860<hr />
1861<h3><a name="note193" id="note193">Note 193 (AX): Changed AX_MAX_VOICE from 64 to 96.</a></h3>
1862<p>The definition of <CODE>AX_MAX_VOICES</CODE> in the <CODE>/include/revolution/ax.h</CODE> header file has been changed from 64 to 96.</p>
1863
1864<hr />
1865<h3><a name="note192" id="note192">Note 192 (AX): Increased the number of simultaneously playable sounds.</a></h3>
1866<p>As a result of reviewing the audio DSP code and the DSP cycle estimation value, the number of simultaneously playable sounds in the AX library has been doubled.</p>
1867
1868<hr />
1869<h2 style="line-height: 0"><a name="20060907p10" id="20060907p10">* 2006/09/07 SDK Version 2.2 Patch 10</a> <div style="text-align: right">(2006/10/16)</div></h2><hr />
1870<h3><a name="note191" id="note191">Note 191 (KPAD): Changed the specifications so that controller information accessed by read_kpad* functions is synchronized with the associated error status.</a></h3>
1871<p>Controller information obtained from the KPAD library was occasionally invalid due to an inability to synchronize the controller information referenced by <CODE>read_kpad_acc</CODE>, <CODE>read_kpad_dpd</CODE>, and <CODE>read_kpad_stick</CODE> with its error status.</p>
1872<p>
1873This problem has been corrected.</p>
1874<p>This revision is the same as the revision included in the <CODE>RVL_SDK-2_2-patch_kpad-061007</CODE> package.</p>
1875
1876<hr />
1877<h3><a name="note190" id="note190">Note 190 (DOC): Updated the Video Interface Library programming manual.</a></h3>
1878<p>Revisions and additions mainly relate to the following topics:</p>
1879<p>
1880- Made comprehensive revisions to &quot;5.2 Procedure for Switching to Progressive Display with NTSC&quot;<br>- Made comprehensive revisions to &quot;6.5.1 Switching between PAL/EU RGB60/Progressive Modes&quot;<br>- Added &quot;7.5.2 Automatic Switching of the Video Mode&quot;<br>- Comprehensively revised &quot;7.10 Reducing Screen Burn-in&quot;<br>- Comprehensively revised &quot;7.8 16:9 Screen Ratio&quot;<br>- Changed the safe frame for 16:9 ratio displays to 87%<br> <br> For details, see the revision history of this document.</p>
1881
1882<hr />
1883<h3><a name="note189" id="note189">Note 189 (WPAD): Corrected a problem that caused values greater than 128 to be set for the audio volume, using the WPADSetSpeakerVolume function.</a></h3>
1884<p>Although Wii Remote speaker volume ranges from 0 to 127, it was possible to pass a value greater than 127 to the <CODE>WPADSetSpeakerVolume</CODE> function.</p>
1885<p>
1886This problem has been corrected so that any values greater than 127 are converted to a value of 127.</p>
1887
1888<hr />
1889<h3><a name="note188" id="note188">Note 188 (WPAD): Corrected the unstable behavior seen when the calendar was set to January 1, 2000, 00:00.</a></h3>
1890<p>Processing based on a periodic alarm did not process correctly due to an illegal base-time value that wsf used for the periodic alarm in the library.</p>
1891<p>
1892This problem has been corrected.</p>
1893
1894<hr />
1895<h3><a name="note187" id="note187">Note 187 (DVD): Corrected a problem that prevented the DVDCheckDiskAsync callback from returning after DVDCancel[Async] or DVDCancelAll[Async] was called in the DVD_STATE_NO_DISK or the DVD_STATE_RETRY state.</a></h3>
1896<p>There was a problem where the callback would not return when <CODE>DVDCheckDiskAsync</CODE> was executed after <CODE>DVDCancel[Async]</CODE> or <CODE>DVDCancelAll[Async]</CODE> was called while the drive status was <CODE>DVD_STATE_NO_DISK</CODE> or <CODE>DVD_STATE_RETRY</CODE>. This problem has been corrected.</p>
1897
1898<hr />
1899<h3><a name="note186" id="note186">Note 186 (DVD): Corrected a problem that prevented subsequent disc insertions from being recognized if DVDCancel[Async] or DVDCancelAll[Async] was called during the DVD_STATE_NO_DISK state</a></h3>
1900<p>There was a problem where subsequent insertion of a disc would not be recognized and the status <CODE>DVD_STATE_NO_DISK</CODE> would result if <CODE>DVDCancel[Async]</CODE> or <CODE>DVDCancelAll[Async]</CODE> were called while the drive status was <CODE>DVD_STATE_NO_DISK</CODE>. This problem has been corrected.</p>
1901
1902<hr />
1903<h3><a name="note185" id="note185">Note 185 (Audio): Updated the end-user license agreement with Roland.</a></h3>
1904<p>The provisional version of the Roland end-user license agreement and associated Japanese translation reference included with the SDK have been updated to their official versions. Although there are no significant changes to terms or conditions that affect programs, be sure to check the agreement.</p>
1905
1906<hr />
1907<h2 style="line-height: 0"><a name="20060907p9" id="20060907p9">* 2006/09/07 SDK Version 2.2 Patch 9</a> <div style="text-align: right">(2006/10/06)</div></h2><hr />
1908<h3><a name="note184" id="note184">Note 184 (TOOL): NDEV firmware Version 9.24 release</a></h3>
1909<p>Update the NDEV firmware after applying this patch and before running applications. </p>
1910<p>
1911Run the update program by starting a Bourne-again shell (bash) and entering &quot;fwupdate924&quot;.
1912</p><p>
1913If the environment is customized or if things do not go smoothly using the method described above, go to the <CODE>RVL_SDK/RVL/bin/tools</CODE> directory and execute <CODE>ODEM -r -l swupdate924.gcm</CODE>. The update will start automatically about 10 seconds after firmware starts. Once the update is complete, &quot;SWUpdate Successful.&quot; will appear on the screen. The NDEV firmware is updated to Firmware 9.2.4 and DEVKIT BOOT PROGRAM v1.08.
1914</p><p>
1915If any versions are already higher than this, the update will fail after displaying &quot;Import: *** ...failed&quot;, but you can continue without any problems.
1916</p>
1917
1918<hr />
1919<h2 style="line-height: 0"><a name="20060907p8" id="20060907p8">* 2006/09/07 SDK Version 2.2 Patch 8</a> <div style="text-align: right">(2006/10/03)</div></h2><hr />
1920<h3><a name="note183" id="note183">Note 183 (WPAD): Fixed a bug related to screen burn-in protection.</a></h3>
1921<p>Occasionally the screen burn-in protection feature did not run after five minutes without controller input.</p>
1922<p>This problem has been corrected.</p>
1923
1924<hr />
1925<h3><a name="note182" id="note182">Note 182 (AX): Fixed the noise that occurred when AX_PB_STATE_STOP was specified repeatedly for the same voice.</a></h3>
1926<p>When <CODE>AX_PB_STATE_STOP</CODE> was specified repeatedly for the same voice in <CODE>AXSetVoiceState()</CODE>, after the second <CODE>STOP</CODE>, a noise was generated every time <CODE>STOP</CODE> was specified.</p>
1927<p>
1928This problem has been corrected.<p>
1929
1930<hr />
1931<h2 style="line-height: 0"><a name="20060907p7" id="20060907p7">* 2006/09/07 SDK Version 2.2 Patch 7</a> <div style="text-align: right">(2006/10/01)</div></h2><hr />
1932<h3><a name="note181" id="note181">Note 181 (WPAD): Added Wii Remote tools.</a></h3>
1933<p>Added a tool for obtaining the firmware version of the controller communications module on the Wii console. Use this tool when a bug is suspected to be associated with the Wii Remote.
1934</p>
1935<p>The description of this tool is added to the function reference page.
1936</p>
1937
1938<hr />
1939<h3><a name="note180" id="note180">Note 180 (WPAD): Fixed a bug that prevented the close callback for simple pairing from being called.</a></h3>
1940<p>In simple pairing, the close callback was not being called if four Wii Remotes were connected immediately before the device search.
1941</p><p>
1942This problem has been corrected.</p>
1943
1944<hr />
1945<h3><a name="note179" id="note179">Note 179 (WPAD): Corrected a problem that prevented the search for devices from stopping during simple pairing.</a></h3>
1946<p>If the wireless communication stack was searching for a device at the time it received a connection request from a the Wii Remote and it found that Wii Remote, the search close event was not generated. At this point, the pairing operation and the Wii Remote information could not all be cleared.
1947</p><p>
1948This problem has been corrected.
1949</p>
1950
1951<hr />
1952<h3><a name="note178" id="note178">Note 178 (WPAD): Fixed a bug that prevented the Wii Remote Rumble feature from stopping.</a></h3>
1953<p>With multiple Wii Remotes connected, if the Wii system attempted to send a Rumble Feature command to another Wii Remote, that Rumble feature command was not sent.
1954</p><p>
1955This problem has been corrected.</p>
1956
1957<hr />
1958<h3><a name="note177" id="note177">Note 177 (WPAD): Fixed a bug with re-registering a Wii Remote after an external extension controller was connected.</a></h3>
1959<p>If a Wii Remote was reconnected while an external extension controller was plugged in, the status after reconnection occasionally stayed <CODE>BUSY</CODE>.
1960</p><p>
1961This problem has been corrected.</p>
1962
1963<hr />
1964<h3><a name="note176" id="note176">Note 176 (WPAD): Corrected a problem that prevented the Wii Remote from connecting to the Wii console for a while after batteries were removed and re-inserted.</a></h3>
1965<p>The Wii Remote occasionally could not connect to the Wii console for approximately 40 seconds after removing and reinserting the batteries.</p>
1966<p>
1967This problem has been corrected.</p>
1968
1969<hr />
1970<h3><a name="note175" id="note175">Note 175 (WPAD): Fixed bugs in the WPADStartFastSyncDevice and the WPADStartFastSimpleSync functions.</a></h3>
1971<p>If <CODE>WPADStartFastSyncDevice</CODE> or <CODE>WPADStartFastSimpleSync</CODE> was called immediately after disconnecting a Wii Remote, that disconnected Wii Remote was reconnected.</p>
1972<p>
1973This problem has been corrected.</p>
1974
1975<hr />
1976<h3><a name="note174" id="note174">Note 174 (WPAD): Corrected a problem with the pairing procedure.</a></h3>
1977<p>Pairing was not being correctly processed under the following conditions:</p>
1978<p>
1979- If the Wii console recognized the Wii Remote as normal-paired, whereas the Wii Remote recognized the Wii console as simple-paired, pressing SYNCHRO on the Wii console and the Wii Remote for normal pairing caused the Wii Remote to still recognize the Wii console as simple-paired. This has been corrected so that the Wii Remote recognizes the Wii console as normal-paired.
1980</p><p>
1981- When both the Wii console and Wii Remote recognized each other as normal-paired, pressing SYNCHRO on the Wii console and both the 1 Button and the 2 Button on the Wii Remote caused each to recognize the other as normal-paired. This has been corrected so that normal pairing requires pressing SYNCHRO on the Wii Remote to succeed.
1982</p><p>
1983- When the Wii console recognized the Wii Remote as normal-paired, and the Wii Remote recognized the Wii console as simple-paired, pressing SYNCHRO on the Wii console and both the 1 Button and the 2 Button on the Wii Remote caused both to maintain the previous pairing state. This has been corrected so that normal pairing requires pressing SYNCHRO on the Wii Remote to succeed.
1984</p><p>
1985- When the Wii console recognized the Wii Remote as simple-paired, pressing SYNCHRO on the Wii Remote during the simple pairing operation of the Wii console caused the Wii console to recognize the Wii Remote as simple-paired. This has been corrected so that simple pairing requires pressing both the 1 Button and the 2 Button on the Wii Remote to succeed.
1986</p>
1987
1988<hr />
1989<h3><a name="note173" id="note173">Note 173 (WPAD): Reduced the speaker sound distortion from weak signals.</a></h3>
1990<p>Audio cutoff occurred occasionally when the signal deteriorated while playing sound through four Wii Remote speakers.
1991</p><p>
1992This fix reduces the frequency of the audio cutoff.</p>
1993
1994<hr />
1995<h3><a name="note172" id="note172">Note 172 (WPAD): Fixed a memory leak inside the communication stack.</a></h3>
1996<p>A memory leak was discovered in the wireless communication stack library of the Wii Remote. This occurred during the pairing process (both simple and normal) between the Wii console and the Wii Remote.
1997</p><p>
1998This problem has been corrected.
1999</p>
2000
2001<hr />
2002<h2 style="line-height: 0"><a name="20060907p6" id="20060907p6">* 2006/09/07 SDK Version 2.2 Patch 6</a> <div style="text-align: right">(2006/09/29)</div></h2><hr />
2003<h3><a name="note171" id="note171">Note 171 (WPAD): Calling the WPADShutdown() or the WPADReconnect() function inside the reset/shutdown functions.</a></h3>
2004<p>In the past, <CODE>WPADShutdown</CODE> was called inside the <CODE>OSShutdownSystem</CODE> function, and this was not running properly at times. This problem has been corrected.
2005</p><p>
2006In addition, the change has been made in certain functions, such as other reset/shutdown functions, so that the <CODE>WPADReconnect</CODE> function is now called internally. The following functions currently have the <CODE>WPADShutdown</CODE> or the <CODE>WPADReconnect</CODE> function called internally:
2007</p><p>
2008Function calling <CODE>WPADShutdown</CODE>: <br><CODE>OSShutdownSystem</CODE><br>Functions calling <CODE>WPADReconnect</CODE>: <br><CODE>OSReboot</CODE>, <CODE>OSRestart</CODE>, <CODE>OSReturnToMenu</CODE>, <CODE>OSExecl</CODE>, <CODE>OSExecv</CODE><br>
2009</p><p>
2010<CODE>WPADShutdown</CODE> or <CODE>WPADReconnect</CODE> may be called inside these functions without any problems.</p>
2011
2012<hr />
2013<h2 style="line-height: 0"><a name="20060907p5" id="20060907p5">* 2006/09/07 SDK Version 2.2 Patch 5</a> <div style="text-align: right">(2006/09/29)</div></h2><hr />
2014<h3><a name="note170" id="note170">Note 170 (CARD): Fixed a bug that prevented Nintendo GameCube Memory Cards from being mounted correctly.</a></h3>
2015<p>The Nintendo&nbsp;GameCube Memory Card could not be mounted correctly.
2016</p><p>
2017This problem has been corrected.</p>
2018
2019<hr />
2020<h3><a name="note169" id="note169">Note 169 (DVD): Fixed a bug that caused a freeze when issuing disc requests from multiple threads.</a></h3>
2021<p>When a DVD request was issued from multiple threads, it caused the application to freeze in certain situations.
2022</p><p>
2023This problem has been corrected.</p>
2024
2025<hr />
2026<h3><a name="note168" id="note168">Note 168 (WPAD): Fixed a bug that caused the timestamp of the game data stored in the Wii Remote memory to be incorrect.</a></h3>
2027<p>When storing game data to the Wii Remote, the timestamp set by the library did not match the time on the calendar.
2028</p>
2029<p>This problem has been corrected.</p>
2030<p>
2031In addition, the time display of the sample demo <CODE>memory.c</CODE> has been corrected.
2032</p>
2033
2034<hr />
2035<h3><a name="note167" id="note167">Note 167 (KPAD): Fixed a bug that caused corruption of controller data when inserting and removing an external extension controller.</a></h3>
2036<p>When a Wii Remote was connected, inserting and removing the external extension controller after calling the <CODE>KPADReset</CODE> function resulted in corruption of subsequent controller data.
2037</p><p>
2038This problem has been corrected.
2039</p>
2040
2041<hr />
2042<h2 style="line-height: 0"><a name="20060907p4" id="20060907p4">* 2006/09/07 SDK Version 2.2 Patch 4</a> <div style="text-align: right">(2006/09/27)</div></h2><hr />
2043<h3><a name="note166" id="note166">Note 166 (TOOL): NDEV firmware Version 9.23 release</a></h3>
2044<p>Update the NDEV firmware after applying this patch and before running applications. </p>
2045<p>
2046The update program is run by starting a Bourne-again shell (bash) and entering &quot;fwupdate923&quot;.
2047</p><p>
2048If the environment is customized or if things do not go smoothly using the method described above, go to the <CODE>RVL_SDK/RVL/bin/tools</CODE> directory, and run <CODE>ODEM -r -l swupdate923.gcm</CODE>. The update will start automatically about 10 seconds after firmware starts. Once the update is complete, &quot;SWUpdate Successful.&quot; will appear on the screen. The NDEV firmware is updated to Firmware 9.2.3 and DEVKIT BOOT PROGRAM v1.08.
2049</p><p>
2050If any versions are already higher than this, the update will fail after displaying &quot;Import: *** ...failed&quot;, but you can continue without any problems.
2051</p>
2052
2053<hr />
2054<h3><a name="note165" id="note165">Note 165 (WPAD): Fixed a bug that prevented origin reset from being performed with the Classic Controller.</a></h3>
2055<p>There was a bug that prevented the origin for the analog stick and analog trigger from being reset even when the A, B, +, or - Button was pressed for three seconds on the classic controller.
2056</p><p>
2057This problem has been corrected.
2058</p>
2059
2060<hr />
2061<h3><a name="note164" id="note164">Note 164 (WPAD): Fixed a bug that disabled registration operations when SYNCHRO was pressed for 10 or more seconds during the registration operation.</a></h3>
2062<p>The registration operation could not start again after all the registration information was deleted by pressing the SYNCHRO on the console for 10 or more seconds during registration or simple registration.</p>
2063<p>
2064This has been fixed so that all information cannot be deleted during the registration operation.</p>
2065
2066<hr />
2067<h3><a name="note163" id="note163">Note 163 (WPAD): Added restrictions on the WPADInit, the WPADReconnect, and the WPADShutdown functions.</a></h3>
2068<p>The WPAD library can be started with the <CODE>WPADInit</CODE> function and terminated with the <CODE>WPADReconnect</CODE> function or the <CODE>WPADShutdown</CODE> function. However, wait at least two seconds when restarting the library after terminating it to stabilize the communication stack status.
2069</p>
2070
2071<hr />
2072<h3><a name="note162" id="note162">Note 162 (WPAD): Changed the function of the WPADSetAcceptConnection function.</a></h3>
2073<p>Operation was unstable when the <CODE>WPADSetAcceptConnection</CODE> function was called while the library was being initialized or while it was being terminated. This function has been changed so that it returns either success or failure, according to the internal status when it was called.
2074</p>
2075
2076<hr />
2077<h3><a name="note161" id="note161">Note 161 (WPAD): Changed the Wii Remote memory file information configuration function.</a></h3>
2078<p>Although the game title could be set in the Wii Remote memory control file information, the character code for the game title was converted to only UTF-16. Therefore, the functions to set the game title have been changed as follows: <br><br>- Deleted:<br><CODE>WPADSetGameTitle</CODE><br><CODE>WPADSetGameTitleWChar</CODE><br><CODE>WPADGetGameTitle</CODE><br><br> - Added:<br><CODE>WPADSetGameTitleUtf16</CODE><br><CODE>WPADGetGameTitleUtf16</CODE><br>
2079</p>
2080
2081<hr />
2082<h3><a name="note160" id="note160">Note 160 (WPAD): Fixed a bug that caused registration information to be lost.</a></h3>
2083<p>Remote control registration information for console A was lost in the following situation:<br>1. Remote control information was registered in console A.<br>2. Console A was reset (including shutdown).<br>3. Remote control information was registered in console B.<br>4. Remote control information was registered again in console A.
2084</p><p>
2085This problem has been corrected.
2086</p>
2087
2088<hr />
2089<h3><a name="note159" id="note159">Note 159 (KPAD): Fixed a bug that caused controller data of the remote to become irretrievable.</a></h3>
2090<p>Controller data could no longer be obtained from a remote when that remote was connected after the <CODE>KPADInit</CODE> function was called, but before the <CODE>KPADReset</CODE> function was called.</p>
2091<p>
2092This problem has been corrected.
2093</p>
2094
2095<hr />
2096<h3><a name="note158" id="note158">Note 158 (VI): Fixed a bug that caused noise to be seen when switching applications.</a></h3>
2097<p>Noise could temporarily be seen on the TV screen when switching applications. This problem has been corrected.</p>
2098
2099<hr />
2100<h3><a name="note157" id="note157">Note 157 (AX): Added Aux bus return volume set/get functions.</a></h3>
2101<p>Added the following functions to the AX library:<br><CODE><br> u16     AXGetAuxAReturnVolume       (void);<br> u16     AXGetAuxBReturnVolume       (void);<br> u16     AXGetAuxCReturnVolume       (void);<br> <br> Obtains the current return volume for each Aux bus.<br></CODE><CODE><br> void    AXSetAuxAReturnVolume       (u16 volume);<br> void    AXSetAuxBReturnVolume       (u16 volume);<br> void    AXSetAuxCReturnVolume       (u16 volume);<br> <br> Sets the return volume for each Aux bus.<br></CODE><br> The volume value is u16, as in other AX volume values.<br> <br> <CODE>0x0000 = 0.0<br> 0x8000 = 1.0<br> 0xffff = (about) 2.0</CODE><br> <br> When the effect data processed with the CPU (using the AXFX library) is mixed in the main bus with the DSP, the return volume is multiplied by the effect data. By using the return volume appropriately, for example, when the processing transitions from the game to the Home Menu, switching the effects can occur smoothly. However, if a value is set in the return value that is much different from the current value (for example, 0x8000 -&gt; 0x0000), noise may be generated. Change the return volume gradually in appropriately timed steps within the application.
2102</p>
2103
2104<hr />
2105<h3><a name="note156" id="note156">Note 156 (AX): Fixed a bug that occurs when setting the delta value of the volume envelope.</a></h3>
2106<p>The following bugs occurred in the AX library volume envelope:<br><br> - When a negative value was set in the delta value when the current volume was in the 0x8000 state, noise was introduced when volume attenuation began.<br> - Even when a positive value was set in the delta value when the current volume was in the 0x8000 state, the volume attenuated.<br> - When the volume was 0x8000 or more, the data became the opposite phase. <br><br>These problems have been corrected.</p>
2107
2108<hr />
2109<h2 style="line-height: 0"><a name="20060907p3" id="20060907p3">* 2006/09/07 SDK Version 2.2 Patch 3</a> <div style="text-align: right">(2006/09/22)</div></h2><hr />
2110<h3><a name="note155" id="note155">Note 155 (TOOL): NDEV firmware Version 9.22 release</a></h3>
2111<p>Update the NDEV firmware after applying this patch and before running applications.
2112</p>
2113<p>The update program is run by starting a Bourne-again shell (bash) and entering &quot;fwupdate922&quot;.</p>
2114<p>If the environment is customized or if things do not go smoothly using the method described above, go to the RVL_SDK/RVL/bin/tools directory, and run <CODE>ODEM -r -l swupdate922.gcm</CODE>. The update begins automatically about 10 seconds after the firmware starts. Once the update is complete, &quot;SWUpdate Successful,&quot; appears on the screen. The NDEV firmware is updated to Firmware 9.2.2 and DEVKIT BOOT PROGRAM v1.07.
2115</p><p>
2116If any versions are already higher than this, the update will fail after displaying &quot;Import: *** ...failed&quot;, but you can continue without any problems.</p>
2117
2118<hr />
2119<h3><a name="note154" id="note154">Note 154 (VI): Fixed a bug that caused noise to be seen on the TV screen during OSShutdownSystem.</a></h3>
2120<p>When running <CODE>OSShutdownSystem</CODE>, noise was seen on the TV screen. This problem has been corrected.</p>
2121
2122<hr />
2123<h3><a name="note153" id="note153">Note 153 (DVD): Fixed a bug that caused programs to freeze when run in the NO DISK state.</a></h3>
2124<p>Applications froze when specified conditions overlapped while running in a <CODE>NO DISK</CODE> state. This problem has been corrected.</p>
2125
2126<hr />
2127<h2 style="line-height: 0"><a name="20060907p2" id="20060907p2">* 2006/09/07 SDK Version 2.2 Patch 2</a> <div style="text-align: right">(2006/09/22)</div></h2><hr />
2128<h3><a name="note152" id="note152">Note 152 (TOOL): NDEV firmware Version 9.21 release</a></h3>
2129<p>Update the NDEV firmware after applying this patch and before running applications.
2130</p>
2131<p>The update program is executed by starting the bash shell and entering &quot;fwupdate921&quot;.</p>
2132<p>If the environment is customized or if things do not go smoothly using the method described above, change to the <CODE>RVL_SDK/RVL/bin/tools</CODE> directory and execute <CODE>ODEM -r -l swupdate921.gcm</CODE>. The update begins automatically about 10 seconds after the firmware starts. Once the update is complete, &quot;SWUpdate Successful.&quot; appears on the screen. The NDEV firmware is updated to Firmware 9.2.1 and DEVKIT BOOT PROGRAM v1.07.
2133</p><p>
2134If any versions are already higher than this, the update will fail after displaying &quot;Import: *** ...failed&quot;, but you can continue without any problems.</p>
2135
2136<hr />
2137<h3><a name="note151" id="note151">Note 151 (WPAD): Fixed a bug that caused the Control Stick to become misaligned.</a></h3>
2138<p>Slow insertion of the Nunchuk plug or Classic Controller plug occasionally caused an origin misalignment.
2139</p>
2140
2141<hr />
2142<h3><a name="note150" id="note150">Note 150 (WPAD): Fixed a bug that prevented the callback for the internal memory access function from being called.</a></h3>
2143<p>When <CODE>WPADWriteGameData</CODE> or the <CODE>WPADReadGameData</CODE> function was called again inside the callback passed as the function argument, the callback passed to the second function was not called. This problem has been corrected.
2144</p>
2145
2146<hr />
2147<h3><a name="note149" id="note149">Note 149 (WPAD): Added error codes</a></h3>
2148<p>The error codes returned by <CODE>WPADReadGameData</CODE> have been changed.
2149<p>
2150- If the file information is broken:<br>(old) <CODE>WPAD_ERR_INVALID</CODE> -&gt; (new) <CODE>WPAD_ERR_BROKEN</CODE><br> <br>- If a data from another game is stored:<br>(old) <CODE>WPAD_ERR_TRANSFER</CODE> -&gt; (new) <CODE>WPAD_ERR_NOPERM</CODE>
2151</p>
2152
2153<hr />
2154<h3><a name="note148" id="note148">Note 148 (VI): Fixed a bug that caused the application to freeze while running or recovering from the screen burn-in protection feature.</a></h3>
2155<p>Applications froze while running or recovering from the screen burn-in protection feature when there were a large number of system requests in the background.
2156</p><p>
2157This bug has been fixed in SDK Version 2.2 Patch 1.</p>
2158
2159<hr />
2160<h2 style="line-height: 0"><a name="20060907p1" id="20060907p1">* 2006/09/07 SDK Version 2.2 Patch 1</a> <div style="text-align: right">(2006/09/20)</div></h2><hr />
2161<h3><a name="note147" id="note147">Note 147 (WPAD): Fixed bugs</a></h3>
2162<p>
2163The following bugs have been fixed:<br>- The Wii Remote was disconnected when the time was changed in the system settings.<br>- All connections were severed when two or more Wii Remotes were connected at the same time when three Wii Remotes were already connected.<br>- The internal memories of multiple Wii Remotes could not be accessed simultaneously.<br>- An error callback was not made when the Wii Remote was disconnected while the Wii console was accessing internal memory.<br>- Data was corrupted when the pointer full-mode was used from multiple Wii Remotes.<br>- When the <CODE>WPADGetInfo</CODE> function completed, the correct value was not applied to the <CODE>info</CODE> member until the next frame.<br>- Turning the Rumble feature on while playing back sound from the speaker broke up the sound.
2164<p>
2165In addition, the following problems in the device driver have been corrected due to changes:<br>- OS reset sometimes failed when using the WPAD library.<br>- Connection occasionally failed and prevented future communication when four Wii Remotes were connected at once.<br>- Connection or registration occasionally failed.<br>- Operational instability when the Wii Remote battery became depleted while establishing a connection.<br>- Abnormal speaker output when multiple Wii controller speakers were used simultaneously.<br>(This can now be avoided with the <CODE>WPADCanSendStreamData</CODE> function.)
2166</p>
2167
2168<hr />
2169<h3><a name="note146" id="note146">Note 146 (WPAD): Timeout after command transfer.</a></h3>
2170<p>The Wii Remote will now be disconnected as abnormal if it stays in the <CODE>WPAD_ERR_BUSY</CODE> state more than 10 seconds after a command is sent to that Wii Remote.</p>
2171
2172<hr />
2173<h3><a name="note145" id="note145">Note 145 (WPAD): Rumble can now be turned off mid-rumble by turning off the Rumble feature.</a></h3>
2174<p>Previously, setting the Rumble feature to <CODE>OFF</CODE>, using the <CODE>WPADEnableMotor</CODE> function, in mid-rumble did not stop rumble. This has been changed to stop the current rumble.</p>
2175
2176<hr />
2177<h3><a name="note144" id="note144">Note 144 (WPAD): Changed the timing with which the WPADShutdown function is called internally.</a></h3>
2178<p>If the WPAD library is not shut down when the <CODE>OSShutdownSystem</CODE> function is called or when a fatal error occurs, the <CODE>WPADShutdown</CODE> function is called internally.</p>
2179
2180<hr />
2181<h3><a name="note143" id="note143">Note 143 (WPAD): Changed the WPADDisconnect function specification.</a></h3>
2182<p>The correspondence between the Wii Remote and the controller number are now deleted when the connection is severed using the <CODE>WPADDisconnect</CODE> function. (Previously, this information was retained.)</p>
2183
2184<hr />
2185<h3><a name="note142" id="note142">Note 142 (WPAD): Item pertaining to the WLAN signal interference avoidance process.</a></h3>
2186<p>Previously, WLAN needed to be implemented in a way that avoided signal interference by using <CODE>WPADSetDisableChannel</CODE>. Now, interference is avoided automatically through the SDK. Therefore, the <CODE>WPADSetDisableChannel</CODE> function has been modified to do nothing internally.
2187</p>
2188
2189<hr />
2190<h3><a name="note141" id="note141">Note 141 (WPAD): Added functions.</a></h3>
2191<p><CODE>WPADCanSendStreamData</CODE><br> Function that checks whether to call the <CODE>WPADSendStreamData</CODE> function.
2192</p><p>
2193<CODE>WPADStartFastSyncDevice</CODE><br> <CODE>WPADStartFastSimpleSync</CODE><br> Functions that change the Wii Remote transfer type to best-effort during registration speed up registration.
2194</p>
2195
2196<hr />
2197<h3><a name="note140" id="note140">Note 140 (WPAD): Removed the WPADClearPortMapTable function.</a></h3>
2198<p>Because <CODE>WPADDisconnect</CODE> can now delete the number of controllers, this function has now been eliminated.</p>
2199
2200<hr />
2201<h3><a name="note139" id="note139">Note 139 (KPAD): Fixed a bug that occurred when an attachment was quickly hot-swapped.</a></h3>
2202<p>When an attachment was hot-swapped quickly, the KPAD transitioned to a state in which controller data was not received. This problem has been corrected.</p>
2203
2204<hr />
2205<h3><a name="note138" id="note138">Note 138 (NAND): Fixed a bug that caused the NANDSafe series functions to return unexpected result codes.</a></h3>
2206<p>A result code not defined in the header file was occasionally returned. This occurred when appropriate permissions (both read and write) were not set in the parent directory of the file where the <CODE>NANDSafe</CODE> series function was implemented. This bug is now fixed.</p>
2207
2208<hr />
2209<h3><a name="note137" id="note137">Note 137 (NAND): Established banner file format, and added new functions.</a></h3>
2210<p>The banner file format has been established, and the following <CODE>NAND</CODE> function that handles banners has been added: The banner files must always be created directly in the home directory.<br><CODE>NANDInitBanner()<br> NANDGetIconSpeed()<br> NANDSetIconSpeed()</CODE><br>
2211</p>
2212
2213<hr />
2214<h3><a name="note136" id="note136">Note 136 (OS): Added a feature for checking the firmware required by the application.</a></h3>
2215<p>To start an application,  the appropriate firmware must be installed on the development system. If this check fails, a prompt is displayed, and startup is terminated. Please install the appropriate firmware at this time. All applications prior to SDK Version 2.2 will fail this check.</p>
2216<p>
2217Even if the check fails, the application can be forcibly started by pressing START/PAUSE on the GameCube Controller.</p>
2218
2219<hr />
2220<h3><a name="note135" id="note135">Note 135 (DVD): Stopped the use of the drive state DVD_STATE_NO_INPUT during the controller input standby status.</a></h3>
2221<p>The drive motor stop feature will no longer be supported in the near future. (Time of support is yet to be determined.)</p>
2222<p>
2223Therefore, the DVD library drive state during the controller input standby status, <CODE>DVD_STATE_NO_INPUT</CODE>, does not appear in this SDK.</p>
2224
2225<hr />
2226<h3><a name="note134" id="note134">Note 134 (DVD): Added official support for the automatic FATAL message.</a></h3>
2227<p>The automatic <CODE>FATAL</CODE> messages displayed in earlier SDKs were provisional. This SDK now uses the official messages.</p>
2228<p>
2229This can be verified by running <CODE>dvdfatal</CODE> in the DVD sample demo.</p>
2230
2231<hr />
2232<h3><a name="note133" id="note133">Note 133 (TOOL): Added screen burn-in protection settings to the system menu.</a></h3>
2233<p>Screen burn-in protection settings have been added to the system menu screen settings. For details, see &quot;Screen Settings&quot; under &quot;NDEV System Menu&quot; in the &quot;Tools&quot; section of the manual.</p>
2234
2235<hr />
2236<h3><a name="note132" id="note132">Note 132 (TOOL): Temporarily stopped the automatic update feature in the firmware system menu.</a></h3>
2237<p>The firmware/system menu automatic update mentioned in Note 93 of the release notes has been temporarily removed. When this automatic update function was enabled, the .rpf and .rvm files that were created included software that functioned as an encryption device. This meant that exporting the .rpf and .rvm file outside of Japan required an export authorization from the Ministry of Economy, Trade, and Industry. This sometimes resulted in inconvenience during development, so this functionality has been temporarily removed. The .rpf and .rvm files created in conjunction with this SDK or with later SDKs are not subject to export regulation.</p>
2238
2239<hr />
2240<h3><a name="note131" id="note131">Note 131 (TOOL): Added a Wii Sensor Bar sensitivity setting to the system menu.</a></h3>
2241<p>A Wii Sensor Bar sensitivity setting has been added to the system menu wireless controller settings. For details, see &quot;Tool -&gt; NDEV System Menu -&gt; Wireless Controller Settings&quot; in the manual.</p>
2242
2243<hr />
2244<h3><a name="note130" id="note130">Note 130 (VI): Removed the VIGetDVDStopMotorCount function.</a></h3>
2245<p>The drive motor stop feature will no longer be supported in the near future. (Time of support is yet to be determined.)</p>
2246<p>
2247Therefore, the support function for this feature (<CODE>VIGetDVDStopMotorCount</CODE>) has been temporarily removed.</p>
2248
2249<hr />
2250<h3><a name="note129" id="note129">Note 129 (VI): Fixed a bug that prevented the screen from returning to its original state when the console was reset with screen burn-in protection running.</a></h3>
2251<p>The screen was not returning to its original state when the console was reset with screen burn-in protection running. This problem has been corrected.</p>
2252
2253<hr />
2254<h3><a name="note128" id="note128">Note 128 (VI): Fixed a bug that caused the TV to display noise when the system entered IDLE mode or a hardware was reset.</a></h3>
2255<p>When the system entered <CODE>IDLE</CODE> mode or performed a hardware reset while connected with an S-video, component, or D-terminal cable, noise was displayed on the TV screen.</p>
2256<p>
2257This problem has been corrected. </p>
2258
2259<hr />
2260<h3><a name="note127" id="note127">Note 127 (WENC): Fixed a bug that prevented sound effects from playing back correctly from the Wii Remote speaker.</a></h3>
2261<p>Certain sound effects that played back without a problem on the TV speaker were not played back correctly on Wii Remote speakers.
2262</p><p>
2263This problem has been corrected. </p>
2264
2265<hr />
2266<h3><a name="note126" id="note126">Note 126 (DSP): Fixed a bug that caused calling the AXQuit function to output an error and stop the application.</a></h3>
2267<p>Calling the <CODE>AXQuit</CODE> function during a debug session (on the CodeWarrior IDE with &quot;Enable Serial I/O&quot; set to on) caused the DSP library to output an error and stop the program.
2268</p><p>
2269This problem has been corrected. </p>
2270
2271<hr />
2272<h2 style="line-height: 0"><a name="20060907" id="20060907">* 2006/09/07 SDK Version 2.2</a> <div style="text-align: right">(2006/09/07)</div></h2><hr />
2273<h3><a name="note125" id="note125">Note 125 (TOOL): Changed the save-data specification.</a></h3>
2274<p>Changed the specification of the NDEV system menu save-data operation. For details, see &quot;Tool -&gt; NDEV System Menu -&gt; Save Data Operation&quot; in the manual.</p>
2275
2276<hr />
2277<h3><a name="note124" id="note124">Note 124 (TOOL): Added a drive protection setting to the system menu.</a></h3>
2278<p>Added a drive protection setting to the system menu NDEV settings. For details, see &quot;Tool -&gt; NDEV System Menu -&gt; NDEV Settings&quot; in the manual.</p>
2279
2280<hr />
2281<h3><a name="note123" id="note123">Note 123 (KPAD): Added functions for improving pointing.</a></h3>
2282<p>The following functions have been added  for improving the usability of pointing with the Wii Remote:</p><p>
2283<CODE>KPADEnableAimingMode()<br> KPADDisableAimingMode()<br> KPADGetProjectionPos()</CODE></p>
2284
2285<hr />
2286<h3><a name="note122" id="note122">Note 122 (KPAD): Added support for the Classic Controller.</a></h3>
2287<p>The function supporting the Classic Controller, <CODE>KPADGetWPADCLRingBuffer()</CODE>, has been added. (This was missing from the previous version of the release notes).</p>
2288
2289<hr />
2290<h3><a name="note121" id="note121">Note 121 (KPAD): Changed the behavior when dealing with unknown attachments.</a></h3>
2291<p>The library has been modified to ignore unknown attachments and operate the Wii Remote in standalone mode.
2292</p>
2293
2294<hr />
2295<h3><a name="note120" id="note120">Note 120 (KPAD): Added functions for enabling/disabling the Pointer.</a></h3>
2296<p>The following functions that enable and disable the Wii Remote Pointer have been added. Disabling the Pointer reduces the power consumption of the Wii Remote.</p>
2297<p>
2298void KPADEnableDPD(s32 chan);<br> void KPADDisableDPD(s32 chan);
2299</p>
2300
2301<hr />
2302<h3><a name="note119" id="note119">Note 119 (KPAD): Expanded the sample demo program.</a></h3>
2303<p>The sample demo program <CODE>kpadsample</CODE> has been expanded. Added support for the Classic Controller, Pointer control, and other features.</p>
2304
2305<hr />
2306<h3><a name="note118" id="note118">Note 118 (AX): Added an AUX callback acquisition function.</a></h3>
2307<p>The following AUX callback acquisition functions have been added to temporarily switch and return in such places as the Home Menu:</p><p>
2308<CODE>void AXGetAuxACallback(AXAuxCallback *callback, void **context);<br> void AXGetAuxBCallback(AXAuxCallback *callback, void **context);<br> void AXGetAuxCCallback(AXAuxCallback *callback, void **context);</CODE></p>
2309
2310<hr />
2311<h3><a name="note117" id="note117">Note 117 (WENC): Deleted WENC_FLAG_LAST from the flag passed to WENCGetEncodeData().</a></h3>
2312<p><CODE>WENC_FLAG_LAST</CODE> has been deleted from the available values for the <CODE>flag</CODE> argument of <CODE>WENCGetEncodeData()</CODE>.</p>
2313
2314<hr />
2315<h3><a name="note116" id="note116">Note 116 (NAND): Fixed a bug in the NANDReadDir[Async] Function Reference page.</a></h3>
2316<p>The content of <CODE>NANDReadDir[Async]</CODE> Function Reference Manual has been found to be insufficient. When allocating a buffer, its size should be rounded up to a multiple of 32 bytes. Due to an issue with the cache, the memory surrounding the buffer area may be destroyed.</p>
2317
2318<hr />
2319<h3><a name="note115" id="note115">Note 115 (NAND): Removed write size restriction.</a></h3>
2320<p>The write size was previously restricted to multiples of 32&nbsp;bytes in the <CODE>NANDWrite[Async]</CODE> function, but this restriction has been removed.</p>
2321
2322<hr />
2323<h3><a name="note114" id="note114">Note 114 (NAND): Added the NANDCheck() sample demo program.</a></h3>
2324<p>A sample demo program showing the usage of <CODE>NANDCheck()</CODE> has been added.</p>
2325
2326<hr />
2327<h3><a name="note113" id="note113">Note 113 (OS): Revised the RESET callback process.</a></h3>
2328<p>The RESET callback registered in <CODE>OSSetResetCallback()</CODE> was called both when RESET was being pressed and when it was released. This has been changed so that the callback is called only when RESET is pressed.</p>
2329
2330<hr />
2331<h3><a name="note112" id="note112">Note 112 (SC): Precaution for calling SCFlush*().</a></h3>
2332<p>When calling <CODE>SCFlush*()</CODE>, the update process may be executing at unexpected times, depending on the active libraries and interrupts. To ensure that your own system setting is applied, call <CODE>SCCheckStatus()</CODE> after changing settings, and verify that the return value is <CODE>SC_STATUS_OK</CODE>.</p>
2333<p>
2334When calling <CODE>SCFlush*()</CODE> after doing this, the changes will be applied, even if the update process was not launched by you.</p>
2335
2336<hr />
2337<h3><a name="note111" id="note111">Note 111 (SC): Fixed a bug in SCFlushAsync(), and added a callback argument value.</a></h3>
2338<p>The callback function passed as an argument to <CODE>SCFlushAsync()</CODE> was not called if there was an existing background process or an error had occurred before the call. This problem has been corrected.</p>
2339<p>
2340In addition, the specification has been changed so that, if a background process is running, <CODE>SC_STATUS_BUSY</CODE> is passed to the callback function argument (result).
2341</p>
2342
2343<hr />
2344<h3><a name="note110" id="note110">Note 110 (SC): Fixed a bug in SCFlush().</a></h3>
2345<p><CODE>SCFlush()</CODE> hung when it was called after <CODE>SCFlushAsync()</CODE> while a background process was running.</p>
2346<p>
2347<CODE>SCFlush()</CODE> has been changed to wait for the completion of the background process.</p>
2348
2349<hr />
2350<h3><a name="note109" id="note109">Note 109 (SC): Automatic call of SCInit().</a></h3>
2351<p><CODE>SCInit()</CODE> is now called automatically at system startup.
2352</p><p>
2353<CODE>SCCheckStatus()</CODE>, which is used to verify completion of initialization, is also called automatically. Therefore, SC library initialization is no longer necessary. The initialization process already implemented in the library may be left as it is and will not cause any problems.</p>
2354
2355<hr />
2356<h3><a name="note108" id="note108">Note 108 (TOOL): Fixed a bug in makeo.exe.</a></h3>
2357<p>When an object output by <CODE>makeo.exe</CODE> was linked to .plf, the reference to the object was not appropriately resolved.
2358</p><p>
2359This problem has been corrected.
2360</p>
2361
2362<hr />
2363<h3><a name="note107" id="note107">Note 107 (TOOL): Added a disc country code configuration tool.</a></h3>
2364<p>A tool for setting the disc country code, '<CODE>setcountrycode</CODE>', has been added. When creating master data, it was necessary to set the country code using <CODE>setcountrycode</CODE> and to execute <CODE>ndrun</CODE> once. In the GDEV software, the country code was specified by editing the DDF file. Since this is not supported in the NDEV software, use <CODE>setcountrycode</CODE>.
2365</p>
2366
2367<hr />
2368<h3><a name="note106" id="note106">Note 106 (TOOL): Corrected a problem that prevented termination of setsmem2size in error from being detected.</a></h3>
2369<p>Even when the setting was not correctly configured, <CODE>setsmem2size</CODE> finished normally. An error message is now displayed when the configuration fails.
2370</p>
2371
2372<hr />
2373<h3><a name="note105" id="note105">Note 105 (DVD): Added the drive state DVD_STATE_NO_INPUT while waiting for controller input.</a></h3>
2374<p>When the controller receives no input for a set period of time, the DVD library pauses the drive motor and waits for controller input.</p>
2375<p>
2376When this error is detected, the application should display an error message and prompt the user for controller input. See the message list for the appropriate message content.
2377</p>
2378
2379<hr />
2380<h3><a name="note104" id="note104">Note 104 (DVD): Fixed the system language setting that was not reflected in the automatic fatal message.</a></h3>
2381<p>The system language setting was not reflected in the automatic fatal message. This has been fixed.</p>
2382<p>
2383This can be verified by running <CODE>dvdfatal</CODE> in the DVD sample demo.
2384</p>
2385
2386<hr />
2387<h3><a name="note103" id="note103">Note 103 (WPAD): Added device type values.</a></h3>
2388<p><CODE>WPAD_DEV_FUTURE</CODE> and <CODE>WPAD_DEV_NOT_SUPPORTED</CODE> have been added to the device type.</p>
2389
2390<hr />
2391<h3><a name="note102" id="note102">Note 102 (WPAD): Changed the battery level threshold value, and added the voltage level CRITICAL.</a></h3>
2392<p>The battery level threshold value has been changed and <CODE>WPAD_BATTERY_LEVEL_CRITICAL</CODE>, an indicator prompting the user to change the battery, has been added.
2393</p>
2394
2395<hr />
2396<h3><a name="note101" id="note101">Note 101 (WPAD): Changed how the SyncCallback function is called.</a></h3>
2397<p>- When <CODE>WPADStartSimpleSync()</CODE> is called for the <CODE>WPADSetSimpleSyncCallback(</CODE> callback, a <CODE>BUSY</CODE> event is returned if it is in the middle of an operation.<br>- When <CODE>WPADStartSyncDevice()</CODE> is called for the <CODE>WPADSetSyncDeviceCallback(</CODE> callback, a <CODE>BUSY</CODE> event is returned if it is in the middle of an operation.
2398</p>
2399
2400<hr />
2401<h3><a name="note100" id="note100">Note 100 (WPAD): Added support for origin reset.</a></h3>
2402<p>The origin can now be reset by pressing the A Button, B Button, + Button, and - Button simultaneously for three seconds on the Wii Remote.</p>
2403
2404<hr />
2405<h3><a name="note99" id="note99">Note 99 (WPAD): Changed how the controller port is allocated.</a></h3>
2406<p>The last Wii Remote ID connection is now stored for each controller port. The Wii Remote will be reassigned to the same port at the next connection.</p>
2407
2408<hr />
2409<h3><a name="note98" id="note98">Note 98 (WPAD): Changed how the Wii Remote setting information is handled.</a></h3>
2410<p>The Rumble feature enable/disable setting and the speaker volume are no longer stored per controller. They are now stored as common values on the Wii console.</p>
2411
2412<hr />
2413<h3><a name="note97" id="note97">Note 97 (WPAD): Fixed bugs</a></h3>
2414<p>The following problems have been corrected:<br> <br> - The controller froze in a busy state after the connection had been established.<br> - During the pairing process, the indicator continuously blinked and the pairing did not complete.<br> - The pairing process occasionally did not start, even when SYNCHRO was pressed.	<br> - The work memory was not de-allocated at <CODE>WPADShutdown()</CODE>.<br> - Repeated connection/disconnection of the Wii Remote caused a crash at ASSERT.<br> - During loading of internal memory, interrupts were blocked for over 100 us.<br> - Plugging in the external extension controller slowly caused a busy state, and eventually disconnection.<br> - <CODE>WPADSetSimpleSyncCallback()</CODE> was cleared after the simple pairing process was closed.<br> - The application froze if the Power Button was pressed for more than 1 second on a Wii Remote that had been paired, but not connected.<br> - When <CODE>WPADRead()</CODE> was called after the Wii controller was disconnected, the last controller data from the disconnected controller was returned.<br> - The data in the <CODE>WPADSetAutoSamplingBuf()</CODE> registered buffer was not cleared after a controller was disconnected.<br> -  The controller was not disconnected, even if there was no input to the controller for the period specified in <CODE>WPADAutoSleepTime</CODE>.<br> - The default value of the Rumble enable/disable setting and the speaker volume could not be acquired correctly.<br> - The indicator continued to blink after a connection had been established.<br> - When pairing was performed during TV audio playback, noise was generated in the audio.</p>
2415
2416<hr />
2417<h3><a name="note96" id="note96">Note 96 (WPAD): Added functions.</a></h3>
2418<p>Pointer sensitivity setting <br> - <CODE>WPADGetDpdSensitivity()</CODE><br> - <CODE>WPADSetDpdSensitivity()</CODE><br> <br> Indicates whether the Wii console accepts the connection to the Wii Remote.<br> - <CODE>WPADGetAcceptConnection()</CODE><br> - <CODE>WPADSetAcceptConnection()</CODE><br> <br> Shutdown function with automatic reconnection of the Wii Remote.<br> - <CODE>WPADReconnect()</CODE><br> <br> Clears the controller port and the Wii Remote allocation table.<br> - <CODE>WPADClearPortMapTable()</CODE><br> <br> Acquires the number of simple-paired Wii Remotes.<br> - <CODE>WPADGetTemporaryDevNum()</CODE><br> <br> Acquires the pairing type of the Wii Remote.<br> - <CODE>WPADGetSyncType()</CODE> <br>
2419</p>
2420
2421<hr />
2422<h3><a name="note95" id="note95">Note 95 (PAD): Added functions related to the clamp process.</a></h3>
2423<p>The following functions have been added:</p>
2424<p>
2425<CODE>PADClamp2<br> PADClampCircle2<br> PADClampTrigger</CODE>
2426</p>
2427<p>
2428Clamps with play (tolerance) near the axes, clamps with no play, and circular clamps have been added. The maximum clamp values have been changed for the existing clamp functions (<CODE>PADClamp</CODE> and <CODE>PADClampCircle</CODE>). Therefore, a wider analog stick and analog trigger input value range is now accepted.</p>
2429
2430<hr />
2431<h3><a name="note94" id="note94">Note 94 (VI): Added support functions for screen burn-in protection and stopping the drive motor.</a></h3>
2432<p>Support functions for screen burn-in protection and stopping the drive motor have been added. These functions run automatically if the controller input state stays constant for more than a set period of time. These functions are enabled by default.</p>
2433
2434<hr />
2435<h2 style="line-height: 0"><a name="20060821p1" id="20060821p1">* 2006/08/21 SDK Version 2.1 Patch 1</a> <div style="text-align: right">(2006/08/30)</div></h2><hr />
2436<h3><a name="note93" id="note93">Note 93 (TOOL): Added support for firmware/system menu auto-update.</a></h3>
2437<p>Starting with this patch, auto-update of the firmware/system menu is supported. Applications created after the implementation of this patch will update the firmware and the system menu automatically when they run. The NDEV firmware update program version 9.0.0 (2006/08/22 version) needs to be run first.</p>
2438
2439<hr />
2440<h3><a name="note92" id="note92">Note 92 (TOOL): Added features to the system menu.</a></h3>
2441<p>Wireless controller settings and save-data operations have been added to the system menu. For details, see &quot;NDEV System Menu&quot; in the &quot;Tools&quot; section of the manual.</p>
2442
2443<hr />
2444<h3><a name="note91" id="note91">Note 91 (WPAD): Call WPAD termination before reset/shutdown.</a></h3>
2445<p>When using WPAD in the program, always call <CODE>WPADShutdown</CODE> before the reset/shutdown function to close the WPAD process.</p>
2446
2447<hr />
2448<h3><a name="note90" id="note90">Note 90 (OS): Re-released the OSExec function.</a></h3>
2449<p>The <CODE>OSExec</CODE> function has been re-released.</p>
2450
2451<hr />
2452<h3><a name="note89" id="note89">Note 89 (OS): Added OSSwitchFiberEx().</a></h3>
2453<p>The <CODE>OSSwitchFiberEx()</CODE> function, which is an expanded version of <CODE>OSSwitchFiber()</CODE>, has been added. It is capable of passing an argument to functions using the new stack.</p>
2454
2455<hr />
2456<h3><a name="note88" id="note88">Note 88 (OS): Added periodic access to NAND by the system.</a></h3>
2457<p>The system now accesses Wii NAND console memory periodically. Although details are yet to be finalized, the frequency of system access to Wii NAND console memory has been determined and is implemented starting with this patch. Verify the impact this has on your applications. There will be a single file write operation per minute, and a single file open/close operation every five minutes. The FAT will also be updated during the close operation. In addition, a single file descriptor will always be consumed. When Wii NAND console memory is accessed by the application at the time that the system accesses that memory, the close operation will take longer than usual. Detect the close process with function returns or callbacks, instead of using the elapsed time from the start of the process.</p>
2458
2459<hr />
2460<h3><a name="note87" id="note87">Note 87 (NAND): Automatic call of NANDInit().</a></h3>
2461<p><CODE>NANDInit()</CODE> will now be called automatically at system startup.</p>
2462
2463<hr />
2464<h3><a name="note86" id="note86">Note 86 (NAND): Fixed a bug that occurred when the full path name was exactly 32 bytes.</a></h3>
2465<p>The bug that occurred when the full path name was exactly 32 bytes was fixed in SDK 2.1. (This was missing from the previous version of the release notes.)</p>
2466
2467<hr />
2468<h3><a name="note85" id="note85">Note 85 (NAND): Added a function that determines whether the file or directory can be created.</a></h3>
2469<p>Added the <CODE>NANDCheck[Async]</CODE> function. When creating a new file or directory in a directory other than /tmp, call this function first. This function determines whether the file system has enough resources for the creation of the new file or directory.</p>
2470
2471<hr />
2472<h3><a name="note84" id="note84">Note 84 (NAND): Added result codes that were omitted.</a></h3>
2473<p>The following items have been added to the <I>Function Reference Manual</I>: <BR>-<CODE>NANDSafeClose[Async]</CODE> may return <CODE>NAND_RESULT_OPENFD</CODE>.<BR>-<CODE>NANDCreate[Async]</CODE> and <CODE>NANDCreateDir[Async]</CODE> may return <CODE>NAND_RESULT_NOEXISTS</CODE>.</p>
2474
2475<hr />
2476<h3><a name="note83" id="note83">Note 83 (SC): Added the return values for SCGetLanguage.</a></h3>
2477<p>Chinese (simplified), Chinese (traditional), and Korean have been added as the reserved values for the <CODE>SCGetLanguage()</CODE> function return values. However, the Revolution SDK does not support these languages at this time.</p>
2478<p>
2479See the <I>Function Reference Manual</I> and the sample demo scdemo for details.</p>
2480
2481<hr />
2482<h3><a name="note82" id="note82">Note 82 (GD): Added and edited descriptions of GD demo debug output.</a></h3>
2483<p>Previous descriptions of the debug outputs for several GD demos have been added or corrected.</p>
2484
2485<hr />
2486<h3><a name="note81" id="note81">Note 81 (GX): Added and edited descriptions of GX demo debug output.</a></h3>
2487<p>Previous descriptions of the debug outputs for several GX demos have been added or corrected.</p>
2488
2489<hr />
2490<h3><a name="note80" id="note80">Note 80 (WENC): Added the WENC library.</a></h3>
2491<p>A WENC library has been added in SDK Version 2.1. WENC is a library used for Wii Remote speaker encoding.</p>
2492
2493<hr />
2494<h3><a name="note79" id="note79">Note 79 (CX): Released the compression/decompression library.</a></h3>
2495<p>The CX library supports the compression/decompression function. It is based on the compression/decompression library used for the Nintendo DS system. The CX library source code has been released. (This was missing from the previous version of the release notes.)</p>
2496
2497<hr />
2498<h3><a name="note78" id="note78">Note 78 (ENC): Added the ENC library.</a></h3>
2499<p>The ENC library has been added to the SDK Version 2.1. ENC is a library used for character code conversion.</p>
2500
2501<hr />
2502<h2 style="line-height: 0"><a name="20060821" id="20060821">* 2006/08/21 SDK Version 2.1</a> <div style="text-align: right">(2006/08/21)</div></h2><hr />
2503<h3><a name="note77" id="note77">Note 77 (WPAD): Added support for status of simple pairing.</a></h3>
2504<p>The WPAD library in SDK Version 2.1 supports simple pairing.</p>
2505<p>Although the Wii Remote included with NDEV Version 2.1 (white) supports this feature, the Wii Remote included with NDEV Version 2.0 (black) does not.</p>
2506
2507<hr />
2508<h3><a name="note76" id="note76">Note 76 (WPAD): Added functions.</a></h3>
2509<p>The following sample functions have been added:</p>
2510<p>
2511- <CODE>WPADGetWorkMemorySize()</CODE><br>Gets the total work memory capacity obtained when the library is initialized.
2512</p><p>
2513- <CODE>WPADGetRadioSensitivity()</CODE><br>Gets the radio sensitivity of the Wii Remote.
2514</p><p>
2515- <CODE>WPADIsSpeakerEnabled()</CODE><br> - <CODE>WPADControlSpeaker()</CODE><br> - <CODE>WPADGetSpeakerVolume()</CODE><br> - <CODE>WPADSetSpeakerVolume()</CODE><br> - <CODE>WPADSendStreamData()</CODE><br>Control the Wii Remote speaker. The sample introduces a method to output sound from the Wii Remote encoded by the AX library.
2516</p></p>
2517- <CODE>WPADIsMotorEnabled()</CODE><br> - <CODE>WPADEnableMotor()</CODE><br>Changes the Wii Remote Rumble feature enable state.
2518</p><p>
2519- <CODE>WPADSetAutoSleepTime()</CODE><br>Sets the time until the Wii Remote is automatically disconnected when there is no input from the Wii Remote.
2520</p><p>
2521- <CODE>WPADGetSensorBarPosition()</CODE><br>Gets Sensor Bar placement information.
2522</p><p>
2523- <CODE>WPADStartSimpleSync()</CODE><br> - <CODE>WPADStopSimpleSync()</CODE><br> - <CODE>WPADSetSimpleSyncCallback()</CODE><br>Controls simple pairing.
2524</p><p>
2525- <CODE>WPADSaveConfig()</CODE><br>Saves the Rumble feature enable state and speaker volume settings to the Wii console.
2526</p><p>
2527- <CODE>WPADClampTrigger()</CODE><br> - <CODE>WPADClampAcc()</CODE><br> - <CODE>WPADGetCLTriggerThreshold()</CODE><br>Clamps the analog input.
2528</p><p>
2529- <CODE>WPADReadGameData()</CODE><br> - <CODE>WPADWriteGameData()</CODE><br>Access the Wii Remote memory.
2530</p><p>
2531- <CODE>WPADSetGameTitle()</CODE><br> - <CODE>WPADSetGameTitleWChar()</CODE><br> - <CODE>WPADGetGameTitle()</CODE><br> - <CODE>WPADGetGameDataTimeStamp()</CODE><br>Access the game data saved in the Wii Remote memory.
2532</p>
2533
2534<hr />
2535<h3><a name="note75" id="note75">Note 75 (WPAD): Fixed a bug related to hot plug-in or removal of external extension controllers.</a></h3>
2536<p>The status was stuck on <CODE>BUSY</CODE> when an external extension controller was plugged in and unplugged quickly and repeatedly during communication.</p>
2537<p>This problem has been corrected.</p>
2538
2539<hr />
2540<h3><a name="note74" id="note74">Note 74 (WPAD): Changed the number of units that can be paired.</a></h3>
2541<p>Simple pairing is now possible with SDK Version 2.1. Although the number of normal-paired units was 16, this has now been changed to 10 normal-paired units and six simple-paired units.</p>
2542<p>
2543In addition, Wii consoles that have had 11 or more paired Wii Remotes can only use up to 10 Wii Remotes when operating with the SDK Version 2.1 WPAD Library. We recommend deleting all previous pairing information, since operation in this state was not anticipated.</p>
2544
2545<hr />
2546<h3><a name="note73" id="note73">Note 73 (WPAD): Added Full mode to the Pointer.</a></h3>
2547<p>Added Full mode to the Wii Remote Pointer. In Full mode, you can get not only the object coordinates and size, but also the object range, pixel count, and radius.</p>
2548
2549<hr />
2550<h3><a name="note72" id="note72">Note 72 (WPAD): Changed the clamp process.</a></h3>
2551<p>- Released source code<br>The clamp functions supplied with the WPAD library have been disclosed.
2552</p>
2553<p>
2554- Changed the clamp algorithm:<br>Changed the maximum value that can be clamped to be in line with the analog stick hardware. Also added clamps with no play, circular clamps, and clamps with play near the axes.
2555</p><p>
2556In addition, added cubical clamps and spherical clamps to the motion sensor clamps.</p>
2557
2558<hr />
2559<h3><a name="note71" id="note71">Note 71 (WPAD): Fixed a bug that halved the pointer sampling rate.</a></h3>
2560<p>There was a discrepancy between the timing of the update cycle for the library controller status and the actual cycle for receiving the data. This problem has been corrected by adjusting the library update cycle.
2561</p>
2562
2563<hr />
2564<h3><a name="note70" id="note70">Note 70 (WPAD): Fixed a bug in the Rumble feature.</a></h3>
2565<p>An exception was generated when <CODE>WPADControlMotor()</CODE> was called from within a callback function that was called by the WPAD library.<p>
2566<p>
2567This problem has been corrected.</p>
2568
2569<hr />
2570<h3><a name="note69" id="note69">Note 69 (MEM): Added measures to prevent a performance drop when securing 32-byte alignment from the extended heap.</a></h3>
2571<p>When memory was obtained with 32-byte alignment from the extended heap, excess free blocks were registered. Therefore, the performance was significantly affected when many small memory areas were obtained with 32-byte alignment. Improvements were made to reduce the drop in performance in these cases.</p>
2572
2573<hr />
2574<h3><a name="note68" id="note68">Note 68 (AX): Added support for Wii Remote speaker output.</a></h3>
2575<p>AX now supports output to the Wii Remote speaker. This allows sound to be played from the Wii Remote speaker in the same way that sound is normally played through other channels.</p>
2576
2577<hr />
2578<h3><a name="note67" id="note67">Note 67 (AX): Fixed a bug that prevented de-pop from operating with voices that had been panned.</a></h3>
2579<p>For example, when pan was to the left and the right channel processing had been cut with <CODE>mixerCtrl</CODE> while producing sound, the right channel de-pop parameter was not updated. As a result, minor noise occurred in the right channel when the voice stopped.</p>
2580<p>
2581This problem has been corrected.</p>
2582
2583<hr />
2584<h3><a name="note66" id="note66">Note 66 (OS): Expanded the alarm features.</a></h3>
2585<p>The following functions have been added. The <CODE>OSAlarm</CODE> structure can be assigned arguments.</p>
2586<p>
2587<CODE>void  OSSetAlarmUserData( OSAlarm* alarm, void* data );</CODE><br> <CODE>void *OSGetAlarmUserData( const OSAlarm* alarm );</CODE></p>
2588
2589<hr />
2590<h3><a name="note65" id="note65">Note 65 (KPAD): Various fixes and expansions.</a></h3>
2591<p>Added support for the Classic Controller.<br>Added the <CODE>acc_vertical</CODE> member variable to the <CODE>KPADStatus</CODE> structure.<br>Added the <CODE>KPADSetSensorHeight()</CODE> function.<br>Bugs in the <CODE>KPADSetFSStickClamp()</CODE> function were fixed.<br>The clamp process is now applied to the acceleration value.</p>
2592
2593<hr />
2594<h3><a name="note64" id="note64">Note 64 (ARC): Added const.</a></h3>
2595<p>Applied the <CODE>const</CODE> modifier to arguments of some functions.</p>
2596
2597<hr />
2598<h3><a name="note63" id="note63">Note 63 (MEM): Fixed a bug in the MEMFindParentHeap() function.</a></h3>
2599<p>When building a layered heap with <CODE>MEMFindParentHeap()</CODE>, the parent heap was not correctly obtained. This problem has been corrected.</p>
2600
2601<hr />
2602<h3><a name="note62" id="note62">Note 62 (NAND): Added and deleted error codes.</a></h3>
2603<p>The <CODE>NAND_RESULT_INIT_FAILED</CODE> error code was removed. The <CODE>NAND_RESULT_AUTHENTICATION</CODE> error code was added.</p>
2604
2605<hr />
2606<h3><a name="note61" id="note61">Note 61 (NAND): Revised NANDInit().</a></h3>
2607<p>The process time was reduced. The process to create the /tmp/sys directory has been moved to the new <CODE>NANDSafeOpen[Async]()</CODE> function. The number of error types that can be returned has been reduced.</p>
2608
2609<hr />
2610<h3><a name="note60" id="note60">Note 60 (NAND): Added functions.</a></h3>
2611<p>Added <CODE>NANDGetType[Async]()</CODE>. This function distinguishes between files and folders.</p>
2612<p>
2613Added <CODE>NANDSafeOpen/Close[Async]()</CODE>. This is a function group that guarantees that file updates are atomic.</p>
2614<p>Added <CODE>NANDGetHomeDir()</CODE>. This function gets the path of the home directory. (This is the directory prepared by the system to store the save data of the application.)
2615</p>
2616
2617<hr />
2618<h3><a name="note59" id="note59">Note 59 (NAND): Corrected a problem that caused unknown error code to be displayed during read/write.</a></h3>
2619<p>Due to a firmware problem, the debug message: &quot;CAUTION! Unexpected error code [-116] was found.&quot; was occasionally output. The error code <CODE>NAND_RESULT_UNKNOWN</CODE> was also returned. This problem has been corrected.</p>
2620
2621<hr />
2622<h3><a name="note58" id="note58">Note 58 (OS): Updated the functions related to reset and shutdown.</a></h3>
2623<p>The reset and shutdown functions were updated or created in line with the Wii console system specifications.</p>
2624<p>
2625The following functions were added:</p>
2626<p>
2627<CODE>OSRebootSystem()</CODE> - Reboots the entire system.<br> <CODE>OSRestart()</CODE> - Restarts the application.<br> <CODE>OSReturnToMenu()</CODE> - Returns to the system menu.<br> <CODE>OSShutdownSystem()</CODE> - Shuts down the system.<br> <CODE>OSSetPowerCallback()</CODE> - Registers the Power Button callback.<br>
2628<p>
2629In addition, the existing reset function, <CODE>OSResetSystem()</CODE>, has been deprecated. The specifications for other functions have also changed. For more details, see the <I>Function Reference Manual</I>.</p>
2630
2631<hr />
2632<h3><a name="note57" id="note57">Note 57 (OS): Added OSSleep* functions.</a></h3>
2633<p>Added <CODE>OSSleepTicks()</CODE>. This function pauses the execution of the current thread, and returns to the executable state after a specified amount of time. In addition, the following macros have also been prepared to specify different units of time:</p>
2634<p>
2635<CODE>OSSleepSeconds()</CODE><br> <CODE>OSSleepMilliseconds()</CODE><br> <CODE>OSSleepMicroseconds()</CODE><br> <CODE>OSSleepNanoseconds()</CODE>
2636</p>
2637
2638<hr />
2639<h3><a name="note56" id="note56">Note 56 (SC): Added Wii Remote setup items.</a></h3>
2640<p>The following functions have been added to reference or change the Wii Remote setup items. However, these functions are reserved for another library to be provided in the future. For the time being, do not call these functions directly from the application.</p>
2641<p>
2642- <CODE>SCGetWpadMotorMode</CODE><br> - <CODE>SCGetWpadSensorBarPosition</CODE><br> - <CODE>SCGetWpadSpeakerVolume</CODE><br> - <CODE>SCSetWpadMotorMode</CODE><br> - <CODE>SCSetWpadSensorBarPosition</CODE><br> - <CODE>SCSetWpadSpeakerVolume</CODE><br>
2643</p>
2644
2645<hr />
2646<h3><a name="note55" id="note55">Note 55 (SC): Deleted the emulation functions.</a></h3>
2647<p>Deleted the <CODE>SCEmuSetAspectRatio</CODE> and <CODE>SCEmuSetLanguage</CODE> emulation functions. The functions remain for backward compatibility. However, they now do nothing and always return FALSE.<p>
2648<p>Use the NDEV system menu to modify the aspect ratio or language settings.</p>
2649
2650<hr />
2651<h3><a name="note54" id="note54">Note 54 (SC): Prohibited use of previous versions of the SC library.</a></h3>
2652<p>The internal process for the SC library to access the Wii NAND console memory has changed. The items changed with a previous version are not inherited, and all setup items are initialized.</p>
2653<p>The commercial version of the Wii console and future development environments will not be able to reference or change setup items, even if an older version of the SC library is used. Therefore, do not use older versions of the SC library.</p>
2654
2655<hr />
2656<h3><a name="note53" id="note53">Note 53 (HIO2): Corrected a problem with heavy loads on the host CPU.</a></h3>
2657<p>When a device was opened with <CODE>HIO2Open</CODE>, the load on the host (PC) CPU became extremely heavy. This problem has been corrected. Therefore, the transfer speed during continuous transfers drops slightly (from several percent up to 10%).</p>
2658
2659<hr />
2660<h3><a name="note52" id="note52">Note 52 (DOC): Revised the third chapter &quot;Running a Simple Demo&quot; in the <I>Revolution Build System Guide</I>.</a></h3>
2661<p>The contents of the demo or debug execution method described in Chapter 3, &quot;Running a Simple Demo,&quot; in the <I>Revolution Build System Guide</I> was not compatible with the Revolution shell (<CODE>RVL_NDEV.bat</CODE>). The section was revised to cover use of the Revolution shell.</p>
2662
2663<hr />
2664<h3><a name="note51" id="note51">Note 51 (VI): Changed the default setting for the trap filter.</a></h3>
2665<p>The default setting for the trap filter was enabled. The default has now been changed to disabled.</p>
2666
2667<hr />
2668<h3><a name="note50" id="note50">Note 50 (VI): Fixed a bug that prevented disabling the trap filter.</a></h3>
2669<p>To disable the trap filter feature in SDK Version 2.0, the feature had to first be enabled before it could be disabled.</p>
2670<p>
2671This problem has been corrected.</p>
2672
2673<hr />
2674<h3><a name="note49" id="note49">Note 49 (VI): Ended support for 50&nbsp;Hz mode for progressive display.</a></h3>
2675<p>The 50&nbsp;Hz progressive display is no longer supported. To use progressive display, use 60&nbsp;Hz. For details, see the <I>VIConfigure</I> manual.</p>
2676
2677<hr />
2678<h2 style="line-height: 0"><a name="20060620" id="20060620">* 2006/06/20 SDK Version 2.0</a> <div style="text-align: right">(2006/06/20)</div></h2><hr />
2679<h3><a name="note48" id="note48">Note 48 (ALL): Deleted the sample demo elf/map file.</a></h3>
2680<p>The elf and map files used to build sample demos were included in SDK Version 1.0. In SDK Version 2.0, elf and map files excluding the following have been deleted:
2681</p>
2682<p>
2683<CODE>/RVL/bin/demos/gxdemo/smp-onetri.elf</CODE></br> <CODE>/RVL/bin/demos/thpdemo/THPSimple.elf</CODE></br></br>Use these elf files to check NDEV operations.</p>
2684
2685<hr />
2686<h3><a name="note47" id="note47">Note 47 (ALL): Changed the NDEV that is the target of operations.</a></h3>
2687<p>This version of the SDK runs on NDEV Version 2.0 only. NDEV Version 1.x is not supported.</p>
2688
2689<hr />
2690<h3><a name="note46" id="note46">Note 46 (ALL): Changed the build target to RVL.</a></h3>
2691<p>The build target has been changed to RVL.</p>
2692<p>Although the SDK still includes the RVL0 target inherited from SDK Version 1.0, the use of RVL0 is not recommended. Be sure to use RVL.</p>
2693
2694<hr />
2695<h3><a name="note45" id="note45">Note 45 (MIX): Corrected a problem with setting AuxB and AuxC controllers in DPL2 mode.</a></h3>
2696<p>The Revolution audio library can use Aux A through Aux C in stereo/surround mode. It can also use Aux A and Aux B in DPL2 mode. However, an error was returned for Aux B (but not for Aux C) when calling MIX library functions (such as <CODE>MIXSetAuxA()</CODE> and others) to control controllers Aux A through Aux C in DPL2 mode.</p>
2697<p>This problem has been corrected.</p>
2698
2699<hr />
2700<h3><a name="note44" id="note44">Note 44 (KPAD): Changed the module name, and added support for UI tool Version 4.</a></h3>
2701<p>The KPAD library <CODE>kpad[D].a</CODE>, supported by UI Tool Version 3, was renamed <CODE>kpadEmu[D].a</CODE>. In addition, the module name of the corresponding demo program was changed from <CODE>kpaddemo</CODE> to <CODE>kpadEmudemo</CODE>.</p>
2702<p>
2703<CODE>kpad[D].a</CODE> and <CODE>kpaddemo</CODE>, found in the SDK Version 2.0, are supported in UI Tool Version 4.</p>
2704
2705<hr />
2706<h3><a name="note43" id="note43">Note 43 (WPAD): Added support for using the Wii Remote (both Bluetooth wired/wireless versions).</a></h3>
2707<p>A Wii Remote equivalent to the product version is now available. This allows development under a more realistic environment. Changes are as follows:</p>
2708<ul>
2709<li>Hardware</li>
2710<p>
2711The following are included in NDEV Version 2.0:
2712<ul>
2713<li>Bluetooth module</li>
2714<li>Two Bluetooth-version Wii Remotes</li>
2715<li>Two Nunchuks</li>
2716<li>One Sensor Bar for the Pointer</li>
2717</ul>
2718</p>
2719<li>Software</li>
2720<p>
2721The following are included in the SDK Version 2.0:
2722<ul>
2723<li>Bluetooth-compatible WPAD library</li>
2724<li>Bluetooth-compatible WPAD demo</li>
2725<li>Revised manual pages for the WPAD library</li>
2726</ul>
2727</p>
2728<li>Setup</li>
2729<p>
2730This section describes simple setup procedures.<br>For details, see RVL-ControllerHardwareOverview.pdf and RVL-ControllerSetup.pdf.
2731</p>
2732  <ol>
2733<li>Checking the Wii Remote</li>
2734<p>
2735Check whether the included Wii Remotes are wired or wireless versions. Set the BT Mode switch on the rear panel of the NDEV accordingly. Set the switch to the right if they are wired or to the left if they are wireless. In addition, be sure to connect them to the connectors on the left side of the NDEV if they are wired. It makes no difference which of the four connectors are used. <B>Note:</B> Because a coaxial cable is used for wired remotes, Bluetooth technology is used for both types.
2736</p>
2737<li>Placing the Sensor Bar</li>
2738<p>
2739The Sensor Bar connector is located above the AV connector on the rear panel of the NDEV. Connect the Sensor Bar to this connector. We recommend that you place the Sensor Bar directly above or below the television screen.
2740</p>
2741<li>Registration</li>
2742<p>The included Wii Remotes have not been paired with the NDEV. To use the Wii Remotes, you must pair them, whether they are wired or wireless.
2743    </p>
2744<p>
2745For a Wii Remote and Wii console to use wireless communication, they must be paired first so that communication does not occur with other pieces of hardware that are within wireless range. The Wii console can start pairing in the middle of an application. To pair Wii Remotes, press SYNCHRO on the front panel of the Wii console. When SYNCHRO is pressed, the Wii console searches for a Wii Remote waiting to be paired. The duration of the search varies as given below depending on the number of Wii Remotes currently attempting communication.
2746</p>
2747<table>
2748<tr><td>0 or 1</td><td>:</td><td>5 seconds</td></tr>
2749<tr><td>2</td><td>:</td><td>10 seconds</td></tr>
2750<tr><td>3</td><td>:</td><td>20 seconds</td></tr>
2751</table>
2752<p>
2753In addition, the search ends when the number of communicating Wii Remotes and the number of discovered Wii Remotes reaches 4.
2754</p>
2755<p>
2756While the Wii console is searching, be sure to press SYNCHRO inside the battery cover of the Wii Remote. The Wii Remote enters normal pairing wait status when SYNCHRO is pressed. The Player LED of the Wii Remote flashes during pairing. After a short time, pairing will finish and only one of the four Player LEDs will be lit.
2757</p>
2758</ol>
2759<li>Known Issues</li>
2760  <ul>
2761<li>Pairing with Multiple Wii Remotes</li>
2762<p>
2763Normal pairing with the fourth Wii Remote takes a relatively long time. In addition, sometimes pairing with another Wii Remote is suddenly lost. This is due to a problem with the driver. The problem should be resolved in the next release. We recommend using three or fewer remotes until the next release.
2764</p>
2765<li>Hot Connecting Nunchuks</li>
2766<p>
2767Nunchuks support hot connections. However, in rare cases, Wii Remotes suddenly become unresponsive when a Nunchuk is hot-swapped. This problem should be resolved in the next release. We recommend connecting and disconnecting Nunchuks while the Wii Remotes are not paired.
2768</p>
2769<li>Reconnect Timeout</li>
2770<p>
2771A Wii Remote will disconnect when the battery is depleted or the Power Button is held down for one second. Pairing can be reestablished by pressing any of the buttons on the Wii Remote. However, reconnection takes about one minute if attempted immediately after disconnection. This problem will be resolved in the future. Until then, wait a few seconds after disconnecting before reconnecting.
2772</p>
2773<li>Speaker</li>
2774<p>
2775The speaker feature cannot be used with the current release. Plans call for this to be included in the next release.
2776</p>
2777<li>Sampling Demo</li>
2778<p>
2779This demo works only with Wii Remotes. Do not use Nunchuks.
2780</p>
2781</ul>
2782</ul>
2783</p>
2784
2785<hr />
2786<h3><a name="note42" id="note42">Note 42 (WPAD): Changed module names.</a></h3>
2787<p>The module name of the demo program <CODE>wpadEmu[D].a</CODE> in the UI Version 3 library has been changed from &quot;<CODE>wpaddemo</CODE>&quot; to &quot;<CODE>wpadEmudemo</CODE>.&quot;</p>
2788
2789<hr />
2790<h3><a name="note41" id="note41">Note 41 (WPAD): Enabled sharing of some member offsets of the WPADFSStatus structure by WPADStatus.</a></h3>
2791<p>The members in the <CODE>WPADFSStatus</CODE> structure that are also included in the <CODE>WPADStatus</CODE> structure now have the same offset from the start of the structure as they do in <CODE>WPADStatus</CODE>. Structures that include the same members as <CODE>WPADStatus</CODE>, including the new <CODE>WPADCLStatus</CODE>, will have the same offset, as well.</p>
2792
2793<hr />
2794<h3><a name="note40" id="note40">Note 40 (TOOL): Added a system menu to the boot program.</a></h3>
2795<p>A system menu was added to the boot program.</p>
2796<p>Holding down the Z Button on a GameCube controller while running any application opens the system menu. Various console settings can be selected from the system menu. For details, see &quot;Tool -&gt; NDEV System Menu&quot; in the manual.</p>
2797
2798<hr />
2799<h3><a name="note39" id="note39">Note 39 (TOOL): Revised the Revolution shell execution file (RVL_NDEV.bat).</a></h3>
2800<p>If <CODE>RVL_NDEV.bat</CODE> is run after updating the NDEV disk emulator, the development environment is reset. However, this processing could not be performed correctly when using the old <CODE>RVL_NDEV.bat</CODE>.</p>
2801<p>This problem has been corrected. Edit these batch files in the future.</p>
2802
2803<hr />
2804<h3><a name="note38" id="note38">Note 38 (AI): Corrected a problem with the hardware sampling rate converter.</a></h3>
2805<p>A problem was corrected with the hardware sampling rate converter included in the AI library.</p>
2806<p>In addition, conversion from 32&nbsp;kHz to 48&nbsp;kHz performed by Broadway inside the AI library has been temporarily deleted.</p>
2807
2808<hr />
2809<h3><a name="note37" id="note37">Note 37 (AX): Corrected a problem with the memory interface of the audio subsystem.</a></h3>
2810<p>A problem with the memory interface of the audio subsystem was corrected.</p>
2811<p>In addition, code for working around the problem that was provisionally implemented in the tool <CODE>dls1wt</CODE> has been deleted. The supplied wave tables have also changed. The following workaround is no longer needed:
2812<ul style="padding-left:16px;margin-left:16px">
2813<li>Assume a loop length of 256 bytes or more for each piece of audio data.</li>
2814</ul>
2815</p>
2816
2817<hr />
2818<h3><a name="note36" id="note36">Note 36 (AXFX): Changed the effect library.</a></h3>
2819<p>Significant changes have been made to the AX effect library (AXFX). Although the new effect library inherits all of the old functions, the following changes have been made:</p>
2820<p>
2821<ul style="padding-left:16px;margin-left:16px">
2822<li>High-quality reverb</li>
2823  <ul style="padding-left:16px;margin-left:16px">
2824<li>Although sound sources are mixed using the <CODE>mix</CODE> parameter, the sources themselves are omitted.<br>(This is due to the fact that, except for Aux buses, sound sources are already mixed.)<br>Mix has simply come to represent the output gain for reverb.</li>
2825<li>The <CODE>tempDisableFX</CODE> parameter has been eliminated. <B>Note:</B> Although this parameter must not be used under normal circumstances, it was used in the following demos: <CODE>axart3ddemo</CODE>, <CODE>axfilter</CODE>, <CODE>dpl2reverb</CODE>, and <CODE>seqdemo</CODE>.</li>
2826<li>The upper limit on <CODE>preDelay</CODE> has been eliminated. (Memory is now allocated in conjunction with <CODE>preDelay</CODE>.)</li>
2827  </ul>
2828<li>High-quality reverb (Dolby ProLogic version)</li>
2829  <ul style="padding-left:16px;margin-left:16px">
2830<li>Although sound sources are mixed using the <CODE>mix</CODE> parameter, the sources themselves are omitted. (This is due to the fact that, except for Aux buses, sound sources are already mixed.)<br>Mix has simply come to represent the output gain for reverb.</li>
2831<li>The parameter <CODE>crosstalk</CODE> can now be used just as with past versions.</li>
2832<li>The <CODE>tempDisableFX</CODE> parameter has been eliminated. <B>Note:</B> Although this parameter must not be used under normal circumstances, it was used in the following demos: <CODE>axart3ddemo</CODE>, <CODE>axfilter</CODE>, <CODE>dpl2reverb</CODE>, and <CODE>seqdemo</CODE>.</li>
2833<li>The upper limit on <CODE>preDelay</CODE> has been eliminated. (Memory is now allocated in conjunction with <CODE>preDelay</CODE>.)</li>
2834  </ul>
2835<li>Standard reverb</li>
2836 <ul style="padding-left:16px;margin-left:16px">
2837<li>Although sound sources are mixed using the <CODE>mix</CODE> parameter, the sources themselves are omitted. (This is due to the fact that, except for Aux buses, sound sources are already mixed.)<br>Mix has simply come to represent the output gain for reverb.</li>
2838<li>The <CODE>tempDisableFX</CODE> parameter has been eliminated. <B>Note:</B> Although this parameter must not be used under normal circumstances, it was used in the following demos: <CODE>axart3ddemo</CODE>, <CODE>axfilter</CODE>, <CODE>dpl2reverb</CODE>, and <CODE>seqdemo</CODE>.</li>
2839<li>The upper limit on <CODE>preDelay</CODE> has been eliminated. (Memory is now allocated in conjunction with <CODE>preDelay</CODE>.)</li>
2840  </ul>
2841<li>Chorus</li>
2842 <ul style="padding-left:16px;margin-left:16px">
2843<li>Operations have changed so that memory is deallocated once when changing parameters using <CODE>AXFXChorusSettings</CODE>. (This is to standardize similar specifications with other effecters.)</li>
2844<li>A larger <CODE>baseDelay</CODE> than previously possible can now be used. <br>(old : 5 - 15 ms --&gt; new : 0.1 - 50 ms)</li>
2845<li>An even larger variation value than previously possible can now be used. <br>(old : 0 - 5 ms --&gt; new : 0 - 50 ms) <br>However, an error results if variation exceeds <CODE>baseDelay</CODE>.</li>
2846<li>The LFO has been changed from a line to a sine curve.</li>
2847<li>The memory size has increased in line with the expansion of <CODE>baseDelay</CODE> and variation values. <br>(old : 5,760 bytes --&gt; new : 38,400 bytes)</li>
2848  </ul>
2849</ul>
2850Check sound quality, and continue to use.
2851</p>
2852<p>The following functions were also added to the new effect library:
2853<ul style="padding-left:16px;margin-left:16px">
2854<li>Dolby ProLogic II versions of the standard reverb, chorus, and delay functions were added.</li>
2855<li>Effecters using extended features were added.</li>
2856<li>Demo programs that use effectors with extended features were added.</li>
2857</ul>
2858Plans call for manuals related to these additional features to be included in future releases.</p>
2859<p><B>Note: </B>Optimization has not yet been applied to the new effect library. As a result, it requires about twice the CPU performance, compared to conventional effects.</p>
2860<p>Plans call for an optimized version to be included in future releases.</p>
2861
2862<hr />
2863<h3><a name="note35" id="note35">Note 35 (DVD): Changed the DVDCheckDisk function from synchronous to asynchronous.</a></h3>
2864<p>The synchronous function <CODE>DVDCheckDisk</CODE> was changed to an asynchronous function in line with changes to the device driver. The previous version of the <CODE>DVDCheckDisk</CODE> function was deleted. Be sure to use <CODE>DVDCheckDiskAsync</CODE> when getting disc ID information.</p>
2865
2866<hr />
2867<h3><a name="note34" id="note34">Note 34 (DVD): Enabled the automatic FATAL message mode by default.</a></h3>
2868<p>The DVD library now provides a feature that allows error messages to be displayed when <CODE>FATAL</CODE> errors occur. This feature is now enabled by default.</p>
2869<p>To use your own <CODE>FATAL</CODE> messages, call <CODE>DVDSetAutoFatalMessaging(FALSE)</CODE> at the start of your application.</p>
2870
2871<hr />
2872<h3><a name="note33" id="note33">Note 33 (SC): Added the SC library.</a></h3>
2873<p>The SC library references and changes console settings, such as the language and progressive scan mode settings. Only referencing is possible for the following settings.</p>
2874<p>At the present time, specifications for console settings are not firmly established. Be aware that all settings may be initialized in a future version.</p>
2875
2876<hr />
2877<h3><a name="note32" id="note32">Note 32 (VI): PAL development</a></h3>
2878<p>PAL development is now possible.</p>
2879<p>
2880Launch the NDEV system menu, and set Video Mode to PAL. After setting Video Mode to PAL, the output below will appear on the console when an application is run. This indicates that the system has successfully switched to PAL mode.<p>
2881<p>
2882--- NDEV BOOT PROGRAM v1.0 (DEVELOPMENT MODE: PAL) ---
2883</p>
2884<p>
2885The following demo performs a simple PAL display: <br>===================================================== <br>RVL_SDK/bin/demos/videmo/viewer_PAL_INT[D].elf <br>=====================================================
2886</p>
2887<p>For details on the NDEV system menu, see &quot;NDEV System Menu&quot; in &quot;Tools&quot; in the <I>Revolution Function Reference Manual</I>.</p>
2888<p>The following video cables can be used during PAL development: <br> - Stereo AV cables (same for NTSC, PAL, and MPAL)<br>- Component cables<br>- D-Terminal cables (not sold in Europe)<br>- RGB cables<br>=========================================================== <br><CODE>Note:</CODE> D-Terminal cables or component cables are required when using progressive scan mode. The television must also support progressive scan mode. <B>Note:</B> S-Video cables cannot be used.
2889</p>
2890
2891<hr />
2892<h3><a name="note31" id="note31">Note 31 (VI): Added progressive scan mode for PAL, EURGB60, and MPAL.</a></h3>
2893<p>Progressive scan mode is now possible for PAL, EURGB60, and MPAL television systems. See the demo <CODE>/build/demos/videmo/src/moving.progressive.c</CODE>.</p>
2894
2895<hr />
2896<h3><a name="note30" id="note30">Note 30 (VI): Added a support function for switching progressive mode.</a></h3>
2897<p>A function for checking the timing of the vertical sync interrupt has been added. This function can be used for testing when switching from interlaced to progressive scan.</p>
2898<p>See the demo <CODE>/build/demos/videmo/src/smp-onetri_Progressive.c</CODE>.</p>
2899
2900<hr />
2901<h3><a name="note29" id="note29">Note 29 (OS): Temporarily deleted the OSExec function.</a></h3>
2902<p>A problem was found with <CODE>OSExec</CODE>, so it has temporarily been removed from this release. Plans call for future support in a future release.</p>
2903
2904<hr />
2905<h3><a name="note28" id="note28">Note 28 (OS): Added a MEM2 memory size simulation feature.</a></h3>
2906<p>A function for emulating the memory size of <CODE>MEM2</CODE> was added.</p>
2907<p>This can be reflected in the application's <CODE>MEM2</CODE> Arena by running <CODE>setsmem2size</CODE> before loading an application. For details, see &quot;setsmem2size&quot; under &quot;Tools&quot; in the <I>Function Reference Manual</I>.</p>
2908
2909<hr />
2910<h3><a name="note27" id="note27">Note 27 (OS): Changed OSInit so that it checks the Apploader target.</a></h3>
2911<p>Although the RVL target was added to the SDK Version 2.0, a separate Apploader must be used for the RVL and RVL0 targets. If the Apploader and application target differ, the application terminates with an error inside <CODE>OSInit</CODE>. Be sure to use the correct Apploader.</p>
2912<p>The Apploader can easily be changed by editing the DDF file.
2913<ul style="padding-left:16px;margin-left:16px">
2914<li>Example Setting for an RVL Target<br> <code>[Input]<br>LDRFileName=&quot;$(REVOLUTION_SDK_ROOT)\RVL\boot\apploader.img&quot;<br></code>
2915  </li>
2916<li>Example Setting for an RVL0 Target<br> <code>[Input]<br>LDRFileName=&quot;$(REVOLUTION_SDK_ROOT)\RVL0\boot\apploader.img&quot;<br></code>
2917</li>
2918</ul>
2919</p>
2920
2921<hr />
2922<h3><a name="note26" id="note26">Note 26 (OS): Changed the OS_CORE_CLOCK and OS_BUS_CLOCK default values in the os.h header file.</a></h3>
2923<p>The default values for the constants <CODE>OS_CORE_CLOCK</CODE> and <CODE>OS_BUS_CLOCK</CODE> located in <CODE>/include/revolution/os.h</CODE> were changed.</p>
2924<p>
2925In the past, these constants used the same default values as for GameCube.
2926</p>
2927<p><B>Note: </B>Operations may vary with Windows tools independently created by developers or when the pre-processor macro WIN32 has been defined and this header included. Therefore, be sure to re-build these applications.</p>
2928
2929<hr />
2930<h3><a name="note25" id="note25">Note 25 (GX): Corrected a problem with the TEV compare feature.</a></h3>
2931<p>A hardware bug prevented rendering from being performed properly. This occurred when, out of all the TEV operations that can be specified using <CODE>GXSetTevColorOp</CODE> and <CODE>GXSetTevAlphaOp</CODE>, <CODE>GX_TEV_COMP_GR16_GT</CODE> or <CODE>GX_TEV_COMP_BGR24_GT</CODE> are specified for the <CODE>op</CODE> argument.</p>
2932<p>
2933This problem was corrected in NDEV Version 2.0.</p>
2934
2935<hr />
2936<h3><a name="note24" id="note24">Note 24 (GX): Changed the ASSERT of the FIFO get function to a warning message.</a></h3>
2937<p>If the FIFO read pointer is not idle when <CODE>GXGetCPUFifo()</CODE> or <CODE>GXGetGPFifo()</CODE> are running in the debug version of the GX library, execution stops completely with an <CODE>ASSERT</CODE> message if the GX Warning Level is set to <CODE>GX_WARN_SEVERE</CODE> or higher. However, since there is no problem with actual operations, specifications have been changed so that only a warning message is displayed when the GX Warning Level is set to <CODE>GX_WARN_MEDIUM</CODE> or higher.</p>
2938<p>In addition, although it is possible that the same sort of <CODE>ASSERT</CODE> stop may occur when running <CODE>GXBeginDisplayList()</CODE>, this change was made because the problem was simply due to problems with the library.</p>
2939
2940<hr />
2941<h3><a name="note23" id="note23">Note 23 (NAND): Added the NAND library.</a></h3>
2942<p>The NAND library is used to access the hierarchical file system configured in Wii NAND console memory.</p>
2943
2944<hr />
2945<h3><a name="note22" id="note22">Note 22 (HIO2): Added a description to the HIO2 function reference page.</a></h3>
2946<p>Added an &quot;Introduction&quot; page and a description of callback functions to the HIO2 function reference page.</p>
2947
2948<hr />
2949<h3><a name="note21" id="note21">Note 21 (AR, ARQ): Deleted the ar.h and the arq.h header files.</a></h3>
2950<p>Unlike the GameCube, there is no ARAM built into the Revolution platform. The header files that contained code for ARAM-related functions (<CODE>/include/revolution/ar.h</CODE> and <CODE>/include/revolution/arq.h</CODE>) have therefore been deleted.</p>
2951
2952<hr />
2953<h3><a name="note20" id="note20">Note 20 (ARC): Added the ARC library (archiver).</a></h3>
2954<p>
2955The ARC library is a utility for accessing multiple files located on disk as a unit. This library is made up of the archive file creation tool (darch) used on the PC and libraries for accessing archive files (<CODE>arc.a</CODE> and <CODE>arcD.a</CODE>) on the Revolution platform. The ARC library source code has been released.
2956</p>
2957
2958<hr />
2959<h2 style="line-height: 0"><a name="20060322p2" id="20060322p2">* 2006/03/22 SDK Version 1.0 Patch 2</a> <div style="text-align: right">(2006/04/18)</div></h2><hr />
2960<h3><a name="note19" id="note19">Note 19 (AXART): Corrected the update formula for each LFO frame.</a></h3>
2961<p>
2962The LFO curve was not smooth due to an error in the update formula for each LFO frame. This problem has been corrected.
2963</p>
2964
2965<hr />
2966<h3><a name="note18" id="note18">Note 18 (AXART): Corrected a problem that prevented the update amount for each LFO frame from corresponding to the frame length (3&nbsp;ms) in the new AX library.</a></h3>
2967<p>
2968The update amount for each LFO frame did not support the frame length (3&nbsp;ms) of the new AX library. As a result, pitch/volume modulation was faster than set because the frame length (5&nbsp;ms) of the old AX library was still supported. This problem has been corrected.
2969</p>
2970
2971<hr />
2972<h3><a name="note17" id="note17">Note 17 (HIO2): Corrected a problem that prevented the HIO2ReadAsync function calls on the host side from returning on rare occasions</a>.</h3></h3>
2973<p><CODE>HIO2ReadAsync</CODE> function calls in the HIO2 library on the host side did not return on rare occasions.
2974</p>
2975<p>
2976In addition, performance has been improved when calling <CODE>HIO2ReadAsync</CODE> and <CODE>HIO2WriteAsync</CODE> in succession.
2977</p>
2978
2979<hr />
2980<h3><a name="note16" id="note16">Note 16 (DOC): Added notes to section 2.4, Error Codes, in the <I>PAD Library Programmer Guide</I></a></h3></h3>
2981<p>During periods where origin information is being reset for the GameCube Controller, the <CODE>err</CODE> member of <CODE>PADStatus</CODE> (which can be obtained from the <CODE>PADRead</CODE> function) is set to <CODE>PAD_ERR_NO_CONTROLLER</CODE>.</p>
2982
2983<hr />
2984<h2 style="line-height: 0"><a name="20060322p1" id="20060322p1">* 2006/03/22 SDK Version 1.0 Patch 1</a> <div style="text-align: right">(2006/04/07)</div></h2><hr />
2985<h3><a name="note15" id="note15">Note 15 (GX): Added an ASSERT check for attempts to place a FIFO in the MEM2 region</a>.</h3>
2986<p>Specifications have changed under the debug version of the GX library so that any attempt to place a GX FIFO in the <CODE>MEM2</CODE> region (an area where a GX FIFO normally must not be placed) using the <CODE>GXSetGPFifo()</CODE> function is stopped by an <CODE>ASSERT</CODE> check.
2987</p>
2988
2989<hr />
2990<h3><a name="note14" id="note14">Note 14 (OS): Added support for an external main memory 64&nbsp;MB environment.</a></h3>
2991<p>Previously, applications built using the SDK Version 1.0 could run only in an environment with 128&nbsp;MB of external main memory for development tools. This has been corrected so that they can run in an environment with 64&nbsp;MB of external main memory.</p>
2992
2993<hr />
2994<h3><a name="note13" id="note13">Note 13 (OS): Increased the speed of clearing the arena when using OSInit().</a></h3>
2995<p>The speed at which the <CODE>MEM1/MEM2</CODE> arena is cleared inside the <CODE>OSInit()</CODE> function has been increased.</p>
2996
2997<hr />
2998<h3><a name="note12" id="note12">Note 12 (OS): Added a 7&nbsp;MB size restriction on programs loaded using Apploader.</a></h3>
2999<p>Memory beyond address 0x8070 0000 is now reserved for use by the system when an application is launched. Although this restriction may be eased in the future, for the time being, any attempt to run an application located in memory beyond 0x8070 0000 sets off an error in the Apploader.</p>
3000
3001<hr />
3002<h3><a name="note11" id="note11">Note 11 (MAN): Corrected links on the top page.</a></h3>
3003<p>A problem with a link on the top page of the <I>Function Reference Manual</I> has been corrected. Clicking &quot;Standard controller high-level library (KPAD)&quot; &gt; &quot;Function list&quot; in the frame on the left side caused a list of WPAD functions to be displayed.</p>
3004
3005<hr />
3006<h3><a name="note10" id="note10">Note 10 (MAN): Changed the description of the hio2 sample demos.</a></h3>
3007<p>The description of hio2 sample demos was changed so that hio2demo PC-side programs are started from bash, called from <CODE>RVL_NDEV.bat</CODE>.
3008</p>
3009
3010<hr />
3011<h3><a name="note9" id="note9">Note 9 (EXI): Improved the transfer rate of the HIO2 library and the OSReport function.</a></h3>
3012<p>The rate of communication of the HIO2 library and the <CODE>OSReport</CODE> function was slower than in the original specifications. This problem has been corrected.</p>
3013
3014<hr />
3015<h3><a name="note8" id="note8">Note 8 (HIO2): Corrected a problem with HIO2ReadStatus (RVL side).</a></h3>
3016<p><CODE>HIO2_STATUS_RX</CODE> was not set, even when sending mail was disabled by the <CODE>HIO2ReadStatus</CODE> function (RVL side). This problem has been corrected.
3017</p>
3018
3019<hr />
3020<h3><a name="note7" id="note7">Note 7 (DOC): Debugged pre-built sample demos.</a></h3>
3021<p>You must rebuild in each separate environment to debug pre-built sample demos included in the Revolution SDK.</p>
3022
3023<hr />
3024<h3><a name="note6" id="note6">Note 6 (DOC): Added NDEV DIP switch settings.</a></h3>
3025<p>Be sure that all NDEV DIP switches listed in the <I>Revolution Development Environment Quick Start Guide</I> are turned on. The description of this precaution was changed.</p>
3026
3027<hr />
3028<h3><a name="note5" id="note5">Note 5 (MEM): Released MEM library source code.</a></h3>
3029<p>
3030The MEM library source code has been released.
3031</p>
3032
3033<hr />
3034<h3><a name="note4" id="note4">Note 4 (MEM): Eliminated the alignment restriction for memory block allocation.</a></h3>
3035<p>
3036Previously, the upper limit on the alignment specification for memory blocks using <CODE>MEMAllocFromExpHeapEx()</CODE> or <CODE>MEMAllocFromFrmHeapEx()</CODE> was 128&nbsp;bytes. This restriction has been eliminated.
3037</p>
3038
3039<hr />
3040<h3><a name="note3" id="note3">Note 3 (MEM): Corrected a problem that prevented freeing unused memory normally from the heap.</a></h3>
3041<p>
3042It was not possible to free unused memory normally from the heap using the <CODE>MEMAdjustExpHeap()</CODE> function when there was only one free region.
3043</p>
3044
3045<hr />
3046<h3><a name="note2" id="note2">Note 2 (KPAD): Corrected an error in the formula for calculating the acceleration of the Nunchuk.</a></h3>
3047<p>An incorrect macro constant was used for the value of 1&nbsp;g output by the acceleration sensor on the Nunchuk. There was thus a risk that acceleration sensor values calculated by the KPAD library might be in error. This problem has been corrected.</p>
3048
3049<hr />
3050<h2 style="line-height: 0"><a name="20060322" id="20060322">* 2006/03/22 SDK Version 1.0</a> <div style="text-align: right">(2006/03/22)</div></h2><hr />
3051<h3><a name="note1" id="note1">Note 1: SDK Version 1.0 Initial Release.</a></h3>
3052<p>Revolution SDK Version 1.0 is the first SDK to support Revolution development.</p>
3053
3054<hr />
3055<hr />
3056<p style="text-align: right">Nintendo Technical Support Center</p>
3057
3058<hr><p>CONFIDENTIAL</p></body>
3059</html>
3060