1<HTML>
2<HEAD>
3<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
4<META http-equiv="Content-Style-Type" content="text/css">
5<TITLE>CTR-SDK Change Log</TITLE>
6</HEAD>
7<BODY style="padding-bottom: 1600px;">
8<HR>
9<H1>CTR-SDK Change Log</H1>
10<HR>
11<DL>
12<DT>
13<A href="#sdk_0_13_2_Release">CTR-SDK 0.13.2 Release</A> (2010/10/07)</DT>
14<DD><A href="#note50-01">Note 50-01: (FS) Increased speed of opening files from ROM archives [SDK]</A></DD>
15<DD><A href="#KnownIssues_0_13_2_Release">Known Issues in the SDK 0.13.2 Release</A></DD>
16</DL>
17<DL>
18<DT>
19<A href="#sdk_0_13_1_Release">CTR-SDK 0.13.1 Release</A> (2010/09/30)</DT>
20<DD><A href="#note49-01">Note 49-01: (CAMERA) Correction for change log entry regarding processing added to stop the cameras when the system is closed [SDK]</A></DD>
21<DD><A href="#note49-02">Note 49-02: (DevEnv) Correction for change log entries for known bugs in CTR-SDK 0.13 SystemUpdater [SDK]</A></DD>
22<DD><A href="#note49-03">Note 49-03: (SND) Fixed bug related to creating sound threads on core 1 in NintendoWare for CTR [SDK]</A></DD>
23<DD><A href="#note49-04">Note 49-04: (SND) Fixed bug that caused execution to enter an endless loop when <CODE>FreeVoice</CODE> was used within the voice drop callback [SDK]</A></DD>
24<DD><A href="#KnownIssues_0_13_1_Release">Known Issues in the SDK 0.13.1 Release</A></DD>
25</DL>
26<DL>
27<DT>
28<A href="#sdk_0_13_0_Release">CTR-SDK 0.13.0 Release</A> (2010/09/28)</DT>
29<DD><A href="#note48-01">Note 48-01: (AC) Added the <CODE>nn::ac::LinkLevel GetLinkLevel</CODE> function [SDK]</A></DD>
30<DD><A href="#note48-02">Note 48-02: (APPLET) Added support for HOME Button detection and transitioning to the HOME Menu [SDK]</A></DD>
31<DD><A href="#note48-03">Note 48-03: (BOSS) Added the BOSS library [SDK|SystemUpdater]</A></DD>
32<DD><A href="#note48-04">Note 48-04: (CAMERA) Revised the <CODE>SetNoiseFilter</CODE> function [SDK|SystemUpdater]</A></DD>
33<DD><A href="#note48-05">Note 48-05: (CAMERA) Added a function to change the sensor window used for auto white balancing [SDK|SystemUpdater]</A></DD>
34<DD><A href="#note48-06">Note 48-06: (CARD) Revised media selector control after using HostIO CardSPI [SDK]</A></DD>
35<DD><A href="#note48-07">Note 48-07: (CEC) Changed the StreetPass library API [SDK|SystemUpdater]</A></DD>
36<DD><A href="#note48-08">Note 48-08: (CEC) Operations necessary to communicate with the same partner more than once [SDK]</A></DD>
37<DD><A href="#note48-09">Note 48-09: (CFG) Revised the <CODE>GetLanguageCodeA2</CODE> function [SDK]</A></DD>
38<DD><A href="#note48-10">Note 48-10: (CFG) Revised the <CODE>GetSimpleAddress</CODE> function [SDK]</A></DD>
39<DD><A href="#note48-11">Note 48-11: (CFG) Added function to get the RTC offset value [SDK]</A></DD>
40<DD><A href="#note48-12">Note 48-12: (CX) Added the CX library [SDK]</A></DD>
41<DD><A href="#note48-13">Note 48-13: (DLP) Changed the method for embedding child programs in parent programs [SDK|SampleDemos]</A></DD>
42<DD><A href="#note48-14">Note 48-14: (DLP) Made revisions involving identification of child devices [SDK|SampleDemos]</A></DD>
43<DD><A href="#note48-15">Note 48-15: (DevEnv) Removed the pragma used for the RVCT warning bug workaround [SDK]</A></DD>
44<DD><A href="#note48-16">Note 48-16: (DevEnv) Made some <CODE>nn::Result</CODE> constructors private [SDK]</A></DD>
45<DD><A href="#note48-17">Note 48-17: (DevEnv) Changed the encoding of <CODE>types.h</CODE> [SDK]</A></DD>
46<DD><A href="#note48-18">Note 48-18: (DevEnv) Changed compiler and linker options [SDK]</A></DD>
47<DD><A href="#note48-19">Note 48-19: (DevEnv) Updated the supported version of RVCT [SDK]</A></DD>
48<DD><A href="#note48-20">Note 48-20: (FND) Revised behavior when <CODE>Allocate</CODE> of an <CODE>ExpHeap</CODE> fails [SDK]</A></DD>
49<DD><A href="#note48-21">Note 48-21: (FND) Revised behavior of <CODE>ExpHeap</CODE> constructor when given no arguments [SDK]</A></DD>
50<DD><A href="#note48-22">Note 48-22: (FND) Revised the range of specifiable alignments in <CODE>ExpHeap::Allocate</CODE> [SDK]</A></DD>
51<DD><A href="#note48-23">Note 48-23: (FND) Revised <CODE>ExpHeapBase::GetDirecitionOf</CODE> to <CODE>GetDirectionOf</CODE> [SDK]</A></DD>
52<DD><A href="#note48-24">Note 48-24: (FND) Strengthened check when freeing expanded heap memory [SDK]</A></DD>
53<DD><A href="#note48-25">Note 48-25: (FONT) Added the Font library [SDK]</A></DD>
54<DD><A href="#note48-26">Note 48-26: (FRIENDS) Changed the value of <CODE>MODE_DESCRIPTION_SIZE</CODE> [SDK]</A></DD>
55<DD><A href="#note48-27">Note 48-27: (FRIENDS) Deleted part of the <CODE>NotificationType</CODE> enumerator [SDK]</A></DD>
56<DD><A href="#note48-28">Note 48-28: (FRIENDS) Eliminated the notification sent when a game description is updated [SDK|SystemUpdater]</A></DD>
57<DD><A href="#note48-29">Note 48-29: (FRIENDS) Changed the value of the <CODE>MII_SIZE</CODE> constant [SDK]</A></DD>
58<DD><A href="#note48-30">Note 48-30: (FS) Changed the specifications of functions that get SD Card insertion/removal events [SDK]</A></DD>
59<DD><A href="#note48-31">Note 48-31: (FS) Fixed bug that prevented the <CODE>fs::Directory::Read</CODE> function from getting all entries [SDK]</A></DD>
60<DD><A href="#note48-32">Note 48-32: (FS) Added the <CODE>nn::fs::GetFileSystemSize</CODE> function [SDK]</A></DD>
61<DD><A href="#note48-33">Note 48-33: (FS) Added the <CODE>nn::fs::MountSdmc</CODE> function [SDK]</A></DD>
62<DD><A href="#note48-34">Note 48-34: (FS) Added the <CODE>nn::fs::hio::GetHioRequiredMemorySize</CODE> function [SDK]</A></DD>
63<DD><A href="#note48-35">Note 48-35: (FS) Added a write function to <CODE>nn::fs::hio::HioArchive</CODE> [SDK]</A></DD>
64<DD><A href="#note48-36">Note 48-36: (FS) Added the <CODE>nn::hio::CTR::HostFile::SetSize</CODE> function [SDK]</A></DD>
65<DD><A href="#note48-37">Note 48-37: (FS) Added functions to get Game Card insertion/removal events and to get whether a Game Card is inserted [SDK]</A></DD>
66<DD><A href="#note48-38">Note 48-38: (FS) Changed length of filenames in save data and expanded save data to 16 characters [SDK]</A></DD>
67<DD><A href="#note48-39">Note 48-39: (GX) Updated the DMPGL documentation [SDK]</A></DD>
68<DD><A href="#note48-40">Note 48-40: (GX) Added the GR library [SDK]</A></DD>
69<DD><A href="#note48-41">Note 48-41: (GX) Updated PICA macro headers [SDK]</A></DD>
70<DD><A href="#note48-42">Note 48-42: (GX) Changed the off-limits range when placing display buffers in VRAM [SDK|SystemUpdater]</A></DD>
71<DD><A href="#note48-43">Note 48-43: (GX) Enabled polygon offsets when the W buffer is enabled [SDK]</A></DD>
72<DD><A href="#note48-44">Note 48-44: (GX) Changed the <CODE>glCopyTexImage2D</CODE> and <CODE>glCopyTexSubImage2D</CODE> functions [SDK]</A></DD>
73<DD><A href="#note48-45">Note 48-45: (GX) Fixed a bug in the <CODE>glPolygonOffset</CODE> function [SDK]</A></DD>
74<DD><A href="#note48-46">Note 48-46: (GX) Added the <CODE>nngxAddB2LTransferCommand</CODE> function [SDK]</A></DD>
75<DD><A href="#note48-47">Note 48-47: (GX) Added the <CODE>nngxAddBlockImageCopyCommand</CODE> function [SDK]</A></DD>
76<DD><A href="#note48-48">Note 48-48: (GX) Added the <CODE>nngxAddL2BTransferCommand</CODE> function [SDK]</A></DD>
77<DD><A href="#note48-49">Note 48-49: (GX) Added the <CODE>nngxAddMemoryFillCommand</CODE> function [SDK]</A></DD>
78<DD><A href="#note48-50">Note 48-50: (GX) Removed restrictions on the <SPAN class="argument">srcaddr</SPAN> and <SPAN class="argument">dstaddr</SPAN> arguments in the <CODE>nngxAddVramDmaCommand</CODE> function [SDK]</A></DD>
79<DD><A href="#note48-51">Note 48-51: (GX) Fixed bug in behavior when an invalid <SPAN class="argument">format</SPAN> argument was specified in the <CODE>nngxFilterBlockImage</CODE> function [SDK]</A></DD>
80<DD><A href="#note48-52">Note 48-52:(GX) Revised the types of arguments in the <CODE>nngxFilterBlockImage</CODE> and <CODE>nngxAddVramDmaCommand</CODE> functions [SDK]</A></DD>
81<DD><A href="#note48-53">Note 48-53: (GX) Added the <CODE>nngxGetAllocator</CODE> function [SDK]</A></DD>
82<DD><A href="#note48-54">Note 48-54: (GX) Fixed bug that caused <CODE>glViewport</CODE> function settings to not be applied if run immediately after running the <CODE>nngxInitialize</CODE> function [SDK]</A></DD>
83<DD><A href="#note48-55">Note 48-55: (GX) Added the <CODE>nngxSetGasAutoAccumulationUpdate</CODE> function [SDK]</A></DD>
84<DD><A href="#note48-56">Note 48-56: (GX) Fixed problem where the <CODE>nngxTransferLinearImage</CODE> function would stop on an assert [SDK]</A></DD>
85<DD><A href="#note48-57">Note 48-57: (GX) Fixed bug in delta value settings of lookup tables used for procedural texture RGBA mapping and noise modulation [SDK]</A></DD>
86<DD><A href="#note48-58">Note 48-58: (GX) Fixed bug in <CODE>glVertexAttribPointer</CODE> function when multiple vertex attributes have been arranged as an interleaved array [SDK]</A></DD>
87<DD><A href="#note48-59">Note 48-59: (GX) Deleted command that set the <CODE>0x101</CODE> register when logical operations are enabled [SDK]</A></DD>
88<DD><A href="#note48-60">Note 48-60: (HID) Deleted <CODE>ACCELEROMETER_PLAY_MODE_LOOSE</CODE> [SDK]</A></DD>
89<DD><A href="#note48-61">Note 48-61: (HID) Added functions that enable use of the gyro sensor [SDK]</A></DD>
90<DD><A href="#note48-62">Note 48-62: (HID) Revised the minimum and maximum values for clamping the Circle Pad [SDK]</A></DD>
91<DD><A href="#note48-63">Note 48-63: (HID) Added offset correction functions and axis rotation functions to the accelerometer library [SDK]</A></DD>
92<DD><A href="#note48-64">Note 48-64: (HIO) Added functions for transmittable sizes during serial communication [SDK]</A></DD>
93<DD><A href="#note48-65">Note 48-65: (JPEG) Added the <CODE>GetMpRegionsToBuildJpegData</CODE> function to the decoder [SDK]</A></DD>
94<DD><A href="#note48-66">Note 48-66: (JPEG) Added function that stops decoding [SDK]</A></DD>
95<DD><A href="#note48-67">Note 48-67: (JPEG) Added the BGR8 and ABGR8 pixel formats [SDK]</A></DD>
96<DD><A href="#note48-68">Note 48-68: (MATH) Changed the <CODE>nn::math::VEC3::DistanceSquare</CODE> function to a <CODE>const</CODE> function [SDK]</A></DD>
97<DD><A href="#note48-69">Note 48-69: (MATH) Fixed problem where copies of constants would be embedded in every object [SDK]</A></DD>
98<DD><A href="#note48-70">Note 48-70: (MATH) Fixed problem where embedded assembly language functions were not dead-stripped on a function-by-function level [SDK]</A></DD>
99<DD><A href="#note48-71">Note 48-71: (MIC) Changed access rights to memory that stores sampling results [SDK|SystemUpdater]</A></DD>
100<DD><A href="#note48-72">Note 48-72: (NDM) Enabled the network daemon and added a library to control it [SDK|SystemUpdater|SampleDemos]</A></DD>
101<DD><A href="#note48-73">Note 48-73: (NGC) Added specifications for the <CODE>CheckProfanityWords</CODE> function [SDK]</A></DD>
102<DD><A href="#note48-74">Note 48-74: (NGC) Added the <CODE>CountNumbers</CODE> function [SDK]</A></DD>
103<DD><A href="#note48-75">Note 48-75: (OS) Added the <CODE>GetRunnningTargetHardware</CODE> function [SDK]</A></DD>
104<DD><A href="#note48-76">Note 48-76: (OS) Added support for Sleep Mode [SDK|SystemUpdater]</A></DD>
105<DD><A href="#note48-77">Note 48-77: (OS) Added functions to get information about the amount of available memory [SDK|SystemUpdater]</A></DD>
106<DD><A href="#note48-78">Note 48-78: (PL) Added functions to get shared fonts [SDK]</A></DD>
107<DD><A href="#note48-79">Note 48-79: (PTM) Added library for power- and clock-related features [SDK]</A></DD>
108<DD><A href="#note48-80">Note 48-80: (RDT) Fixed bug when connecting [SDK]</A></DD>
109<DD><A href="#note48-81">Note 48-81: (RDT) Changed the behavior of state transitions [SDK]</A></DD>
110<DD><A href="#note48-82">Note 48-82:(SND) Added function that determines whether a file is a BCWAV file [SDK]</A></DD>
111<DD><A href="#note48-83">Note 48-83: (SND) Fixed bug where control would not return from the <CODE>nn::snd::Initialize</CODE> function [SDK]</A></DD>
112<DD><A href="#note48-84">Note 48-84: (SND) Changed the namespace of the SND library [SDK]</A></DD>
113<DD><A href="#note48-85">Note 48-85: (SND) Added functions to get information about dropped sound frames [SDK]</A></DD>
114<DD><A href="#note48-86">Note 48-86: (SOCKET) Eliminated <CODE>dummy_util</CODE> functions [SDK|SampleDemos]</A></DD>
115<DD><A href="#note48-87">Note 48-87: (TOOL) Extended the <CODE>Config</CODE> tool [SDK]</A></DD>
116<DD><A href="#note48-88">Note 48-88: (TOOL) Added features to the <CODE>DevMenu</CODE> [SDK]</A></DD>
117<DD><A href="#note48-89">Note 48-89: (TOOL) Added <CODE>FontConverter</CODE> tools [SDK]</A></DD>
118<DD><A href="#note48-90">Note 48-90: (TOOL) Created the <CODE>NetworkSetting</CODE> tool [SDK]</A></DD>
119<DD><A href="#note48-91">Note 48-91: (TOOL) Added items to RSF files [SDK]</A></DD>
120<DD><A href="#note48-92">Note 48-92: (TOOL) Fixed bug when parsing RSF files [SDK]</A></DD>
121<DD><A href="#note48-93">Note 48-93: (TOOL) Updated <CODE>ctr_TexturePackager32</CODE> [SDK]</A></DD>
122<DD><A href="#note48-94">Note 48-94: (TOOL) Changed <CODE>ctr_WaveConverter32.exe</CODE> [SDK]</A></DD>
123<DD><A href="#note48-95">Note 48-95: (TOOL) Added <CODE>ctr_compress</CODE> [SDK]</A></DD>
124<DD><A href="#note48-96">Note 48-96: (TOOL) Added <CODE>ctr_makebanner</CODE> [SDK|SampleDemos]</A></DD>
125<DD><A href="#note48-97">Note 48-97: (TOOL) Added <CODE>ctr_makeciaarchive32.exe</CODE> [SDK]</A></DD>
126<DD><A href="#note48-98">Note 48-98: (TOOL) Fixed bug with <CODE>-D</CODE> option in <CODE>ctr_makerom</CODE> [SDK]</A></DD>
127<DD><A href="#note48-99">Note 48-99: (TOOL) Added multi-core support to <CODE>ctr_makerom</CODE> [SDK]</A></DD>
128<DD><A href="#note48-100">Note 48-100: (TOOL) Added <CODE>ctr_makerom</CODE> options [SDK]</A></DD>
129<DD><A href="#note48-101">Note 48-101: (TOOL) Updated the shader assembler [SDK]</A></DD>
130<DD><A href="#note48-102">Note 48-102: (TOOL) Changed the default <CODE>UniqueId</CODE> [SDK]</A></DD>
131<DD><A href="#note48-103">Note 48-103: (TPL) Changed the definitions of the various <CODE>CtrTexFormat</CODE> formats [SDK]</A></DD>
132<DD><A href="#note48-104">Note 48-104: (UDS) Added the <CODE>nn::uds::AllowToSpectate</CODE> function [SDK]</A></DD>
133<DD><A href="#note48-105">Note 48-105: (UDS) Added members to the <CODE>nn::uds::ConnectionStatus</CODE> structure [SDK]</A></DD>
134<DD><A href="#note48-106">Note 48-106: (UDS) Changed the <CODE>nn::uds::EjectSpectator</CODE> function so that it can be certain of the ejection of spectators [SDK]</A></DD>
135<DD><A href="#note48-107">Note 48-107: (UDS) Added the <CODE>nn::uds::LinkLevel GetLinkLevel</CODE> function [SDK]</A></DD>
136<DD><A href="#note48-108">Note 48-108: (UDS) Added the <CODE>nn::uds::NetworkDescription::CanConnectAsSpectator</CODE> function [SDK]</A></DD>
137<DD><A href="#note48-109">Note 48-109: (UDS) Added function to create local communication IDs [SDK]</A></DD>
138<DD><A href="#note48-110">Note 48-110: (ULCD) Fixed bug in <CODE>StereoCamera</CODE> class constructor [SDK]</A></DD>
139<DD><A href="#note48-111">Note 48-111: (ULCD) Added support for <CODE>const</CODE> member functions in the <CODE>StereoCamera</CODE> class [SDK]</A></DD>
140<DD><A href="#note48-112">Note 48-112: (ULCD) Updated documents describing the ULCD library [SDK]</A></DD>
141<DD><A href="#note48-113">Note 48-113: (ULCD) Added flag to determine whether initialization has been performed [SDK]</A></DD>
142<DD><A href="#note48-114">Note 48-114: (UTIL) Added <CODE>util_Color.h</CODE>, <CODE>util_Rect.h</CODE>, and <CODE>util_Float24.h</CODE> [SDK]</A></DD>
143<DD><A href="#KnownIssues_0_13_0_Release">Known Issues in the SDK 0.13.0 Release</A></DD>
144</DL>
145<DL>
146<DT>
147<A href="#sdk_0_13_0_SystemUpdater">CTR-SDK 0.13.0 SystemUpdater</A> (2010/09/28)</DT>
148<DD><A href="#note47-01">Note 47-01: (AC) Revised the <CODE>Connect</CODE> and <CODE>ConnectAsync</CODE> functions [SystemUpdater]</A></DD>
149<DD><A href="#note47-02">Note 47-02: (AC) Revised the <CODE>ConnectCancelAsync</CODE> function [SystemUpdater]</A></DD>
150<DD><A href="#note47-03">Note 47-03: (AC) Revised the <CODE>DebugSetNetworkSetting1</CODE> function [SystemUpdater]</A></DD>
151<DD><A href="#note47-04">Note 47-04: (BOSS) Added the BOSS library [SDK|SystemUpdater]</A></DD>
152<DD><A href="#note47-05">Note 47-05: (CAMERA) Revised the <CODE>SetNoiseFilter</CODE> function [SDK|SystemUpdater]</A></DD>
153<DD><A href="#note47-06">Note 47-06: (CAMERA) Added processing to stop the cameras when the system is closed [SystemUpdater]</A></DD>
154<DD><A href="#note47-07">Note 47-07: (CAMERA) Added a function to change the sensor window used for auto white balancing [SDK|SystemUpdater]</A></DD>
155<DD><A href="#note47-08">Note 47-08: (CAMERA) Fixed bug in volume control during playback of the shutter sound [SystemUpdater]</A></DD>
156<DD><A href="#note47-09">Note 47-09: (CEC) Changed the StreetPass library API [SDK|SystemUpdater]</A></DD>
157<DD><A href="#note47-10">Note 47-10: (CFG) Revised the <CODE>GetBirthday</CODE> function [SystemUpdater]</A></DD>
158<DD><A href="#note47-11">Note 47-11: (DLP) Added debug function that forcibly downloads child programs [SystemUpdater]</A></DD>
159<DD><A href="#note47-12">Note 47-12: (DevEnv) Revised LCD backlight parameters [SystemUpdater]</A></DD>
160<DD><A href="#note47-13">Note 47-13: (DevEnv) Changed the startup sequence of test units [SystemUpdater]</A></DD>
161<DD><A href="#note47-14">Note 47-14: (FND) Fixed bug where the <CODE>nn::fnd::DateTime::GetNow</CODE> function would start returning invalid values a short time after the RTC surpassed 2099/12/31 [SystemUpdater]</A></DD>
162<DD><A href="#note47-15">Note 47-15: (FRIENDS) Eliminated the notification sent when a game description is updated [SDK|SystemUpdater]</A></DD>
163<DD><A href="#note47-16">Note 47-16: (FRIENDS) Updated server and recreated account information [SystemUpdater]</A></DD>
164<DD><A href="#note47-17">Note 47-17: (GX) Changed the off-limits range when placing display buffers in VRAM [SDK|SystemUpdater]</A></DD>
165<DD><A href="#note47-18">Note 47-18: (HID) Fixed sampling bug that occurred after recovery from Sleep Mode [SystemUpdater]</A></DD>
166<DD><A href="#note47-19">Note 47-19: (HID) Changed sampling values in cases where the system does not enter Sleep Mode when closed [SystemUpdater]</A></DD>
167<DD><A href="#note47-20">Note 47-20: (HTTP) Revised the <CODE>AddPostData***</CODE> functions [SystemUpdater]</A></DD>
168<DD><A href="#note47-21">Note 47-21: (HTTP) Revised the <CODE>GetHeaderField</CODE> function [SystemUpdater]</A></DD>
169<DD><A href="#note47-22">Note 47-22: (HTTP) Fixed Keep-Alive bug [SystemUpdater]</A></DD>
170<DD><A href="#note47-23">Note 47-23: (HTTP) Handled problem with Keep-Alive communication [SystemUpdater]</A></DD>
171<DD><A href="#note47-24">Note 47-24: (HTTP) Changed default size of communication buffers [SystemUpdater]</A></DD>
172<DD><A href="#note47-25">Note 47-25: (MCU) Revised the power LED and wireless LED [SystemUpdater]</A></DD>
173<DD><A href="#note47-26">Note 47-26: (MIC) Added processing to stop sampling when the system is closed [SystemUpdater]</A></DD>
174<DD><A href="#note47-27">Note 47-27: (MIC) Changed access rights to memory that stores sampling results [SDK|SystemUpdater]</A></DD>
175<DD><A href="#note47-28">Note 47-28: (NDM) Enabled the network daemon and added a library to control it [SDK|SystemUpdater|SampleDemos]</A></DD>
176<DD><A href="#note47-29">Note 47-29: (OS) Added support for Sleep Mode [SDK|SystemUpdater]</A></DD>
177<DD><A href="#note47-30">Note 47-30: (OS) Added functions to get information about the amount of available memory [SDK|SystemUpdater]</A></DD>
178<DD><A href="#note47-31">Note 47-31: (PTM) Revised the <CODE>GetBatteryLevel</CODE> function [SystemUpdater]</A></DD>
179<DD><A href="#note47-32">Note 47-32: (PTM) Added restrictions on the range of times for which alarms can be set [SystemUpdater]</A></DD>
180<DD><A href="#note47-33">Note 47-33: (TOOL) Fixed <CODE>DevMenu</CODE> import error [SystemUpdater]</A></DD>
181<DD><A href="#note47-34">Note 47-34: (TOOL) Fixed <CODE>DevMenu</CODE> bug [SystemUpdater]</A></DD>
182<DD><A href="#note47-35">Note 47-35: (TOOL) Added a tool for changing the region [SystemUpdater]</A></DD>
183<DD><A href="#note47-36">Note 47-36: (UDS) Fixed bug that caused execution to hang when the <CODE>EjectClient</CODE> function was run [SystemUpdater]</A></DD>
184<DD><A href="#note47-37">Note 47-37: (UDS) Fixed bug where sometimes the <CODE>NetworkDescriptionReader::GetNodeInformationList</CODE> function could not get the <CODE>NodeInformation</CODE> successfully [SystemUpdater]</A></DD>
185<DD><A href="#note47-38">Note 47-38: (UDS) Changed encryption key of <CODE>NodeInfomation</CODE> distributed by beacons [SystemUpdater]</A></DD>
186<DD><A href="#note47-39">Note 47-39: (UDS) Fixed bug that caused incorrect behavior when the <CODE>GetConnectionStatus</CODE> function was run frequently [SystemUpdater]</A></DD>
187<DD><A href="#KnownIssues_0_13_0_SystemUpdater">Known Issues with SystemUpdater in SDK Version 0.13.0</A></DD>
188</DL>
189<DL>
190<DT>
191<A href="#sdk_0_13_0_SampleDemos">CTR-SDK 0.13.0 Sample Demos</A> (2010/09/28)</DT>
192<DD><A href="#note46-01">Note 46-01: (APPLET) Added support for the HOME Button to <CODE>demo1</CODE> and <CODE>demo2</CODE> [SampleDemos]</A></DD>
193<DD><A href="#note46-02">Note 46-02: (BOSS) Added the <CODE>sample_nadl_simple</CODE> demo [SampleDemos]</A></DD>
194<DD><A href="#note46-03">Note 46-03: (CX) Added CX sample demos [SampleDemos]</A></DD>
195<DD><A href="#note46-04">Note 46-04: (DEMO) Revised initialization of the <CODE>lib_demo</CODE> library display buffer [SampleDemos]</A></DD>
196<DD><A href="#note46-05">Note 46-05: (DLP) Changed the method for embedding child programs in parent programs [SDK|SampleDemos]</A></DD>
197<DD><A href="#note46-06">Note 46-06: (DLP) Made revisions involving identification of child devices [SDK|SampleDemos]</A></DD>
198<DD><A href="#note46-07">Note 46-07: (FONT) Added sample demos [SampleDemos]</A></DD>
199<DD><A href="#note46-08">Note 46-08: (GX) Added the <CODE>DrawPrimitive</CODE> demo [SampleDemos]</A></DD>
200<DD><A href="#note46-09">Note 46-09: (JPEG) Added demos [SampleDemos]</A></DD>
201<DD><A href="#note46-10">Note 46-10: (NDM) Enabled the network daemon and added a library to control it [SDK|SystemUpdater|SampleDemos]</A></DD>
202<DD><A href="#note46-11">Note 46-11: (OS) Added support for Sleep Mode to <CODE>demo1</CODE> and <CODE>demo2</CODE> [SampleDemos]</A></DD>
203<DD><A href="#note46-12">Note 46-12: (PL) Added the <CODE>SharedFont</CODE> demo [SampleDemos]</A></DD>
204<DD><A href="#note46-13">Note 46-13: (SOCKET) Eliminated <CODE>dummy_util</CODE> functions [SDK|SampleDemos]</A></DD>
205<DD><A href="#note46-14">Note 46-14: (TOOL) Added <CODE>ctr_makebanner</CODE> [SDK|SampleDemos]</A></DD>
206<DD><A href="#note46-15">Note 46-15: (TPL) Added sample data for creating CTPK files [SampleDemos]</A></DD>
207<DD><A href="#note46-16">Note 46-16: (UDS) Fixed bug in <CODE>com_demo1</CODE> where communication data was not cleared after disconnection [SampleDemos]</A></DD>
208<DD><A href="#note46-17">Note 46-17: (UDS) Revised so that the <CODE>CreateLocalCommunicationId</CODE> function now creates the local communication IDs used in UDS demos [SampleDemos]</A></DD>
209<DD><A href="#note46-18">Note 46-18: (ULCD) Changed the minimum setting of the <CODE>Depth Level</CODE> variable[SampleDemos]</A></DD>
210<DD><A href="#KnownIssues_0_13_0_SampleDemos">Known Issues with SDK 0.13.0 Sample Demos</A></DD>
211</DL>
212<DL>
213<DT>
214<A href="#sdk_0_12_1_Release">CTR-SDK 0.12.1 Release</A> (2010/09/02)</DT>
215<DD><A href="#note45-01">Note 45-01: (SND) Fixed a bug in the <CODE>nn::snd::Voice::SetState</CODE> function [SDK]</A></DD>
216<DD><A href="#KnownIssues_0_12_1_Release">Known Issues in the SDK 0.12.1 Release</A></DD>
217</DL>
218<DL>
219<DT>
220<A href="#sdk_0_12_0_Release">CTR-SDK 0.12.0 Release</A> (2010/08/20)</DT>
221<DD><A href="#note44-01">Note 44-01: (CAMERA) Removed the <CODE>IsBufferError</CODE> function [SDK | System Updater]</A></DD>
222<DD><A href="#note44-02">Note 44-02: (CAMERA) Revised the <CODE>SetExposure</CODE> function [SDK | System Updater]</A></DD>
223<DD><A href="#note44-03">Note 44-03: (CAMERA) Changed processing within the <CODE>SynchronizeVsyncTiming</CODE> function [SDK | System Updater]</A></DD>
224<DD><A href="#note44-04">Note 44-04: (CAMERA) Added processing to compensate for individual system differences in white balance [SDK | System Updater]</A></DD>
225<DD><A href="#note44-05">Note 44-05: (CEC) Changed the Chance Encounter Communication library [SDK]</A></DD>
226<DD><A href="#note44-06">Note 44-06: (CFG) Added functions for converting country codes and other CTR-specific codes into strings [SDK]</A></DD>
227<DD><A href="#note44-07">Note 44-07: (DLP) Added <CODE>DlpChild.desc</CODE> [SDK]</A></DD>
228<DD><A href="#note44-08">Note 44-08: (DevEnv) Added support for the PARTNER-CTR Capture/Debugger (all-in-one debugger hardware) [SDK]</A></DD>
229<DD><A href="#note44-09">Note 44-09: (DevEnv) Added support for the VFP instruction when building assembly files [SDK]</A></DD>
230<DD><A href="#note44-10">Note 44-10: (DevEnv) Revised the <CODE>CCFLAGS_DEV_OPT</CODE> build variable [SDK]</A></DD>
231<DD><A href="#note44-11">Note 44-11: (FRIENDS) Added the FRIENDS library [SDK]</A></DD>
232<DD><A href="#note44-12">Note 44-12: (FS) Revised the <CODE>nn::fs::FormatSaveData</CODE> function [SDK]</A></DD>
233<DD><A href="#note44-13">Note 44-13: (FS) Added the <CODE>nn::fs::IsSdmcWritable</CODE> function [SDK]</A></DD>
234<DD><A href="#note44-14">Note 44-14: (FS) Added the <CODE>nn::fs::WaitForInsertSdmc</CODE>, <CODE>nn::fs::WaitForEjectSdmc</CODE>, and <CODE>nn::fs::IsSdmcInserted</CODE> functions [SDK]</A></DD>
235<DD><A href="#note44-15">Note 44-15: (FS) Added the <CODE>nn::fs::hio::MountHioArchive</CODE> function [SDK]</A></DD>
236<DD><A href="#note44-16">Note 44-16: (GX) Lifted the restriction of placing 2D textures on 32-MB boundaries [SDK]</A></DD>
237<DD><A href="#note44-17">Note 44-17: (GX) Updated the DMPGL documentation [SDK]</A></DD>
238<DD><A href="#note44-18">Note 44-18: (GX) Fixed a bug that prevented completion notifications from being sent for graphics processing while <CODE>NN_LOG</CODE> was in use [SDK | System Updater]</A></DD>
239<DD><A href="#note44-19">Note 44-19: (GX) Revised PICA macro headers [SDK]</A></DD>
240<DD><A href="#note44-20">Note 44-20: (GX) Revised PICA register information [SDK]</A></DD>
241<DD><A href="#note44-21">Note 44-21: (GX) Fixed incorrect initial values for <CODE>distanceAttenuationScale</CODE> [SDK]</A></DD>
242<DD><A href="#note44-22">Note 44-22: (GX) Removed unnecessary commands generated by calls to the <CODE>glBindFramebuffer</CODE> function [SDK]</A></DD>
243<DD><A href="#note44-23">Note 44-23: (GX) Fixed a bug that prevented textures from being reallocated within the <CODE>glCopyTexImage2D</CODE> function [SDK]</A></DD>
244<DD><A href="#note44-24">Note 44-24: (GX) Fixed invalid error checking in the <CODE>glCopyTexSubImage2D</CODE> function [SDK]</A></DD>
245<DD><A href="#note44-25">Note 44-25: (GX) Changed specifications related to the transfer mode in <CODE>glFramebufferTexture2D</CODE> [SDK]</A></DD>
246<DD><A href="#note44-26">Note 44-26: (GX) Fixed a bug that prevented the <CODE>glGetTexParameteri</CODE> and <CODE>glGetTexParameterf</CODE> functions from getting values for <CODE>GL_GENERATE_MIPMAP</CODE> [SDK]</A></DD>
247<DD><A href="#note44-27">Note 44-27: (GX) Fixed a bug that prevented depth values from being read properly in the <CODE>glReadPixels</CODE> function [SDK]</A></DD>
248<DD><A href="#note44-28">Note 44-28: (GX) Added support for reading the stencil buffer with the <CODE>glReadPixels</CODE> function [SDK]</A></DD>
249<DD><A href="#note44-29">Note 44-29: (GX) Changed argument restrictions in the <CODE>nngxAdd3DCommand</CODE> function [SDK]</A></DD>
250<DD><A href="#note44-30">Note 44-30: (GX) Added the <CODE>nngxIsStereoVisionAllowed</CODE> function [SDK]</A></DD>
251<DD><A href="#note44-31">Note 44-31: (GX) Added the <CODE>nngxSetTimeout</CODE> function [SDK]</A></DD>
252<DD><A href="#note44-32">Note 44-32: (GX) Fixed a bug that prevented the <CODE>nngxTransferRenderImage</CODE> function from transferring data correctly [SDK]</A></DD>
253<DD><A href="#note44-33">Note 44-33: (GX) Revised error checking for the placement of cube map texture data [SDK]</A></DD>
254<DD><A href="#note44-34">Note 44-34: (GX) Added special error codes for command request overflows [SDK]</A></DD>
255<DD><A href="#note44-35">Note 44-35: (GX) Added support for copying textures from the depth buffer [SDK]</A></DD>
256<DD><A href="#note44-36">Note 44-36: (GX) Added support for rendering to textures for the depth buffer [SDK]</A></DD>
257<DD><A href="#note44-37">Note 44-37: (GX) Changed driver behavior when fragment lighting is disabled [SDK]</A></DD>
258<DD><A href="#note44-38">Note 44-38: (GX) Fixed a validation bug that occurred when a texture attached to the framebuffer was deleted [SDK]</A></DD>
259<DD><A href="#note44-39">Note 44-39: (GX) Added uniform location macros for the fixed fragment shader [SDK]</A></DD>
260<DD><A href="#note44-40">Note 44-40: (GX) Fixed a bug that occurred in the <CODE>glDrawArrays</CODE> function when a vertex buffer was used [SDK]</A></DD>
261<DD><A href="#note44-41">Note 44-41: (HID) Changed the timing at which to start sampling the accelerometers [SDK | System Updater]</A></DD>
262<DD><A href="#note44-42">Note 44-42: (JPEG) Added functions that get and set Exif tags [SDK]</A></DD>
263<DD><A href="#note44-43">Note 44-43: (JPEG) Added functions that specify JPEG decoding options [SDK]</A></DD>
264<DD><A href="#note44-44">Note 44-44: (JPEG) Added error codes [SDK]</A></DD>
265<DD><A href="#note44-45">Note 44-45: (JPEG) Added pixel formats <CODE>{RGB8,RGBA8}x{LINEAR,BLOCK8}</CODE> [SDK]</A></DD>
266<DD><A href="#note44-46">Note 44-46: (JPEG) Fixed a bug that caused execution to stop while decoding particular JPEG files [SDK]</A></DD>
267<DD><A href="#note44-47">Note 44-47: (JPEG) Added support for shrink decoding [SDK]</A></DD>
268<DD><A href="#note44-48">Note 44-48: (MIC) Fixed return values from the <CODE>GetLastSamplingAddress</CODE> function [SDK | System Updater]</A></DD>
269<DD><A href="#note44-49">Note 44-49: (MIC) Added the <CODE>SetLowPassFilter</CODE> function [SDK | System Updater]</A></DD>
270<DD><A href="#note44-50">Note 44-50: (NGC) Added overloaded <CODE>CheckProfanityWords</CODE> functions [SDK]</A></DD>
271<DD><A href="#note44-51">Note 44-51: (NGC) Changed specifications for the <CODE>CheckProfanityWords</CODE> function [SDK]</A></DD>
272<DD><A href="#note44-52">Note 44-52: (NGC) Added the <CODE>GetContentVersion</CODE> function [SDK]</A></DD>
273<DD><A href="#note44-53">Note 44-53: (OS) Changed <CODE>nn::os::Thread::Sleep</CODE> [SDK | System Updater]</A></DD>
274<DD><A href="#note44-54">Note 44-54: (OS) Added user exception handler [SDK | System Updater]</A></DD>
275<DD><A href="#note44-55">Note 44-55: (OS) Revised the Function Reference Manual [SDK]</A></DD>
276<DD><A href="#note44-56">Note 44-56: (RDT) Changed the <CODE>Process</CODE> function's return values [SDK]</A></DD>
277<DD><A href="#note44-57">Note 44-57: (RDT) Revised descriptions of finalizing a <CODE>Receiver</CODE> instance [SDK]</A></DD>
278<DD><A href="#note44-58">Note 44-58: (RDT) Established result codes [SDK]</A></DD>
279<DD><A href="#note44-59">Note 44-59: (RDT) Introduced <CODE>enum</CODE> values that indicate uninitialized states [SDK]</A></DD>
280<DD><A href="#note44-60">Note 44-60: (SND) Changed 3D surround sound features [SDK]</A></DD>
281<DD><A href="#note44-61">Note 44-61: (SND) Changed the specifications for the <CODE>GetHeadphoneStatus</CODE> function and added the <CODE>UpdateHeadphoneStatus</CODE> function [SDK]</A></DD>
282<DD><A href="#note44-62">Note 44-62: (SND) Fixed a bug in the <CODE>GetSampleLength</CODE> function [SDK]</A></DD>
283<DD><A href="#note44-63">Note 44-63: (SND) Added the <CODE>SetAuxFrontBypass</CODE> function [SDK]</A></DD>
284<DD><A href="#note44-64">Note 44-64: (SND) Turned the <CODE>nn::snd::Bcwav</CODE> namespace into a class [SDK]</A></DD>
285<DD><A href="#note44-65">Note 44-65: (SND) Introduced soft clipping [SDK]</A></DD>
286<DD><A href="#note44-66">Note 44-66: (SND) Added a feature for specifying the fade-in immediately after playback starts [SDK]</A></DD>
287<DD><A href="#note44-67">Note 44-67: (TOOL) Extended the <CODE>Config</CODE> tool [SDK]</A></DD>
288<DD><A href="#note44-68">Note 44-68: (TOOL) Revised <CODE>DevMenu</CODE> [SDK]</A></DD>
289<DD><A href="#note44-69">Note 44-69: (TOOL) Changed the RSF format [SDK]</A></DD>
290<DD><A href="#note44-70">Note 44-70: (TOOL) Fixed a bug in <CODE>ctr_TexturePackager32.exe</CODE> related to specifying the mipmap level [SDK]</A></DD>
291<DD><A href="#note44-71">Note 44-71: (TOOL) Added a <CODE>ctr_makerom32.exe</CODE> feature for compressing static regions [SDK | System Updater]</A></DD>
292<DD><A href="#note44-72">Note 44-72: (TOOL) Added the <CODE>dmen_PrintResult</CODE> constant [SDK]</A></DD>
293<DD><A href="#note44-73">Note 44-73: (TOOL) Improved <CODE>makerom</CODE> encryption [SDK]</A></DD>
294<DD><A href="#note44-74">Note 44-74: (UDS) Fixed a bug that prevented <CODE>statusUpdateEvent</CODE> from being signaled when the local host connected to a network in Audience mode [SDK]</A></DD>
295<DD><A href="#note44-75">Note 44-75: (UDS) Changed the upper limit on endpoints that can be created by the <CODE>CreateEndpoint</CODE> function [SDK]</A></DD>
296<DD><A href="#note44-76">Note 44-76: (UDS) Fixed a bug that allowed the <CODE>CreateEndpoint</CODE> function to run prior to initialization [SDK]</A></DD>
297<DD><A href="#note44-77">Note 44-77: (UDS) Fixed a bug in the <CODE>NetworkDescription::GetMacAddress</CODE> function [SDK]</A></DD>
298<DD><A href="#note44-78">Note 44-78: (UDS) Fixed a bug that prevented 16 endpoints from being created [SDK]</A></DD>
299<DD><A href="#note44-79">Note 44-79: (UDS) Changed terminology for Audience mode [SDK]</A></DD>
300<DD><A href="#note44-80">Note 44-80: (UDS) Revised the Function Reference Manual [SDK]</A></DD>
301<DD><A href="#note44-81">Note 44-81: (ULCD) Changed specifications for <CODE>nn::ulcd::StereoCamera</CODE> [SDK]</A></DD>
302<DD><A href="#KnownIssues_0_12_0_Release">Known Issues in the SDK 0.12.0 Release</A></DD>
303</DL>
304<DL>
305<DT>
306<A href="#sdk_0_12_0_SystemUpdater">CTR-SDK 0.12.0 System Updater</A> (2010/08/20)</DT>
307<DD><A href="#note43-01">Note 43-01: (AC) Organized C-language functions [System Updater]</A></DD>
308<DD><A href="#note43-02">Note 43-02: (AC) Revised the <CODE>Connect</CODE> function [System Updater]</A></DD>
309<DD><A href="#note43-03">Note 43-03: (AC) Deprecated the <CODE>DebugFlushNetworkSetting</CODE> function [System Updater]</A></DD>
310<DD><A href="#note43-04">Note 43-04: (AC) Added the <CODE>RegisterDisconnectEvent</CODE> function [System Updater]</A></DD>
311<DD><A href="#note43-05">Note 43-05: (CAMERA) Removed the <CODE>IsBufferError</CODE> function [SDK | System Updater]</A></DD>
312<DD><A href="#note43-06">Note 43-06: (CAMERA) Revised the <CODE>SetExposure</CODE> function [SDK | System Updater]</A></DD>
313<DD><A href="#note43-07">Note 43-07: (CAMERA) Changed processing within the <CODE>SynchronizeVsyncTiming</CODE> function [SDK | System Updater]</A></DD>
314<DD><A href="#note43-08">Note 43-08: (CAMERA) Replaced the shutter sound [System Updater]</A></DD>
315<DD><A href="#note43-09">Note 43-09: (CAMERA) Added processing to compensate for individual system differences in white balance [SDK | System Updater]</A></DD>
316<DD><A href="#note43-10">Note 43-10: (CAMERA) Fixed camera LED behavior when the shutter sound is played while the inner camera is in use [System Updater]</A></DD>
317<DD><A href="#note43-11">Note 43-11: (CAMERA) Fixed camera LED behavior when the recording-started and recording-ended sounds are played [System Updater]</A></DD>
318<DD><A href="#note43-12">Note 43-12: (CEC) Changed the Chance Encounter Communication daemon [System Updater]</A></DD>
319<DD><A href="#note43-13">Note 43-13: (CFG) Revised the <CODE>nn::cfg::CTR::GetRegion</CODE> function [System Updater]</A></DD>
320<DD><A href="#note43-14">Note 43-14: (DLP) Added support for system updates of card-based software [System Updater]</A></DD>
321<DD><A href="#note43-15">Note 43-15: (DLP) Restricted the number of titles that can be scanned [System Updater]</A></DD>
322<DD><A href="#note43-16">Note 43-16: (DLP) Filtering by region while scanning [System Updater]</A></DD>
323<DD><A href="#note43-17">Note 43-17: (DLP) Changed the reconnection information stored in the <CODE>RebootInfo</CODE> structure [System Updater]</A></DD>
324<DD><A href="#note43-18">Note 43-18: (DLP) Embedding child programs in applications [System Updater | Sample Demos]</A></DD>
325<DD><A href="#note43-19">Note 43-19: (DLP) Getting network reconnection parameters for child programs [System Updater]</A></DD>
326<DD><A href="#note43-20">Note 43-20: (DLP) Embedding icons in child programs and reading icons from the server [System Updater | Sample Demos]</A></DD>
327<DD><A href="#note43-21">Note 43-21: (FS) Fixed a bug in the formatting of save data [System Updater]</A></DD>
328<DD><A href="#note43-22">Note 43-22: (GX) Fixed a bug that prevented completion notifications from being sent for graphics processing while <CODE>NN_LOG</CODE> was in use [SDK | System Updater]</A></DD>
329<DD><A href="#note43-23">Note 43-23: (GX) Fixed a bug that caused programs to stop with red screens when vertex data and/or textures were placed in VRAM [System Updater]</A></DD>
330<DD><A href="#note43-24">Note 43-24: (HID) Fixed a bug that prevented the debug pad from working properly [System Updater]</A></DD>
331<DD><A href="#note43-25">Note 43-25: (HID) Changed the timing at which to start sampling the accelerometers [SDK | System Updater]</A></DD>
332<DD><A href="#note43-26">Note 43-26: (HTTP) Fixed a bug in the multipart lazy POST feature [System Updater]</A></DD>
333<DD><A href="#note43-27">Note 43-27: (HTTP) Fixed a bug that occurred with server keepalive timeouts [System Updater]</A></DD>
334<DD><A href="#note43-28">Note 43-28: (HTTP) Added support for timeouts in blocking functions [System Updater]</A></DD>
335<DD><A href="#note43-29">Note 43-29: (MIC) Fixed return values from the <CODE>GetLastSamplingAddress</CODE> function [SDK | System Updater]</A></DD>
336<DD><A href="#note43-30">Note 43-30: (MIC) Added the <CODE>SetLowPassFilter</CODE> function [SDK | System Updater]</A></DD>
337<DD><A href="#note43-31">Note 43-31: (MIC) Revised settings for the microphone input gain [System Updater]</A></DD>
338<DD><A href="#note43-32">Note 43-32: (OS) Changed the behavior of the <CODE>nn::dbg::Break</CODE> function [System Updater]</A></DD>
339<DD><A href="#note43-33">Note 43-33: (OS) Changed <CODE>nn::os::Thread::Sleep</CODE> [SDK | System Updater]</A></DD>
340<DD><A href="#note43-34">Note 43-34: (OS) Added user exception handler [SDK | System Updater]</A></DD>
341<DD><A href="#note43-35">Note 43-35: (SND) Implemented high-pass filter for headphones [System Updater]</A></DD>
342<DD><A href="#note43-36">Note 43-36: (SSL) Added SHA256 certificate support [System Updater]</A></DD>
343<DD><A href="#note43-37">Note 43-37: (SSL) Added support for built-in commercial CA certificates [System Updater]</A></DD>
344<DD><A href="#note43-38">Note 43-38: (TOOL) Added a <CODE>ctr_makerom32.exe</CODE> feature for compressing static regions [SDK | System Updater]</A></DD>
345<DD><A href="#note43-39">Note 43-39: (UDS) Fixed a bug that prevented the <CODE>GetConnectionStatus</CODE> function from obtaining the correct information in Audience mode [System Updater]</A></DD>
346<DD><A href="#KnownIssues_0_12_0_SystemUpdater">Known Issues with System Updater in Version 0.12.0 of the SDK</A></DD>
347</DL>
348<DL>
349<DT>
350<A href="#sdk_0_12_0_SampleDemos">CTR-SDK 0.12.0 Sample Demos</A> (2010/08/20)</DT>
351<DD><A href="#note42-01">Note 42-01: (DLP) Embedding child programs in applications [System Updater | Sample Demos]</A></DD>
352<DD><A href="#note42-02">Note 42-02: (DLP) Embedding icons in child programs and reading icons from the server [System Updater | Sample Demos]</A></DD>
353<DD><A href="#note42-03">Note 42-03: (GX) Fixed a quaternion generation bug in the vertex shaders for the DMPGL samples [Sample Demos]</A></DD>
354<DD><A href="#note42-04">Note 42-04: (GX) Fixed issues related to lookup table generation in the <CODE>ProctexClamp</CODE> sample [Sample Demos]</A></DD>
355<DD><A href="#note42-05">Note 42-05: (GX) Allowed the number of generated display buffers to be specified [Sample Demos]</A></DD>
356<DD><A href="#note42-06">Note 42-06: (RDT) Revised <CODE>basic</CODE> sample demos [Sample Demos]</A></DD>
357<DD><A href="#note42-07">Note 42-07: (RDT) Added a sample demo for bidirectional communication [Sample Demos]</A></DD>
358<DD><A href="#note42-08">Note 42-08: (SND) Changed <CODE>StreamPlayer</CODE>sample demo [Sample Demos]</A></DD>
359<DD><A href="#note42-09">Note 42-09: (UDS) Changed the implementation of <CODE>com_demo1</CODE> [Sample Demos]</A></DD>
360<DD><A href="#note42-10">Note 42-10: (UDS) Handled changed terminology for Audience mode in <CODE>com_demo1</CODE> [Sample Demos]</A></DD>
361<DD><A href="#KnownIssues_0_12_0_SampleDemos">Known Issues with SDK 0.12.0 Sample Demos</A></DD>
362</DL>
363<DL>
364<DT>
365<A href="#sdk_0_11_2_Release">CTR-SDK 0.11.2 Release</A> (2010/07/29)</DT>
366<DD><A href="#note41-01">Note 41-01: (SND) Fixed a bug that stopped sound during non-looping playback of short waveforms [SDK]</A></DD>
367<DD><A href="#note41-02">Note 41-02: (TOOL) Fixed <CODE>makerom</CODE> [SDK]</A></DD>
368<DD><A href="#KnownIssues_0_11_2_Release">Known Issues in the SDK 0.11.2 Release</A></DD>
369</DL>
370<DL>
371<DT>
372<A href="#sdk_0_11_1_Release">CTR-SDK 0.11.1 Release</A> (2010/07/28)</DT>
373<DD><A href="#note40-01">Note 40-01: (FS) Fixed the <CODE>nn::fs::GetRomRequiredMemorySize</CODE> function [SDK]</A></DD>
374<DD><A href="#note40-02">Note 40-02: (SND) Fixed a bug that created noise during playback of an ADPCM stream [SDK]</A></DD>
375<DD><A href="#KnownIssues_0_11_1_Release">Known Issues in the SDK 0.11.1 Release</A></DD>
376</DL>
377<DL>
378<DT>
379<A href="#sdk_0_11_0_Release">CTR-SDK 0.11.0 Release</A> (2010/07/22)</DT>
380<DD><A href="#note39-01">Note 39-01: (CAMERA) Removed C wrappers [SDK]</A></DD>
381<DD><A href="#note39-02">Note 39-02: (CAMERA) Revised the <CODE>Finalize</CODE> function [SDK | System Updater]</A></DD>
382<DD><A href="#note39-03">Note 39-03: (CAMERA) Added the <CODE>GetSuitableY2rStandardCoefficient</CODE> function [SDK | System Updater]</A></DD>
383<DD><A href="#note39-04">Note 39-04: (CAMERA) Revised the <CODE>Initialize</CODE> and <CODE>Finalize</CODE> functions [SDK | System Updater]</A></DD>
384<DD><A href="#note39-05">Note 39-05: (CAMERA) Removed the <CODE>SynchronizeWhiteBalance</CODE> function [SDK | System Updater]</A></DD>
385<DD><A href="#note39-06">Note 39-06: (CAMERA) Changed the camera configuration function's return value [SDK | System Updater]</A></DD>
386<DD><A href="#note39-07">Note 39-07: (CAMERA) Added and updated shutter sounds [SDK | System Updater]</A></DD>
387<DD><A href="#note39-08">Note 39-08: (CAMERA) Removed a feature that notifies a recovery event [SDK | System Updater]</A></DD>
388<DD><A href="#note39-09">Note 39-09: (CAMERA) Removed functions that automatically receive data [SDK | System Updater]</A></DD>
389<DD><A href="#note39-10">Note 39-10: (CAMERA) Added functions for batch setting changes [SDK | System Updater]</A></DD>
390<DD><A href="#note39-11">Note 39-11: (CEC) Changed handling of title-specific IDs [SDK]</A></DD>
391<DD><A href="#note39-12">Note 39-12: (CEC) Added support for the Chance Encounter Communication library [SDK]</A></DD>
392<DD><A href="#note39-13">Note 39-13: (CEC) Changed the name of the Chance Encounter Communication library [SDK]</A></DD>
393<DD><A href="#note39-14">Note 39-14: CFG) Changed the API for getting user information [SDK]</A></DD>
394<DD><A href="#note39-15">Note 39-15: (DLP) Added CTR Download Play [SDK | System Updater]</A></DD>
395<DD><A href="#note39-16">Note 39-16: (DSP) Revised header files [SDK]</A></DD>
396<DD><A href="#note39-17">Note 39-17: (FND) Revised build conditions for the <CODE>nn::fnd::HeapBase::DebugFillMemory</CODE> function [SDK]</A></DD>
397<DD><A href="#note39-18">Note 39-18: (FS) Fixed a bug that prevented CTR save data from being read [SDK]</A></DD>
398<DD><A href="#note39-19">Note 39-19: (FS) Added functions for accessing save data [SDK]</A></DD>
399<DD><A href="#note39-20">Note 39-20: (FS) Revised directory reads [SDK]</A></DD>
400<DD><A href="#note39-21">Note 39-21: (FS) Fixed a bug that caused seek operations to the end of a file to fail [SDK]</A></DD>
401<DD><A href="#note39-22">Note 39-22: (FS) Added functions for accessing extended save data [SDK]</A></DD>
402<DD><A href="#note39-23">Note 39-23: (GX) Updated the DMPGL documentation [SDK]</A></DD>
403<DD><A href="#note39-24">Note 39-24: (GX) Fixed a bug in the PICA macro header [SDK]</A></DD>
404<DD><A href="#note39-25">Note 39-25: (GX) Revised the description of <CODE>nn::gx::CTR::MemAccessPrioMode</CODE> [SDK]</A></DD>
405<DD><A href="#note39-26">Note 39-26: (GX) Added information on the specifications for the product of the emission and global ambient colors [SDK]</A></DD>
406<DD><A href="#note39-27">Note 39-27: (GX) Fixed a subdivision bug in <CODE>DMP_subdivision3.obj</CODE> [SDK]</A></DD>
407<DD><A href="#note39-28">Note 39-28: (GX) Fixed a bug in the silhouette triangle shader [SDK]</A></DD>
408<DD><A href="#note39-29">Note 39-29: (GX) Fixed a bug that occurred when deleting texture collections [SDK]</A></DD>
409<DD><A href="#note39-30">Note 39-30: (GX) Added a feature to get valid debugging information related to command list execution [SDK]</A></DD>
410<DD><A href="#note39-31">Note 39-31: (GX) Added a function to generate commands that transfer data while converting the block format [SDK]</A></DD>
411<DD><A href="#note39-32">Note 39-32: (GX) Fixed a bug that prevented scissoring-related commands from being generated when a program object had not been set [SDK]</A></DD>
412<DD><A href="#note39-33">Note 39-33: (GX) Removed unnecessary register settings for the line shader [SDK]</A></DD>
413<DD><A href="#note39-34">Note 39-34: (GX) Added a feature that can get the render buffer address [SDK]</A></DD>
414<DD><A href="#note39-35">Note 39-35: (GX) Added information on input restrictions for lookup tables [SDK]</A></DD>
415<DD><A href="#note39-36">Note 39-36: (GX) Added a function that disables updates for a specified state [SDK]</A></DD>
416<DD><A href="#note39-37">Note 39-37: (HID) Fixed a bug in <CODE>STICK_CLAMP_MODE_CROSS</CODE> mode [SDK | System Updater]</A></DD>
417<DD><A href="#note39-38">Note 39-38: (HID) Reviewed specifications for the <CODE>SetStickClamp</CODE> and <CODE>GetStickClamp</CODE> functions [SDK | System Updater]</A></DD>
418<DD><A href="#note39-39">Note 39-39: (HIO) Removed <CODE>libnn_hiolow</CODE> [SDK]</A></DD>
419<DD><A href="#note39-40">Note 39-40: (MATH) Revised the <CODE>SinIdx</CODE>, <CODE>CosIdx</CODE>, <CODE>SinCosIdx </CODE>functions [SDK]</A></DD>
420<DD><A href="#note39-41">Note 39-41: (MIC) Removed C wrappers [SDK]</A></DD>
421<DD><A href="#note39-42">Note 39-42: (MIC) Added a function to get the region within which it is prohibited to determine that there is microphone input [SDK]</A></DD>
422<DD><A href="#note39-43">Note 39-43: (MIC) Added constants that indicate the guaranteed region for microphone input values [SDK]</A></DD>
423<DD><A href="#note39-44">Note 39-44: (OS) Changed mutex methods in the default implementation of <CODE>malloc</CODE> and <CODE>free</CODE> [SDK]</A></DD>
424<DD><A href="#note39-45">Note 39-45: (PTM) Added interfaces for the remaining battery life, the battery recharge state, and the existence of an AC plug [SDK]</A></DD>
425<DD><A href="#note39-46">Note 39-46: (RDT) Fixed a bug that prevented proper state transitions in the Sender [SDK]</A></DD>
426<DD><A href="#note39-47">Note 39-47: (SND) Improved the effect of 3D surround sound mode [SDK]</A></DD>
427<DD><A href="#note39-48">Note 39-48: (SND) Added a feature that specifies the loop position during DSP-ADPCM encoding [SDK]</A></DD>
428<DD><A href="#note39-49">Note 39-49: (SND) Added a function to decode DSP-ADPCM data [SDK]</A></DD>
429<DD><A href="#note39-50">Note 39-50: (SND) Added DSP-ADPCM utility functions [SDK]</A></DD>
430<DD><A href="#note39-51">Note 39-51: (SND) Changed specifications for the <CODE>nn::snd::SetSoundOutputMode</CODE> function [SDK]</A></DD>
431<DD><A href="#note39-52">Note 39-52: (SND) Changed specifications for the <CODE>nn::snd::SetSurroundDepth</CODE> function [SDK]</A></DD>
432<DD><A href="#note39-53">Note 39-53: (SND) Changed specifications for the <CODE>nn::snd::Voice::AppendWaveBuffer</CODE> function [SDK]</A></DD>
433<DD><A href="#note39-54">Note 39-54: (SND) Fixed a bug in the <CODE>nn::snd::Voice::SetVolume</CODE> function [SDK]</A></DD>
434<DD><A href="#note39-55">Note 39-55: (SND) Added the <CODE>nn::snd::Voice::SetupBcwav</CODE> function [SDK]</A></DD>
435<DD><A href="#note39-56">Note 39-56: (SND) Fixed a bug in the filter feature [SDK]</A></DD>
436<DD><A href="#note39-57">Note 39-57: (SND) Revised header files [SDK]</A></DD>
437<DD><A href="#note39-58">Note 39-58: (SND) Changed the volume configuration [SDK | System Updater]</A></DD>
438<DD><A href="#note39-59">Note 39-59: (Socket) Changed specifications for the <CODE>Initialize</CODE> function [SDK]</A></DD>
439<DD><A href="#note39-60">Note 39-60: (TOOL) Fixed an issue related to backlight settings with the Config tool [SDK]</A></DD>
440<DD><A href="#note39-61">Note 39-61: (TOOL) Changed the <CODE>DevMenu</CODE> [SDK]</A></DD>
441<DD><A href="#note39-62">Note 39-62: (TOOL) Changed <CODE>ctr_makerom32.exe</CODE> [SDK]</A></DD>
442<DD><A href="#note39-63">Note 39-63: (TPL) Added the Texture Packager Library [SDK]</A></DD>
443<DD><A href="#note39-64">Note 39-64: (UDS) Overloaded the <CODE>==</CODE> and <CODE>!=</CODE> operators of the <CODE>NetworkDescriptor</CODE> class [SDK]</A></DD>
444<DD><A href="#note39-65">Note 39-65: (UDS) Changed the behavior of the <CODE>NetworkDescriptionReader::GetNetworkDescription</CODE> function [SDK]</A></DD>
445<DD><A href="#note39-66">Note 39-66: (UDS) Changed the behavior of the <CODE>NetworkDescriptionReader::GetNodeInformationList</CODE> function [SDK]</A></DD>
446<DD><A href="#note39-67">Note 39-67: (UDS) Changed the behavior of the <CODE>Receive</CODE> and <CODE>ReceiveFrom</CODE> functions [SDK]</A></DD>
447<DD><A href="#note39-68">Note 39-68: (UDS) Reviewed <CODE>Result</CODE> values [SDK]</A></DD>
448<DD><A href="#note39-69">Note 39-69: (UDS) Changed the behavior of the <CODE>SendTo</CODE> function [SDK]</A></DD>
449<DD><A href="#note39-70">Note 39-70: (UDS) Prohibited the use of port 0 [SDK]</A></DD>
450<DD><A href="#note39-71">Note 39-71: (UDS) Added a link to the UDS library in the Function Reference Manual's index [SDK]</A></DD>
451<DD><A href="#note39-72">Note 39-72: (Y2R) Removed C wrappers [SDK]</A></DD>
452<DD><A href="#note39-73">Note 39-73: (Y2R) Revised the <CODE>Initialize</CODE> and <CODE>Finalize</CODE> functions [SDK | System Updater]</A></DD>
453<DD><A href="#note39-74">Note 39-74: (Y2R) Revised the <CODE>SetStandardCoefficient</CODE> function [SDK | System Updater]</A></DD>
454<DD><A href="#note39-75">Note 39-75: (Y2R) Changed the <CODE>StartConversion</CODE> function's return value [SDK | System Updater]</A></DD>
455<DD><A href="#note39-76">Note 39-76: (Y2R) Added functions for batch setting changes [SDK | System Updater]</A></DD>
456<DD><A href="#KnownIssues_0_11_0_Release">Known Issues in the SDK 0.11.0 Release</A></DD>
457</DL>
458<DL>
459<DT>
460<A href="#sdk_0_11_0_Release%20SystemUpdater">CTR-SDK 0.11.0 Release System Updater</A> (2010/07/22)</DT>
461<DD><A href="#note38-01">Note 38-01: (AC) Revised the <CODE>Connect</CODE> function [System Updater]</A></DD>
462<DD><A href="#note38-02">Note 38-02: (AC) Added the <CODE>GetLinkLevel</CODE> function [System Updater]</A></DD>
463<DD><A href="#note38-03">Note 38-03: (CAMERA) Revised the <CODE>Finalize</CODE> function [SDK | System Updater]</A></DD>
464<DD><A href="#note38-04">Note 38-04: (CAMERA) Added the <CODE>GetSuitableY2rStandardCoefficient</CODE> function [SDK | System Updater]</A></DD>
465<DD><A href="#note38-05">Note 38-05: (CAMERA) Revised the <CODE>Initialize</CODE> and <CODE>Finalize</CODE> functions [SDK | System Updater]</A></DD>
466<DD><A href="#note38-06">Note 38-06: (CAMERA) Removed the <CODE>SynchronizeWhiteBalance</CODE> function [SDK | System Updater]</A></DD>
467<DD><A href="#note38-07">Note 38-07: (CAMERA) Revised the timing at which the camera LED is illuminated [System Updater]</A></DD>
468<DD><A href="#note38-08">Note 38-08: (CAMERA) Changed the camera configuration function's return value [SDK | System Updater]</A></DD>
469<DD><A href="#note38-09">Note 38-09: (CAMERA) Added and updated shutter sounds [SDK | System Updater]</A></DD>
470<DD><A href="#note38-10">Note 38-10: (CAMERA) Removed a feature that notifies a recovery event [SDK | System Updater]</A></DD>
471<DD><A href="#note38-11">Note 38-11: (CAMERA) Removed functions that automatically receive data [SDK | System Updater]</A></DD>
472<DD><A href="#note38-12">Note 38-12: (CAMERA) Added functions for batch setting changes [SDK | System Updater]</A></DD>
473<DD><A href="#note38-13">Note 38-13: (DLP) Added CTR Download Play [SDK | System Updater]</A></DD>
474<DD><A href="#note38-14">Note 38-14: (GX) Added support for the 3D LED [System Updater]</A></DD>
475<DD><A href="#note38-15">Note 38-15: (HID) Changed memory addresses assigned when the <CODE>Initialize</CODE> function is called [System Updater]</A></DD>
476<DD><A href="#note38-16">Note 38-16: (HID) Fixed a bug in <CODE>STICK_CLAMP_MODE_CROSS</CODE> mode [SDK | System Updater]</A></DD>
477<DD><A href="#note38-17">Note 38-17: (HID) Reviewed specifications for the <CODE>SetStickClamp</CODE> and <CODE>GetStickClamp</CODE> functions [SDK | System Updater]</A></DD>
478<DD><A href="#note38-18">Note 38-18: (HID) Changed accelerometer axis settings [System Updater]</A></DD>
479<DD><A href="#note38-19">Note 38-19: (HID) Fixed a bug that occurred when the Sleep Mode switch was set to &quot;sleep&quot; at startup [System Updater]</A></DD>
480<DD><A href="#note38-20">Note 38-20: (HTTP) Revised the <CODE>AddPostData*</CODE> functions [System Updater]</A></DD>
481<DD><A href="#note38-21">Note 38-21: (HTTP) Fixed a misspelling in the <CODE>NofityFinishSendPostData</CODE> function [System Updater]</A></DD>
482<DD><A href="#note38-22">Note 38-22: (HTTP) Fixed a bug in the <CODE>SendPostDataAscii</CODE> function [System Updater]</A></DD>
483<DD><A href="#note38-23">Note 38-23: (HTTP/SSL) Added support for a Class 2 CA certificate built into the system [System Updater]</A></DD>
484<DD><A href="#note38-24">Note 38-24: (MIC) Revised the <CODE>Finalize</CODE> function [System Updater]</A></DD>
485<DD><A href="#note38-25">Note 38-25: (MIC) Changed the initial value for the microphone's amplifier gain in the <CODE>SetAmpGain</CODE> and <CODE>GetAmpGain</CODE> functions [System Updater]</A></DD>
486<DD><A href="#note38-26">Note 38-26: (MIC) Revised the microphone's silent period [System Updater]</A></DD>
487<DD><A href="#note38-27">Note 38-27: (NWN) Changed the scanning interval for Chance Encounter zones [System Updater]</A></DD>
488<DD><A href="#note38-28">Note 38-28: (OS) Revised the debugger's VFP register value [System Updater]</A></DD>
489<DD><A href="#note38-29">Note 38-29: (OS) Added a feature to cancel the screen that is forced to be displayed when a program stops abnormally [System Updater]</A></DD>
490<DD><A href="#note38-30">Note 38-30: (OS) Fixed a bug that occurred when <CODE>Wait</CODE> was called on multiple objects [System Updater]</A></DD>
491<DD><A href="#note38-31">Note 38-31: (OS) Revised the Power Button [System Updater]</A></DD>
492<DD><A href="#note38-32">Note 38-32: (SND) Fixed a bug that on rare occasions increased the volume [System Updater]</A></DD>
493<DD><A href="#note38-33">Note 38-33: (SND) Fixed a bug that sometimes decreased the volume [System Updater]</A></DD>
494<DD><A href="#note38-34">Note 38-34: (SND) Changed the volume configuration [SDK | System Updater]</A></DD>
495<DD><A href="#note38-35">Note 38-35: (SSL) Added an SSL function to get random numbers [System Updater]</A></DD>
496<DD><A href="#note38-36">Note 38-36: (SSL) Added support for getting all the data in a server certificate chain [System Updater]</A></DD>
497<DD><A href="#note38-37">Note 38-37: (SSL) Added a function to collectively get the causes of a failed server certificate verification [System Updater]</A></DD>
498<DD><A href="#note38-38">Note 38-38: (SSL) Added support for non-blocking sockets [System Updater]</A></DD>
499<DD><A href="#note38-39">Note 38-39: (Socket) Fixed a memory leak [System Updater]</A></DD>
500<DD><A href="#note38-40">Note 38-40: (Socket) Changed the maximum number of socket descriptors that can be created [System Updater]</A></DD>
501<DD><A href="#note38-41">Note 38-41: (TOOL) Added Config tool features [System Updater]</A></DD>
502<DD><A href="#note38-42">Note 38-42: (UDS) Fixed a bug that caused invalid signal strength values when a Client was running [System Updater]</A></DD>
503<DD><A href="#note38-43">Note 38-43: (UDS) Optimized the beacon data size [System Updater]</A></DD>
504<DD><A href="#note38-44">Note 38-44: (UDS) Support for disabled wireless mode [System Updater]</A></DD>
505<DD><A href="#note38-45">Note 38-45: (Y2R) Revised the <CODE>Initialize</CODE> and <CODE>Finalize</CODE> functions [SDK | System Updater]</A></DD>
506<DD><A href="#note38-46">Note 38-46: (Y2R) Revised the <CODE>SetStandardCoefficient</CODE> function [SDK | System Updater]</A></DD>
507<DD><A href="#note38-47">Note 38-47: (Y2R) Changed the <CODE>StartConversion</CODE> function's return value [SDK | System Updater]</A></DD>
508<DD><A href="#note38-48">Note 38-48: (Y2R) Added functions for batch setting changes [SDK | System Updater]</A></DD>
509<DD><A href="#KnownIssues_0_11_0_Release%20SystemUpdater">Known Issues with System Updater in the SDK 0.11.0 Release</A></DD>
510</DL>
511<DL>
512<DT>
513<A href="#sdk_0_11_0_Release%20SampleDemos">CTR-SDK 0.11.0 Release Sample Demos</A> (2010/07/22)</DT>
514<DD><A href="#note37-01">Note 37-01: (PTM) Added battery-related sample demos [Sample Demos]</A></DD>
515<DD><A href="#note37-02">Note 37-02: (SND) Revised <CODE>BcwavPlayer</CODE> [Sample Demos]</A></DD>
516<DD><A href="#note37-03">Note 37-03: (SND) Added specifications for the sound output mode [Sample Demos]</A></DD>
517<DD><A href="#note37-04">Note 37-04: (SND) Changed <CODE>AdpcmEncoder</CODE> sample demo [Sample Demos]</A></DD>
518<DD><A href="#note37-05">Note 37-05: (TPL) Added <CODE>TPL</CODE> sample demos [Sample Demos]</A></DD>
519<DD><A href="#note37-06">Note 37-06: (UDS) Revised demos following changes to the <CODE>Result</CODE> values [Sample Demos]</A></DD>
520<DD><A href="#note37-07">Note 37-07: (UDS) Revised <CODE>com_demo1</CODE> [Sample Demos]</A></DD>
521<DD><A href="#note37-08">Note 37-08: (Miscellaneous) Replaced <CODE>NN_OS_DEVICE_MEMORY_SIZE</CODE> with the <CODE>nn::os::GetDeviceMemorySize</CODE> function [Sample Demos]</A></DD>
522<DD><A href="#KnownIssues_0_11_0_Release%20SampleDemos">Known Issues with SDK 0.11.0 Release Sample Demos</A></DD>
523</DL>
524<DL>
525<DT>
526<A href="#sdk_0_10_2_Release%20SystemUpdater">CTR-SDK 0.10.2 Release System Updater</A> (2010/07/06)</DT>
527<DD><A href="#note36-01">Note 36-01: (CAMERA) Fixed processing that detects camera problems [System Updater]</A></DD>
528<DD><A href="#KnownIssues_0_10_2_Release%20SystemUpdater">Known Issues with System Updater in the SDK 0.10.2 Release</A></DD>
529</DL>
530<DL>
531<DT>
532<A href="#sdk_0_10_1_Release">CTR-SDK 0.10.1 Release</A> (2010/07/05)</DT>
533<DD><A href="#note35-01">Note 35-01: (CAMERA) Added a <CODE>nn::camera::FrameRate</CODE> setting [SDK | System Updater]</A></DD>
534<DD><A href="#note35-02">Note 35-02: (FS) Fixed a bug in the address conversion table for backup devices [SDK]</A></DD>
535<DD><A href="#note35-03">Note 35-03: (GX) Addressed screen flickering that occurred when active backlight controls were enabled [SDK]</A></DD>
536<DD><A href="#note35-04">Note 35-04: (GX) Fixed a bug that prevented the display buffer from being placed in VRAM-B [SDK]</A></DD>
537<DD><A href="#note35-05">Note 35-05: (OS) Changed memory-related functions [SDK | System Updater]</A></DD>
538<DD><A href="#note35-06">Note 35-06: (SND) Revised the system volume [SDK]</A></DD>
539<DD><A href="#note35-07">Note 35-07: (SND) Fixed bugs in the waveform converter [SDK]</A></DD>
540<DD><A href="#note35-08">Note 35-08: (TOOL) Revised <CODE>DevMenu</CODE> [SDK]</A></DD>
541<DD><A href="#note35-09">Note 35-09: (TOOL) Added <CODE>StereoCameraCalibrator</CODE> [SDK]</A></DD>
542<DD><A href="#note35-10">Note 35-10: (TOOL) Added <CODE>ctr_makecia32.exe</CODE> [SDK]</A></DD>
543<DD><A href="#note35-11">Note 35-11: (TOOL) Fixed a bug in <CODE>ctr_makerom32.exe</CODE> [SDK]</A></DD>
544<DD><A href="#KnownIssues_0_10_1_Release">Known Issues in the SDK 0.10.1 Release</A></DD>
545</DL>
546<DL>
547<DT>
548<A href="#sdk_0_10_1_Release%20SystemUpdater">CTR-SDK 0.10.1 Release System Updater</A> (2010/07/05)</DT>
549<DD><A href="#note34-01">Note 34-01: (CAMERA) Added a <CODE>nn::camera::FrameRate</CODE> setting [SDK | System Updater]</A></DD>
550<DD><A href="#note34-02">Note 34-02: (HID) Fixed the <CODE>nn::fs::Directory::Read</CODE> function to list the proper number of entries [System Updater]</A></DD>
551<DD><A href="#note34-03">Note 34-03: (OS) Changed memory-related functions [SDK | System Updater]</A></DD>
552<DD><A href="#KnownIssues_0_10_1_Release%20SystemUpdater">Known Issues with System Updater in the SDK 0.10.1 Release</A></DD>
553</DL>
554<DL>
555<DT>
556<A href="#sdk_0_10_0_Release">CTR-SDK 0.10.0 Release</A> (2010/06/23)</DT>
557<DD><A href="#note33-01">Note 33-01: (CAMERA) Revised the <CODE>Activate</CODE> function [SDK | System Updater]</A></DD>
558<DD><A href="#note33-02">Note 33-02: (CAMERA) Revised the <CODE>SetAutoWhiteBalance</CODE> function [SDK | System Updater]</A></DD>
559<DD><A href="#note33-03">Note 33-03: (CAMERA) Revised the <CODE>SetNoiseFilter</CODE> function [SDK | System Updater]</A></DD>
560<DD><A href="#note33-04">Note 33-04: (CAMERA) Revised the <CODE>SetTrimmingParams</CODE> and <CODE>SetTrimmingParamsCenter</CODE> functions [SDK | System Updater]</A></DD>
561<DD><A href="#note33-05">Note 33-05: (CAMERA) Added support for the camera LED [SDK | System Updater]</A></DD>
562<DD><A href="#note33-06">Note 33-06: (CAMERA) Added processing to recover from a camera malfunction [SDK | System Updater]</A></DD>
563<DD><A href="#note33-07">Note 33-07: (CAMERA) Added a function to play the shutter sound [SDK | System Updater]</A></DD>
564<DD><A href="#note33-08">Note 33-08: (CAMERA/Y2R) Changed the <CODE>Initialize</CODE> function's return value [SDK | System Updater]</A></DD>
565<DD><A href="#note33-09">Note 33-09: (CECD) Updated Chance Encounter Communication daemon (beta version) [SDK]</A></DD>
566<DD><A href="#note33-10">Note 33-10: (CFG) Added functions to get user information [SDK]</A></DD>
567<DD><A href="#note33-11">Note 33-11: (CFG) Added function to get system information [SDK]</A></DD>
568<DD><A href="#note33-12">Note 33-12: (DSP) Revised the Function Reference Manual [SDK]</A></DD>
569<DD><A href="#note33-13">Note 33-13: (DSP) Removed some functions from the public API [SDK]</A></DD>
570<DD><A href="#note33-14">Note 33-14: (DSPSND) Removed the DSPSND library [SDK]</A></DD>
571<DD><A href="#note33-15">Note 33-15: (DevEnv) Revised <CODE>version.h</CODE> [SDK]</A></DD>
572<DD><A href="#note33-16">Note 33-16: (DevEnv) Suppressed warnings for missing declarations in source code [SDK]</A></DD>
573<DD><A href="#note33-17">Note 33-17: (DevEnv) Changed the default build filter from TEG2 to TS [SDK]</A></DD>
574<DD><A href="#note33-18">Note 33-18: (DevEnv) Added an environment variable for specifying the ARM compiler to use for builds [SDK]</A></DD>
575<DD><A href="#note33-19">Note 33-19: (DevEnv) Added the <CODE>CCFLAGS_DEV_OPT</CODE> build variable [SDK]</A></DD>
576<DD><A href="#note33-20">Note 33-20: (DevEnv) Added the <CODE>CTR_APPTYPE</CODE> build variable [SDK]</A></DD>
577<DD><A href="#note33-21">Note 33-21: (FND) Revised the <CODE>ExpHeapTemplate::Allocate</CODE> member function [SDK]</A></DD>
578<DD><A href="#note33-22">Note 33-22: (FND) Revised <CODE>FrameHeap::Free</CODE> [SDK]</A></DD>
579<DD><A href="#note33-23">Note 33-23: (FND) Revised <CODE>HeapBase::HasAddress</CODE> [SDK]</A></DD>
580<DD><A href="#note33-24">Note 33-24: (FS) Changed the method for initializing ROM [SDK]</A></DD>
581<DD><A href="#note33-25">Note 33-25: (FS) Added support for 8.3 filenames that only have lowercase characters [SDK | System Updater]</A></DD>
582<DD><A href="#note33-26">Note 33-26: (GX) Added the <CODE>nngxAddVramDmaCommand</CODE> function to issue DMA transfer commands [SDK]</A></DD>
583<DD><A href="#note33-27">Note 33-27: (GX) Restrictions on Using the L4 and A4 formats [SDK]</A></DD>
584<DD><A href="#note33-28">Note 33-28: (GX) Fixed a bug in the <CODE>NN_GX_STATE_FRAMEBUFFER</CODE> complete commands [SDK]</A></DD>
585<DD><A href="#note33-29">Note 33-29: (GX) Added PICA register information [SDK]</A></DD>
586<DD><A href="#note33-30">Note 33-30: (GX) Added the <CODE>SetMemAccessPrioMode</CODE> function [SDK | System Updater]</A></DD>
587<DD><A href="#note33-31">Note 33-31: (GX) Added support for reading the depth buffer with the <CODE>glReadPixels</CODE> function [SDK]</A></DD>
588<DD><A href="#note33-32">Note 33-32: (GX) Changed argument types in the <CODE>nngxAdd3DCommand</CODE> function [SDK]</A></DD>
589<DD><A href="#note33-33">Note 33-33: (GX) Fixed a bug that prevented command buffer overflow errors from occurring in the <CODE>nngxValidateState</CODE> function [SDK]</A></DD>
590<DD><A href="#note33-34">Note 33-34: (GX) Changed the errors that occur during validation with the <CODE>nngxValidateState</CODE> function into extended error codes [SDK]</A></DD>
591<DD><A href="#note33-35">Note 33-35: (GX) Added VRAM regions that can be used by applications [SDK]</A></DD>
592<DD><A href="#note33-36">Note 33-36: (GX) Fixed a bug in address checks for cube map textures [SDK]</A></DD>
593<DD><A href="#note33-37">Note 33-37: (GX) Added the <CODE>nngxClearFillCmdlist</CODE> function to both clear and fill a command buffer at the same time [SDK]</A></DD>
594<DD><A href="#note33-38">Note 33-38: (GX) Added extended error codes to represent command buffer overflows [SDK]</A></DD>
595<DD><A href="#note33-39">Note 33-39: (GX) Deleted dummy commands used when clearing the texture cache [SDK]</A></DD>
596<DD><A href="#note33-40">Note 33-40: (GX) Fixed a bug related to clamping the particle system (geometry shader) time [SDK]</A></DD>
597<DD><A href="#note33-41">Note 33-41: (GX) Added a function that applies antialias filters while transferring block images [SDK]</A></DD>
598<DD><A href="#note33-42">Note 33-42: (GX) Updated macro header files [SDK]</A></DD>
599<DD><A href="#note33-43">Note 33-43: (GX) Added support for automatic mipmap generation [SDK]</A></DD>
600<DD><A href="#note33-44">Note 33-44: (GX) Deleted lighting layer configurations 8–10 [SDK]</A></DD>
601<DD><A href="#note33-45">Note 33-45: (GX) Stopped using invalid bit in register <CODE>0x6f</CODE> [SDK]</A></DD>
602<DD><A href="#note33-46">Note 33-46: (GX) Fixed a bug that caused incorrect behavior with certain placements of vertex and index arrays [SDK]</A></DD>
603<DD><A href="#note33-47">Note 33-47: (HID) Changed threshold values for clamping the Slide Pad [SDK]</A></DD>
604<DD><A href="#note33-48">Note 33-48: (HIO) Relocated the PC-side HostIO library [SDK]</A></DD>
605<DD><A href="#note33-49">Note 33-49: (JPEG) Added JPEG encoder functions for MP-format data [SDK]</A></DD>
606<DD><A href="#note33-50">Note 33-50: (JPEG) Added setter functions for the JPEG encoder [SDK]</A></DD>
607<DD><A href="#note33-51">Note 33-51: (JPEG) Added functions for extracting EXIF information with the JPEG decoder [SDK]</A></DD>
608<DD><A href="#note33-52">Note 33-52: (JPEG) Added functions for analyzing MP-format data with the JPEG decoder [SDK]</A></DD>
609<DD><A href="#note33-53">Note 33-53: (JPEG) Added functions for setting the image width in the JPEG decoder [SDK]</A></DD>
610<DD><A href="#note33-54">Note 33-54: (JPEG) Added thumbnail output formats for the JPEG encoder [SDK]</A></DD>
611<DD><A href="#note33-55">Note 33-55: (JPEG) Added functions for applications to get and set MakerNote data [SDK]</A></DD>
612<DD><A href="#note33-56">Note 33-56: (MATH) Added the <CODE>SafeNormalize</CODE> functions [SDK]</A></DD>
613<DD><A href="#note33-57">Note 33-57: (MATH) Improved the accuracy of sine and cosine calculations [SDK]</A></DD>
614<DD><A href="#note33-58">Note 33-58: (MATH) Added multiplication functions for all components in <CODE>Vector2</CODE>, <CODE>Vector3</CODE>, and <CODE>Vector4</CODE> vectors [SDK]</A></DD>
615<DD><A href="#note33-59">Note 33-59: (MATH) Fixed a bug in the values obtained by the <CODE>GetRow</CODE> and <CODE>GetColumn</CODE> functions in <CODE>math_Matrix23.h</CODE> [SDK]</A></DD>
616<DD><A href="#note33-60">Note 33-60: (MATH) Increased speed of functions [SDK]</A></DD>
617<DD><A href="#note33-61">Note 33-61: (MIC) Added a return value to the <CODE>mic::FreeBuffer</CODE> function [SDK]</A></DD>
618<DD><A href="#note33-62">Note 33-62: (MIC) Added the microphone library to the default libraries [SDK]</A></DD>
619<DD><A href="#note33-63">Note 33-63: (MIC) Deleted a function that allocates memory and added a function that sets memory [SDK]</A></DD>
620<DD><A href="#note33-64">Note 33-64: (MIDI) Added the MIDI library [SDK | System Updater]</A></DD>
621<DD><A href="#note33-65">Note 33-65: (RDT) Added the RDT library [SDK]</A></DD>
622<DD><A href="#note33-66">Note 33-66: (SND) Added 3D surround sound features [SDK]</A></DD>
623<DD><A href="#note33-67">Note 33-67: (SND) Fixed a bug that corrupted waveforms during ADPCM playback [SDK]</A></DD>
624<DD><A href="#note33-68">Note 33-68: (SND) Fixed a bug in the <CODE>AllocVoice</CODE> function [SDK]</A></DD>
625<DD><A href="#note33-69">Note 33-69: (SND) Added a DSP-ADPCM encoder [SDK]</A></DD>
626<DD><A href="#note33-70">Note 33-70: (SND) Fixed a bug in the <CODE>GetPlayPosition</CODE> function [SDK]</A></DD>
627<DD><A href="#note33-71">Note 33-71: (SND) Added a function to get <CODE>Mix</CODE> bus data [SDK]</A></DD>
628<DD><A href="#note33-72">Note 33-72: (SND) Added a <CODE>MixParam</CODE> constructor [SDK]</A></DD>
629<DD><A href="#note33-73">Note 33-73: (SND) Added functions for loading files in the BCWAV format [SDK]</A></DD>
630<DD><A href="#note33-74">Note 33-74: (SND) Fixed a bug that caused the <CODE>nn::snd::WaitForDspSync</CODE> function to enter an endless loop [SDK]</A></DD>
631<DD><A href="#note33-75">Note 33-75: (SND) Changed definitions in the <CODE>nn::snd::WaveBuffer</CODE> structure [SDK]</A></DD>
632<DD><A href="#note33-76">Note 33-76: (SND) Fixed a bug that caused execution to halt on a null assertion while <CODE>nn::snd::Voice</CODE> was in use [SDK]</A></DD>
633<DD><A href="#note33-77">Note 33-77: (SND) Fixed a SND library bug that would suddenly stop audio output [SDK]</A></DD>
634<DD><A href="#note33-78">Note 33-78: (SND) Added filter features [SDK]</A></DD>
635<DD><A href="#note33-79">Note 33-79: (SND) Added a function for determining whether headphones have been inserted [SDK | System Updater]</A></DD>
636<DD><A href="#note33-80">Note 33-80: (SND) Revised the Function Reference Manual [SDK]</A></DD>
637<DD><A href="#note33-81">Note 33-81: (SND) Fixed loop playback bugs [SDK]</A></DD>
638<DD><A href="#note33-82">Note 33-82: (SND) Added a waveform converter [SDK]</A></DD>
639<DD><A href="#note33-83">Note 33-83: (SND) Fixed a bug that caused the playback position to lag during long playback times [SDK]</A></DD>
640<DD><A href="#note33-84">Note 33-84: (TOOL) Added <CODE>Config</CODE> tool features [SDK]</A></DD>
641<DD><A href="#note33-85">Note 33-85: (TOOL) Changed the <CODE>DevMenu</CODE> [SDK]</A></DD>
642<DD><A href="#note33-86">Note 33-86: (TOOL) Added <CODE>ctr_makecia32.exe</CODE> [SDK]</A></DD>
643<DD><A href="#note33-87">Note 33-87: (TOOL) Added CXI file encryption and CDI file generation [SDK]</A></DD>
644<DD><A href="#note33-88">Note 33-88: (TOOL) Updated the shader assembler and linker [SDK]</A></DD>
645<DD><A href="#note33-89">Note 33-89: (UDS) Changed how the buffer used by the UDS library is allocated [SDK]</A></DD>
646<DD><A href="#note33-90">Note 33-90: (UDS) Fixed a bug that prevented networks from being found after specified channels were scanned [SDK]</A></DD>
647<DD><A href="#note33-91">Note 33-91: (UDS) User name and local friend code are now obtained from the system information [SDK]</A></DD>
648<DD><A href="#note33-92">Note 33-92: (UDS) Changed specifications for the <CODE>CreateNetwork</CODE> and <CODE>Scan</CODE> functions following policy changes to local communication IDs [SDK]</A></DD>
649<DD><A href="#note33-93">Note 33-93: (UGC) Added a profanity-check library [SDK]</A></DD>
650<DD><A href="#note33-94">Note 33-94: (UGC) Added a blacklist library [SDK]</A></DD>
651<DD><A href="#note33-95">Note 33-95: (ULCD) Revised internal calculations in the <CODE>CalculateMatrices[Real]</CODE> functions [SDK]</A></DD>
652<DD><A href="#note33-96">Note 33-96: (ULCD) Changed argument specifications for the <CODE>StereoCamera::CalculateMatrices[Real]</CODE> functions [SDK]</A></DD>
653<DD><A href="#note33-97">Note 33-97: (ULCD) Changed specifications for the <CODE>StereoCamera::GetMaxParallax</CODE> function [SDK]</A></DD>
654<DD><A href="#note33-98">Note 33-98: (ULCD) Updated the <I>Description of the ULCD Library</I> [SDK]</A></DD>
655<DD><A href="#note33-99">Note 33-99: (ULCD) Added functions to get and set the maximum parallax [SDK]</A></DD>
656<DD><A href="#note33-100">Note 33-100: (Y2R) Changed arguments to the <CODE>SetDitheringWeightParam</CODE> function [SDK | System Updater]</A></DD>
657<DD><A href="#note33-101">Note 33-101: (Y2R) Added a <SPAN class="argument">stride</SPAN> argument to functions that transfer source data for conversion [SDK | System Updater]</A></DD>
658<DD><A href="#KnownIssues_0_10_0_Release">Known Issues in the SDK 0.10.0 Release</A></DD>
659</DL>
660<DL>
661<DT>
662<A href="#sdk_0_10_0_Release%20SystemUpdater">CTR-SDK 0.10.0 Release System Updater</A> (2010/06/23)</DT>
663<DD><A href="#note32-01">Note 32-01: (AC) Revised the <CODE>AC_Connect</CODE> function [System Updater]</A></DD>
664<DD><A href="#note32-02">Note 32-02: (AC) Revised the <CODE>AC_ConnectAsync</CODE> function [System Updater]</A></DD>
665<DD><A href="#note32-03">Note 32-03: (AC) <CODE>AC_DebugSetNetworkSettingA</CODE> [System Updater]</A></DD>
666<DD><A href="#note32-04">Note 32-04: (AC) Revised the <CODE>DebugSetNetworkSetting1</CODE> function [System Updater]</A></DD>
667<DD><A href="#note32-05">Note 32-05: (AC) Revised the WPA connection process [System Updater]</A></DD>
668<DD><A href="#note32-06">Note 32-06: (AC) Fixed a scan bug that occurred after a failed connection attempt [System Updater]</A></DD>
669<DD><A href="#note32-07">Note 32-07: (CAMERA) Revised the <CODE>Activate</CODE> function [SDK | System Updater]</A></DD>
670<DD><A href="#note32-08">Note 32-08: (CAMERA) Revised the <CODE>SetAutoWhiteBalance</CODE> function [SDK | System Updater]</A></DD>
671<DD><A href="#note32-09">Note 32-09: (CAMERA) Revised the <CODE>SetNoiseFilter</CODE> function [SDK | System Updater]</A></DD>
672<DD><A href="#note32-10">Note 32-10: (CAMERA) Revised the <CODE>SetTrimmingParams</CODE> and <CODE>SetTrimmingParamsCenter</CODE> functions [SDK | System Updater]</A></DD>
673<DD><A href="#note32-11">Note 32-11: (CAMERA) Added support for the camera LED [SDK | System Updater]</A></DD>
674<DD><A href="#note32-12">Note 32-12: (CAMERA) Added a function to play the shutter sound [SDK | System Updater]</A></DD>
675<DD><A href="#note32-13">Note 32-13: (CAMERA/Y2R) Changed the <CODE>Initialize</CODE> function's return value [SDK | System Updater]</A></DD>
676<DD><A href="#note32-14">Note 32-14: (FS) Revised NAND and SD Memory Card error processing [System Updater]</A></DD>
677<DD><A href="#note32-15">Note 32-15: (HID) Revised the <CODE>nn::fs::Directory::Read</CODE> function [System Updater]</A></DD>
678<DD><A href="#note32-16">Note 32-16: (FS) Revised <CODE>sdmc:</CODE> archives [SDK | System Updater]</A></A></DD>
679<DD><A href="#note32-17">Note 32-17: (FS) Added save data support [SDK | System Updater]</A></DD>
680<DD><A href="#note32-18">Note 32-18: (FS) Added support for 8.3 filenames that only have lowercase characters [SDK | System Updater]</A></DD>
681<DD><A href="#note32-19">Note 32-19: (FS) Added support for add-on data [System Updater]</A></DD>
682<DD><A href="#note32-20">Note 32-20: (GX) Changed LCD backlight-related settings [System Updater]</A></DD>
683<DD><A href="#note32-21">Note 32-21: (GX) Added the <CODE>SetMemAccessPrioMode</CODE> function [SDK | System Updater]</A></DD>
684<DD><A href="#note32-22">Note 32-22: (GX) Fixed problem that caused vertical line noise to appear on screen [System Updater]</DD>
685<DD><A href="#note32-23">Note 32-23: (HTTP/SSL) Added support for internal certificates [System Updater]</A></DD>
686<DD><A href="#note32-24">Note 32-24: (MIDI) Added the MIDI library [SDK | System Updater]</A></DD>
687<DD><A href="#note32-25">Note 32-25: (NET) Added wireless On/Off features [System Updater]</A></DD>
688<DD><A href="#note32-26">Note 32-26: (OS) Fixed a bug where <CODE>Wait*</CODE> functions with a timeout would not return [System Updater]</A></DD>
689<DD><A href="#note32-27">Note 32-27: (OS) Revised the order in which synchronous objects release threads [System Updater]</A></DD>
690<DD><A href="#note32-28">Note 32-28: (OS) Modified the length of time until power-off [System Updater]</A></DD>
691<DD><A href="#note32-29">Note 32-29: (SND) High-frequency sound when headphones are inserted [System Updater]</A></DD>
692<DD><A href="#note32-30">Note 32-30: (SND) Added a function for determining whether headphones have been inserted [SDK | System Updater]</A></DD>
693<DD><A href="#note32-31">Note 32-31: (Socket) Changed header files [SDK]</A></DD>
694<DD><A href="#note32-32">Note 32-32: (Socket/UDS) Fixed problem where system would deadlock under high load [System Updater]</A></DD>
695<DD><A href="#note32-33">Note 32-33: (UDS) Added support for <CODE>Audience</CODE> mode [System Updater]</A></DD>
696<DD><A href="#note32-34">Note 32-34: (UDS) Implemented <CODE>EjectAudience</CODE> function [System Updater]</A></DD>
697<DD><A href="#note32-35">Note 32-35: (UDS) Fixed bug where <CODE>SetApplicationDataToBeacon</CODE> and <CODE>GetApplicationDataFromBeacon</CODE> functions could not set or get data [System Updater]</A></DD>
698<DD><A href="#note32-36">Note 32-36: (UDS) Reduced processing load when receiving [System Updater]</A></DD>
699<DD><A href="#note32-37">Note 32-37: (ULCD) Added support for automatically disabling stereoscopic display [System Updater]</A></DD>
700<DD><A href="#note32-38">Note 32-38: (Y2R) Changed arguments to the <CODE>SetDitheringWeightParam</CODE> function [SDK | System Updater]</A></DD>
701<DD><A href="#note32-39">Note 32-39: (Y2R) Added a <SPAN class="argument">stride</SPAN> argument to functions that transfer source data for conversion [SDK | System Updater]</A></DD>
702<DD><A href="#KnownIssues_0_10_0_Release%20SystemUpdater">Known Issues with SDK 0.10.0 Release System Updater</A></DD>
703</DL>
704<DL>
705<DT>
706<A href="#sdk_0_10_0_Release%20SampleDemos">CTR-SDK 0.10.0 Release Sample Demos</A> (2010/06/23)</DT>
707<DD><A href="#note31-01">Note 31-01: (FS) Added features to the multifeature demos [Sample Demos]</A></DD>
708<DD><A href="#note31-02">Note 31-02: (GX) Sped up the <CODE>ScreenCapture</CODE> sample and fixed a bug in it [Sample Demos]</A></DD>
709<DD><A href="#note31-03">Note 31-03: (GX) Added graphics demos [Sample Demos]</A></DD>
710<DD><A href="#note31-04">Note 31-04: (HIO) Revised the PC-side <CODE>HostIO</CODE> sample [Sample Demos]</A></DD>
711<DD><A href="#note31-05">Note 31-05: (RDT) Added RDT sample demos [Sample Demos]</A></DD>
712<DD><A href="#note31-06">Note 31-06: (SND) Added sample demos [Sample Demos]</A></DD>
713<DD><A href="#note31-07">Note 31-07: (UGC) Added simple sample of the profanity-check library [Sample Demos]</A></DD>
714<DD><A href="#note31-08">Note 31-08: (UGC) Added simple sample of the blacklist library [Sample Demos]</A></DD>
715<DD><A href="#KnownIssues_0_10_0_Release%20SampleDemos">Known Issues with SDK 0.10.0 Release Sample Demos</A></DD>
716</DL>
717<DL>
718<DT>
719<A href="#sdk_0_9_7_Release">CTR-SDK 0.9.7 Release</A> (2010/05/26)</DT>
720<DD><A href="#KnownIssues_0_9_7_Release">Known Issues in the SDK 0.9.7 Release</A></DD>
721</DL>
722<DL>
723<DT>
724<A href="#sdk_0_9_7_Release%20SystemUpdater">CTR-SDK 0.9.7 Release System Updater</A> (2010/05/26)</DT>
725<DD><A href="#note29-01">Note 29-01: (SND) Improved sound pressure levels in headphone output and removed distortion [System Updater]</A></DD>
726<DD><A href="#KnownIssues_0_9_7_Release%20SystemUpdater">Known Issues with System Updater in the SDK 0.9.7 Release</A></DD>
727</DL>
728<DL>
729<DT>
730<A href="#sdk_0_9_6_Release">CTR-SDK 0.9.6 Release</A> (2010/05/24)</DT>
731<DD><A href="#note28-01">Note 28-01: (GX) Fixed a bug in the texture cache flush [SDK]</A></DD>
732<DD><A href="#KnownIssues_0_9_6_Release">Known Issues with SDK 0.9.6 Release</A></DD>
733</DL>
734<DL>
735<DT>
736<A href="#sdk_0_9_6_Release%20SystemUpdater">CTR-SDK 0.9.6 Release System Updater</A> (2010/05/24)</DT>
737<DD><A href="#note27-01">Note 27-01: (CAMERA/Y2R) Fixed a bug where function calls would not return [System Updater]</A></DD>
738<DD><A href="#KnownIssues_0_9_6_Release%20SystemUpdater">Known Issues with System Updater in the SDK 0.9.6 Release</A></DD>
739</DL>
740<DL>
741<DT>
742<A href="#sdk_0_9_5_Release">CTR-SDK 0.9.5 Release</A> (2010/05/20)</DT>
743<DD><A href="#note26-01">Note 26-01: (SND) Fixed a bug that occurred during a Voice volume change [SDK]</A></DD>
744<DD><A href="#KnownIssues_0_9_5_Release">Known Issues in the SDK 0.9.5 Release</A></DD>
745</DL>
746<DL>
747<DT>
748<A href="#sdk_0_9_4_Release">CTR-SDK 0.9.4 Release</A> (2010/05/19)</DT>
749<DD><A href="#note25-01">Note 25-01: (SND) Fixed a Volume Mixer bug [SDK]</A></DD>
750<DD><A href="#KnownIssues_0_9_4_Release">Known Issues in the SDK 0.9.4 Release</A></DD>
751</DL>
752<DL>
753<DT>
754<A href="#sdk_0_9_4_Release%20SystemUpdater">CTR-SDK 0.9.4 Release System Updater</A> (2010/05/19)</DT>
755<DD><A href="#note24-01">Note 24-01: (MCU) Changed the 3D LED to always be illuminated [System Updater]</A></DD>
756<DD><A href="#note24-02">Note 24-02: (MCU) Fixed a bug that caused the volume to increase temporarily at indeterminate times [System Updater]</A></DD>
757<DD><A href="#note24-03">Note 24-03: (MCU) Fixed a bug that caused the power and LCDs to turn off, and resets to occur, at indeterminate times [System Updater]</A></DD>
758<DD><A href="#note24-04">Note 24-04: (MCU) Changed the time to power off when the Power Button is held down [System Updater]</A></DD>
759<DD><A href="#note24-05">Note 24-05: (OS) Fixed a bug that caused the firmware to halt when running for a long time [System Updater]</A></DD>
760<DD><A href="#KnownIssues_0_9_4_Release%20SystemUpdater">Known Issues with System Updater in the SDK 0.9.4 Release</A></DD>
761</DL>
762<DL>
763<DT>
764<A href="#sdk_0_9_3_Release">CTR-SDK 0.9.3 Release</A> (2010/05/12)</DT>
765<DD><A href="#note23-01">Note 23-01: (GX) Added header files with macros for PICA register information [SDK]</A></DD>
766<DD><A href="#note23-02">Note 23-02: (GX) Updated documentation [SDK]</A></DD>
767<DD><A href="#note23-03">Note 23-03: (GX) Added a way to get the address of data for bound textures [SDK]</A></DD>
768<DD><A href="#note23-04">Note 23-04: (GX) Fixed a bug that prevented fixed vertex attributes from being updated properly when program objects were switched [SDK]</A></DD>
769<DD><A href="#note23-05">Note 23-05: (GX) Added a way to get the address of vertex data for bound vertex buffer objects [SDK]</A></DD>
770<DD><A href="#KnownIssues_0_9_3_Release">Known Issues in the SDK 0.9.3 Release</A></DD>
771</DL>
772<DL>
773<DT>
774<A href="#sdk_0_9_3_Release%20SystemUpdater">CTR-SDK 0.9.3 Release System Updater</A> (2010/05/12)</DT>
775<DD><A href="#note22-01">Note 22-01: (Miscellaneous) Fixed a bug that caused program execution to freeze in some environments [System Updater]</A></DD>
776<DD><A href="#KnownIssues_0_9_3_Release%20SystemUpdater">Known Issues with System Updater in the SDK 0.9.3 Release</A></DD>
777</DL>
778<DL>
779<DT>
780<A href="#sdk_0_9_2_Release">CTR-SDK 0.9.2 Release</A> (2010/05/07)</DT>
781<DD><A href="#note21-01">Note 21-01: (CAMERA) Calibration data definitions for stereo cameras [SDK | System Updater]</A></DD>
782<DD><A href="#note21-02">Note 21-02: (GX) Updated the DMPGL documentation [SDK]</A></DD>
783<DD><A href="#note21-03">Note 21-03: (GX) Removed error checks for Release builds [SDK]</A></DD>
784<DD><A href="#note21-04">Note 21-04: (GX) Fixed bugs in <CODE>glFramebufferRenderbuffer</CODE> [SDK]</A></DD>
785<DD><A href="#note21-05">Note 21-05: (GX) Fixed a problem that caused invalid format recognition when <CODE>glTexImage2D</CODE> was called multiple times [SDK]</A></DD>
786<DD><A href="#note21-06">Note 21-06: (GX) Added the <CODE>nngxGetCommandGenerationMode</CODE> function [SDK]</A></DD>
787<DD><A href="#note21-07">Note 21-07: (GX) Fixed a bug that caused only 239 lines to be displayed on the lower screen [SDK]</A></DD>
788<DD><A href="#note21-08">Note 21-08: (GX) Fixed a bug that caused execution to hang when no vertex attributes used vertex arrays [SDK]</A></DD>
789<DD><A href="#note21-09">Note 21-09: (HID) Added support for the Classic Controller PRO for development tools [SDK]</A></DD>
790<DD><A href="#note21-10">Note 21-10: (SND) Fixed sound distortion [SDK]</A></DD>
791<DD><A href="#note21-11">Note 21-11: (SND) Fixed a bug that caused all sound playback to stop when neither a loop or buffer jump was specified [SDK]</A></DD>
792<DD><A href="#note21-12">Note 21-12: (TOOL) Added <CODE>DevMenu</CODE> [SDK]</A></DD>
793<DD><A href="#note21-13">Note 21-13: (TOOL) Updated the shader assembly language [SDK]</A></DD>
794<DD><A href="#note21-14">Note 21-14: (ULCD) Changed prerequisites [SDK]</A></DD>
795<DD><A href="#note21-15">Note 21-15: (ULCD) Added macro definitions that specify the display in autostereoscopic mode [SDK]</A></DD>
796<DD><A href="#KnownIssues_0_9_2_Release">Known Issues with SDK 0.9.2 Release</A></DD>
797</DL>
798<DL>
799<DT>
800<A href="#sdk_0_9_2_Release%20SystemUpdater">CTR-SDK 0.9.2 Release System Updater</A> (2010/05/07)</DT>
801<DD><A href="#note20-01">Note 20-01: (OS) Added support for debugging CIA files [System Updater]</A></DD>
802<DD><A href="#note20-02">Note 20-02: (OS) Fixed a bug that caused the debugger to hang when loading a process [System Updater]</A></DD>
803<DD><A href="#note20-03">Note 20-03: (UDS) Fixed a bug that prevented Client nodes from reconnecting [System Updater]</A></DD>
804<DD><A href="#note20-04">Note 20-04: (UDS) Fixed a bug that corrupted Master management data when a Client failed to connect [System Updater]</A></DD>
805<DD><A href="#KnownIssues_0_9_2_Release%20SystemUpdater">Known Issues with System Updater in SDK 0.9.2 Release</A></DD>
806</DL>
807<DL>
808<DT>
809<A href="#sdk_0_9_2_Release%20SampleDemos">CTR-SDK 0.9.2 Release Sample Demos</A> (2010/05/07)</DT>
810<DD><A href="#note19-01">Note 19-01: (GX) Added <CODE>ScreenCapture</CODE> sample demos [Sample Demos]</A></DD>
811<DD><A href="#KnownIssues_0_9_2_Release%20SampleDemos">Known Issues with SDK 0.9.2 Release Sample Demos</A></DD>
812</DL>
813<DL>
814<DT>
815<A href="#sdk_0_9_1_Release">CTR-SDK 0.9.1 Release</A> (2010/04/23)</DT>
816<DD><A href="#note18-01">Note 18-01: (OS) Fixed bugs for file read and write operations [<B>SDK</B>]</A></DD>
817<DD><A href="#note18-02">Note 18-02: (SND) Changed the DSP sound specifications [<B>SDK</B>]</A></DD>
818<DD><A href="#note18-03">Note 18-03: (TOOL) Added <CODE>ctr_makesimplecia32.exe</CODE> [<B>SDK</B>]</A></DD>
819<DD><A href="#note18-04">Note 18-04: (UDS) Revised the <CODE>nn::uds::Finalize</CODE> function to finalize status update events [<B>SDK</B>]</A></DD>
820<DD><A href="#note18-05">Note 18-05: (UDS) Eliminated use of <CODE>std::vector</CODE> by the library [<B>SDK</B>]</A></DD>
821<DD><A href="#KnownIssues_0_9_1_Release">Known Issues with SDK 0.9.1 Release</A></DD>
822</DL>
823<DL>
824<DT>
825<A href="#sdk_0_9_1_Release%20SystemUpdater">CTR-SDK 0.9.1 Release System Updater</A> (2010/04/23)</DT>
826<DD><A href="#note17-01">Note 17-01: (OS) Revised adjustments for LCD flickering [System Updater]</A></DD>
827<DD><A href="#note17-02">Note 17-02: (SOCKET) Revised the socket startup and finalization [System Updater]</A></DD>
828<DD><A href="#note17-03">Note 17-03: (SOCKET) Revised the packet-sending operation [System Updater]</A></DD>
829<DD><A href="#KnownIssues_0_9_1_Release%20SystemUpdater">Known Issues with SDK 0.9.1 Release System Updater</A></DD>
830</DL>
831<DL>
832<DT>
833<A href="#sdk_0_9_1_Release%20SampleDemos">CTR-SDK 0.9.1 Release Sample Demos</A> (2010/04/23)</DT>
834<DD><A href="#note16-01">Note 16-01: (DEMO) Fixed bugs related to double-buffering of the display buffer [Sample Demos]</A></DD>
835<DD><A href="#KnownIssues_0_9_1_Release%20SampleDemos">Known Issues with SDK 0.9.1 Release Sample Demos</A></DD>
836</DL>
837<DL>
838<DT>
839<A href="#sdk_0_9_0_Release">CTR-SDK 0.9.0 Release</A> (2010/04/14)</DT>
840<DD><A href="#note15-01">Note 15-01: (AC) Added AC library [SDK | System Updater]</A></DD>
841<DD><A href="#note15-02">Note 15-02: (CAMERA) Added support for the second outer camera [SDK | System Updater]</A></DD>
842<DD><A href="#note15-03">Note 15-03: (CAMERA) Revised the CAMERA library configuration functions [SDK | System Updater]</A></DD>
843<DD><A href="#note15-04">Note 15-04: (CAMERA) Revised CAMERA AC library functions [SDK | System Updater]</A></DD>
844<DD><A href="#note15-05">Note 15-05: (CAMERA) Revised reference for <CODE>nn::camera::CTR::FrameRate</CODE> [SDK]</A></DD>
845<DD><A href="#note15-06">Note 15-06: (CAMERA) Adjusted the camera image quality [SDK | System Updater]</A></DD>
846<DD><A href="#note15-07">Note 15-07: (CAMERA) Added image data auto-receive configuration functions [SDK | System Updater]</A></DD>
847<DD><A href="#note15-08">Note 15-08: (CECD) Added Chance Encounter Communication daemon (alpha version) [SDK]</A></DD>
848<DD><A href="#note15-09">Note 15-09: (DBG) Debugger output, ASSERT enable / disable switch [SDK]</A></DD>
849<DD><A href="#note15-10">Note 15-10: (DEMO) Moved the demo library [SDK | Sample Demos]</A></DD>
850<DD><A href="#note15-11">Note 15-11: (DSP) Moved header files [SDK]</A></DD>
851<DD><A href="#note15-12">Note 15-12: (DevEnv) Added <CODE>--gnu</CODE> option [SDK]</A></DD>
852<DD><A href="#note15-13">Note 15-13: (DevEnv) Changed to -Otime [SDK]</A></DD>
853<DD><A href="#note15-14">Note 15-14: (DevEnv) Added TS board support [SDK | System Updater]</A></DD>
854<DD><A href="#note15-15">Note 15-15: (DevEnv) Added Windows 7 64-bit OS support [SDK]</A></DD>
855<DD><A href="#note15-16">Note 15-16: (DevEnv) Changed version.h [SDK]</A></DD>
856<DD><A href="#note15-17">Note 15-17: (DevEnv) Added BOM to source code [SDK]</A></DD>
857<DD><A href="#note15-18">Note 15-18: (DevEnv) Changed dependency analysis [SDK]</A></DD>
858<DD><A href="#note15-19">Note 15-19: (DevEnv) Restricted function call optimization [SDK]</A></DD>
859<DD><A href="#note15-20">Note 15-20: (FND) Added features to <CODE>nn::fnd::DateTime</CODE> class [SDK]</A></DD>
860<DD><A href="#note15-21">Note 15-21: (FND) Added <CODE>nn::fnd::DateTimeParameters</CODE> [SDK]</A></DD>
861<DD><A href="#note15-22">Note 15-22: (FS) Revised ROMFS file alignment [SDK]</A></DD>
862<DD><A href="#note15-23">Note 15-23: (FS) Added <CODE>nn::fnd::Directory</CODE> class [SDK]</A></DD>
863<DD><A href="#note15-24">Note 15-24: (FS) Changed <CODE>nn::fnd::DirectoryEntry</CODE> structure member size [SDK]</A></DD>
864<DD><A href="#note15-25">Note 15-25: (GX) Fixed a bug where no command would be generated for the viewport during <CODE>NN_GX_STATE_OTHERS</CODE> validation [SDK]</A></DD>
865<DD><A href="#note15-26">Note 15-26: (GX) Added TS features (texture processing) [SDK]</A></DD>
866<DD><A href="#note15-27">Note 15-27: (GX) Added TS features (fragment lighting) [SDK]</A></DD>
867<DD><A href="#note15-28">Note 15-28: (GX) Fixed a bug relating to <CODE>dmp_LightEnv.bumpRenorm</CODE>, <CODE>dmp_LightEnv.bumpMode</CODE> [SDK]</A></DD>
868<DD><A href="#note15-29">Note 15-29: (GX) Fixed a bug in <CODE>glFramebufferTexture2D</CODE> function error check [SDK]</A></DD>
869<DD><A href="#note15-30">Note 15-30: (GX) Relaxed error checking in the <CODE>nngxAdd3DCommand</CODE> [SDK]</A></DD>
870<DD><A href="#note15-31">Note 15-31: (GX) Changed the <CODE>nngxCopyCmdlist</CODE> function to allow copying to a command list that is waiting [SDK]</A></DD>
871<DD><A href="#note15-32">Note 15-32: (GX) Fixed a bug in the <CODE>nngxCopyCmdlist</CODE> function where command counters were not cleared after execution [SDK]</A></DD>
872<DD><A href="#note15-33">Note 15-33: (GX) Deprecated the <CODE>nngxReserveSwapBuffers</CODE> function [SDK]</A></DD>
873<DD><A href="#note15-34">Note 15-34: (GX) Added error check to the <CODE>nngxSwapBuffers</CODE> function [SDK]</A></DD>
874<DD><A href="#note15-35">Note 15-35: (GX) Added functions for command cache feature [SDK]</A></DD>
875<DD><A href="#note15-36">Note 15-36: (GX) Added ability to specify only a part of a data transfer pattern [SDK]</A></DD>
876<DD><A href="#note15-37">Note 15-37: (GX) Optimized geometry shader for lines that only have vertex attributes [SDK]</A></DD>
877<DD><A href="#note15-38">Note 15-38: (GX) Fixed an error check bug when 0 is specified for the data when creating a vertex buffer [SDK]</A></DD>
878<DD><A href="#note15-39">Note 15-39: (HID) Clamping touch panel input [SDK]</A></DD>
879<DD><A href="#note15-40">Note 15-40: (HIO) Added samples and documentation for the HIO library [SDK]</A></DD>
880<DD><A href="#note15-41">Note 15-41: (HIO) Revised host-side file operations [SDK]</A></DD>
881<DD><A href="#note15-42">Note 15-42: (HIO) Added functions and classes to support wide-character strings [SDK]</A></DD>
882<DD><A href="#note15-43">Note 15-43: (SSL) Added the HTTP library [SDK | System Updater]</A></DD>
883<DD><A href="#note15-44">Note 15-44: (JPEG) Added the JPEG codec library [SDK]</A></DD>
884<DD><A href="#note15-45">Note 15-45: (MATH) Added the MATH library functions [SDK]</A></DD>
885<DD><A href="#note15-46">Note 15-46: (MATH) Fixed bugs in <CODE>SinFIdx</CODE>, <CODE>CosFIdx</CODE>, <CODE>SinCosFIdx </CODE>functions [SDK]</A></DD>
886<DD><A href="#note15-47">Note 15-47: (MATH) Made the <CODE>math</CODE> API inline [SDK]</A></DD>
887<DD><A href="#note15-48">Note 15-48: (MATH) Added member functions to the matrix and vector classes [SDK]</A></DD>
888<DD><A href="#note15-49">Note 15-49: (MATH) Optimized by rewriting (some) functions in assembler [SDK]</A></DD>
889<DD><A href="#note15-50">Note 15-50: (OS) Fixed a bug when specifying sizes in excess of 8MB when calling the <CODE>nn::init::InitializeAllocator</CODE> function [SDK]</A></DD>
890<DD><A href="#note15-51">Note 15-51: (OS) Changed specifications for the <CODE>nninitStaticInit</CODE> function [SDK]</A></DD>
891<DD><A href="#note15-52">Note 15-52: (OS) Changed the program initialization sequence [SDK]</A></DD>
892<DD><A href="#note15-53">Note 15-53: (OS) Added high-speed synchronization mechanisms [SDK | System Updater]</A></DD>
893<DD><A href="#note15-54">Note 15-54: (SND) Fixed a bug when specifying a pitch higher than 14 during ADPCM playback [SDK]</A></DD>
894<DD><A href="#note15-55">Note 15-55: (SND) Added Aux bus [SDK]</A></DD>
895<DD><A href="#note15-56">Note 15-56: (SND) Added functions to set and get DSP cycle count [SDK]</A></DD>
896<DD><A href="#note15-57">Note 15-57: (SND) Changed <CODE>nn::snd::MixParam</CODE> structure format [SDK]</A></DD>
897<DD><A href="#note15-58">Note 15-58: (SND) Fixed a bug where execution would not finish even after reaching the end of a sample [SDK]</A></DD>
898<DD><A href="#note15-59">Note 15-59: (SND) Changed parameter default values [SDK]</A></DD>
899<DD><A href="#note15-60">Note 15-60: (SND) Moved header files [SDK]</A></DD>
900<DD><A href="#note15-61">Note 15-61: (SND) Fixed a bug in releasing voice buffers [SDK]</A></DD>
901<DD><A href="#note15-62">Note 15-62: (SND) Optimized the library [SDK]</A></DD>
902<DD><A href="#note15-63">Note 15-63: (SND) Fixed a bug that would occur when clearing loop flag during loop playback [SDK]</A></DD>
903<DD><A href="#note15-64">Note 15-64: (SND) Added features to set and get interpolation method [SDK]</A></DD>
904<DD><A href="#note15-65">Note 15-65: (SOCKET) Added the socket library [SDK | System Updater]</A></DD>
905<DD><A href="#note15-66">Note 15-66: (SSL) Added the SSL library [SDK | System Updater]</A></DD>
906<DD><A href="#note15-67">Note 15-67: (TOOL) Added the <CODE>Config</CODE> tool [SDK]</A></DD>
907<DD><A href="#note15-68">Note 15-68: (UDS) Added the UDS library [SDK | System Updater]</A></DD>
908<DD><A href="#note15-69">Note 15-69: (ULCD) Added the autostereoscopy feature (API to change LCD mode and the LUCD library) [SDK]</A></DD>
909<DD><A href="#note15-70">Note 15-70: (Y2R) Revised the Y2R library functions [SDK]</A></DD>
910<DD><A href="#note15-71">Note 15-71: (Y2R) Added a <SPAN class="argument">stride</SPAN> argument to functions that transfer source data for conversion [SDK | System Updater]</A></DD>
911<DD><A href="#KnownIssues_0_9_0_Release">Known Issues with SDK 0.9.0 Release</A></DD>
912</DL>
913<DL>
914<DT>
915<A href="#sdk_0_9_0_Release%20SystemUpdater">CTR-SDK 0.9.0 Release System Updater</A> (2010/04/14)</DT>
916<DD><A href="#note14-01">Note 14-01: (AC) Added AC library [SDK | System Updater]</A></DD>
917<DD><A href="#note14-02">Note 14-02: (CAMERA) Added support for the second outer camera [SDK | System Updater]</A></DD>
918<DD><A href="#note14-03">Note 14-03: (CAMERA) Revised the CAMERA library configuration functions [SDK | System Updater]</A></DD>
919<DD><A href="#note14-04">Note 14-04: (CAMERA) Revised CAMERA AC library functions [SDK | System Updater]</A></DD>
920<DD><A href="#note14-05">Note 14-05: (CAMERA) Adjusted the camera image quality [SDK | System Updater]</A></DD>
921<DD><A href="#note14-06">Note 14-06: (CAMERA) Added image data auto-receive configuration functions [SDK | System Updater]</A></DD>
922<DD><A href="#note14-07">Note 14-07: (DevEnv) Added TS board support [SDK | System Updater]</A></DD>
923<DD><A href="#note14-08">Note 14-08: (FS) Fixed FATFS access bug [System Updater]</A></DD>
924<DD><A href="#note14-09">Note 14-09: (FS) Added DMA support for NAND/SD Memory Cards [System Updater]</A></DD>
925<DD><A href="#note14-10">Note 14-10: (FS) Implemented directory scans in ROM [System Updater]</A></DD>
926<DD><A href="#note14-11">Note 14-11: (GX) Removed alignment restrictions during VRAM transfers [System Updater]</A></DD>
927<DD><A href="#note14-12">Note 14-12: (GX) Fixed a bug in the lower-screen swap buffer [System Updater]</A></DD>
928<DD><A href="#note14-13">Note 14-13: (HID) Revised the <CODE>Reader</CODE> function of <CODE>TouchPanelReader</CODE> [System Updater]</A></DD>
929<DD><A href="#note14-14">Note 14-14: (SSL) Added the HTTP library [SDK | System Updater]</A></DD>
930<DD><A href="#note14-15">Note 14-15: (OS) Revised the <CODE>nn::os::Timer::ClearSignal</CODE> function [System Updater]</A></DD>
931<DD><A href="#note14-16">Note 14-16: (OS) Set upper limit on number of threads [System Updater]</A></DD>
932<DD><A href="#note14-17">Note 14-17: (OS) Fixed a bug where debugger would fail to load <CODE>cci</CODE> files [System Updater]</A></DD>
933<DD><A href="#note14-18">Note 14-18: (OS) Fixed a bug where hard breaks would not be possible after setting a breakpoint in the debugger [System Updater]</A></DD>
934<DD><A href="#note14-19">Note 14-19: (OS) Modified the debugger exception notifications [System Updater]</A></DD>
935<DD><A href="#note14-20">Note 14-20: (OS) Fixed mutual exclusion bug in the firmware [System Updater]</A></DD>
936<DD><A href="#note14-21">Note 14-21: (OS) Fixed a bug where cycle timer cycles got longer [System Updater]</A></DD>
937<DD><A href="#note14-22">Note 14-22: (OS) Added high-speed synchronization mechanisms [SDK | System Updater]</A></DD>
938<DD><A href="#note14-23">Note 14-23: (SND) Fixed a bug where volume was too low [System Updater]</A></DD>
939<DD><A href="#note14-24">Note 14-24: (SND) Fixed a bug where volume + / - symbols were backwards [System Updater]</A></DD>
940<DD><A href="#note14-25">Note 14-25: (SOCKET) Added the socket library [SDK | System Updater]</A></DD>
941<DD><A href="#note14-26">Note 14-26: (SSL) Added the SSL library [SDK | System Updater]</A></DD>
942<DD><A href="#note14-27">Note 14-27: (UDS) Added the UDS library [SDK | System Updater]</A></DD>
943<DD><A href="#note14-28">Note 14-28: (Y2R) Added a <SPAN class="argument">stride</SPAN> argument to functions that transfer source data for conversion [SDK | System Updater]</A></DD>
944<DD><A href="#KnownIssues_0_9_0_Release%20SystemUpdater">Known Issues with SDK 0.9.0 Release System Updater</A></DD>
945</DL>
946<DL>
947<DT>
948<A href="#sdk_0_9_0_Release%20SampleDemos">CTR-SDK 0.9.0 Release Sample Demos</A> (2010/04/14)</DT>
949<DD><A href="#note13-01">Note 13-01: (DEMO) Moved the demo library [SDK | Sample Demos]</A></DD>
950<DD><A href="#note13-02">Note 13-02: (GX) Changed graphics demos [Sample Demos]</A></DD>
951<DD><A href="#note13-03">Note 13-03: (GX) Changed vertex shader assembly code for sample demos [Sample Demos]</A></DD>
952<DD><A href="#note13-04">Note 13-04: (GX) Added two types of samples for fragment lighting [Sample Demos]</A></DD>
953<DD><A href="#note13-05">Note 13-05: (SND) Changed sample demos [Sample Demos]</A></DD>
954<DD><A href="#note13-06">Note 13-06: (SND) Added sample demos [Sample Demos]</A></DD>
955<DD><A href="#note13-07">Note 13-07: (ULCD) Added ULCD sample demos [Sample Demos]</A></DD>
956<DD><A href="#note13-08">Note 13-08: (Other) Changed demo1 [Sample Demos]</A></DD>
957<DD><A href="#note13-09">Note 13-09: (Other) Deleted <CODE>using namespace</CODE> declaration from sample demos [Sample Demos]</A></DD>
958<DD><A href="#KnownIssues_0_9_0_Release%20SampleDemos">Known Issues with SDK 0.9.0 Release Sample Demos</A></DD>
959</DL>
960<DL>
961<DT>
962<A href="#sdk_0_8_3_Release">CTR-SDK 0.8.3 Release</A> (2010/03/15)</DT>
963<DD><A href="#note12-01">Note 12-01: Note 12-01: (DEMO) Revised the internal operations of the <CODE>nn::demo::RunCmdlistDone</CODE> function [<span>SDK</span>]</DD>
964<DD><A href="#note12-02">Note 12-02: (DEMO) Replaced the <CODE>nngxReserveSwapBuffers</CODE> function with the <CODE>nngxSwapBuffers</CODE> function [SDK | Sample Demos]</DD>
965<DD><A href="#note12-03">Note 12-03: (GX) Updated the DMPGL documentation [SDK]</A></DD>
966<DD><A href="#note12-04">Note 12-04: Note 12-04: (GX) Fixed a bug related to dmp_Texture*.samplerType switching [<span>SDK</span>]</DD>
967<DD><A href="#note12-05">Note 12-05: (GX) Fixed a bug involving setting the alpha component with the <CODE>glBlend*</CODE> functions [SDK]</A></DD>
968<DD><A href="#note12-06">Note 12-06: (GX) Fixed bugs in <CODE>glBufferData</CODE> function [SDK]</A></DD>
969<DD><A href="#note12-07">Note 12-07: (GX) Fixed bugs in <CODE>glBufferSubData</CODE> function [SDK]</A></DD>
970<DD><A href="#note12-08">Note 12-08: (GX) Changed <CODE>glBufferSubData</CODE> function specifications [SDK]</A></DD>
971<DD><A href="#note12-09">Note 12-09: (GX) Fixed bugs in the <CODE>glLinkProgram</CODE> function [SDK]</A></DD>
972<DD><A href="#note12-10">Note 12-10: Note 12-10: (GX) Added a parameter obtained by the <CODE>nngxGetCmdlistParameteri</CODE> function [<span>SDK</span>]</DD>
973<DD><A href="#note12-11">Note 12-11: (GX) Fixed issues with the error detection of the <CODE>nngxInitialize</CODE> function [<span>SDK</span>]</A></DD>
974<DD><A href="#note12-12">Note 12-12: (GX) Changed the <CODE>nngxReserveSwapBuffers</CODE> function to be equivalent of the <CODE>nngxSwapBuffers</CODE> function [SDK]</DD>
975<DD><A href="#note12-13">Note 12-13: (GX) Revised the error checking of the <CODE>nngxTransferRenderImage</CODE> and <CODE>nngxSwapBuffers</CODE> functions [SDK]</A></DD>
976<DD><A href="#note12-14">Note 12-14: (GX) Changed specifications for the command cache feature [SDK]</A></DD>
977<DD><A href="#note12-15">Note 12-15: (GX) Changed the timing when command lists are destroyed and cleared [SDK]</DD>
978<DD><A href="#note12-16">Note 12-16: (GX) Added a function that waits until a command list finishes executing [SDK]</DD>
979<DD><A href="#note12-17">Note 12-17: (GX) Changed the timing when command completion interrupt handlers are registered and disabled [SDK]</DD>
980<DD><A href="#note12-18">Note 12-18: (GX) Added system API error codes [SDK]</A></DD>
981<DD><A href="#note12-19">Note 12-19: (GX) Fixed a bug in procedural textures [SDK]</A></DD>
982<DD><A href="#note12-20">Note 12-20: (TOOL) Updated the shader assembly language [SDK]</A></DD>
983<DD><A href="#KnownIssues_0_8_3_Release">Known Issues with SDK 0.8.3 Release</A></DD>
984</DL>
985<DL>
986<DT>
987<A href="#sdk_0_8_3_Release%20SampleDemos">CTR-SDK 0.8.3 Release Sample Demos</A> (2010/03/15)</DT>
988<DD><A href="#note11-01">Note 11-01: (DEMO) Replaced the <CODE>nngxReserveSwapBuffers</CODE> function with the <CODE>nngxSwapBuffers</CODE> function [SDK | Sample Demos]</DD>
989<DD><A href="#note11-02">Note 11-02: (GX) Revised the <CODE>GasCessna</CODE> sample [Sample Demos]</A></DD>
990<DD><A href="#note11-03">Note 11-03: (GX) Fixed a bug in the <CODE>GasColorSimple</CODE> sample [Sample Demos]</A></DD>
991<DD><A href="#note11-04">Note 11-04: (GX) Revised the <CODE>ProctexRandom</CODE> sample [Sample Demos]</A></DD>
992<DD><A href="#note11-05">Note 11-05: (GX) Added samples of using command cache [Sample Demos]</A></DD>
993<DD><A href="#KnownIssues_0_8_3_Release%20SampleDemos">Known Issues with SDK 0.8.3 Release Sample Demos</A></DD>
994</DL>
995<DL>
996<DT>
997<A href="#sdk_0_8_2_Release">CTR-SDK 0.8.2 Release</A> (2010/02/22)</DT>
998<DD><A href="#note10-01">Note 10-01: (HIO) Revised the HIO library initialization functions [SDK]</A></DD>
999<DD><A href="#note10-02">Note 10-02: (MATH) Fixed a bug that occurred if the input and output of the <CODE>VEC3Transform</CODE> function were the same [SDK]</A></DD>
1000<DD><A href="#note10-03">Note 10-03: (SND) Fixed a bug in ADPCM playback [SDK]</A></DD>
1001<DD><A href="#note10-04">Note 10-04: (SND) Revised the <CODE>Voice::IsPlaying</CODE> function [SDK]</DD>
1002<DD><A href="#note10-05">Note 10-05: (SND) Revised the <CODE>nn::snd::Voice::GetPlayPosition</CODE> function [SDK]</A></DD>
1003<DD><A href="#note10-06">Note 10-06: (SND) Revised the updating process of voice buffer status [SDK]</A></DD>
1004<DD><A href="#KnownIssues_0_8_2_Release">Known Issues with SDK 0.8.2 Release</A></DD>
1005</DL>
1006<DL>
1007<DT>
1008<A href="#sdk_0_8_1_Release">CTR-SDK 0.8.1 Release</A> (2010/02/17)</DT>
1009<DD><A href="#note9-01">Note 9-01: (DevEnv) Changed compiler and linker options [SDK]</A></DD>
1010<DD><A href="#note9-02">Note 9-02: (HIO) Fixed a bug that prevented CCI files from being loaded if the HostIO functionality was used [SDK]</A></DD>
1011<DD><A href="#note9-03">Note 9-03: (SND) Fixed a bug in ADPCM playback [SDK]</A></DD>
1012<DD><A href="#note9-04">Note 9-04: (SND) Revised how data from DSP is read [SDK]</A></DD>
1013<DD><A href="#note9-05">Note 9-05: (SND) Changed specifications for the <CODE>nn::snd::WaveBuffer</CODE> function [SDK]</A></DD>
1014<DD><A href="#KnownIssues_0_8_1_Release">Known Issues with SDK 0.8.1 Release</A></DD>
1015</DL>
1016<DL>
1017<DT>
1018<A href="#sdk_0_8_1_Release%20SampleDemos">CTR-SDK 0.8.1 Release Sample Demos</A> (2009/02/17)</DT>
1019<DD><A href="#note8-01">Note 8-01: (SND) Revised the demos that use sound [Sample Demos]</A></DD>
1020<DD><A href="#KnownIssues_0_8_1_Release%20SampleDemos">Known Issues with SDK 0.8.1 Release Sample Demos</A></DD>
1021</DL>
1022<DL>
1023<DT>
1024<A href="#sdk_0_8_0_Release">CTR-SDK 0.8.0 Release</A> (2010/02/10)</DT>
1025<DD><A href="#note7-01">Note 7-01: (CAMERA) Removed the <CODE>StopDmaRecv[Rgb]</CODE> function [SDK | System Updater]</A></DD>
1026<DD><A href="#note7-02">Note 7-02: (CAMERA) Revised the CAMERA library function reference [SDK]</A></DD>
1027<DD><A href="#note7-03">Note 7-03: (CAMERA) Revised the CAMERA library configuration functions [SDK | System Updater]</A></DD>
1028<DD><A href="#note7-04">Note 7-04: (CAMERA) Added and removed the CAMERA library functions [SDK | System Updater]</A></DD>
1029<DD><A href="#note7-05">Note 7-05: (CAMERA) Revised some function specifications in the CAMERA library [SDK | System Updater]</A></DD>
1030<DD><A href="#note7-06">Note 7-06: (CAMERA) Removed and added the CAMERA library functions [SDK | System Updater]</A></DD>
1031<DD><A href="#note7-07">Note 7-07: (CAMERA) Changed some function names in the CAMERA library [SDK | System Updater]</A></DD>
1032<DD><A href="#note7-08">Note 7-08: (CAMERA) Added and revised the camera-related configuration parameters [SDK | System Updater]</A></DD>
1033<DD><A href="#note7-09">Note 7-09: (CAMERA) Added data transfer completion event [SDK | System Updater]</A></DD>
1034<DD><A href="#note7-10">Note 7-10: (DEMO) Added the <CODE>DrawFramework::GetFramebufferObject</CODE> and <CODE>GetRenderbufferObject</CODE> functions [SDK]</A></DD>
1035<DD><A href="#note7-11">Note 7-11: (DSP) Modified the <CODE>CreateSharedMemory</CODE> function [SDK]</DD>
1036<DD><A href="#note7-12">Note 7-12: (DSP) Added the DSP Function Reference Manual [SDK]</A></DD>
1037<DD><A href="#note7-13">Note 7-13: (DSP) Modified the <CODE>LoadComponent</CODE> function [SDK]</A></DD>
1038<DD><A href="#note7-14">Note 7-14: (DSP) Modified the <CODE>LoadDefaultComponent</CODE> function [SDK]</A></DD>
1039<DD><A href="#note7-15">Note 7-15: (DSP) Increased the PIPE count [SDK]</A></DD>
1040<DD><A href="#note7-16">Note 7-16: (DSP) Modified the <CODE>RecvData</CODE>, <CODE>RecvDataIsReady</CODE>, <CODE>SendData</CODE>, and <CODE>SendDataIsEmpty</CODE> functions [SDK]</DD>
1041<DD><A href="#note7-17">Note 7-17: (DSP) Modified the <CODE>RegisterInterruptEvents</CODE> function [SDK]</A></DD>
1042<DD><A href="#note7-18">Note 7-18: (DevEnv) Added reference about build rules [SDK]</A></DD>
1043<DD><A href="#note7-19">Note 7-19: (FND) Added an overloaded version of the <CODE>ExpHeap::Adjust</CODE> function that specifies the direction in which the expanded heap should be reduced [SDK]</A></DD>
1044<DD><A href="#note7-20">Note 7-20: (FND) Added <CODE>nn::fnd::DateTime</CODE> class [SDK]</A></DD>
1045<DD><A href="#note7-21">Note 7-21: (FND) Revised the <CODE>nn::fnd::ExpHeapBase::GetSizeOf</CODE> function reference [SDK]</A></DD>
1046<DD><A href="#note7-22">Note 7-22: (FND) Added a feature to specify the location of the administrative region when creating nested heaps [SDK]</A></DD>
1047<DD><A href="#note7-23">Note 7-23: (GX) Revised the thread-related behavior of the <CODE>nngx</CODE> functions [SDK]</A></DD>
1048<DD><A href="#note7-24">Note 7-24: (GX) Changed specifications for the <CODE>nngxInitialize</CODE> function [SDK]</A></DD>
1049<DD><A href="#note7-25">Note 7-25: (GX) Updated the graphics drivers [SDK]</A></DD>
1050<DD><A href="#note7-26">Note 7-26: (GX) Revised graphics function reference [SDK]</A></DD>
1051<DD><A href="#note7-27">Note 7-27: (HID) Revised the terminology &quot;play radius&quot; to &quot;play&quot; within the <CODE>AccelerometerReader</CODE> class [SDK]</A></DD>
1052<DD><A href="#note7-28">Note 7-28: (HID) Revised touch panel calibration [SDK]</A></DD>
1053<DD><A href="#note7-29">Note 7-29: (HID) Revised the definitions of the member functions of the <CODE>Pad</CODE> class [SDK]</A></DD>
1054<DD><A href="#note7-30">Note 7-30: (HIO) Added the HIO library [SDK]</A></DD>
1055<DD><A href="#note7-31">Note 7-31: (MIC) Revised the <CODE>AllocateBuffer</CODE> and <CODE>StartSampling</CODE> Functions [SDK]</A></DD>
1056<DD><A href="#note7-32">Note 7-32: (MIC) Revised the <CODE>microphone</CODE> function reference [SDK]</A></DD>
1057<DD><A href="#note7-33">Note 7-33: (NSTD) Renamed the <CODE>NSTD</CODE> Library [SDK]</A></DD>
1058<DD><A href="#note7-34">Note 7-34: (OS) Changed the documentation for the C-language wrapper functions [SDK]</A></DD>
1059<DD><A href="#note7-35">Note 7-35: (OS) Added and removed C-language wrapper functions [SDK]</A></DD>
1060<DD><A href="#note7-36">Note 7-36: (OS) Revised the <CODE>CriticalSection</CODE> specifications [SDK]</A></DD>
1061<DD><A href="#note7-37">Note 7-37: (OS) Eliminated alignment restrictions on buffers transferred via DMA [SDK]</A></DD>
1062<DD><A href="#note7-38">Note 7-38: (OS) Fixed DMA transfer memory leaks [SDK]</A></DD>
1063<DD><A href="#note7-39">Note 7-39: (OS) Revised the function reference for the <CODE>nn::os::StackMemoryBlock</CODE> class [SDK]</A></DD>
1064<DD><A href="#note7-40">Note 7-40: (OS) Revised the function reference for <CODE>nn::os::WaitObject::WaitAny</CODE> [SDK]</A></DD>
1065<DD><A href="#note7-41">Note 7-41: (OS) Added a thread-safe typedef for heaps [SDK]</A></DD>
1066<DD><A href="#note7-42">Note 7-42: (SND) Released the sound library [SDK]</A></DD>
1067<DD><A href="#note7-43">Note 7-43: (TOOL) Changed the CCI format that is output from <CODE>ctr_makerom</CODE> [SDK | System Updater]</A></DD>
1068<DD><A href="#note7-44">Note 7-44: (TOOL) Revised <CODE>ctr_makerom</CODE> [SDK]</A></DD>
1069<DD><A href="#note7-45">Note 7-45: (Y2R) Removed the <CODE>StopDmaRecv</CODE> and <CODE>StopDmaSend</CODE> functions [SDK | System Updater]</A></DD>
1070<DD><A href="#note7-46">Note 7-46: (Y2R) Revised the Y2R library references [SDK]</A></DD>
1071<DD><A href="#note7-47">Note 7-47: (Y2R) Revised the Y2R library [SDK | System Updater]</A></DD>
1072<DD><A href="#note7-48">Note 7-48: (Y2R) Revised the Y2R library [SDK | System Updater]</A></DD>
1073<DD><A href="#note7-49">Note 7-49: (Y2R) Revised some function specifications in the Y2R library [SDK | System Updater]</A></DD>
1074<DD><A href="#note7-50">Note 7-50: (Y2R) Added Y2R library functions [SDK | System Updater]</A></DD>
1075<DD><A href="#note7-51">Note 7-51: (Y2R) Revised some function names in the Y2R library [SDK | System Updater]</A></DD>
1076<DD><A href="#note7-52">Note 7-52: (Y2R) Removed the functions used to set data transfer requests from public availability [SDK]</A></DD>
1077<DD><A href="#note7-53">Note 7-53: (Y2R) Removed some of the functions used to set and get the conversion coefficients from public availability [SDK]</A></DD>
1078<DD><A href="#KnownIssues_0_8_0_Release">Known Issues with SDK 0.8.0 Release</A></DD>
1079</DL>
1080<DL>
1081<DT>
1082<A href="#sdk_0_8_0_Release%20SystemUpdater">CTR-SDK 0.8.0 Release System Updater</A> (2010/02/10)</DT>
1083<DD><A href="#note6-01">Note 6-01: (CAMERA) Revised the <CODE>Finalize</CODE> function [System Updater]</A></DD>
1084<DD><A href="#note6-02">Note 6-02: (CAMERA) Removed the <CODE>StopDmaRecv[Rgb]</CODE> function [SDK | System Updater]</A></DD>
1085<DD><A href="#note6-03">Note 6-03: (CAMERA) Revised the CAMERA library configuration functions [SDK | System Updater]</A></DD>
1086<DD><A href="#note6-04">Note 6-04: (CAMERA) Added and removed the CAMERA library functions [SDK | System Updater]</A></DD>
1087<DD><A href="#note6-05">Note 6-05: (CAMERA) Revised some function specifications in the CAMERA library [SDK | System Updater]</A></DD>
1088<DD><A href="#note6-06">Note 6-06: (CAMERA) Removed and added the CAMERA library functions [SDK | System Updater]</A></DD>
1089<DD><A href="#note6-07">Note 6-07: (CAMERA) Changed some function names in the CAMERA library [SDK | System Updater]</A></DD>
1090<DD><A href="#note6-08">Note 6-08: (CAMERA) Added and revised the camera-related configuration parameters [SDK | System Updater]</A></DD>
1091<DD><A href="#note6-09">Note 6-09: (CAMERA) Added data transfer completion event [SDK | System Updater]</A></DD>
1092<DD><A href="#note6-10">Note 6-10: (FS) Added support for file and directory operations on SD Cards [System Updater]</A></DD>
1093<DD><A href="#note6-11">Note 6-11: (FS) Added functions for creating, deleting, and renaming files and directories [System Updater]</A></DD>
1094<DD><A href="#note6-12">Note 6-12: (FS) Added a class for reading and writing files [System Updater]</A></DD>
1095<DD><A href="#note6-13">Note 6-13: (FS) Fixed a resource leak that used to be present when files were opened [System Updater]</A></DD>
1096<DD><A href="#note6-14">Note 6-14: (HID) Revised the sampling rate [System Updater]</A></DD>
1097<DD><A href="#note6-15">Note 6-15: (MIC) Revised the <CODE>Finalize</CODE> function [System Updater]</A></DD>
1098<DD><A href="#note6-16">Note 6-16: (OS) Fixed a bug that caused the ending address to be incorrect when a breakpoint is set in the <CODE>Thread::Start</CODE> function [System Updater]</A></DD>
1099<DD><A href="#note6-17">Note 6-17: (OS) Fixed a bug that caused deadlocks [System Updater]</A></DD>
1100<DD><A href="#note6-18">Note 6-18: (OS) Fixed a bug that prevented the values of the VFP registers from being obtained correctly from the debugger [System Updater]</A></DD>
1101<DD><A href="#note6-19">Note 6-19: (OS) Fixed a bug that caused strings output to the debugger to be output twice [System Updater]</A></DD>
1102<DD><A href="#note6-20">Note 6-20: (OS) Fixed a bug that caused the debugger to hang if it was run continuously [System Updater]</A></DD>
1103<DD><A href="#note6-21">Note 6-21: (OS) Changed the maximum amount of memory that can be used on development hardware to 96 MB [System Updater]</A></DD>
1104<DD><A href="#note6-22">Note 6-22: (OS) Fixed a bug that caused the debugger to hang when running applications that run threads frequently [System Updater]</A></DD>
1105<DD><A href="#note6-23">Note 6-23: (TOOL) Changed the CCI format that is output from <CODE>ctr_makerom</CODE> [SDK | System Updater]</A></DD>
1106<DD><A href="#note6-24">Note 6-24: (Y2R) Revised the <CODE>Finalize</CODE> function [System Updater]</A></DD>
1107<DD><A href="#note6-25">Note 6-25: (Y2R) Removed the <CODE>StopDmaRecv</CODE> and <CODE>StopDmaSend</CODE> functions [SDK | System Updater]</A></DD>
1108<DD><A href="#note6-26">Note 6-26: (Y2R) Revised the Y2R library [SDK | System Updater]</A></DD>
1109<DD><A href="#note6-27">Note 6-27: (Y2R) Revised the Y2R library [SDK | System Updater]</A></DD>
1110<DD><A href="#note6-28">Note 6-28: (Y2R) Revised some function specifications in the Y2R library [SDK | System Updater]</A></DD>
1111<DD><A href="#note6-29">Note 6-29: (Y2R) Added Y2R library functions [SDK | System Updater]</A></DD>
1112<DD><A href="#note6-30">Note 6-30: (Y2R) Revised some function names in the Y2R library [SDK | System Updater]</A></DD>
1113<DD><A href="#KnownIssues_0_8_0_Release%20SystemUpdater">Known Issues with SDK 0.8.0 Release System Updater</A></DD>
1114</DL>
1115<DL>
1116<DT>
1117<A href="#sdk_0_8_0_Release%20SampleDemos">CTR-SDK 0.8.0 Release Sample Demos</A>  (2010/02/10)</DT>
1118<DD><A href="#note5-01">Note 5-01: (CAMERA) Revised sample demos [Sample Demos]</A></DD>
1119<DD><A href="#note5-02">Note 5-02: (FND) Added features to the multifunction demos [Sample Demos]</A></DD>
1120<DD><A href="#note5-03">Note 5-03: (GX) Fixed a bug in the <CODE>GasCessna</CODE> sample [Sample Demos]</A></DD>
1121<DD><A href="#note5-04">Note 5-04: (GX) Deleted unnecessary operations related to tangent attribute data [Sample Demos]</A></DD>
1122<DD><A href="#note5-05">Note 5-05: (GX) Added a demo that performs double-buffering on a command list for rendering [Sample Demos]</A></DD>
1123<DD><A href="#note5-06">Note 5-06: (OS) Revised the <CODE>os</CODE> sample demo [Sample Demos]</A></DD>
1124<DD><A href="#note5-07">Note 5-07: (SND) Added sample demos [Sample Demos]</A></DD>
1125<DD><A href="#note5-08">Note 5-08: (SND) Added features to the multifunction demos [Sample Demos]</A></DD>
1126<DD><A href="#KnownIssues_0_8_0_Release%20SampleDemos">Known Issues with SDK 0.8.0 Release Sample Demos</A></DD>
1127</DL>
1128<DL>
1129<DT>
1130<A href="#sdk_0_7_1_Release">CTR-SDK 0.7.1 Release</A> (2010/01/15)</DT>
1131<DD><A href="#note4-01">Note 4-01: (SND) Added support for the sound library of NintendoWare for CTR 0.4.0 [SDK]</A></DD>
1132<DD><A href="#KnownIssues_0_7_1_Release">Known Issues with SDK 0.7.1 Release</A></DD>
1133</DL>
1134<DL>
1135<DT>
1136<A href="#sdk_0_7_0_Release">CTR-SDK 0.7.0 Release</A> (2009/12/22)</DT>
1137<DD><A href="#note3-01">Note 3-01: (CAMERA) Added the CAMERA library [SDK]</A></DD>
1138<DD><A href="#note3-02">Note 3-02: (CRYPTO) Added the <CODE>crypto</CODE> library [SDK]</A></DD>
1139<DD><A href="#note3-03">Note 3-03: (DEMO) Added classes for simple rendering of 2D geometric shapes [SDK]</A></DD>
1140<DD><A href="#note3-04">Note 3-04: (DEMO) Added a document that explains the DEMO library [SDK]</A></DD>
1141<DD><A href="#note3-05">Note 3-05: (DEMO) Modified the <CODE>DEMO_SetRenderingTarget</CODE> function [SDK]</A></DD>
1142<DD><A href="#note3-06">Note 3-06: (DEMO) Changed the specifications of the <CODE>DrawFramework</CODE> class [DrawFramework]</A></DD>
1143<DD><A href="#note3-07">Note 3-07: (DEMO) Added an argument to the <CODE>DrawFramework::SwapBuffer</CODE> function that specifies whether or not to wait for V-Sync before running [SDK]</A></DD>
1144<DD><A href="#note3-08">Note 3-08: (DEMO) Released <CODE>demo_MemoryManager.h</CODE> [SDK]</A></DD>
1145<DD><A href="#note3-09">Note 3-09: (DEMO) Made <CODE>nn::demo::DrawFramework::SwapBuffer</CODE> into a virtual function [SDK]</A></DD>
1146<DD><A href="#note3-10">Note 3-10: (DEMO) Changed the macro that sets the maximum number of output characters [SDK]</A></DD>
1147<DD><A href="#note3-11">Note 3-11: (DEMO) Changed the address alignment when allocating vertex buffers in VRAM [SDK]</A></DD>
1148<DD><A href="#note3-12">Note 3-12: (DevEnv) Added the <CODE>NN_ENDIAN</CODE> macro [SDK]</A></DD>
1149<DD><A href="#note3-13">Note 3-13: (DevEnv) Changed the structure of the documents folder [SDK]</A></DD>
1150<DD><A href="#note3-14">Note 3-14: ((DevEnv) Changed the data types for <CODE>u32</CODE> and <CODE>s32</CODE> [SDK]</A></DD>
1151<DD><A href="#note3-15">Note 3-15: (DevEnv) Changed the assembly rules [SDK]</A></DD>
1152<DD><A href="#note3-16">Note 3-16: (DevEnv) Fixed a bug that caused duplicated option settings for macro definitions [SDK]</A></DD>
1153<DD><A href="#note3-17">Note 3-17: (DevEnv) Deleted the <CODE>OMakefiles</CODE> for the libraries [SDK]</A></DD>
1154<DD><A href="#note3-18">Note 3-18: (FND) Corrected the internal status check of the <CODE>nn::fnd::ExpHeap</CODE> class [SDK]</A></DD>
1155<DD><A href="#note3-19">Note 3-19: (FND) Added features to <CODE>nn::fnd::FrameHeap</CODE> class [SDK]</A></DD>
1156<DD><A href="#note3-20">Note 3-20: (FND) Added an allocator class for heaps [SDK]</A></DD>
1157<DD><A href="#note3-21">Note 3-21: (FND) Added a feature to create nested heaps [SDK]</A></DD>
1158<DD><A href="#note3-22">Note 3-22: (FND) Added features to the heap classes [SDK]</A></DD>
1159<DD><A href="#note3-23">Note 3-23: (FND) Made the heap classes thread-safe [SDK]</A></DD>
1160<DD><A href="#note3-24">Note 3-24: (FND) Added a feature to find the heap associated with a given block of allocated memory [SDK]</A></DD>
1161<DD><A href="#note3-25">Note 3-25: (FS) Added to the <CODE>nn::fs::FileReader</CODE> class the ability to use the <CODE>char*</CODE> type to specify path names as ASCII strings [SDK]</A></DD>
1162<DD><A href="#note3-26">Note 3-26: (GX) Added the <CODE>DMPGL</CODE> sample [SDK]</A></DD>
1163<DD><A href="#note3-27">Note 3-27: (GX) Revised the graphics function reference [SDK]</A></DD>
1164<DD><A href="#note3-28">Note 3-28: (GX) Updated the graphics drivers [SDK]</A></DD>
1165<DD><A href="#note3-29">Note 3-29: (GX) Fixed an issue where the V-Sync timing for the upper and lower screens did not coincide [SDK | System Updater]</A></DD>
1166<DD><A href="#note3-30">Note 3-30: (GX) Fixed a bug that caused only 239 lines to be displayed on the lower screen [SDK]</A></DD>
1167<DD><A href="#note3-31">Note 3-31: (HID) Changed the names of the Initialize and Finalize functions [SDK]</A></DD>
1168<DD><A href="#note3-32">Note 3-32: (HID) Changed input from SELECT to be treated as input from START [SDK]</A></DD>
1169<DD><A href="#note3-33">Note 3-33: (HID) Added +Control Pad emulation for the Slide Pad [SDK]</A></DD>
1170<DD><A href="#note3-34">Note 3-34: (HID) Revised the definitions of the member functions of the <CODE>Pad</CODE> class [SDK]</A></DD>
1171<DD><A href="#note3-35">Note 3-35: (HID) Added support for the accelerometer [SDK]</A></DD>
1172<DD><A href="#note3-36">Note 3-36: (HID) Changed the names of the symbols for the +Control Pad [SDK]</A></DD>
1173<DD><A href="#note3-37">Note 3-37: (MATH) Added the <CODE>MTX44Perspective[Deg|Rad]</CODE> functions [SDK]</A></DD>
1174<DD><A href="#note3-38">Note 3-38: (MATH) Added <CODE>Set</CODE> functions to the <CODE>Vector*</CODE> classes [SDK]</A></DD>
1175<DD><A href="#note3-39">Note 3-39: (MATH) Revised the internal operations of the <CODE>nn::math::RunCmdlistDone</CODE> function [SDK]</A></DD>
1176<DD><A href="#note3-40">Note 3-40: (MATH) Added functions to find the product of a projection matrix and a rotation matrix [SDK]</A></DD>
1177<DD><A href="#note3-41">Note 3-41: (MIC) Added the MIC library [SDK]</A></DD>
1178<DD><A href="#note3-42">Note 3-42: (OS) Changed the documentation for the C-language wrapper functions [SDK]</A></DD>
1179<DD><A href="#note3-43">Note 3-43: (OS) Added and removed C-language wrapper functions [SDK]</A></DD>
1180<DD><A href="#note3-44">Note 3-44: (OS) Fixed a bug in which the <CODE>nn::fnd::FileReader</CODE> class was not set as no copy [SDK]</A></DD>
1181<DD><A href="#note3-45">Note 3-45: (OS) Changed the access label for the <CODE>nn::os::HandleObject::Finalize</CODE> function to <CODE>protected</CODE> [SDK]</A></DD>
1182<DD><A href="#note3-46">Note 3-46: (OS) Added the <CODE>nn::os::SafeBlockingQueue</CODE> class [SDK]</A></DD>
1183<DD><A href="#note3-47">Note 3-47: (OS) Revised the size of the <CODE>nn::os::StackBuffer</CODE> class template [SDK]</A></DD>
1184<DD><A href="#note3-48">Note 3-48: (OS) Added the <CODE>nn::os::Thread::GetMainThread</CODE> function [SDK]</A></DD>
1185<DD><A href="#note3-49">Note 3-49: (OS) Fixed the <CODE>nn::os::Tick::ToTimeSpan</CODE> function [SDK]</A></DD>
1186<DD><A href="#note3-50">Note 3-50: (OS) Added the <CODE>nnosAlarmCanSet</CODE> function [SDK]</A></DD>
1187<DD><A href="#note3-51">Note 3-51: (OS) Added the <CODE>nnosInitializeDeviceMemory</CODE> and <CODE>nnosGetDeviceMemoryAddress</CODE> functions [SDK]</A></DD>
1188<DD><A href="#note3-52">Note 3-52: (OS) Added a system version check [SDK | System Updater]</A></DD>
1189<DD><A href="#note3-53">Note 3-53: (OS) Revised the arguments to functions used to start threads [SDK]</A></DD>
1190<DD><A href="#note3-54">Note 3-54: (OS) Revised the behavior if timers are set to expire after zero seconds [SDK]</A></DD>
1191<DD><A href="#note3-55">Note 3-55: (OS) Added a class for specifying the lock policy [SDK]</A></DD>
1192<DD><A href="#note3-56">Note 3-56: (TOOL) Revised <CODE>ctr_makerom</CODE> [SDK]</A></DD>
1193<DD><A href="#KnownIssues_0_7_0_Release">Known Issues with SDK 0.7.0 Release</A></DD>
1194</DL>
1195<DL>
1196<DT>
1197<A href="#sdk_0_7_0_Release%20SystemUpdater">CTR-SDK 0.7.0 Release System Updater</A> (2009/12/22)</DT>
1198<DD><A href="#note2-01">Note 2-01: (FS) Fixed a resource leak in the file system [System Updater]</A></DD>
1199<DD><A href="#note2-02">Note 2-02: (GX) Removed restrictions on size during DMA transfers [System Updater]</A></DD>
1200<DD><A href="#note2-03">Note 2-03: (GX) Fixed an issue where the V-Sync timing for the upper and lower screens did not coincide [SDK | System Updater]</A></DD>
1201<DD><A href="#note2-04">Note 2-04: (OS) Fixed a bug that caused failures when attempting to load static regions 2 MB or greater in size [System Updater]</A></DD>
1202<DD><A href="#note2-05">Note 2-05: (OS) Cut out VFP context switching [System Updater]</A></DD>
1203<DD><A href="#note2-06">Note 2-06: (OS) Added a system version check [SDK | System Updater]</A></DD>
1204<DD><A href="#note2-07">Note 2-07: (OS) Modified the debugger API [System Updater]</A></DD>
1205<DD><A href="#note2-08">Note 2-08: (OS) Improved performance [System Updater]</A></DD>
1206<DD><A href="#note2-09">Note 2-09: (OS) Added multi-core support [System Updater]</A></DD>
1207<DD><A href="#note2-10">Note 2-10: (OS) Fixed a bug in which a single thread was able to acquire semaphores multiple times [System Updater]</A></DD>
1208<DD><A href="#KnownIssues_0_7_0_Release%20SystemUpdater">Known Issues with System Updater in the SDK 0.7.0 Release</A></DD>
1209</DL>
1210<DL>
1211<DT>
1212<A href="#sdk_0_7_0_Release%20SampleDemos">CTR-SDK 0.7.0 Release Sample Demos</A> (2009/12/22)</DT>
1213<DD><A href="#note1-01">Note 1-01: (CAMERA) Added features to the multifunction demos [Sample Demos]</A></DD>
1214<DD><A href="#note1-02">Note 1-02: (GX) Added demos of the simple rendering features of 2D geometric shapes [Sample Demos]</A></DD>
1215<DD><A href="#note1-03">Note 1-03: (GX) Revised the source code based on changes to the specifications of the <CODE>glUniformMatrix</CODE> functions [Sample Demos]</A></DD>
1216<DD><A href="#note1-04">Note 1-04: (GX) Changed the directory structure [Sample Demos]</A></DD>
1217<DD><A href="#note1-05">Note 1-05: (GX) Changed the directories so that shader binaries will be generated during builds [Sample Demos]</A></DD>
1218<DD><A href="#note1-06">Note 1-06: (HID) Made changes and added features to the multifunction demos [Sample Demos]</A></DD>
1219<DD><A href="#note1-07">Note 1-07: (MIC) Added features to the multifunction demos [Sample Demos]</A></DD>
1220<DD><A href="#KnownIssues_0_7_0_Release%20SampleDemos">Known Issues with SDK 0.7.0 Release Sample Demos</A></DD>
1221</DL>
1222<HR>
1223<H2 style="line-height: 0"><A name="sdk_0_13_2_Release">CTR-SDK Version 0.13.2 Release</A></H2>
1224<DIV style="text-align: right"><P style="line-height: 0">(2010/10/07)</P></DIV>
1225<HR>
1226<H3><A name="note50-01">Note 50-01: (FS) Increased speed of opening files from ROM archives [SDK]</A></H3>
1227<P><description>Increased speed when opening files from ROM archives.<br></description></P>
1228<HR>
1229<H3><A name="KnownIssues_0_13_2_Release">Known Issues in the SDK 0.13.2 Release</A></H3>
1230<knownissues><description>
1231        <ul>
1232          <li>If you run <B>Ctr Info Setting</B> in the <CODE>Config</CODE> tool when a settings file is not present on the SD Card, the system will freeze.</li>
1233          <li>After you have connected to and finished communicating with your first StreetPass partner, you cannot communicate with another partner. Both systems must be reset to communicate again.</li>
1234          <li>If a waveform file (WAV or AIFF) includes no loop settings prior to conversion by <CODE>ctr_WaveConverter32.exe</CODE>, a bug causes the <CODE>--loopStart</CODE> and <CODE>--loopEnd</CODE> options to be ignored.</li>
1235        </ul>
1236      </description></knownissues><HR>
1237<H2 style="line-height: 0"><A name="sdk_0_13_1_Release">CTR-SDK Version 0.13.1 Release</A></H2>
1238<DIV style="text-align: right"><P style="line-height: 0">(2010/09/30)</P></DIV>
1239<HR>
1240<H3><A name="note49-01">Note 49-01: (CAMERA) Correction for change log entry regarding processing added to stop the cameras when the system is closed [SDK]</A></H3>
1241<P><description>The change log entry for <a href="changelog.html#note47-06">Note 47-06</a> erroneously stated that capturing does not resume when the system is closed and then opened again. Capturing does resume automatically, so there is no need for the application to provide any special support for opening/closing the system.<br></description></P>
1242<HR>
1243<H3><A name="note49-02">Note 49-02: (DevEnv) Correction for change log entries for known bugs in CTR-SDK 0.13 SystemUpdater [SDK]</A></H3>
1244<P><description>The <a href="changelog.html#KnownIssues_0_13_0_SystemUpdater">Known Issues with SystemUpdater in SDK Version 0.13.0</a> section of the change log contained the following mistakes.<br>
1245        <ul>
1246          <li>[Incorrect]<br>Running the <CODE>NN_LOG</CODE> function during communication sometimes causes the debugger to hang.<br> We recommend communicating in parallel with log output via calls to the <CODE>NN_LOG</CODE> function. </li>
1247          <li>[Correct]<br>Running the <CODE>NN_LOG</CODE> function during communication sometimes causes the debugger to hang.<br> We recommend NOT calling the <CODE>NN_LOG</CODE> function for log output in parallel with communication. </li>
1248        </ul>
1249      </description></P>
1250<HR>
1251<H3><A name="note49-03">Note 49-03: (SND) Fixed bug related to creating sound threads on core 1 in NintendoWare for CTR [SDK]</A></H3>
1252<P><description>A feature was added to NintendoWare for CTR 1.1.0 that allows users to create sound threads on core 1. However, there was a bug in related <CODE>nn::snd</CODE> features, which is fixed in this SDK release.<br> This fix is required when using NintendoWare for CTR 1.1.0.<br></description></P>
1253<HR>
1254<H3><A name="note49-04">Note 49-04: (SND) Fixed bug that caused execution to enter an endless loop when <CODE>FreeVoice</CODE> was used within the voice drop callback [SDK]</A></H3>
1255<P><description>Previously, if <CODE>FreeVoice</CODE> was used to free some other voice within the voice drop callback specified by <CODE>AllocVoice</CODE>, execution would enter an endless loop. This bug has been fixed.<br></description></P>
1256<HR>
1257<H3><A name="KnownIssues_0_13_1_Release">Known Issues in the SDK 0.13.1 Release</A></H3>
1258<knownissues><description>
1259        <ul>
1260          <li>If you run <B>Ctr Info Setting</B> in the <CODE>Config</CODE> tool when a settings file is not present on the SD Card, the system will freeze.</li>
1261          <li>After you have connected to and finished communicating with your first StreetPass partner, you cannot communicate with another partner. Both systems must be reset to communicate again.</li>
1262          <li>If a waveform file (WAV or AIFF) includes no loop settings prior to conversion by <CODE>ctr_WaveConverter32.exe</CODE>, a bug causes the <CODE>--loopStart</CODE> and <CODE>--loopEnd</CODE> options to be ignored.</li>
1263        </ul>
1264      </description></knownissues><HR>
1265<H2 style="line-height: 0"><A name="sdk_0_13_0_Release">CTR-SDK Version 0.13.0 Release</A></H2>
1266<DIV style="text-align: right"><P style="line-height: 0">(2010/09/28)</P></DIV>
1267<HR>
1268<H3><A name="note48-01">Note 48-01: (AC) Added the <CODE>nn::ac::LinkLevel GetLinkLevel</CODE> function [SDK]</A></H3>
1269<P><description>In addition to the preexisting <CODE>GetLinkLevel</CODE> function, which takes an <CODE>nn::ac::LinkLevel</CODE> pointer as an argument, added a <CODE>GetLinkLevel</CODE> function whose return value is an <CODE>nn::ac::LinkLevel</CODE> enumerated type.<br></description></P>
1270<HR>
1271<H3><A name="note48-02">Note 48-02: (APPLET) Added support for HOME Button detection and transitioning to the HOME Menu [SDK]</A></H3>
1272<P><description>Added functions for detecting HOME button presses and transitioning to the HOME Menu.<br> To detect HOME button presses, there are two methods: getting the button state with the <CODE>nn::applet::CTR::GetHomeButtonState</CODE> function, or setting a callback with the <CODE>nn::applet::CTR::SetHomeButtonCallback</CODE> function.<br> Both the <CODE>nn::applet::CTR::PrepareToJumpToHomeMenu</CODE> and <CODE>nn::applet::CTR::JumpToHomeMenu</CODE> functions can jump to the HOME Menu, but the <CODE>nn::applet::CTR::ProcessHomeButtonIfPrepared</CODE> function combines both the ability to detect HOME and to jump to the HOME Menu.<br></description></P>
1273<HR>
1274<H3><A name="note48-03">Note 48-03: (BOSS) Added the BOSS library [SDK|SystemUpdater]</A></H3>
1275<P><description>Added the BOSS library, which is used for data download features that employ download servers.<br></description></P>
1276<HR>
1277<H3><A name="note48-04">Note 48-04: (CAMERA) Revised the <CODE>SetNoiseFilter</CODE> function [SDK|SystemUpdater]</A></H3>
1278<P><description>If the <CODE>SetNoiseFilter</CODE> function was used to turn noise filter features OFF and then exposure was changed by the <CODE>SetExposure</CODE> function, image brightness would start to flicker. This problem has been fixed.<br></description></P>
1279<HR>
1280<H3><A name="note48-05">Note 48-05: (CAMERA) Added a function to change the sensor window used for auto white balancing [SDK|SystemUpdater]</A></H3>
1281<P><description>Added the <CODE>SetAutoWhiteBalanceWindow</CODE> function, which changes the region (sensor window) used to calculate auto white balance.<br> <B>Note:</B> The definition of the <CODE>PackageParameterCameraSelect</CODE> structure was changed to allow the <CODE>SetPackageParameterWithoutContext</CODE> function to make settings similar to the above function.<br></description></P>
1282<HR>
1283<H3><A name="note48-06">Note 48-06: (CARD) Revised media selector control after using HostIO CardSPI [SDK]</A></H3>
1284<P><description>When CardSPI was used, then Midi or CardNor was accessed, and then HostIO was accessed, the media selector was not properly controlled and correct data transfer was not possible. Revisions were made so that media selector control will switch successively from SPI to CARD in such cases.<br></description></P>
1285<HR>
1286<H3><A name="note48-07">Note 48-07: (CEC) Changed the StreetPass library API [SDK|SystemUpdater]</A></H3>
1287<P><description>Changed the StreetPass library (formerly the Chance Encounter Communication library) as follows.
1288        <ul>
1289          <li>Added the <CODE>MessageId</CODE> class.<br>Changed <CODE>MessageId</CODE> from an 8-byte array to a class.</li>
1290          <li>Removed unnecessary functions<br>Deprecated the following functions and invalidated unused value definitions.</li>
1291          <ul>
1292            <li>Format of <CODE>cec::MessageBox::ReadMessage</CODE> that used <CODE>void*</CODE> as an argument</li>
1293            <li>Format of <CODE>cec::MessageBox::WriteMessage</CODE> that used <CODE>void*</CODE> as an argument</li>
1294            <li><CODE>cec::Message::SetFlag_Unread</CODE></li>
1295            <li><CODE>cec::Message::GetFlag_Unread</CODE></li>
1296            <li><CODE>cec::Message::SetFlag_New</CODE></li>
1297            <li><CODE>cec::Message::GetFlag_New</CODE></li>
1298            <li><CODE>cec::Message::OutputMessage</CODE></li>
1299            <li><CODE>cec::Message::InputMessage</CODE></li>
1300            <li><CODE>cec::MessageBox::GetMessageFlag_Unread</CODE></li>
1301            <li><CODE>cec::MessageBox::GetMessageFlag_New</CODE></li>
1302          </ul>
1303          <li>Changed daemon operations<br>Beginning with this version, background communication starts automatically and the StreetPass daemon begins operation at system startup.<br> To access a Box or a Message, you must first begin accessing the daemon, then put the daemon in IDLE state.<br> Operations must occur in this order:<br>[After startup] =&gt; [Put daemon in IDLE state with <CODE>StopScanning</CODE>] =&gt; [Box operations] =&gt; [Return control rights to the system with <CODE>StartScanning</CODE> and start daemon operation].</li>
1304          <li>Added <CODE>GetCecRecvEventHandle</CODE> and <CODE>GetCecInfoBuffer</CODE><br>These functions get reception events and received Message information.</li>
1305          <li>Added information that can be obtained with the <CODE>MessageBox</CODE> class<br>Information obtainable by the <CODE>MessageBoxInfoReader</CODE> class can now also be obtained by the <CODE>MessageBox</CODE> class.<br> This change makes the <CODE>MessageBoxInfoReader</CODE> class unnecessary.</li>
1306        </ul>
1307        <pre><font size="3">    [MessageBoxInfoReader]      [MessageBox]
1308                &lt;Get Box information&gt;
1309    GetMessageBoxInfoFlag   --&gt; GetBoxFlag (GetMessageBoxFlag was removed)
1310    GetBoxSizeMax           --&gt; GetBoxSizeMax
1311    GetMessNumMax           --&gt; GetBoxMessNumMax
1312    GetMessNum              --&gt; GetBoxMessNum
1313                                <CODE>GetBoxGroupNumMax</CODE>
1314                                <CODE>GetBoxGroupNum</CODE>
1315                                <CODE>SetBoxGroupNumMax</CODE>
1316                                <CODE>GetBoxSessionNum</CODE>
1317                &lt;Get Message information&gt;
1318    GetMessage***           --&gt; GetMessage*** (Added)</font></pre>
1319      </description></P>
1320<HR>
1321<H3><A name="note48-08">Note 48-08: (CEC) Operations necessary to communicate with the same partner more than once [SDK]</A></H3>
1322<P><description>To reduce power consumption and avoid communicating over and over with the same partner, there is a feature where the local host remembers what partners it has communicated with once (sent or received one or more pieces of data) and then does not communicate with those partners if they are discovered again.<br> The list of past communication partners is valid for a maximum of 8 hours.<br> For this reason, StreetPass with the same partner will not occur again until an average of 4 hours or a maximum of 8 hours elapses.<br><br> If you specify <CODE>true</CODE> in an argument to the <CODE>CecControl::StartScanning</CODE> function, the list is initialized and it becomes possible to communicate with the same partners again.<br> Use this method when it is necessary to communicate more than once with the same partner for debug purposes.<br> The list is also initialized when a StreetPass box has been deleted.<br> (In the previous version the list was also initialized when data was written to an outbox, but that specification has been removed.)<br></description></P>
1323<HR>
1324<H3><A name="note48-09">Note 48-09: (CFG) Revised the <CODE>GetLanguageCodeA2</CODE> function [SDK]</A></H3>
1325<P><description>Revised the string obtained by the <CODE>nn::cfg::GetLanguageCodeA2</CODE> function and indicating the Japanese language from &quot;<CODE>jp</CODE>&quot; to &quot;<CODE>ja</CODE>&quot;.<br></description></P>
1326<HR>
1327<H3><A name="note48-10">Note 48-10: (CFG) Revised the <CODE>GetSimpleAddress</CODE> function [SDK]</A></H3>
1328<P><description>Fixed a bug in the <CODE>nn::cfg::CTR::GetSimpleAddress</CODE> function that prevented it from getting the country name and area name parts of the simple address information.<br></description></P>
1329<HR>
1330<H3><A name="note48-11">Note 48-11: (CFG) Added function to get the RTC offset value [SDK]</A></H3>
1331<P><description>Added the <CODE>nn::cfg::CTR::GetUserTimeOffset</CODE> function to get the cumulative offset value that is saved when the end user changes the date and time.<br> Applications can learn of end user changes to the system time by checking this offset value on every application launch.<br></description></P>
1332<HR>
1333<H3><A name="note48-12">Note 48-12: (CX) Added the CX library [SDK]</A></H3>
1334<P><description>Added a library for file compression/decompression at the <CODE>nn::cx</CODE> namespace.<br></description></P>
1335<HR>
1336<H3><A name="note48-13">Note 48-13: (DLP) Changed the method for embedding child programs in parent programs [SDK|SampleDemos]</A></H3>
1337<P><description>Changed the method for embedding child programs, as shown below.<br>
1338        <ul>
1339          <li>If using OMake, specify the child CIA file in <CODE>CHILD_APPS[]</CODE> in the OMakefile.<br> See <CODE>$SampleDemos/dlp/SimpleServer/OMakefile</CODE>.</li>
1340          <li>If not using OMake, pass a CFA file created by <CODE>ctr_makeciaarchive</CODE> to <CODE>ctr_makerom</CODE>.<br> However, note that you must use the <CODE>-rsf</CODE> option of <CODE>ctr_makeciaarchive</CODE> to specify <CODE>$CTR_SDK/resources/specfiles/Child.rsf</CODE>.</li>
1341        </ul>
1342      </description></P>
1343<HR>
1344<H3><A name="note48-14">Note 48-14: (DLP) Made revisions involving identification of child devices [SDK|SampleDemos]</A></H3>
1345<P><description>Made the following changes related to identification of child devices.<br>
1346        <ul>
1347          <li>Changed so that now the <CODE>Server::Initialize</CODE> function fails if the child and parent <CODE>UniqueId</CODE> do not match.</li>
1348          <li>Changed so that the parent and child are told apart by their <CODE>Category</CODE>, and the <CODE>Server::Initialize</CODE> function fails if the child's <CODE>Category</CODE> is not <CODE>DlpClient</CODE>.<br>Children tell each other apart by their <CODE>ChildIndex</CODE>. The <CODE>ChildIndex</CODE> is specified by the RSF file's <CODE>TitleInfo/ChildIndex</CODE>, and can take a value from 0-255.<br> Note that <CODE>TitleInfo/Version</CODE> is now replaced by <CODE>TitleInfo/ChildIndex</CODE>, so do not use <CODE>TitleInfo/Version</CODE>.</li>
1349        </ul>
1350      </description></P>
1351<HR>
1352<H3><A name="note48-15">Note 48-15: (DevEnv) Removed the pragma used for the RVCT warning bug workaround [SDK]</A></H3>
1353<P><description>RVCT formerly sometimes output incorrect warnings in Release or Fast builds, so as a workaround some portions of code were built with size as the highest priority. RVCT has now been fixed, so these code portions have returned to being built with speed as the highest priority.<br></description></P>
1354<HR>
1355<H3><A name="note48-16">Note 48-16: (DevEnv) Made some <CODE>nn::Result</CODE> constructors private [SDK]</A></H3>
1356<P><description>The access attribute of <CODE>nn::Result</CODE>-class constructors that take <CODE>bit32</CODE> values was mistakenly set to &quot;public&quot;. This has been revised to &quot;private&quot;.<br></description></P>
1357<HR>
1358<H3><A name="note48-17">Note 48-17: (DevEnv) Changed the encoding of <CODE>types.h</CODE> [SDK]</A></H3>
1359<P><description><CODE>$CTR_SDK/include/nn/types.h</CODE> was a UTF-8 file with no BOM, but it has been changed to now include a BOM.<br> This was actually changed in CTR-SDK 0.11 but was accidentally omitted from the change log.<br></description></P>
1360<HR>
1361<H3><A name="note48-18">Note 48-18: (DevEnv) Changed compiler and linker options [SDK]</A></H3>
1362<P><description>Added <CODE>--debug_info=line_inlining_extensions</CODE> to the default compiler options in the CTR-SDK build system.<br> Likewise, added <CODE>tailreorder</CODE>, <CODE>unusedsymbols</CODE>, <CODE>veneercallers</CODE>, <CODE>veneerpools</CODE> and <CODE>visibility</CODE> as specifications for the <CODE>--info</CODE> linker option.<br></description></P>
1363<HR>
1364<H3><A name="note48-19">Note 48-19: (DevEnv) Updated the supported version of RVCT [SDK]</A></H3>
1365<P><description>Updated the RVCT version supported by the CTR-SDK to version 2010/09/09 (b865).<br> Because of this update, out-of-date versions of RVCT will now sometimes not operate properly.<br></description></P>
1366<HR>
1367<H3><A name="note48-20">Note 48-20: (FND) Revised behavior when <CODE>Allocate</CODE> of an <CODE>ExpHeap</CODE> fails [SDK]</A></H3>
1368<P><description>Formerly, when the <CODE>Allocate</CODE> function failed to allocate an <CODE>ExpHeap</CODE>, the destructor and <CODE>Finalize</CODE> would not be called properly. This problem has been fixed.<br></description></P>
1369<HR>
1370<H3><A name="note48-21">Note 48-21: (FND) Revised behavior of <CODE>ExpHeap</CODE> constructor when given no arguments [SDK]</A></H3>
1371<P><description>Formerly, when the destructor was called on an uninitialized <CODE>ExpHeap</CODE> object, it could not destroy the object properly. This problem has been fixed.<br></description></P>
1372<HR>
1373<H3><A name="note48-22">Note 48-22: (FND) Revised the range of specifiable alignments in <CODE>ExpHeap::Allocate</CODE> [SDK]</A></H3>
1374<P><description>Changed the range of specifiable alignments in <CODE>ExpHeap::Allocate</CODE> to the range <CODE>-4096</CODE> to <CODE>4096</CODE>.<br></description></P>
1375<HR>
1376<H3><A name="note48-23">Note 48-23: (FND) Revised <CODE>ExpHeapBase::GetDirecitionOf</CODE> to <CODE>GetDirectionOf</CODE> [SDK]</A></H3>
1377<P><description>Corrected the spelling of <CODE>ExpHeapBase::GetDirectionOf</CODE>, which was formerly misspelled as <CODE>GetDirecitionOf</CODE>.<br></description></P>
1378<HR>
1379<H3><A name="note48-24">Note 48-24: (FND) Strengthened check when freeing expanded heap memory [SDK]</A></H3>
1380<P><description>Strengthened the memory address check that is performed when freeing expanded heap memory, with the goal of detecting duplicate calls to <CODE>Free</CODE> and other problems.<br></description></P>
1381<HR>
1382<H3><A name="note48-25">Note 48-25: (FONT) Added the Font library [SDK]</A></H3>
1383<P><description>Added the Font library.<br> Its content is basically the same as <CODE>nw::font</CODE>, but applications that use <CODE>nw</CODE> must not use <CODE>nn::font</CODE>. (This is because some portions of libraries in <CODE>nw</CODE> reference <CODE>nw::font</CODE>.)<br>In future, <CODE>nw::font</CODE> is planned to be combined into <CODE>nn::font</CODE>.</description></P>
1384<HR>
1385<H3><A name="note48-26">Note 48-26: (FRIENDS) Changed the value of <CODE>MODE_DESCRIPTION_SIZE</CODE> [SDK]</A></H3>
1386<P><description>Changed the value of <CODE>MODE_DESCRIPTION_SIZE</CODE> from <CODE>64</CODE> to <CODE>128</CODE>.<br></description></P>
1387<HR>
1388<H3><A name="note48-27">Note 48-27: (FRIENDS) Deleted part of the <CODE>NotificationType</CODE> enumerator [SDK]</A></H3>
1389<P><description>Removed <CODE>NOTIFICATION_FRIEND_FAVORITE_GAME</CODE>, which control will never actually reach, from the <CODE>NotificationType</CODE> enumerated type.<br></description></P>
1390<HR>
1391<H3><A name="note48-28">Note 48-28: (FRIENDS) Eliminated the notification sent when a game description is updated [SDK|SystemUpdater]</A></H3>
1392<P><description><CODE>NOTIFICATION_FRIEND_PRESENCE</CODE> is no longer delivered when the game description string is the only item updated by <CODE>UpdateGameModeDescription</CODE> or <CODE>UpdateGameMode</CODE>.<br></description></P>
1393<HR>
1394<H3><A name="note48-29">Note 48-29: (FRIENDS) Changed the value of the <CODE>MII_SIZE</CODE> constant [SDK]</A></H3>
1395<P><description>Changed the value of the <CODE>MII_SIZE</CODE> constant from <CODE>128</CODE> to <CODE>96</CODE>.<br> The size of the <CODE>MiiInformation</CODE> structure also changed.<br></description></P>
1396<HR>
1397<H3><A name="note48-30">Note 48-30: (FS) Changed the specifications of functions that get SD Card insertion/removal events [SDK]</A></H3>
1398<P><description>The previously-disclosed functions that get SD Card insertion/removal events were not able to get whether an event has occurred, so the specifications have been changed.<br> The <CODE>nn::fs::InitializeForFileSystemEvent</CODE>, <CODE>WaitForInsertSdmc</CODE>, and <CODE>WaitForEjectSdmc</CODE> functions have been removed and replaced by the new <CODE>nn::fs::RegisterSdmcInsertedEvent</CODE>, <CODE>UnregisterSdmcInsertedEvent</CODE>, <CODE>RegisterSdmcEjectedEvent</CODE>, and <CODE>UnregisterSdmcEjectedEvent</CODE> functions.<br> The <CODE>nn::fs::RegisterXxxxEvent</CODE> functions get events via registered instances of <CODE>nn::os::LightEvent</CODE>.<br> At present, there is still a restriction: <CODE>nn::fs::RegisterXxxxEvent</CODE> and <CODE>UnregisterXxxxEvent</CODE> functions cannot be repeatedly called in succession.<br></description></P>
1399<HR>
1400<H3><A name="note48-31">Note 48-31: (FS) Fixed bug that prevented the <CODE>fs::Directory::Read</CODE> function from getting all entries [SDK]</A></H3>
1401<P><description>When an external file system was used to create many entries in a directory and then the <CODE>fs::Directory::Read</CODE> function was used to get a list of entries, it would sometimes only be able to get a partial list. This bug has been fixed.<br></description></P>
1402<HR>
1403<H3><A name="note48-32">Note 48-32: (FS) Added the <CODE>nn::fs::GetFileSystemSize</CODE> function [SDK]</A></H3>
1404<P><description>Added the <CODE>nn::fs::GetFileSystemSize</CODE> function, which can get the total space and free space of storage media whose media type is specified.<br> The following media types can be specified: <CODE>MEDIA_TYPE_NAND</CODE> and <CODE>MEDIA_TYPE_SDMC</CODE>.<br></description></P>
1405<HR>
1406<H3><A name="note48-33">Note 48-33: (FS) Added the <CODE>nn::fs::MountSdmc</CODE> function [SDK]</A></H3>
1407<P><description>Added the <CODE>nn::fs::MountSdmc</CODE> function, which mounts SD Cards.<br> In order to access an SDMC archive, you must run this function with the SD Card inserted.<br> To mount a previously mounted SD Card that has been removed and then re-inserted, it must first be unmounted using the <CODE>nn::fs::Unmount</CODE> function and then the <CODE>nn::fs::MountSdmc</CODE> function must be executed again.<br></description></P>
1408<HR>
1409<H3><A name="note48-34">Note 48-34: (FS) Added the <CODE>nn::fs::hio::GetHioRequiredMemorySize</CODE> function [SDK]</A></H3>
1410<P><description>Added a function that gets the size of working memory required when calling the <CODE>nn::fs::hio::MountHioArchive</CODE> function.<br></description></P>
1411<HR>
1412<H3><A name="note48-35">Note 48-35: (FS) Added a write function to <CODE>nn::fs::hio::HioArchive</CODE> [SDK]</A></H3>
1413<P><description>Implemented a write function in <CODE>nn::fs::hio::HioArchive</CODE>.<br> It can write data in the same manner as is done with other archives, even when used on files on a PC.<br></description></P>
1414<HR>
1415<H3><A name="note48-36">Note 48-36: (FS) Added the <CODE>nn::hio::CTR::HostFile::SetSize</CODE> function [SDK]</A></H3>
1416<P><description>Added the new function <CODE>nn::hio::CTR::HostFile::SetSize</CODE>, which can change the size of open files.<br> If the specified size is larger than the current size of the file, this function expands the file. The data in the expanded portion of the file is undefined.<br> If this function is used to trim a file and the file's Seek position lies in the trimmed portion of the file, this function moves the Seek position to the new end of the file.<br></description></P>
1417<HR>
1418<H3><A name="note48-37">Note 48-37: (FS) Added functions to get Game Card insertion/removal events and to get whether a Game Card is inserted [SDK]</A></H3>
1419<P><description>Added the <CODE>nn::fs::RegisterCardInsertedEvent</CODE>, <CODE>UnregisterCardInsertedEvent</CODE>, <CODE>RegisterCardEjectedEvent</CODE>, <CODE>UnregisterCardEjectedEvent</CODE>, and <CODE>IsCardInserted</CODE> functions.<br> At present, there is still a restriction: <CODE>nn::fs::RegisterXxxxEvent</CODE> and <CODE>UnregisterXxxxEvent</CODE> functions cannot be repeatedly called in succession.<br></description></P>
1420<HR>
1421<H3><A name="note48-38">Note 48-38: (FS) Changed length of filenames in save data and expanded save data to 16 characters [SDK]</A></H3>
1422<P><description>Changed length of filenames in save data and expanded save data from 8 characters to 16 characters.<br> This was actually changed in CTR-SDK 0.12 but was accidentally omitted from the change log.<br></description></P>
1423<HR>
1424<H3><A name="note48-39">Note 48-39: (GX) Updated the DMPGL documentation [SDK]</A></H3>
1425<P><description>The main changes can be summarized as follows. See each document for further details.<br>
1426        <ul>
1427          <li><I>DMPGL 2.0 System API Specifications</I> <CODE>$CTR_SDK/documents/DMPGL20/DMPGL20_system_API_specification.pdf</CODE></li>
1428          <ul>
1429            <li>Added description of procedural textures and of restrictions when configuring gas lookup tables.</li>
1430            <li>Revised the code for section 5.9.7 Converting a 32-Bit Floating-Point Number into a 12-Bit Signed Fixed-Point Number with 11 Fractional Bits (Alternate Method).</li>
1431            <li>Revised in line with the argument types of existing functions and with changes to specification restrictions.</li>
1432            <li>Added description of new functions.</li>
1433            <li>Added description of the automatic padding of load arrays.</li>
1434            <li>Revised register settings for gases.</li>
1435            <li>Added description of the framebuffer access control setting registers.</li>
1436            <li>Revised the settings of register <CODE>0x101</CODE> when logical operations are enabled.</li>
1437            <li>Revised the setting of register <CODE>0x25f[0:0]</CODE>, which is involved with rendering functions.</li>
1438            <li>Added description of the WRAP mode settings used for shadow textures.</li>
1439          </ul>
1440          <li><I>DMPGL 2.0 Specifications</I> <CODE>$CTR_SDK/documents/DMPGL20/DMPGL20_specification.pdf</CODE></li>
1441          <ul>
1442            <li>Added description of the w buffer and polygon offsets.</li>
1443            <li>Added description of the texture wrapping modes used with cube-map shadow filtering.</li>
1444          </ul>
1445          <li><I>DMPGL 2.0 Programming Guide</I> <CODE>$CTR_SDK/documents/DMPGL20/DMPGL20_programming_guide.pdf</CODE></li>
1446          <ul>
1447            <li>Added a chapter on Troubleshooting.</li>
1448            <li>Added description of texture coordinate conversion during shadow texture lookups, and fixed some typos.</li>
1449          </ul>
1450          <li><I>Vertex Shader Reference Manual</I> <CODE>$CTR_SDK/documents/DMPGL20/VertexShaderReferenceManual.pdf</CODE></li>
1451          <ul>
1452            <li>Expanded the description of the preprocessor pseudo-instruction <CODE>output_map</CODE>.</li>
1453            <li>Expanded sections 12.7.3 Output Order of Calculation Results and 12.7.5 Stalls Due to Arithmetic Unit Race Conditions.</li>
1454            <li>Added a section on stalls due to instruction dependencies.</li>
1455          </ul>
1456        </ul>
1457      </description></P>
1458<HR>
1459<H3><A name="note48-40">Note 48-40: (GX) Added the GR library [SDK]</A></H3>
1460<P><description>Added the GR library, which assists in high-speed graphics rendering by directly generating command arrays for setting the GPU (PICA graphics processor) registers of CTR.<br></description></P>
1461<HR>
1462<H3><A name="note48-41">Note 48-41: (GX) Updated PICA macro headers [SDK]</A></H3>
1463<P><description>Made the following changes to the PICA macro headers.<br>
1464        <ul>
1465          <li><CODE>gx_MacroCommon.h</CODE></li>
1466          <ul>
1467            <li>Added the new <CODE>PICA_CMD_HEADER_GS_F32</CODE> macro for commands that write to geometry shader floating-point registers.</li>
1468            <li>Added the <CODE>PICA_DATA_COLOR_RGB8</CODE> and <CODE>PICA_DATA_COLOR_RGBA8</CODE> macros.</li>
1469          </ul>
1470          <li>Added names to enumerated types.</li>
1471        </ul>
1472        Changed the member names and macro names of the enumerated types listed below.<br> <B>Note:</B> The old types were moved to <CODE>gx_MacroOld.h</CODE> for compatibility.<br>
1473        <ul>
1474          <li><CODE>gx_MacroFragment.h</CODE></li>
1475          <ul>
1476            <li><CODE>PICA_DATA_FRAG_LIGHT_TEXTURE* -&gt; PICA_DATA_FRAG_LIGHT_ENV_TEXTURE*</CODE></li>
1477            <li><CODE>PICA_DATA_*_*                 -&gt; PICA_DATA_FRAG_LIGHT_ENV_LUTSCALE_*_*</CODE></li>
1478            <li><CODE>PICA_DATA_FRAG_LIGHT_LUTINPUT -&gt; PICA_DATA_FRAG_LIGHT_ENV_LUTINPUT</CODE></li>
1479            <li><CODE>PICA_DATA_FRAG_LIGHT_LUTSCALE -&gt; PICA_DATA_FRAG_LIGHT_ENV_LUTSCALE</CODE></li>
1480          </ul>
1481          <li><CODE>gx_MacroMisc.h</CODE></li>
1482          <ul>
1483            <li>Because it was discovered that commands that set register <CODE>0x101</CODE> are unnecessary when logical operations are enabled, the <CODE>PICA_CMD_SET_LOGIC_OP</CODE> was revised to no longer generate such commands.</li>
1484          </ul>
1485        </ul>
1486      </description></P>
1487<HR>
1488<H3><A name="note48-42">Note 48-42: (GX) Changed the off-limits range when placing display buffers in VRAM [SDK|SystemUpdater]</A></H3>
1489<P><description>When placing display buffers in VRAM, previously there was a restriction that stated that buffers could not be placed in the last 0.5 MB of either VRAMA or VRAMB. This off-limits range was widened: now display buffers cannot be placed in the last 1.5 MB of either VRAMA or VRAMB.<br></description></P>
1490<HR>
1491<H3><A name="note48-43">Note 48-43: (GX) Enabled polygon offsets when the W buffer is enabled [SDK]</A></H3>
1492<P><description>Z-value offsets via <CODE>glPolygonOffset</CODE> are now valid regardless of the W buffer setting.<br></description></P>
1493<HR>
1494<H3><A name="note48-44">Note 48-44: (GX) Changed the <CODE>glCopyTexImage2D</CODE> and <CODE>glCopyTexSubImage2D</CODE> functions [SDK]</A></H3>
1495<P><description>Applied the following changes to both functions.<br>
1496        <ul>
1497          <li>Added support for transfer in cases where the sum of the arguments <SPAN class="argument">height</SPAN> and <SPAN class="argument">y</SPAN> is larger than the current render buffer.</li>
1498          <li>Added support for transfer in cases where either or both of the <SPAN class="argument">x</SPAN> and <SPAN class="argument">y</SPAN> arguments are negative.<br>In addition, made the following revisions to only the <CODE>glCopyTexSubImage2D</CODE> function.</li>
1499          <li>Revised so that a <CODE>GL_INVALID_VALUE</CODE> error is returned when either or both of the <SPAN class="argument">xoffset</SPAN> and <SPAN class="argument">yoffset</SPAN> arguments are negative.</li>
1500        </ul>
1501      </description></P>
1502<HR>
1503<H3><A name="note48-45">Note 48-45: (GX) Fixed a bug in the <CODE>glPolygonOffset</CODE> function [SDK]</A></H3>
1504<P><description>Previously, the results of the <CODE>glPolygonOffset</CODE> function were affected by the settings of the <CODE>glDepthRange</CODE> function. This bug has been fixed.<br></description></P>
1505<HR>
1506<H3><A name="note48-46">Note 48-46: (GX) Added the <CODE>nngxAddB2LTransferCommand</CODE> function [SDK]</A></H3>
1507<P><description>This function adds a command (post transfer command) that converts block images to linear images when transferring data.<br> The <CODE>nngxTransferRenderImage</CODE> function offers similar features, but this function can be used more generally.<br></description></P>
1508<HR>
1509<H3><A name="note48-47">Note 48-47: (GX) Added the <CODE>nngxAddBlockImageCopyCommand</CODE> function [SDK]</A></H3>
1510<P><description>This function adds a block image transfer command (render texture transfer command).<br> Use this function to copy images between rendered render buffers and textures.<br></description></P>
1511<HR>
1512<H3><A name="note48-48">Note 48-48: (GX) Added the <CODE>nngxAddL2BTransferCommand</CODE> function [SDK]</A></H3>
1513<P><description>This function adds a command (post transfer command) that converts linear images to block images when transferring data.<br> The <CODE>nngxTransferLinearImage</CODE> function offers similar features, but this function can be used more generally.<br></description></P>
1514<HR>
1515<H3><A name="note48-49">Note 48-49: (GX) Added the <CODE>nngxAddMemoryFillCommand</CODE> function [SDK]</A></H3>
1516<P><description>This function adds a command (memory fill command) that fills the specified region with the specified data.<br> The <CODE>glClear</CODE> function offers similar features, but this function can be used more generally.<br></description></P>
1517<HR>
1518<H3><A name="note48-50">Note 48-50: (GX) Removed restrictions on the <SPAN class="argument">srcaddr</SPAN> and <SPAN class="argument">dstaddr</SPAN> arguments in the <CODE>nngxAddVramDmaCommand</CODE> function [SDK]</A></H3>
1519<P><description>Removed the restriction requiring the <SPAN class="argument">srcaddr</SPAN> and <SPAN class="argument">dstaddr</SPAN> arguments in the <CODE>nngxAddVramDmaCommand</CODE> function to be 8-byte aligned.<br></description></P>
1520<HR>
1521<H3><A name="note48-51">Note 48-51: (GX) Fixed bug in behavior when an invalid <SPAN class="argument">format</SPAN> argument was specified in the <CODE>nngxFilterBlockImage</CODE> function [SDK]</A></H3>
1522<P><description>Previously, when an invalid <SPAN class="argument">format</SPAN> argument was specified in the <CODE>nngxFilterBlockImage</CODE> function, sometimes after the error was detected control would not return from the function and an invalid command request would be generated. This bug has been fixed.<br></description></P>
1523<HR>
1524<H3><A name="note48-52">Note 48-52:(GX) Revised the types of arguments in the <CODE>nngxFilterBlockImage</CODE> and <CODE>nngxAddVramDmaCommand</CODE> functions [SDK]</A></H3>
1525<P><description>Revised the type of the <SPAN class="argument">srcaddr</SPAN> argument in the <CODE>nngxFilterBlockImage</CODE> and <CODE>nngxAddVramDmaCommand</CODE> functions to <CODE>const GLvoid*</CODE>.<br></description></P>
1526<HR>
1527<H3><A name="note48-53">Note 48-53: (GX) Added the <CODE>nngxGetAllocator</CODE> function [SDK]</A></H3>
1528<P><description>Added the new <CODE>nngxGetAllocator</CODE> function, which gets the allocator and deallocator set by the <CODE>nngxInitialize</CODE> function.<br></description></P>
1529<HR>
1530<H3><A name="note48-54">Note 48-54: (GX) Fixed bug that caused <CODE>glViewport</CODE> function settings to not be applied if run immediately after running the <CODE>nngxInitialize</CODE> function [SDK]</A></H3>
1531<P><description>Previously, <CODE>glViewport</CODE> settings would not be applied if <CODE>glViewport</CODE> was called before the first validation of <CODE>NN_GX_STATE_FRAMEBUFFER</CODE> after <CODE>nngxInitialize</CODE>. This bug has been fixed.<br></description></P>
1532<HR>
1533<H3><A name="note48-55">Note 48-55: (GX) Added the <CODE>nngxSetGasAutoAccumulationUpdate</CODE> function [SDK]</A></H3>
1534<P><description>Added a function that updates values related to the additive blending results of gas density rendering.<br> Use this function when directly generating commands for gas rendering, instead of using DMPGL functions.<br></description></P>
1535<HR>
1536<H3><A name="note48-56">Note 48-56: (GX) Fixed problem where the <CODE>nngxTransferLinearImage</CODE> function would stop on an assert [SDK]</A></H3>
1537<P><description>Previously, although the function specification states that the first argument of <CODE>nngxTransferLinearImage</CODE> will accept addresses either in device memory or VRAM, specifying anything other than VRAM would cause the function to stop because of a mistake in an assert statement. This mistake has been fixed.<br></description></P>
1538<HR>
1539<H3><A name="note48-57">Note 48-57: (GX) Fixed bug in delta value settings of lookup tables used for procedural texture RGBA mapping and noise modulation [SDK]</A></H3>
1540<P><description>Previously, the settings for delta values in lookup tables used for procedural texture RGBA maps and noise were double the correct settings. This bug has been fixed.<br></description></P>
1541<HR>
1542<H3><A name="note48-58">Note 48-58: (GX) Fixed bug in <CODE>glVertexAttribPointer</CODE> function when multiple vertex attributes have been arranged as an interleaved array [SDK]</A></H3>
1543<P><description>Previously, when multiple vertex attributes were arranged as an interleaved array and the <SPAN class="argument">ptr</SPAN> argument of the <CODE>glVertexAttribPointer</CODE> function was specified in a way that placed the second piece of vertex data at the starting address of the vertex array, a bug sometimes caused the rendering API to generate an error and prevented correct rendering. This bug has been fixed.<br></description></P>
1544<HR>
1545<H3><A name="note48-59">Note 48-59: (GX) Deleted command that set the <CODE>0x101</CODE> register when logical operations are enabled [SDK]</A></H3>
1546<P><description>Previously, the DMPGL API would generate a command that set register <CODE>0x101</CODE> to <CODE>0x01010000</CODE> when logical operations were enabled. However, it became clear that hardware specifications make this setting unnecessary, so this command is no longer generated.<br> The <I>DMPGL 2.0 System API Specifications</I> (<CODE>$CTR_SDK/documents/DMPGL20/DMPGL20_system_API_specification.pdf</CODE>) have been revised in line with this change.<br></description></P>
1547<HR>
1548<H3><A name="note48-60">Note 48-60: (HID) Deleted <CODE>ACCELEROMETER_PLAY_MODE_LOOSE</CODE> [SDK]</A></H3>
1549<P><description>Because <CODE>ACCELEROMETER_PLAY_MODE_LOOSE</CODE> would sometimes yield unstable calculation results, it has been deleted. Now <CODE>ACCELEROMETER_PLAY_MODE_TIGHT</CODE> is the only available setting.<br> In line with this change, the <CODE>SetPlayMode</CODE> function (which set the sensitivity behavior mode) and the corresponding <CODE>GetPlayMode</CODE> function have also been eliminated.<br></description></P>
1550<HR>
1551<H3><A name="note48-61">Note 48-61: (HID) Added functions that enable use of the gyro sensor [SDK]</A></H3>
1552<P><description>Added the <CODE>nn::hid::GyroscopeReader</CODE> class, which can get the gyro sensor values and the attitude of the system calculated based on the gyro sensor values.<br></description></P>
1553<HR>
1554<H3><A name="note48-62">Note 48-62: (HID) Revised the minimum and maximum values for clamping the Circle Pad [SDK]</A></H3>
1555<P><description>The range of specifiable values in the <CODE>PadReader::SetStickClamp</CODE> function has been changed as shown below.<br>
1556        <ul>
1557          <li>Minimum value</li>
1558          <ul>
1559            <li>Circular clamping mode: 46 (50)</li>
1560            <li>Cross-shaped clamping mode: 41 (38)</li>
1561          </ul>
1562          <li>Maximum value</li>
1563          <ul>
1564            <li>Both modes: 145 (150)</li>
1565          </ul>
1566        </ul>
1567        (The value in parentheses was the value used in CTR-SDK 0.12.)<br></description></P>
1568<HR>
1569<H3><A name="note48-63">Note 48-63: (HID) Added offset correction functions and axis rotation functions to the accelerometer library [SDK]</A></H3>
1570<P><description>Added to the accelerometer library a group of functions that take an offset of the output values and a group of functions that rotate the axes of output.<br></description></P>
1571<HR>
1572<H3><A name="note48-64">Note 48-64: (HIO) Added functions for transmittable sizes during serial communication [SDK]</A></H3>
1573<P><description>Added the <CODE>GetReadableSize</CODE> and <CODE>GetWritableSize</CODE> functions, which get the data size that can be sent or received in serial communication.<br></description></P>
1574<HR>
1575<H3><A name="note48-65">Note 48-65: (JPEG) Added the <CODE>GetMpRegionsToBuildJpegData</CODE> function to the decoder [SDK]</A></H3>
1576<P><description>Added the <CODE>GetMpRegionsToBuildJpegData</CODE> function to the <CODE>JpegMpDecoder</CODE> class. This function gets information required to rebuild JPEG data from the individual image data stored in MP format.<br></description></P>
1577<HR>
1578<H3><A name="note48-66">Note 48-66: (JPEG) Added function that stops decoding [SDK]</A></H3>
1579<P><description>Added the <CODE>StopDecoder</CODE> function, which can issue a stop request on decoding that is already running in another thread.<br></description></P>
1580<HR>
1581<H3><A name="note48-67">Note 48-67: (JPEG) Added the BGR8 and ABGR8 pixel formats [SDK]</A></H3>
1582<P><description>Added pixel formats that can be specified during encoding and decoding.<br></description></P>
1583<HR>
1584<H3><A name="note48-68">Note 48-68: (MATH) Changed the <CODE>nn::math::VEC3::DistanceSquare</CODE> function to a <CODE>const</CODE> function [SDK]</A></H3>
1585<P><description>Made the return value of the <CODE>nn::math::VEC3::DistanceSquare</CODE> function a <CODE>const</CODE>, in line with the function's internal implementation.<br></description></P>
1586<HR>
1587<H3><A name="note48-69">Note 48-69: (MATH) Fixed problem where copies of constants would be embedded in every object [SDK]</A></H3>
1588<P><description>Because of how the values of <CODE>F_NAN</CODE> and other constants were defined in <CODE>math_Constant.h</CODE>, each compile unit that included this header file would generate its own copies. This problem has been fixed.<br></description></P>
1589<HR>
1590<H3><A name="note48-70">Note 48-70: (MATH) Fixed problem where embedded assembly language functions were not dead-stripped on a function-by-function level [SDK]</A></H3>
1591<P><description>Some MATH library functions have been put in assembly language to optimize for speed, but previously there was a problem where these functions were only dead-stripped in units of individual object files. This problem has been fixed.<br></description></P>
1592<HR>
1593<H3><A name="note48-71">Note 48-71: (MIC) Changed access rights to memory that stores sampling results [SDK|SystemUpdater]</A></H3>
1594<P><description>In CTR-SDK 0.12, the memory set by <CODE>SetBuffer</CODE> had <CODE>ReadOnly</CODE> attributes beginning from the time it was set and extending through to after the call to <CODE>ResetBuffer</CODE>. This has been changed so that the memory has <CODE>ReadWrite</CODE> attributes beginning from the call to <CODE>SetBuffer</CODE>.<br> This change gives applications read/write access to the targeted memory regardless of the timing of calls to the <CODE>SetBuffer</CODE> and <CODE>ResetBuffer</CODE> functions.<br></description></P>
1595<HR>
1596<H3><A name="note48-72">Note 48-72: (NDM) Enabled the network daemon and added a library to control it [SDK|SystemUpdater|SampleDemos]</A></H3>
1597<P><description>Made the resident program (daemon) that performs network processing active by default.<br> This change means that access points, Nintendo Zone areas, and other networks will be searched for in the background of applications.<br><br> Also added the NDM library for controlling background communication.<br></description></P>
1598<HR>
1599<H3><A name="note48-73">Note 48-73: (NGC) Added specifications for the <CODE>CheckProfanityWords</CODE> function [SDK]</A></H3>
1600<P><description>Added a specification to the <CODE>CheckProfanityWords</CODE> function stating that if its check finds an &quot;@&quot; symbol in a string, that string will be handled as a problematic string.<br></description></P>
1601<HR>
1602<H3><A name="note48-74">Note 48-74: (NGC) Added the <CODE>CountNumbers</CODE> function [SDK]</A></H3>
1603<P><description>Added the <CODE>CountNumbers</CODE> function, which counts the number of characters that represent numbers within a string.<br></description></P>
1604<HR>
1605<H3><A name="note48-75">Note 48-75: (OS) Added the <CODE>GetRunnningTargetHardware</CODE> function [SDK]</A></H3>
1606<P><description>Added the <CODE>nn::os::GetRunnningTargetHardware</CODE> function, which can get what hardware the program is running on.<br></description></P>
1607<HR>
1608<H3><A name="note48-76">Note 48-76: (OS) Added support for Sleep Mode [SDK|SystemUpdater]</A></H3>
1609<P><description>The Sleep feature, activated by closing the system, is now available for use.<br> To enable this feature, you must register APPLET Sleep-related callbacks.<br><br> See <CODE>demo1</CODE> and <CODE>demo2</CODE> for more details.<br></description></P>
1610<HR>
1611<H3><A name="note48-77">Note 48-77: (OS) Added functions to get information about the amount of available memory [SDK|SystemUpdater]</A></H3>
1612<P><description>Added the following two functions, which get information about the amount of available memory.<br>
1613        <ul>
1614          <li><CODE>nn::os::GetAppMemorySize</CODE></li>
1615          <li><CODE>nn::os::GetUsingMemorySize</CODE></li>
1616        </ul>
1617     </description></P>
1618<HR>
1619<H3><A name="note48-78">Note 48-78: (PL) Added functions to get shared fonts [SDK]</A></H3>
1620<P><description>Added functions for getting shared fonts to the PL library.<br></description></P>
1621<HR>
1622<H3><A name="note48-79">Note 48-79: (PTM) Added library for power- and clock-related features [SDK]</A></H3>
1623<P><description>Added an interface for battery, AC adapter, and alarm features to <CODE>nn::ptm</CODE>.<br></description></P>
1624<HR>
1625<H3><A name="note48-80">Note 48-80: (RDT) Fixed bug when connecting [SDK]</A></H3>
1626<P><description>Previously, there was a bug where, if a <CODE>Sender</CODE> instance attempted connection to a peer <CODE>Receiver</CODE> instance at the same time as the <CODE>Receiver</CODE> instance transitioned from CLOSED to WAITING state, connection would be established although the connection itself was incomplete (with only one of the peers achieving an OPENED state). This bug has been fixed.<br></description></P>
1627<HR>
1628<H3><A name="note48-81">Note 48-81: (RDT) Changed the behavior of state transitions [SDK]</A></H3>
1629<P><description>Changed the timing at which <CODE>Sender</CODE> and <CODE>Receiver</CODE> instances transition between states.<br> In the implementation up until now, a call to the <CODE>Process</CODE> function was always required in order to trigger an instance to transition to another state. In the new implementation, behavior has been changed so that the state transitions instantly upon a successful call to <CODE>Open</CODE>, <CODE>Wait</CODE>, <CODE>Close</CODE> or the other functions.<br> The three changes listed below were also made in line with this change.<br>
1630        <ul>
1631          <li>Eliminated the <CODE>ResultCommandQueueIsFull</CODE> result code, which indicated that the command queue was full.</li>
1632          <li>Added <CODE>SENDER_STATE_OPEN_REQUESTED</CODE> and <CODE>SENDER_STATE_CLOSE_REQUESTED</CODE> as new states for <CODE>Sender</CODE> instances.</li>
1633          <li>Changed the result codes returned by the various RDT functions.<br>See the Function Reference Manual for details.</li>
1634        </ul>
1635      </description></P>
1636<HR>
1637<H3><A name="note48-82">Note 48-82:(SND) Added function that determines whether a file is a BCWAV file [SDK]</A></H3>
1638<P><description>Added the <CODE>nn::snd::Bcwav::IsBcwav</CODE> function, which determines whether a file is in BCWAV format.<br></description></P>
1639<HR>
1640<H3><A name="note48-83">Note 48-83: (SND) Fixed bug where control would not return from the <CODE>nn::snd::Initialize</CODE> function [SDK]</A></H3>
1641<P><description>In CTR-SDK 0.11 and subsequent versions, there was a bug that (on rare occasions) caused control to not return from the <CODE>nn::snd::Initialize</CODE> function. This bug has been fixed.<br></description></P>
1642<HR>
1643<H3><A name="note48-84">Note 48-84: (SND) Changed the namespace of the SND library [SDK]</A></H3>
1644<P><description>Changed the sound namespace from <CODE>nn::snd</CODE> to <CODE>nn::snd::CTR</CODE>.<br> Because the &quot;<CODE>::CTR</CODE>&quot; portion of the namespace can be omitted, this change makes no difference from a usage standpoint.<br></description></P>
1645<HR>
1646<H3><A name="note48-85">Note 48-85: (SND) Added functions to get information about dropped sound frames [SDK]</A></H3>
1647<P><description>Added the <CODE>nn::snd::GetDroppedSoundFrameCount</CODE> function, which gets the number of dropped sound frames, and the <CODE>nn::snd::ClearDroppedSoundFrameCount</CODE> function, which resets that number.<br></description></P>
1648<HR>
1649<H3><A name="note48-86">Note 48-86: (SOCKET) Eliminated <CODE>dummy_util</CODE> functions [SDK|SampleDemos]</A></H3>
1650<P><description>As a result of the addition of the <CODE>NetworkSetting</CODE> tool, all demos now directly use AC to use the settings written to NAND.<br> The <CODE>dummy_util</CODE> functions will be deleted from the next release.<br></description></P>
1651<HR>
1652<H3><A name="note48-87">Note 48-87: (TOOL) Extended the <CODE>Config</CODE> tool [SDK]</A></H3>
1653<P><description>Made the following changes to the <CODE>Config</CODE> tool.<br>
1654        <ul>
1655          <li>Added feature to load a settings file placed on an SD Card and use it to batch-configure the user settings.<br>The settings file (<CODE>ctrsetting.txt</CODE>) is under <CODE>$CTR-SDK/resources/configtool</CODE>.</li>
1656          <li>Added feature to rewrite a portion of the stereo camera calibration values.</li>
1657        </ul>
1658      </description></P>
1659<HR>
1660<H3><A name="note48-88">Note 48-88: (TOOL) Added features to the <CODE>DevMenu</CODE> [SDK]</A></H3>
1661<P><description>Made the following changes to the <CODE>DevMenu</CODE>.<br>
1662        <ul>
1663          <li>Added feature that imports all the CIA files in the current directory if the user presses the L+R+A button combination.</li>
1664          <li>Added features to display and delete additional data (expanded save data).<br>Deletion is done with the X Button, the same as the other modes.</li>
1665        </ul>
1666      </description></P>
1667<HR>
1668<H3><A name="note48-89">Note 48-89: (TOOL) Added <CODE>FontConverter</CODE> tools [SDK]</A></H3>
1669<P><description>Added the font conversion utilities <CODE>ctr_FontConverter</CODE> and <CODE>ctr_FontConverterConsole</CODE>.<br> Their content is the same as the FontConverter included in NintendoWare for CTR.<br></description></P>
1670<HR>
1671<H3><A name="note48-90">Note 48-90: (TOOL) Created the <CODE>NetworkSetting</CODE> tool [SDK]</A></H3>
1672<P><description>Created a tool that configures the security mode, SSID, and key (or passphrase) for network configurations 1-3.<br></description></P>
1673<HR>
1674<H3><A name="note48-91">Note 48-91: (TOOL) Added items to RSF files [SDK]</A></H3>
1675<P><description>Added the following items to RSF files.<br> See the <CODE>ctr_makerom</CODE> reference page for details.<br>
1676        <ul>
1677          <li><CODE>BasicInfo/Logo</CODE>: Specifies logo data</li>
1678          <li><CODE>TitleInfo/Category</CODE>: Specifies the application type</li>
1679          <li><CODE>TitleInfo/ChildIndex</CODE>: Specifies the index of a download child program</li>
1680        </ul>
1681      </description></P>
1682<HR>
1683<H3><A name="note48-92">Note 48-92: (TOOL) Fixed bug when parsing RSF files [SDK]</A></H3>
1684<P><description>Previously, if an RSF file contained a string that was enclosed in double quotes (&quot;&quot;) and included a hash mark (#), parsing of the string would fail and an error would be generated.<br> This bug has been fixed.<br></description></P>
1685<HR>
1686<H3><A name="note48-93">Note 48-93: (TOOL) Updated <CODE>ctr_TexturePackager32</CODE> [SDK]</A></H3>
1687<P><description>Added the following features to the <CODE>ctr_TexturePackager32</CODE> tool.<br> For details, see <CODE>$CTR_SDK/documents/TechnicalNotes/TexturePackagerLibrary/TPLTexturePackageTool.pdf</CODE>.<br>
1688        <ul>
1689          <li>Added the <CODE>-nw4c</CODE> option.<br>Specify this option to use a TGA file that was created with the Photoshop plug-in (<CODE>NW4C_tga</CODE>).</li>
1690          <li>Added the <CODE>etcmethod</CODE> attribute to <CODE>&lt;texture&gt;</CODE> nodes.<br>This option explicitly specifies to use the ETC1 compression method for the <CODE>ETC1</CODE> and <CODE>ETC1_A4</CODE> formats.</li>
1691        </ul>
1692      </description></P>
1693<HR>
1694<H3><A name="note48-94">Note 48-94: (TOOL) Changed <CODE>ctr_WaveConverter32.exe</CODE> [SDK]</A></H3>
1695<P><description>Made the following changes to <CODE>ctr_WaveConverter32.exe</CODE>.
1696        <ul>
1697          <li>Fixed the following bugs, which occurred when a looping waveform was converted using the <CODE>--imaadpcm</CODE> option:</li>
1698          <ul>
1699            <li>Bug where the data portion would be filled with <CODE>0</CODE></li>
1700            <li>Bug where values would be written that were invalid in the loop context, causing noise when the waveform was played</li>
1701          </ul>
1702          <li>Added the <CODE>--loopStart/--loopEnd</CODE> options, which set the loop frames.<br>See the <CODE>ctr_WaveConverter</CODE> manual reference page for details.</li>
1703          <li>Fixed bug where looping noise would occur in DSP ADPCM-encoded files whose loop start frame was 0.<br>Reconversion of the waveform data is required.</li>
1704        </ul>
1705      </description></P>
1706<HR>
1707<H3><A name="note48-95">Note 48-95: (TOOL) Added <CODE>ctr_compress</CODE> [SDK]</A></H3>
1708<P><description>Added the file compression tool <CODE>ctr_compress</CODE>.<br></description></P>
1709<HR>
1710<H3><A name="note48-96">Note 48-96: (TOOL) Added <CODE>ctr_makebanner</CODE> [SDK|SampleDemos]</A></H3>
1711<P><description>Added <CODE>ctr_makebanner</CODE>, a tool for creating banner data.<br> Banners and icons created with <CODE>ctr_makebanner</CODE> can be embedded in CCI files using <CODE>ctr_makerom</CODE>.<br> However, currently there exists no method to check the embedded banners and icons.<br><br> Also added the <CODE>makebanner</CODE> demo in line with this change.<br></description></P>
1712<HR>
1713<H3><A name="note48-97">Note 48-97: (TOOL) Added <CODE>ctr_makeciaarchive32.exe</CODE> [SDK]</A></H3>
1714<P><description>Added <CODE>ctr_makeciaarchive32.exe</CODE>, which gathers multiple CIA files to create archives.<br> Although this tool can be used within the build system when creating multiplayer child programs, for now, do not execute it directly.<br></description></P>
1715<HR>
1716<H3><A name="note48-98">Note 48-98: (TOOL) Fixed bug with <CODE>-D</CODE> option in <CODE>ctr_makerom</CODE> [SDK]</A></H3>
1717<P><description>Previously, if the &quot;value&quot; string in the <CODE>-Dname=value</CODE> option included whitespace, there was a bug where only the string up to the whitespace would be recognized. This bug has been fixed. <br> Before fix: <CODE>-DTITLE=&quot;TEST ROM&quot; → TITLE=&quot;TEST&quot;</CODE><br> After fix: <CODE>-DTITLE=&quot;TEST ROM&quot; → TITLE=&quot;TEST ROM&quot;</CODE><br></description></P>
1718<HR>
1719<H3><A name="note48-99">Note 48-99: (TOOL) Added multi-core support to <CODE>ctr_makerom</CODE> [SDK]</A></H3>
1720<P><description>Changed part of the <CODE>ctr_makerom</CODE> processing to now be performed in multiple threads.<br></description></P>
1721<HR>
1722<H3><A name="note48-100">Note 48-100: (TOOL) Added <CODE>ctr_makerom</CODE> options [SDK]</A></H3>
1723<P><description>Added the following options to <CODE>ctr_makerom</CODE>.<br> See the reference page for details.<br>
1724        <ul>
1725          <li><CODE>-content</CODE>: Specifies what content to store in the CCI file</li>
1726          <li><CODE>-banner</CODE>: Specifies a banner file</li>
1727          <li><CODE>-icon</CODE>: Specifies an icon file</li>
1728          <li><CODE>-f data</CODE>: Specifies to output in CFA file format</li>
1729        </ul>
1730        <B>Note:</B> The <CODE>-cxi</CODE> option, which was used in some demos in previous SDK versions, has been eliminated and replaced by the <CODE>-content</CODE> option.</description></P>
1731<HR>
1732<H3><A name="note48-101">Note 48-101: (TOOL) Updated the shader assembler [SDK]</A></H3>
1733<P><description>The shader assembler now supports files that are UTF-8 (with BOM).<br></description></P>
1734<HR>
1735<H3><A name="note48-102">Note 48-102: (TOOL) Changed the default <CODE>UniqueId</CODE> [SDK]</A></H3>
1736<P><description>Changed the default <CODE>UniqueId</CODE> value from <CODE>0x200</CODE> to <CODE>0xf7fff</CODE>.<br></description></P>
1737<HR>
1738<H3><A name="note48-103">Note 48-103: (TPL) Changed the definitions of the various <CODE>CtrTexFormat</CODE> formats [SDK]</A></H3>
1739<P><description>Changed the values of the formats defined by the <CODE>nn::tpl::CtrTexFormat</CODE> enumerated type.<br> The new values are such that you can take the bitwise OR of a new value with <CODE>0xf</CODE> and set the resulting value directly in a PICA register. <br> (However, <CODE>TEXFMT_REF</CODE> and <CODE>TEXFMT_UNSUPPORT</CODE> are exceptions.)<br><br> This specification change means that the format of CTPK files created with previous versions of the SDK will no longer be parsed correctly.<br> Recreate such files with <CODE>ctr_TexturePackager32.exe</CODE>.<br></description></P>
1740<HR>
1741<H3><A name="note48-104">Note 48-104: (UDS) Added the <CODE>nn::uds::AllowToSpectate</CODE> function [SDK]</A></H3>
1742<P><description>Added the <CODE>nn::uds::AllowToSpectate</CODE> function, which allows reconnection by spectators after the <CODE>EjectSpectator</CODE> function has been run.<br></description></P>
1743<HR>
1744<H3><A name="note48-105">Note 48-105: (UDS) Added members to the <CODE>nn::uds::ConnectionStatus</CODE> structure [SDK]</A></H3>
1745<P><description>Added members to the <CODE>nn::uds::ConnectionStatus</CODE> structure so that the <CODE>nn::uds::GetConnectionStatus</CODE> function is now able to get the number of nodes currently connected to the network, the maximum number that can connect, and other similar information.<br></description></P>
1746<HR>
1747<H3><A name="note48-106">Note 48-106: (UDS) Changed the <CODE>nn::uds::EjectSpectator</CODE> function so that it can be certain of the ejection of spectators [SDK]</A></H3>
1748<P><description>Up until now, there was a chance that, depending on signal strength, the eject notification might not be received after the <CODE>EjectSpectator</CODE> function was run. (This would lead to the spectator remaining connected.) Changes have been made so that spectators are now disconnected from the network even when the eject notification could not be received.<br> Also made changes so that spectators cannot newly connect to the network after the <CODE>EjectSpectator</CODE> function has been run.<br></description></P>
1749<HR>
1750<H3><A name="note48-107">Note 48-107: (UDS) Added the <CODE>nn::uds::LinkLevel GetLinkLevel</CODE> function [SDK]</A></H3>
1751<P><description>In addition to the preexisting <CODE>GetLinkLevel</CODE> function, which takes an <CODE>nn::uds::LinkLevel</CODE> pointer as an argument, added a <CODE>GetLinkLevel</CODE> function whose return value is an <CODE>nn::uds::LinkLevel</CODE> enumerated type.<br> Also revised the function to complete in a shorter time than was required in CTR-SDK 0.12 and previous versions.<br></description></P>
1752<HR>
1753<H3><A name="note48-108">Note 48-108: (UDS) Added the <CODE>nn::uds::NetworkDescription::CanConnectAsSpectator</CODE> function [SDK]</A></H3>
1754<P><description>Added a function that can confirm whether the target network is allowing spectators to connect.<br></description></P>
1755<HR>
1756<H3><A name="note48-109">Note 48-109: (UDS) Added function to create local communication IDs [SDK]</A></H3>
1757<P><description>Added the <CODE>CreateLocalCommunicationId</CODE> function, which creates a 32-bit ID (until now referred to in the Function Reference as the &quot;ID assigned to each title&quot;) based on the unique ID assigned to each title by the Licensing department.<br> Specify the ID created by the <CODE>CreateLocalCommunicationId</CODE> function to <CODE>CreateNetwork</CODE>, <CODE>Scan</CODE>, and similar functions.<br></description></P>
1758<HR>
1759<H3><A name="note48-110">Note 48-110: (ULCD) Fixed bug in <CODE>StereoCamera</CODE> class constructor [SDK]</A></H3>
1760<P><description>Previously, <CODE>StereoCamera(const nn::WithInitialize &amp;)</CODE> did not perform initialization in the way described in the Function Reference. It was revised and now calls the <CODE>StereoCamera::Initialize</CODE> function.<br></description></P>
1761<HR>
1762<H3><A name="note48-111">Note 48-111: (ULCD) Added support for <CODE>const</CODE> member functions in the <CODE>StereoCamera</CODE> class [SDK]</A></H3>
1763<P><description>Prefixed &quot;<CODE>const</CODE>&quot; to all member function arguments and return values in the <CODE>nn::ulcd::StereoCamera</CODE> class where that prefix could be applied.<br></description></P>
1764<HR>
1765<H3><A name="note48-112">Note 48-112: (ULCD) Updated documents describing the ULCD library [SDK]</A></H3>
1766<P><description>Updated documentation to reflect the fact that the restrictions on parallax for stereoscopic display have now been finalized in the Guidelines.<br> See the Guidelines for details.<br><br> Note, however, that the ULCD library itself has not been revised to reflect these restrictions.<br></description></P>
1767<HR>
1768<H3><A name="note48-113">Note 48-113: (ULCD) Added flag to determine whether initialization has been performed [SDK]</A></H3>
1769<P><description>The <CODE>StereoCamera</CODE> class <CODE>Initialize</CODE> and <CODE>Finalize</CODE> functions were not designed to accommodate this class being generated in multiple threads. To fix this deficiency, added a flag to determine whether individual instances of the class have been initialized.<br> If an instance is uninitialized and a <CODE>CalculateMatrices*</CODE> function is called, execution will stop on an assert.<br></description></P>
1770<HR>
1771<H3><A name="note48-114">Note 48-114: (UTIL) Added <CODE>util_Color.h</CODE>, <CODE>util_Rect.h</CODE>, and <CODE>util_Float24.h</CODE> [SDK]</A></H3>
1772<P><description>Added structure definitions for <CODE>Color</CODE>, <CODE>Rect</CODE>, and <CODE>Float</CODE> to the <CODE>util</CODE> namespace.<br> These are ported versions of the same definitions from the <CODE>ut</CODE> namespace in NintendoWare for CTR.<br></description></P>
1773<HR>
1774<H3><A name="KnownIssues_0_13_0_Release">Known Issues in the SDK 0.13.0 Release</A></H3>
1775<knownissues><description>
1776        <ul>
1777          <li>If you run <B>Ctr Info Setting</B> in the <CODE>Config</CODE> tool when a settings file is not present on the SD Card, the system will freeze.</li>
1778          <li>After you have connected to and finished communicating with your first StreetPass partner, you cannot communicate with another partner. Both systems must be reset to communicate again.</li>
1779        </ul>
1780      </description></knownissues><HR>
1781<H2 style="line-height: 0"><A name="sdk_0_13_0_SystemUpdater">CTR-SDK Version 0.13.0 SystemUpdater</A></H2>
1782<DIV style="text-align: right"><P style="line-height: 0">(2010/09/28)</P></DIV>
1783<HR>
1784<H3><A name="note47-01">Note 47-01: (AC) Revised the <CODE>Connect</CODE> and <CODE>ConnectAsync</CODE> functions [SystemUpdater]</A></H3>
1785<P><description>Previously, there was a bug that sometimes prevented subsequent reconnections if a connection was cancelled while connection processing was underway. This bug has been fixed.<br></description></P>
1786<HR>
1787<H3><A name="note47-02">Note 47-02: (AC) Revised the <CODE>ConnectCancelAsync</CODE> function [SystemUpdater]</A></H3>
1788<P><description>Previously, it was required to pass this function an argument consisting of an <CODE>Event</CODE> that received function completion, but this was deemed unnecessary.<br> It is considered an equivalent notification when the <CODE>Connect</CODE> function returns from blocking, or when the <CODE>ConnectAsync</CODE> function signals an <CODE>Event</CODE>.<br></description></P>
1789<HR>
1790<H3><A name="note47-03">Note 47-03: (AC) Revised the <CODE>DebugSetNetworkSetting1</CODE> function [SystemUpdater]</A></H3>
1791<P><description>Previously, there was a bug where network configurations would not be reflected in NAND when a connection was completed, even when those network configurations were set by the <CODE>DebugSetNetworkSetting1</CODE> function. This bug was fixed.<br></description></P>
1792<HR>
1793<H3><A name="note47-04">Note 47-04: (BOSS) Added the BOSS library [SDK|SystemUpdater]</A></H3>
1794<P><description>Added the BOSS library, which is used for data download features that employ download servers.<br></description></P>
1795<HR>
1796<H3><A name="note47-05">Note 47-05: (CAMERA) Revised the <CODE>SetNoiseFilter</CODE> function [SDK|SystemUpdater]</A></H3>
1797<P><description>If the <CODE>SetNoiseFilter</CODE> function was used to turn noise filter features OFF and then exposure was changed by the <CODE>SetExposure</CODE> function, image brightness would start to flicker. This problem has been fixed.<br></description></P>
1798<HR>
1799<H3><A name="note47-06">Note 47-06: (CAMERA) Added processing to stop the cameras when the system is closed [SystemUpdater]</A></H3>
1800<P><description>If the system is closed while the cameras are active, capturing is stopped and then the cameras are stopped. When the system is opened again the cameras are started and returned to the same state they were in before.<br> <B>Note:</B> Capturing is <I>not</I> restarted.<br></description></P>
1801<HR>
1802<H3><A name="note47-07">Note 47-07: (CAMERA) Added a function to change the sensor window used for auto white balancing [SDK|SystemUpdater]</A></H3>
1803<P><description>Added the <CODE>SetAutoWhiteBalanceWindow</CODE> function, which changes the region (sensor window) used to calculate auto white balance.<br> <B>Note:</B> The definition of the <CODE>PackageParameterCameraSelect</CODE> structure was changed to allow the <CODE>SetPackageParameterWithoutContext</CODE> function to make settings similar to the above function.<br></description></P>
1804<HR>
1805<H3><A name="note47-08">Note 47-08: (CAMERA) Fixed bug in volume control during playback of the shutter sound [SystemUpdater]</A></H3>
1806<P><description>Previously, a bug prevented voices from being muted while the shutter sound was playing. This bug has been fixed.<br></description></P>
1807<HR>
1808<H3><A name="note47-09">Note 47-09: (CEC) Changed the StreetPass library API [SDK|SystemUpdater]</A></H3>
1809<P><description>Changed the StreetPass library (formerly the Chance Encounter Communication library) as follows.
1810        <ul>
1811          <li>Added the <CODE>MessageId</CODE> class.<br>Changed <CODE>MessageId</CODE> from an 8-byte array to a class.</li>
1812          <li>Removed functions.<br>Deprecated the following functions and invalidated unused value definitions.</li>
1813          <ul>
1814            <li>Format of <CODE>cec::MessageBox::ReadMessage</CODE> that used <CODE>void*</CODE> as an argument</li>
1815            <li>Format of <CODE>cec::MessageBox::WriteMessage</CODE> that used <CODE>void*</CODE> as an argument</li>
1816            <li><CODE>cec::Message::SetFlag_Unread</CODE></li>
1817            <li><CODE>cec::Message::GetFlag_Unread</CODE></li>
1818            <li><CODE>cec::Message::SetFlag_New</CODE></li>
1819            <li><CODE>cec::Message::GetFlag_New</CODE></li>
1820            <li><CODE>cec::Message::OutputMessage</CODE></li>
1821            <li><CODE>cec::Message::InputMessage</CODE></li>
1822            <li><CODE>cec::MessageBox::GetMessageFlag_Unread</CODE></li>
1823            <li><CODE>cec::MessageBox::GetMessageFlag_New</CODE></li>
1824          </ul>
1825          <li>Changed daemon operations<br>Beginning with this version, background communication starts automatically and the StreetPass daemon begins operation at system startup.<br> To access a Box or a Message, you must first begin accessing the daemon, then put the daemon in IDLE state.<br> Operations must occur in this order:<br>[After startup] =&gt; [Put daemon in IDLE state with <CODE>StopScanning</CODE>] =&gt; [Box operations] =&gt; [Return control rights to the system with <CODE>StartScanning</CODE> and start daemon operation].</li>
1826          <li>Added <CODE>GetCecRecvEventHandle</CODE> and <CODE>GetCecInfoBuffer</CODE><br>These functions get reception events and received Message information.</li>
1827          <li>Added information that can be obtained with the <CODE>MessageBox</CODE> class<br>Information obtainable by the <CODE>MessageBoxInfoReader</CODE> class can now also be obtained by the <CODE>MessageBox</CODE> class.<br> This change makes the <CODE>MessageBoxInfoReader</CODE> class unnecessary.</li>
1828        </ul>
1829        <pre><font size="3">    [MessageBoxInfoReader]      [MessageBox]
1830                &lt;Get Box information&gt;
1831    GetMessageBoxInfoFlag   --&gt; GetBoxFlag (GetMessageBoxFlag was removed)
1832    GetBoxSizeMax           --&gt; GetBoxSizeMax
1833    GetMessNumMax           --&gt; GetBoxMessNumMax
1834    GetMessNum              --&gt; GetBoxMessNum
1835                                <CODE>GetBoxGroupNumMax</CODE>
1836                                <CODE>GetBoxGroupNum</CODE>
1837                                <CODE>SetBoxGroupNumMax</CODE>
1838                                <CODE>GetBoxSessionNum</CODE>
1839                &lt;Get Message information&gt;
1840    GetMessage***           --&gt; GetMessage*** (Added)</font></pre>
1841      </description></P>
1842<HR>
1843<H3><A name="note47-10">Note 47-10: (CFG) Revised the <CODE>GetBirthday</CODE> function [SystemUpdater]</A></H3>
1844<P><description>Fixed a bug in the <CODE>nn::cfg::CTR::GetBirthday</CODE> function that prevented it from correctly getting birthdays. Also changed the function argument from a <CODE>DateTime</CODE> class instance to a <CODE>Birthday</CODE> structure.<br></description></P>
1845<HR>
1846<H3><A name="note47-11">Note 47-11: (DLP) Added debug function that forcibly downloads child programs [SystemUpdater]</A></H3>
1847<P><description>Added the <CODE>ForceClientToDownload</CODE> function, which forcibly downloads child programs to clients, to <CODE>dlp_Server.h</CODE>.<br> Forced downloads are only valid on development hardware and are ignored by retail hardware.<br></description></P>
1848<HR>
1849<H3><A name="note47-12">Note 47-12: (DevEnv) Revised LCD backlight parameters [SystemUpdater]</A></H3>
1850<P><description>Re-adjusted detailed parameters of the LCD active backlight settings and brightness levels.<br> Also applied a policy change regarding the initial settings. Now the initial brightness level is 4 and the active backlight is OFF by default.<br></description></P>
1851<HR>
1852<H3><A name="note47-13">Note 47-13: (DevEnv) Changed the startup sequence of test units [SystemUpdater]</A></H3>
1853<P><description>Until now, test units displayed the <CODE>DevMenu</CODE> after system startup. Now they display a provisional HOME Menu.<br> Press START from this menu to launch the <CODE>DevMenu</CODE>.<br><br> If you start the <CODE>DevMenu</CODE> or an application (using the debugger) from this provisional HOME Menu, you can use APPLET library functions to return to the provisional HOME Menu.<br> (See <CODE>demo1</CODE> and <CODE>demo2</CODE> for examples.)<br></description></P>
1854<HR>
1855<H3><A name="note47-14">Note 47-14: (FND) Fixed bug where the <CODE>nn::fnd::DateTime::GetNow</CODE> function would start returning invalid values a short time after the RTC surpassed 2099/12/31 [SystemUpdater]</A></H3>
1856<P><description>Previously, if the system time surpassed 2099/12/31 and returned to 2000/01/01 while an application was running, and the <CODE>nn::fnd::DateTime::GetNow</CODE> function was called a short time later, it would return invalid values. This bug has been fixed.<br></description></P>
1857<HR>
1858<H3><A name="note47-15">Note 47-15: (FRIENDS) Eliminated the notification sent when a game description is updated [SDK|SystemUpdater]</A></H3>
1859<P><description><CODE>NOTIFICATION_FRIEND_PRESENCE</CODE> is no longer delivered when the game description string is the only item updated by <CODE>UpdateGameModeDescription</CODE> or <CODE>UpdateGameMode</CODE>.<br></description></P>
1860<HR>
1861<H3><A name="note47-16">Note 47-16: (FRIENDS) Updated server and recreated account information [SystemUpdater]</A></H3>
1862<P><description>Applying this SystemUpdater makes it possible to connect to a new server intended for CTR-SDK 0.13.<br> <B>Note:</B> All friend relationships established up to that point, and all account information, is deleted and reinitialized.<br></description></P>
1863<HR>
1864<H3><A name="note47-17">Note 47-17: (GX) Changed the off-limits range when placing display buffers in VRAM [SDK|SystemUpdater]</A></H3>
1865<P><description>When placing display buffers in VRAM, previously there was a restriction that stated that buffers could not be placed in the last 0.5 MB of either VRAMA or VRAMB. This off-limits range was widened: now display buffers cannot be placed in the last 1.5 MB of either VRAMA or VRAMB.<br></description></P>
1866<HR>
1867<H3><A name="note47-18">Note 47-18: (HID) Fixed sampling bug that occurred after recovery from Sleep Mode [SystemUpdater]</A></H3>
1868<P><description>Previously, there was a bug where key sampling would not resume after recovery from Sleep Mode. This bug has been fixed.<br></description></P>
1869<HR>
1870<H3><A name="note47-19">Note 47-19: (HID) Changed sampling values in cases where the system does not enter Sleep Mode when closed [SystemUpdater]</A></H3>
1871<P><description>When the system is closed but does not enter Sleep Mode, the Touch Panel and all pad user inputs except the L and R Buttons now return disabled sampling values (<CODE>0</CODE>).<br></description></P>
1872<HR>
1873<H3><A name="note47-20">Note 47-20: (HTTP) Revised the <CODE>AddPostData***</CODE> functions [SystemUpdater]</A></H3>
1874<P><description>Abolished the size restriction on data registered by the <CODE>AddPostData***</CODE> functions.<br> In line with this change, the specification now states that modules that use the <CODE>AddPostData***</CODE> functions must use the <CODE>nn::http::Initialize</CODE> function to register a buffer for POST data.<br></description></P>
1875<HR>
1876<H3><A name="note47-21">Note 47-21: (HTTP) Revised the <CODE>GetHeaderField</CODE> function [SystemUpdater]</A></H3>
1877<P><description>Previously, using the <CODE>GetHeaderField</CODE> function to read a nonexistent header field would cause all subsequent functions on that <CODE>Connection</CODE> to return communication errors. This bug has been fixed.<br></description></P>
1878<HR>
1879<H3><A name="note47-22">Note 47-22: (HTTP) Fixed Keep-Alive bug [SystemUpdater]</A></H3>
1880<P><description>Previously, when Keep-Alive was enabled, connections would sometimes fail depending on their timing. This bug has been fixed.<br></description></P>
1881<HR>
1882<H3><A name="note47-23">Note 47-23: (HTTP) Handled problem with Keep-Alive communication [SystemUpdater]</A></H3>
1883<P><description>When the local host communicated with a server which had Keep-Alive enabled and the local host switched between HTTP and HTTPS, execution would hang. This problem has been fixed.<br></description></P>
1884<HR>
1885<H3><A name="note47-24">Note 47-24: (HTTP) Changed default size of communication buffers [SystemUpdater]</A></H3>
1886<P><description>Set the default sizes of HTTP communication buffers to 32640 B for incoming data and 16320 B for outgoing data. (Both these sizes are multiples of the default MSS.)<br> (Previously, both sizes were 8 KB.)<br></description></P>
1887<HR>
1888<H3><A name="note47-25">Note 47-25: (MCU) Revised the power LED and wireless LED [SystemUpdater]</A></H3>
1889<P><description>Revised behavior of the LEDs during Sleep Mode, so that now the power LED blinks during Sleep Mode and the wireless LED dims.<br></description></P>
1890<HR>
1891<H3><A name="note47-26">Note 47-26: (MIC) Added processing to stop sampling when the system is closed [SystemUpdater]</A></H3>
1892<P><description>Made changes so that now microphone sampling (if running) is stopped when the system is closed, and resumes when the system is opened again.<br></description></P>
1893<HR>
1894<H3><A name="note47-27">Note 47-27: (MIC) Changed access rights to memory that stores sampling results [SDK|SystemUpdater]</A></H3>
1895<P><description>In CTR-SDK 0.12, the memory set by <CODE>SetBuffer</CODE> had <CODE>ReadOnly</CODE> attributes beginning from the time it was set and extending through to after the call to <CODE>ResetBuffer</CODE>. This has been changed so that the memory has <CODE>ReadWrite</CODE> attributes beginning from the call to <CODE>SetBuffer</CODE>.<br> This change gives applications read/write access to the targeted memory regardless of the timing of calls to the <CODE>SetBuffer</CODE> and <CODE>ResetBuffer</CODE> functions.<br></description></P>
1896<HR>
1897<H3><A name="note47-28">Note 47-28: (NDM) Enabled the network daemon and added a library to control it [SDK|SystemUpdater|SampleDemos]</A></H3>
1898<P><description>Made the resident program (daemon) that performs network processing active by default.<br> This change means that access points, Nintendo Zone areas, and other networks will be searched for in the background of applications.<br><br> Also added the NDM library for controlling background communication.<br></description></P>
1899<HR>
1900<H3><A name="note47-29">Note 47-29: (OS) Added support for Sleep Mode [SDK|SystemUpdater]</A></H3>
1901<P><description>The Sleep feature, activated by closing the system, is now available for use.<br> To enable this feature, you must register APPLET Sleep-related callbacks.<br><br> See <CODE>demo1</CODE> and <CODE>demo2</CODE> for more details.<br></description></P>
1902<HR>
1903<H3><A name="note47-30">Note 47-30: (OS) Added functions to get information about the amount of available memory [SDK|SystemUpdater]</A></H3>
1904<P><description>Added the following two functions, which get information about the amount of available memory.<br>
1905        <ul>
1906          <li><CODE>nn::os::GetAppMemorySize</CODE></li>
1907          <li><CODE>nn::os::GetUsingMemorySize</CODE></li>
1908        </ul>
1909     </description></P>
1910<HR>
1911<H3><A name="note47-31">Note 47-31: (PTM) Revised the <CODE>GetBatteryLevel</CODE> function [SystemUpdater]</A></H3>
1912<P><description>Previously, the <CODE>GetBatteryLevel</CODE> function would return <CODE>BATTERYLEVEL_2</CODE> when the remaining battery life was 5% or less, even though the function was required to get <CODE>BATTERYLEVEL_1</CODE> in that situation. This problem has been fixed.<br></description></P>
1913<HR>
1914<H3><A name="note47-32">Note 47-32: (PTM) Added restrictions on the range of times for which alarms can be set [SystemUpdater]</A></H3>
1915<P><description>The times for which it is possible to set an alarm with the <CODE>SetRtcAlarm</CODE> function are now restricted to the range 2000/01/01 to 2099/12/31.<br></description></P>
1916<HR>
1917<H3><A name="note47-33">Note 47-33: (TOOL) Fixed <CODE>DevMenu</CODE> import error [SystemUpdater]</A></H3>
1918<P><description>Previously, when CIA files created with past versions of the CTR-SDK were imported into the <CODE>DevMenu</CODE>, the <CODE>DevMenu</CODE> would generate an error and would continue to generate errors with subsequently-imported valid CIA files. This bug has been fixed.<br></description></P>
1919<HR>
1920<H3><A name="note47-34">Note 47-34: (TOOL) Fixed <CODE>DevMenu</CODE> bug [SystemUpdater]</A></H3>
1921<P><description>Previously, when you deleted an application on the <CODE>DevMenu</CODE> and then imported an application with the same unique ID, the program display list would become invalid and the application would not run. This bug has been fixed.<br></description></P>
1922<HR>
1923<H3><A name="note47-35">Note 47-35: (TOOL) Added a tool for changing the region [SystemUpdater]</A></H3>
1924<P><description>Added the <CODE>RegionSelector</CODE> tool, which changes the system region and language settings.<br></description></P>
1925<HR>
1926<H3><A name="note47-36">Note 47-36: (UDS) Fixed bug that caused execution to hang when the <CODE>EjectClient</CODE> function was run [SystemUpdater]</A></H3>
1927<P><description>Previously, when the local host was operating as a master and ran the <CODE>nn::uds::EjectClient</CODE> function on certain specific nodes, the master would sometimes hang when the clients were ejected from the network. This bug was fixed.<br></description></P>
1928<HR>
1929<H3><A name="note47-37">Note 47-37: (UDS) Fixed bug where sometimes the <CODE>NetworkDescriptionReader::GetNodeInformationList</CODE> function could not get the <CODE>NodeInformation</CODE> successfully [SystemUpdater]</A></H3>
1930<P><description>Previously, when 3 or more nodes were connected, the beacon information sent out by the master would sometimes become incorrect after one or more clients disconnected from it, and the node information obtained by the <CODE>NetworkDescriptionReader::GetNodeInformationList</CODE> function would sometimes become abnormal. These bugs were fixed.<br></description></P>
1931<HR>
1932<H3><A name="note47-38">Note 47-38: (UDS) Changed encryption key of <CODE>NodeInfomation</CODE> distributed by beacons [SystemUpdater]</A></H3>
1933<P><description>During UDS communication, the master periodically distributes the user names and local friend codes of all the nodes connected to the network.<br> This data is encrypted to prevent its collection by other devices, and the key used for this encryption has been changed.<br> Because of this change, applications built with CTR-SDK 0.13 cannot communicate with applications built with earlier SDK versions.<br></description></P>
1934<HR>
1935<H3><A name="note47-39">Note 47-39: (UDS) Fixed bug that caused incorrect behavior when the <CODE>GetConnectionStatus</CODE> function was run frequently [SystemUpdater]</A></H3>
1936<P><description>Previously, running <CODE>nn::uds::GetConnectionStatus</CODE> frequently during communication (running it less than once every few milliseconds for a sustained length of time) would cause the library to behave incorrectly. This bug has been fixed.<br></description></P>
1937<HR>
1938<H3><A name="KnownIssues_0_13_0_SystemUpdater">Known Issues with SystemUpdater in SDK Version 0.13.0</A></H3>
1939<knownissues><description>
1940        <ul>
1941          <li>Although this release enables support for Sleep Mode when the system is closed, there are some stability problems. In some cases (depending on timing) the system is unable to correctly recover from Sleep Mode.</li>
1942          <li>Save data access is not thread-safe.</li>
1943          <li>Running the <CODE>NN_LOG</CODE> function during communication sometimes causes the debugger to hang.<br> We recommend communicating in parallel with log output via calls to the <CODE>NN_LOG</CODE> function.</li>
1944          <li>Execution sometimes aborts if <CODE>CancelConnectAsync</CODE> is run repeatedly or if Wi-Fi is toggled ON/OFF repeatedly.</li>
1945          <li>If about 30 seconds elapse after power-on while the system is in a state where it can connect to an access point (meaning that valid network configurations are saved in system NAND memory or there is a Nintendo Zone nearby), then the <CODE>SuspendScheduler</CODE> function will not complete.<br> Use the following procedure as a workaround for this bug.<br><br> <CODE>nn::ndm::Initialize();<br><br> nn::ndm::Suspend(nn::ndm::DN_FRIENDS);  // Add this line<br> nn::ndm::SuspendScheduler();<br> nn::ndm::Resume(nn::ndm::DN_FRIENDS);   // Add this line</CODE><br>
1946</li>
1947        </ul>
1948      </description></knownissues><HR>
1949<H2 style="line-height: 0"><A name="sdk_0_13_0_SampleDemos">CTR-SDK Version 0.13.0 Sample Demos</A></H2>
1950<DIV style="text-align: right"><P style="line-height: 0">(2010/09/28)</P></DIV>
1951<HR>
1952<H3><A name="note46-01">Note 46-01: (APPLET) Added support for the HOME Button to <CODE>demo1</CODE> and <CODE>demo2</CODE> [SampleDemos]</A></H3>
1953<P><description>Added support for jumping to the HOME Menu when the HOME Button is pressed in sample demos <CODE>demo1</CODE> and <CODE>demo2</CODE>.<br> Currently, they return to a provisional HOME Menu.<br></description></P>
1954<HR>
1955<H3><A name="note46-02">Note 46-02: (BOSS) Added the <CODE>sample_nadl_simple</CODE> demo [SampleDemos]</A></H3>
1956<P><description>Added the <CODE>sample_nadl_simple</CODE> demo as an example of a task that downloads data from a download server.<br></description></P>
1957<HR>
1958<H3><A name="note46-03">Note 46-03: (CX) Added CX sample demos [SampleDemos]</A></H3>
1959<P><description>Added the <CODE>Compress</CODE> sample demo, which demonstrates run-length, Huffman, and LZ encoding.<br></description></P>
1960<HR>
1961<H3><A name="note46-04">Note 46-04: (DEMO) Revised initialization of the <CODE>lib_demo</CODE> library display buffer [SampleDemos]</A></H3>
1962<P><description>Changed the display buffer of the <CODE>lib_demo</CODE> library of SampleDemos. Now the display buffer is initialized to solid black before the LCD screens are turned on.<br></description></P>
1963<HR>
1964<H3><A name="note46-05">Note 46-05: (DLP) Changed the method for embedding child programs in parent programs [SDK|SampleDemos]</A></H3>
1965<P><description>Changed the method for embedding child programs, as shown below.<br>
1966        <ul>
1967          <li>If using OMake, specify the child CIA file in <CODE>CHILD_APPS[]</CODE> in the OMakefile.<br> See <CODE>$SampleDemos/dlp/SimpleServer/OMakefile</CODE>.</li>
1968          <li>If not using OMake, pass a CFA file created by <CODE>ctr_makeciaarchive</CODE> to <CODE>ctr_makerom</CODE>.<br> However, note that you must use the <CODE>-rsf</CODE> option of <CODE>ctr_makeciaarchive</CODE> to specify <CODE>$CTR_SDK/resources/specfiles/Child.rsf</CODE>.</li>
1969        </ul>
1970      </description></P>
1971<HR>
1972<H3><A name="note46-06">Note 46-06: (DLP) Made revisions involving identification of child devices [SDK|SampleDemos]</A></H3>
1973<P><description>Made the following changes related to identification of child devices.<br>
1974        <ul>
1975          <li>Changed so that now the <CODE>Server::Initialize</CODE> function fails if the child and parent <CODE>UniqueId</CODE> do not match.</li>
1976          <li>Changed so that the parent and child are told apart by their <CODE>Category</CODE>, and the <CODE>Server::Initialize</CODE> function fails if the child's <CODE>Category</CODE> is not <CODE>DlpClient</CODE>.<br>Children tell each other apart by their <CODE>ChildIndex</CODE>. The <CODE>ChildIndex</CODE> is specified by the RSF file's <CODE>TitleInfo/ChildIndex</CODE>, and can take a value from 0-255.<br> Note that <CODE>TitleInfo/Version</CODE> is now replaced by <CODE>TitleInfo/ChildIndex</CODE>, so do not use <CODE>TitleInfo/Version</CODE>.</li>
1977        </ul>
1978      </description></P>
1979<HR>
1980<H3><A name="note46-07">Note 46-07: (FONT) Added sample demos [SampleDemos]</A></H3>
1981<P><description>Added Font library sample demos.<br> These demos are ports of the font sample demos included in NintendoWare for CTR.<br></description></P>
1982<HR>
1983<H3><A name="note46-08">Note 46-08: (GX) Added the <CODE>DrawPrimitive</CODE> demo [SampleDemos]</A></H3>
1984<P><description>Added the <CODE>DrawPrimitive</CODE> demo, which uses the GR library to render spheres and cuboids.<br></description></P>
1985<HR>
1986<H3><A name="note46-09">Note 46-09: (JPEG) Added demos [SampleDemos]</A></H3>
1987<P><description>Added the <CODE>MultiPicture</CODE> demo, which handles MultiPicture (MP) format data, and the <CODE>StopDecoder</CODE> demo, which stops decoding in progress.<br></description></P>
1988<HR>
1989<H3><A name="note46-10">Note 46-10: (NDM) Enabled the network daemon and added a library to control it [SDK|SystemUpdater|SampleDemos]</A></H3>
1990<P><description>Made the resident program (daemon) that performs network processing active by default.<br> This change means that access points, Nintendo Zone areas, and other networks will be searched for in the background of applications.<br><br> Also added the NDM library for controlling background communication.<br></description></P>
1991<HR>
1992<H3><A name="note46-11">Note 46-11: (OS) Added support for Sleep Mode to <CODE>demo1</CODE> and <CODE>demo2</CODE> [SampleDemos]</A></H3>
1993<P><description>Added support to the <CODE>demo1</CODE> and <CODE>demo2</CODE> sample demos for entering Sleep Mode when the system is closed.<br> However, depending on timing, sometimes the system is not able to correctly recover from Sleep Mode. This will be fixed in a future release.<br></description></P>
1994<HR>
1995<H3><A name="note46-12">Note 46-12: (PL) Added the <CODE>SharedFont</CODE> demo [SampleDemos]</A></H3>
1996<P><description>Added the <CODE>SharedFont</CODE> demo as an example of getting shared fonts.<br></description></P>
1997<HR>
1998<H3><A name="note46-13">Note 46-13: (SOCKET) Eliminated <CODE>dummy_util</CODE> functions [SDK|SampleDemos]</A></H3>
1999<P><description>As a result of the addition of the <CODE>NetworkSetting</CODE> tool, all demos now directly use AC to use the settings written to NAND.<br> The <CODE>dummy_util</CODE> functions will be deleted from the next release.<br></description></P>
2000<HR>
2001<H3><A name="note46-14">Note 46-14: (TOOL) Added <CODE>ctr_makebanner</CODE> [SDK|SampleDemos]</A></H3>
2002<P><description>Added <CODE>ctr_makebanner</CODE>, a tool for creating banner data.<br> Banners and icons created with <CODE>ctr_makebanner</CODE> can be embedded in CCI files using <CODE>ctr_makerom</CODE>.<br> However, currently there exists no method to check the embedded banners and icons.<br><br> Also added the <CODE>makebanner</CODE> demo in line with this change.<br></description></P>
2003<HR>
2004<H3><A name="note46-15">Note 46-15: (TPL) Added sample data for creating CTPK files [SampleDemos]</A></H3>
2005<P><description>As an example of the use of <CODE>ctr_TexturePackager32.exe</CODE>, added XML files and texture data for creating CTPK files (which are themselves used in the TPL sample demos).<br></description></P>
2006<HR>
2007<H3><A name="note46-16">Note 46-16: (UDS) Fixed bug in <CODE>com_demo1</CODE> where communication data was not cleared after disconnection [SampleDemos]</A></H3>
2008<P><description>Fixed a bug in the <CODE>com_demo1</CODE> demo of the UDS library, where old communication data was not cleared after disconnection, and when systems communicated again, they would get incorrect results because of the influence of this old data.<br></description></P>
2009<HR>
2010<H3><A name="note46-17">Note 46-17: (UDS) Revised so that the <CODE>CreateLocalCommunicationId</CODE> function now creates the local communication IDs used in UDS demos [SampleDemos]</A></H3>
2011<P><description>Now that the <CODE>CreateLocalCommunicationId</CODE> function is available, the demos were modified to use the <CODE>CreateLocalCommunicationId</CODE> function to create the local communication IDs that they use.<br></description></P>
2012<HR>
2013<H3><A name="note46-18">Note 46-18: (ULCD) Changed the minimum setting of the <CODE>Depth Level</CODE> variable[SampleDemos]</A></H3>
2014<P><description>Fixed a bug in the ULCD samples where specifying a value of <CODE>0.0f</CODE> for the <CODE>Depth Level</CODE> variable would cause execution to stop on an assert during subsequent normal calculations.<br></description></P>
2015<HR>
2016<H3><A name="KnownIssues_0_13_0_SampleDemos">Known Issues with SDK 0.13.0 Sample Demos</A></H3>
2017<knownissues><description>
2018        <ul>
2019          <li>The <CODE>demo1</CODE> and <CODE>demo2</CODE> demos are the only demos with support for Sleep Mode. Closing the system during any other demo causes undefined behavior.</li>
2020          <li>Because of a known bug in SystemUpdater (running the <CODE>NN_LOG</CODE> function during communication cause execution to hang), the <CODE>http</CODE> demo sometimes hangs.</li>
2021        </ul>
2022      </description></knownissues><HR>
2023<H2 style="line-height: 0"><A name="sdk_0_12_1_Release">CTR-SDK Version 0.12.1 Release</A></H2>
2024<DIV style="text-align: right"><P style="line-height: 0">(2010/09/02)</P></DIV>
2025<HR>
2026<H3><A name="note45-01">Note 45-01: (SND) Fixed a bug in the <CODE>nn::snd::Voice::SetState</CODE> function [SDK]</A></H3>
2027<P><description>Fixed a bug where resuming playback would not work properly after using the <CODE>SetState</CODE> function to specify <CODE>STATE_STOP</CODE> for a <CODE>Voice</CODE> object and then later setting the state to <CODE>STATE_PLAY</CODE>.<br></description></P>
2028<HR>
2029<H3><A name="KnownIssues_0_12_1_Release">Known Issues in the SDK 0.12.1 Release</A></H3>
2030<knownissues><description>
2031        <ul>
2032          <li>After you have connected to and finished communicating with your first Chance Encounter Communication partner, you cannot communicate with another partner. Both systems must be reset to communicate again.</li>
2033          <li>The Function Reference Manual for the FRIENDS library describes <CODE>ResultConnected</CODE> incorrectly. This result is never returned when the local host connects.</li>
2034        </ul>
2035      </description></knownissues><HR>
2036<H2 style="line-height: 0"><A name="sdk_0_12_0_Release">CTR-SDK Version 0.12.0 Release</A></H2>
2037<DIV style="text-align: right"><P style="line-height: 0">(2010/08/20)</P></DIV>
2038<HR>
2039<H3><A name="note44-01">Note 44-01: (CAMERA) Removed the <CODE>IsBufferError</CODE> function [SDK | System Updater]</A></H3>
2040<P><description>Removed the <CODE>IsBufferError</CODE> function. Starting with CTR-SDK 0.11, the CAMERA library clears the buffer and the error state whenever a buffer error occurs. This change caused the function to be unable to correctly identify buffer errors.<br> To determine whether a buffer error has occurred, check the event state obtained by the <CODE>GetBufferErrorInterruptEvent</CODE> function.<br></description></P>
2041<HR>
2042<H3><A name="note44-02">Note 44-02: (CAMERA) Revised the <CODE>SetExposure</CODE> function [SDK | System Updater]</A></H3>
2043<P><description>Fixed a bug that prevented the <CODE>SetExposure</CODE> function from properly configuring the exposure in some environments where particular framerates have been set.<br></description></P>
2044<HR>
2045<H3><A name="note44-03">Note 44-03: (CAMERA) Changed processing within the <CODE>SynchronizeVsyncTiming</CODE> function [SDK | System Updater]</A></H3>
2046<P><description>Modified the <CODE>SynchronizeVsyncTiming</CODE> function's internal processing to improve performance.<br> As a result of these changes, the V-Sync signals after this function is run do not have as large a discrepancy as they did before the changes were made.<br> However, two issues have not really been fixed. First, the screen used to turn extremely dark for four frames after this function was run. Now, when the brightness of the two camera images is very different, the screen turns extremely bright for three frames after this function is run. Second, it still takes as long as before for the auto-exposure to stabilize.<br></description></P>
2047<HR>
2048<H3><A name="note44-04">Note 44-04: (CAMERA) Added processing to compensate for individual system differences in white balance [SDK | System Updater]</A></H3>
2049<P><description>Added processing that, when the white balance is set, applies parameters measured at the factory to compensate for differences between individual systems. <br> However, these parameters are not stored in systems manufactured prior to mid-August.<br> White balance settings have not changed for these systems.<br></description></P>
2050<HR>
2051<H3><A name="note44-05">Note 44-05: (CEC) Changed the Chance Encounter Communication library [SDK]</A></H3>
2052<P><description>Changed the Chance Encounter Communication library as follows.<br>
2053        <ul>
2054          <li>Changed the data storage location from the SD Card to NAND memory.</li>
2055          <li>Made the caller of <CODE>Initialize</CODE> specify the allocator for the library to use.</li>
2056          <li>Changed some function arguments to be specified as <CODE>const</CODE> variables.</li>
2057          <li>Added functions for getting the timestamps of when data is sent and received.</li>
2058          <li>Removed the <CODE>SetModuleFilter_MCR</CODE> function.</li>
2059          <li>Renamed <CODE>OutputMessage</CODE> to <CODE>MakeMessageBinary</CODE>.</li>
2060          <li>Added <CODE>GetMessageMessIdPair</CODE>.</li>
2061        </ul>
2062        Beginning with this CTR-SDK version, the daemon no longer begins to run if the user has agreed to a EULA version prior to version 1.0. Start the daemon after you have set <B>Agree Version</B> to a value of at least 1.0 under the <CODE>Config</CODE> tool's <B>Eula Setting</B>.<br><br> <B>Note:</B> As of CTR-SDK 0.12, the Chance Encounter Communication library does not start communicating automatically. You must use the <CODE>CecControl</CODE> class to start communication.</description></P>
2063<HR>
2064<H3><A name="note44-06">Note 44-06: (CFG) Added functions for converting country codes and other CTR-specific codes into strings [SDK]</A></H3>
2065<P><description>Added functions that convert CTR-specific country codes, region codes, and language codes into corresponding 2- or 3-character strings.<br></description></P>
2066<HR>
2067<H3><A name="note44-07">Note 44-07: (DLP) Added <CODE>DlpChild.desc</CODE> [SDK]</A></H3>
2068<P><description>Added <CODE>DlpChild.desc</CODE>, which is used to build child programs for Download Play.<br> When you build a child program, specify <CODE>DlpChild</CODE> as the <CODE>TitleInfo/Category</CODE> entry in the RSF file and then add the following line in the OMakefile.<br><br> <CODE>DESCRIPTOR = $(CTRSDK_ROOT)/resources/specfiles/DlpChild.desc</CODE><br></description></P>
2069<HR>
2070<H3><A name="note44-08">Note 44-08: (DevEnv) Added support for the PARTNER-CTR Capture/Debugger (all-in-one debugger hardware) [SDK]</A></H3>
2071<P><description>Added support for the PARTNER-CTR Capture/Debugger (all-in-one debugger hardware).<br></description></P>
2072<HR>
2073<H3><A name="note44-09">Note 44-09: (DevEnv) Added support for the VFP instruction when building assembly files [SDK]</A></H3>
2074<P><description>Added a build option that allows VFP instructions to be used by default when assembly language files are built.<br></description></P>
2075<HR>
2076<H3><A name="note44-10">Note 44-10: (DevEnv) Revised the <CODE>CCFLAGS_DEV_OPT</CODE> build variable [SDK]</A></H3>
2077<P><description>It is now possible to also change the inline expansion options with the <CODE>CCFLAGS_DEV_OPT</CODE> variable in Development builds of applications.<br><br> This was actually changed in version 0.10 but was accidentally omitted from the change log.<br></description></P>
2078<HR>
2079<H3><A name="note44-11">Note 44-11: (FRIENDS) Added the FRIENDS library [SDK]</A></H3>
2080<P><description>The FRIENDS library, which provides operations related to system friends and the presence feature, was made public.<br></description></P>
2081<HR>
2082<H3><A name="note44-12">Note 44-12: (FS) Revised the <CODE>nn::fs::FormatSaveData</CODE> function [SDK]</A></H3>
2083<P><description>Fixed the <CODE>nn::fs::FormatSaveData</CODE> function so that it no longer parses the <SPAN class="argument">maxFiles</SPAN> and <SPAN class="argument">maxDirectories</SPAN> arguments in reverse.<br> Also fixed a related error in the Function Reference Manual argument descriptions.<br></description></P>
2084<HR>
2085<H3><A name="note44-13">Note 44-13: (FS) Added the <CODE>nn::fs::IsSdmcWritable</CODE> function [SDK]</A></H3>
2086<P><description>Added a function to determine whether it is possible to write to the SD Card.<br></description></P>
2087<HR>
2088<H3><A name="note44-14">Note 44-14: (FS) Added the <CODE>nn::fs::WaitForInsertSdmc</CODE>, <CODE>nn::fs::WaitForEjectSdmc</CODE>, and <CODE>nn::fs::IsSdmcInserted</CODE> functions [SDK]</A></H3>
2089<P><description>Implemented functions for SD Card insertion and removal events.<br> You must call the <CODE>nn::fs::InitializeForFileSystemEvent</CODE> function in advance.<br></description></P>
2090<HR>
2091<H3><A name="note44-15">Note 44-15: (FS) Added the <CODE>nn::fs::hio::MountHioArchive</CODE> function [SDK]</A></H3>
2092<P><description>Added the <CODE>nn::fs::hio::MountHioArchive</CODE> function.<br> The first argument specifies the archive name to assign and the second argument specifies the corresponding absolute path to assign on the computer.<br> To use this function, you must call <CODE>nn::hio::Initialize(void* pDeviceMemory)</CODE> in advance.<br> Use <CODE>DeviceMemory</CODE>, which is contiguous memory, to initialize the HIO library.<br></description></P>
2093<HR>
2094<H3><A name="note44-16">Note 44-16: (GX) Lifted the restriction of placing 2D textures on 32-MB boundaries [SDK]</A></H3>
2095<P><description>Until now, the placement of 2D and environment map textures was restricted to locations that did not span 32-MB boundaries. Upon further testing, it was determined that this restriction can be safely lifted.<br> If you are directly generating commands that reference PICA register information, however, you must properly clear the texture cache when switching textures.<br> (You do not need to be aware of this if you are using the GL API.)<br></description></P>
2096<HR>
2097<H3><A name="note44-17">Note 44-17: (GX) Updated the DMPGL documentation [SDK]</A></H3>
2098<P><description>The main changes can be summarized as follows.<br> See each document for further details.<br>
2099        <ul>
2100          <li><I>DMPGL 2.0 System API Specifications</I></li>
2101          <ul>
2102            <li>Mentioned the situations and timing when the framebuffer cache must be cleared using a combination of register <CODE>0x111</CODE> and <CODE>0x110</CODE>.</li>
2103            <li>Added information on the settings of undocumented bits. (Bit [18:18] of register <CODE>0x1c4</CODE> must always be set to <CODE>1</CODE>. Fragment lighting results are not guaranteed if this bit is <CODE>0</CODE>.)</li>
2104            <li>Added detailed information on commands related to the rendering API.</li>
2105          </ul>
2106          <li><I>DMPGL 2.0 Specifications</I></li>
2107          <ul>
2108            <li>Documented the conditions for updating shadow depth values and intensity values during the shadow accumulation pass.</li>
2109            <li>Added section 7.33 Depth-Value Textures. This section explains rendering depth values to textures and copying textures.</li>
2110          </ul>
2111          <li><I>DMPGL 2.0 Programming Guide</I></li>
2112          <ul>
2113            <li>Added section 19.16 Load Sizes for Each Data Type. This section lists the size of each type of PICA data that is loaded (vertex buffers, textures, and command buffers).</li>
2114          </ul>
2115        </ul>
2116      </description></P>
2117<HR>
2118<H3><A name="note44-18">Note 44-18: (GX) Fixed a bug that prevented completion notifications from being sent for graphics processing while <CODE>NN_LOG</CODE> was in use [SDK | System Updater]</A></H3>
2119<P><description>Fixed a bug that occurred when <CODE>NN_LOG</CODE> was used to output a large number of log messages. This bug prevented completion notifications from being sent for graphics commands and, among other problems, caused the <CODE>nngxWaitCmdlistDone</CODE> function to stop returning.<br></description></P>
2120<HR>
2121<H3><A name="note44-19">Note 44-19: (GX) Revised PICA macro headers [SDK]</A></H3>
2122<P><description>Made the following changes to the PICA macro headers.<br>
2123        <ul>
2124          <li><CODE>gx_MacroMisc.h</CODE></li>
2125          <ul>
2126            <li>Renamed macros (the original names were moved to <CODE>gx_MacroOld.h</CODE>).</li>
2127            <ul>
2128              <li>Renamed <CODE>PICA_CMD_DATA_FOG_OP_WSCALE</CODE> to <CODE>PICA_CMD_DATA_FRAGOP_WSCALE</CODE>.</li>
2129              <li>Renamed <CODE>PICA_CMD_DATA_FOG_OP_WSCALE_DATA</CODE> to <CODE>PICA_CMD_DATA_FRAGOP_WSCALE_DATA</CODE>.</li>
2130              <li>Renamed <CODE>PICA_CMD_DATA_FOG_OP_CLIP</CODE> to <CODE>PICA_CMD_DATA_FRAGOP_CLIP</CODE>.</li>
2131              <li>Renamed <CODE>PICA_CMD_SET_FOG_OP_CLIP</CODE> to <CODE>PICA_CMD_SET_FRAGOP_CLIP</CODE>.</li>
2132              <li>Renamed <CODE>PICA_CMD_DATA_FOG_OP_CLIP_DATA</CODE> to <CODE>PICA_CMD_DATA_FRAGOP_CLIP_DATA</CODE>.</li>
2133              <li>Renamed <CODE>PICA_CMD_DATA_FOG_SHADOW</CODE> to <CODE>PICA_CMD_DATA_FRAGOP_SHADOW</CODE>.</li>
2134            </ul>
2135          </ul>
2136          <li><CODE>gx_MacroShader.h</CODE></li>
2137          <ul>
2138            <li>To comply with the specifications, <CODE>1</CODE> is now set in bit [18:18] of register <CODE>0x1c4</CODE>.</li>
2139            <ul>
2140              <li><CODE>PICA_CMD_DATA_FRAG_LIGHT_FUNC_MODE1</CODE></li>
2141              <li><CODE>PICA_CMD_DATA_FRAG_LIGHT_FUNC_MODE1_LIGHT_SOURCE</CODE></li>
2142            </ul>
2143            <li>To comply with the specifications, a command that writes a value of <CODE>0</CODE> to bits [31:24] of register <CODE>0x25e</CODE> is now generated twice immediately after a render kick command.</li>
2144            <ul>
2145              <li><CODE>PICA_CMD_SET_START_DRAW_ARRAY</CODE></li>
2146              <li><CODE>PICA_CMD_SET_START_DRAW_ELEMENT</CODE></li>
2147            </ul>
2148            <li>Renamed macros (the original names were moved to <CODE>gx_MacroOld.h</CODE>).</li>
2149            <ul>
2150              <li>Renamed <CODE>PICA_CMD_DATA_VERTEX_ATTR_ARRAYS</CODE> to <CODE>PICA_CMD_DATA_VERTEX_ATTR_ARRAYS0</CODE>.</li>
2151              <li>Renamed <CODE>PICA_CMD_DATA_LOAD_ARRAY0_ELEMENT</CODE> to <CODE>PICA_CMD_DATA_LOAD_ARRAY_ELEMENT0</CODE>.</li>
2152            </ul>
2153            <li>Added new macros.</li>
2154            <ul>
2155              <li><CODE>PICA_CMD_DATA_VERTEX_ATTR_ARRAYS1</CODE></li>
2156              <li><CODE>PICA_CMD_DATA_LOAD_ARRAY_ELEMENT1</CODE></li>
2157              <li><CODE>PICA_CMD_DATA_VS_GS_OUT_REG_NUM0</CODE></li>
2158              <li><CODE>PICA_CMD_DATA_VS_GS_OUT_REG_NUM1</CODE></li>
2159              <li><CODE>PICA_CMD_DATA_VS_GS_OUT_REG_NUM2</CODE></li>
2160            </ul>
2161          </ul>
2162          <li><CODE>gx_MacroTexture.h</CODE></li>
2163          <ul>
2164            <li>To comply with the specifications, <CODE>0</CODE> is now written to bits [23:17] of register <CODE>0x80</CODE>.</li>
2165            <ul>
2166              <li><CODE>PICA_CMD_DATA_TEXTURE_FUNC</CODE></li>
2167            </ul>
2168            <li>Revised the internal implementation for flushing the texture cache to comply with the requirement to run the flush operation commands separately from enabling texture units.</li>
2169            <ul>
2170              <li><CODE>PICA_CMD_SET_TEXTURE_FUNC_CLEAR</CODE></li>
2171            </ul>
2172          </ul>
2173        </ul>
2174      </description></P>
2175<HR>
2176<H3><A name="note44-20">Note 44-20: (GX) Revised PICA register information [SDK]</A></H3>
2177<P><description>Revised the <CODE>nngxInitialize</CODE> function to configure bit [16:16] of register <CODE>0x25e</CODE> and bit [0:0] of register <CODE>0x253</CODE>. The rendering functions (<CODE>glDraw*</CODE>) no longer configure these bits.<br></description></P>
2178<HR>
2179<H3><A name="note44-21">Note 44-21: (GX) Fixed incorrect initial values for <CODE>distanceAttenuationScale</CODE> [SDK]</A></H3>
2180<P><description>Fixed the uniforms <CODE>dmp_FragmentLightSource[i].distanceAttenuationScale</CODE> to have an initial value of <CODE>1.0f</CODE>, as documented, rather than <CODE>0.0f</CODE> as they had been mistakenly set.<br></description></P>
2181<HR>
2182<H3><A name="note44-22">Note 44-22: (GX) Removed unnecessary commands generated by calls to the <CODE>glBindFramebuffer</CODE> function [SDK]</A></H3>
2183<P><description>Removed commands generated within the <CODE>glBindFramebuffer</CODE> function because they were determined to be unnecessary. These commands cleared the framebuffer cache.<br></description></P>
2184<HR>
2185<H3><A name="note44-23">Note 44-23: (GX) Fixed a bug that prevented textures from being reallocated within the <CODE>glCopyTexImage2D</CODE> function [SDK]</A></H3>
2186<P><description>Fixed a bug that prevented textures from being reallocated properly in the <CODE>glCopyTexImage2D</CODE> function when only the texture argument <SPAN class="argument">type</SPAN> changed. (For example, when the values <CODE>GL_RGBA</CODE> and <CODE>GL_UNSIGNED_BYTE</CODE> were changed to <CODE>GL_RGBA</CODE> and <CODE>GL_UNSIGNED_SHORT_4_4_4_4</CODE>.)<br></description></P>
2187<HR>
2188<H3><A name="note44-24">Note 44-24: (GX) Fixed invalid error checking in the <CODE>glCopyTexSubImage2D</CODE> function [SDK]</A></H3>
2189<P><description>Stopped checking for the following errors in the <CODE>glCopyTexSubImage2D</CODE> function's arguments.<br>
2190        <ul>
2191          <li><CODE>GL_INVALID_VALUE</CODE> errors when <SPAN class="argument">target</SPAN> is a cube map texture and <SPAN class="argument">width</SPAN> and <SPAN class="argument">height</SPAN> are different.</li>
2192          <li><CODE>GL_INVALID_ENUM</CODE> errors when textures are not specified using <CODE>(NN_GX_MEM_VRAMA | GL_NO_COPY_FCRAM_DMP)</CODE>, <CODE>(NN_GX_MEM_VRAMB | GL_NO_COPY_FCRAM_DMP)</CODE>, or <CODE>(NN_GX_MEM_FCRAM | GL_COPY_FCRAM_DMP)</CODE>.</li>
2193        </ul>
2194      </description></P>
2195<HR>
2196<H3><A name="note44-25">Note 44-25: (GX) Changed specifications related to the transfer mode in <CODE>glFramebufferTexture2D</CODE> [SDK]</A></H3>
2197<P><description>Allowed <CODE>NN_GX_MEM_FCRAM | GL_NO_COPY_FCRAM_DMP</CODE> to be used to specify the texture attached to the framebuffer. Until now this had generated a <CODE>GL_INVALID_OPERATION</CODE> error. (It has been possible to specify <CODE>NN_GX_MEM_FCRAM | GL_COPY_FCRAM_DMP</CODE> for some time.) However, hardware specifications do not allow the <CODE>glClear</CODE> function to clear a texture that was allocated in main memory and attached to the framebuffer.<br></description></P>
2198<HR>
2199<H3><A name="note44-26">Note 44-26: (GX) Fixed a bug that prevented the <CODE>glGetTexParameteri</CODE> and <CODE>glGetTexParameterf</CODE> functions from getting values for <CODE>GL_GENERATE_MIPMAP</CODE> [SDK]</A></H3>
2200<P><description>Fixed a bug that prevented the <CODE>glGetTexParameteri</CODE> and <CODE>glGetTexParameterf</CODE> functions from getting values when <CODE>GL_GENERATE_MIPMAP</CODE> was specified for their <SPAN class="argument">pname</SPAN> argument.<br></description></P>
2201<HR>
2202<H3><A name="note44-27">Note 44-27: (GX) Fixed a bug that prevented depth values from being read properly in the <CODE>glReadPixels</CODE> function [SDK]</A></H3>
2203<P><description>Fixed a bug that prevented the <CODE>glReadPixels</CODE> function from correctly reading depth values in the <CODE>GL_DEPTH24_STENCIL8_EXT</CODE> format from a buffer when the stencil values were nonzero.<br></description></P>
2204<HR>
2205<H3><A name="note44-28">Note 44-28: (GX) Added support for reading the stencil buffer with the <CODE>glReadPixels</CODE> function [SDK]</A></H3>
2206<P><description>You can now set the <SPAN class="argument">format</SPAN> argument of the <CODE>glReadPixels</CODE> function equal to <CODE>GL_STENCIL_INDEX</CODE> to read from the stencil buffer.<br> However, you must set the <SPAN class="argument">type</SPAN> argument equal to <CODE>GL_UNSIGNED_BYTE</CODE>.<br></description></P>
2207<HR>
2208<H3><A name="note44-29">Note 44-29: (GX) Changed argument restrictions in the <CODE>nngxAdd3DCommand</CODE> function [SDK]</A></H3>
2209<P><description>The 3D command buffer must be a multiple of 16, so the <SPAN class="argument">buffersize</SPAN> argument to the <CODE>nngxAdd3DCommand</CODE> function must now be a multiple of 16 rather than a multiple of 8 when <SPAN class="argument">copycmd</SPAN> is <CODE>GL_FALSE</CODE>.<br></description></P>
2210<HR>
2211<H3><A name="note44-30">Note 44-30: (GX) Added the <CODE>nngxIsStereoVisionAllowed</CODE> function [SDK]</A></H3>
2212<P><description>Added a function that gets whether stereoscopic display is permitted.<br> This allows applications to determine whether the 3D depth slider is completely down or the system has disabled stereoscopic display.<br></description></P>
2213<HR>
2214<H3><A name="note44-31">Note 44-31: (GX) Added the <CODE>nngxSetTimeout</CODE> function [SDK]</A></H3>
2215<P><description>Added timeout processing to the <CODE>nngxWaitCmdlistDone</CODE> function. <br>(This cannot be used in Release builds, though.) <br>You can also use the <CODE>nngxSetTimeout</CODE> function to specify the timeout duration and the callback function to invoke when a timeout occurs.</description></P>
2216<HR>
2217<H3><A name="note44-32">Note 44-32: (GX) Fixed a bug that prevented the <CODE>nngxTransferRenderImage</CODE> function from transferring data correctly [SDK]</A></H3>
2218<P><description>Fixed a bug that prevented data from being transferred correctly when the <SPAN class="argument">yflip</SPAN> argument was <CODE>GL_TRUE</CODE> and the source buffer was larger than the destination buffer.<br></description></P>
2219<HR>
2220<H3><A name="note44-33">Note 44-33: (GX) Revised error checking for the placement of cube map texture data [SDK]</A></H3>
2221<P><description>Fixed the driver because it was not correctly checking that all six faces of texture data were placed within the same 32-MB boundary, as required by the hardware. (Errors could not be generated correctly for texture data that violated this placement restriction.) <br><br>Although the address of the <CODE>GL_TEXTURE_CUBE_MAP_POSITIVE_X</CODE> face of a cube map texture must be less than or equal to the address of every other face, this was not documented. Information has now been added to <CODE>$CTR_SDK/documents/DMPGL20/DMPGL20_system_API_specification.pdf</CODE>.</description></P>
2222<HR>
2223<H3><A name="note44-34">Note 44-34: (GX) Added special error codes for command request overflows [SDK]</A></H3>
2224<P><description>Changed the error code generated when command requests have exceeded (or when it has been determined that they <I>will</I> exceed) the limit already configured for a command list object. The new error code is <CODE>GL_ERROR_COMMANDREQUEST_FULL_DMP</CODE>; the old error code was <CODE>GL_INVALID_OPERATION</CODE>.<br></description></P>
2225<HR>
2226<H3><A name="note44-35">Note 44-35: (GX) Added support for copying textures from the depth buffer [SDK]</A></H3>
2227<P><description>Allowed the <CODE>glCopyTexImage2D</CODE> and <CODE>glCopyTexSubImage2D</CODE> functions to copy from the depth (depth/stencil) buffer.<br></description></P>
2228<HR>
2229<H3><A name="note44-36">Note 44-36: (GX) Added support for rendering to textures for the depth buffer [SDK]</A></H3>
2230<P><description>Allowed the depth buffer to be specified with the render-to-texture feature (it is no longer limited to the color buffer).<br></description></P>
2231<HR>
2232<H3><A name="note44-37">Note 44-37: (GX) Changed driver behavior when fragment lighting is disabled [SDK]</A></H3>
2233<P><description>A command that sets the layer configuration to <CODE>0</CODE> is now generated when validation is performed if the uniform <CODE>dmp_FragmentLighting.enabled</CODE> has been set equal to <CODE>GL_FALSE</CODE> by a <CODE>glUniform*</CODE> function and has not been changed since.<br> This was done because even if fragment lighting is disabled, the number of processing cycles corresponding to the specified layer configuration are still used.<br></description></P>
2234<HR>
2235<H3><A name="note44-38">Note 44-38: (GX) Fixed a validation bug that occurred when a texture attached to the framebuffer was deleted [SDK]</A></H3>
2236<P><description>Fixed a bug that prevented proper validation when a texture attached by the <CODE>glFramebufferTexture2D</CODE> function was deleted.<br></description></P>
2237<HR>
2238<H3><A name="note44-39">Note 44-39: (GX) Added uniform location macros for the fixed fragment shader [SDK]</A></H3>
2239<P><description>Added macro definitions that indicate the locations of reserved uniforms.<br> To use them, include <CODE>$CTR_SDK/include/nn/gx/CTR/gx_UniformLocationForFragmentShader.h</CODE>.<br></description></P>
2240<HR>
2241<H3><A name="note44-40">Note 44-40: (GX) Fixed a bug that occurred in the <CODE>glDrawArrays</CODE> function when a vertex buffer was used [SDK]</A></H3>
2242<P><description>Fixed a bug in the register settings (specifically for register <CODE>0x227</CODE>) generated by the <CODE>glDrawArrays</CODE> function when a vertex buffer was in use.<br> Removed unnecessary register settings (also for register <CODE>0x227</CODE>) generated by the <CODE>glDrawArrays</CODE> function when a vertex buffer was <I>not</I> in use.<br></description></P>
2243<HR>
2244<H3><A name="note44-41">Note 44-41: (HID) Changed the timing at which to start sampling the accelerometers [SDK | System Updater]</A></H3>
2245<P><description>The library used to begin sampling the accelerometers when the system started up. Now, it starts sampling when an instance of the <CODE>AccelerometerReader</CODE> class is created and stops when the instance is destroyed.<br></description></P>
2246<HR>
2247<H3><A name="note44-42">Note 44-42: (JPEG) Added functions that get and set Exif tags [SDK]</A></H3>
2248<P><description>Added several functions that can get and set Exif information during encoding and decoding.<br></description></P>
2249<HR>
2250<H3><A name="note44-43">Note 44-43: (JPEG) Added functions that specify JPEG decoding options [SDK]</A></H3>
2251<P><description>Added the following functions, which can get and set JPEG decoding options.
2252        <ul>
2253          <li><CODE>JpegMpDecoder::SetOption</CODE></li>
2254          <li><CODE>JpegMpDecoder::GetOption</CODE></li>
2255        </ul>
2256      </description></P>
2257<HR>
2258<H3><A name="note44-44">Note 44-44: (JPEG) Added error codes [SDK]</A></H3>
2259<P><description>Added error codes that can be obtained by the <CODE>GetLastError</CODE> function when errors occur during encoding or decoding.<br></description></P>
2260<HR>
2261<H3><A name="note44-45">Note 44-45: (JPEG) Added pixel formats <CODE>{RGB8,RGBA8}x{LINEAR,BLOCK8}</CODE> [SDK]</A></H3>
2262<P><description>Added pixel formats that can be specified during encoding and decoding.<br></description></P>
2263<HR>
2264<H3><A name="note44-46">Note 44-46: (JPEG) Fixed a bug that caused execution to stop while decoding particular JPEG files [SDK]</A></H3>
2265<P><description>Fixed a bug that caused program execution to stop at an ASSERT statement while decoding particular JPEG files.<br></description></P>
2266<HR>
2267<H3><A name="note44-47">Note 44-47: (JPEG) Added support for shrink decoding [SDK]</A></H3>
2268<P><description>Added the <CODE>StartJpegDecoderShrink</CODE> function, which can both decode and shrink images.<br></description></P>
2269<HR>
2270<H3><A name="note44-48">Note 44-48: (MIC) Fixed return values from the <CODE>GetLastSamplingAddress</CODE> function [SDK | System Updater]</A></H3>
2271<P><description>Fixed the <CODE>GetLastSamplingAddress</CODE> function to return a pointer to the address where the most recent microphone sampling results are stored, rather than the previous address.<br></description></P>
2272<HR>
2273<H3><A name="note44-49">Note 44-49: (MIC) Added the <CODE>SetLowPassFilter</CODE> function [SDK | System Updater]</A></H3>
2274<P><description>Added the <CODE>SetLowPassFilter</CODE> function, which configures whether a low-pass filter is applied to microphone input data.<br></description></P>
2275<HR>
2276<H3><A name="note44-50">Note 44-50: (NGC) Added overloaded <CODE>CheckProfanityWords</CODE> functions [SDK]</A></H3>
2277<P><description>Added overloaded functions that read the region and language settings and then check for profanity using the appropriate list, which is automatically selected.<br></description></P>
2278<HR>
2279<H3><A name="note44-51">Note 44-51: (NGC) Changed specifications for the <CODE>CheckProfanityWords</CODE> function [SDK]</A></H3>
2280<P><description>Removed the overloaded <CODE>CheckProfanityWords</CODE> function that specified a region code, replacing it with an overloaded function that specifies a pattern list.<br> Following this change, you must initialize the FS library before you call the <CODE>CheckProfanityWords</CODE> function.<br></description></P>
2281<HR>
2282<H3><A name="note44-52">Note 44-52: (NGC) Added the <CODE>GetContentVersion</CODE> function [SDK]</A></H3>
2283<P><description>Added the <CODE>GetContentVersion</CODE> function, which is used to get the version number of the profanity patterns installed on the system.<br></description></P>
2284<HR>
2285<H3><A name="note44-53">Note 44-53: (OS) Changed <CODE>nn::os::Thread::Sleep</CODE> [SDK | System Updater]</A></H3>
2286<P><description>Rather than being put to sleep, a thread is now forced to spin-wait with <CODE>nn::os::SpinWaitCpuCycles</CODE> if the sleep time specified to the <CODE>nn::os::Thread::Sleep</CODE> function is less than a certain value.<br></description></P>
2287<HR>
2288<H3><A name="note44-54">Note 44-54: (OS) Added user exception handler [SDK | System Updater]</A></H3>
2289<P><description>When exceptions occur outside of the debugger environment, applications now exit rather than displaying a red upper screen and stopping.<br><br> The <CODE>nn::os::SetUserExceptionHandler</CODE> function was added for exception processing in applications.<br> To allow an application to process exceptions, set <B>Exception Handler</B> equal to <B>enable</B> in the <CODE>Config</CODE> tool.<br></description></P>
2290<HR>
2291<H3><A name="note44-55">Note 44-55: (OS) Revised the Function Reference Manual [SDK]</A></H3>
2292<P><description>Explained CTR-SDK 0.10 specification changes for memory management with the OS library in the Function Reference Manual.<br> This was accompanied by the addition of version 0.1 of the <I>System Programming Guide</I>.<br> <CODE>$CTR_SDK/documents/TechnicalNotes/SystemProgramingGuide/SystemProgramingGuide.pdf</CODE><br></description></P>
2293<HR>
2294<H3><A name="note44-56">Note 44-56: (RDT) Changed the <CODE>Process</CODE> function's return values [SDK]</A></H3>
2295<P><description>Modified the <CODE>Process</CODE> function to return unchanged any UDS-level error codes that are detected when it is run.<br> This was actually changed in version 0.11 but was accidentally omitted from the change log.<br></description></P>
2296<HR>
2297<H3><A name="note44-57">Note 44-57: (RDT) Revised descriptions of finalizing a <CODE>Receiver</CODE> instance [SDK]</A></H3>
2298<P><description>There were errors in the explanations of how a <CODE>Receiver</CODE> instance is finalized.<br> These explanations were fixed to mention that the <CODE>Close</CODE> function must be called during the finalization process.<br></description></P>
2299<HR>
2300<H3><A name="note44-58">Note 44-58: (RDT) Established result codes [SDK]</A></H3>
2301<P><description>Established the result codes returned by the RDT API.<br> See the Function Reference Manual for explanations of the result codes and to learn which result codes can be returned by each function.<br></description></P>
2302<HR>
2303<H3><A name="note44-59">Note 44-59: (RDT) Introduced <CODE>enum</CODE> values that indicate uninitialized states [SDK]</A></H3>
2304<P><description>Revised the <CODE>GetStatus</CODE> function to return <CODE>SENDER_STATE_NOT_INITIALIZED</CODE> or <CODE>RECEIVER_STATE_NOT_INITIALIZED</CODE> if it attempts to get the state of an uninitialized <CODE>Sender</CODE> or <CODE>Receiver</CODE> instance.<br></description></P>
2305<HR>
2306<H3><A name="note44-60">Note 44-60: (SND) Changed 3D surround sound features [SDK]</A></H3>
2307<P><description>Improved the audio quality of 3D surround sound.<br></description></P>
2308<HR>
2309<H3><A name="note44-61">Note 44-61: (SND) Changed the specifications for the <CODE>GetHeadphoneStatus</CODE> function and added the <CODE>UpdateHeadphoneStatus</CODE> function [SDK]</A></H3>
2310<P><description>Changed specifications for the <CODE>GetHeadphoneStatus</CODE> function and added the <CODE>UpdateHeadphoneStatus</CODE> function.<br> For details, see the Function Reference Manual.<br></description></P>
2311<HR>
2312<H3><A name="note44-62">Note 44-62: (SND) Fixed a bug in the <CODE>GetSampleLength</CODE> function [SDK]</A></H3>
2313<P><description>Fixed a bug in the <CODE>nn::snd::GetSampleLength</CODE> function that caused it to return incorrect values for the ADPCM format.<br></description></P>
2314<HR>
2315<H3><A name="note44-63">Note 44-63: (SND) Added the <CODE>SetAuxFrontBypass</CODE> function [SDK]</A></H3>
2316<P><description>Added the <CODE>SetAuxFrontBypass</CODE> function, which handles front bypass settings for 3D surround sound on the AUX bus.<br></description></P>
2317<HR>
2318<H3><A name="note44-64">Note 44-64: (SND) Turned the <CODE>nn::snd::Bcwav</CODE> namespace into a class [SDK]</A></H3>
2319<P><description>Removed the <CODE>nn::snd::Bcwav</CODE> namespace and added a class with the same name.<br> This involves no changes other than making <CODE>using namespace</CODE> unusable.<br></description></P>
2320<HR>
2321<H3><A name="note44-65">Note 44-65: (SND) Introduced soft clipping [SDK]</A></H3>
2322<P><description>Added a <I>soft clipping</I> feature to reduce clipping noise generated at the final stage of sound output.<br> Also added functions for changing and getting the clipping mode.<br></description></P>
2323<HR>
2324<H3><A name="note44-66">Note 44-66: (SND) Added a feature for specifying the fade-in immediately after playback starts [SDK]</A></H3>
2325<P><description>Added the <CODE>nn::snd::Voice::SetStartFrameFadeInFlag</CODE> function, which configures whether to fade in from a volume of 0 over a single sound frame immediately after playback starts.<br></description></P>
2326<HR>
2327<H3><A name="note44-67">Note 44-67: (TOOL) Extended the <CODE>Config</CODE> tool [SDK]</A></H3>
2328<P><description>Added a feature to configure the EULA with the <CODE>Config</CODE> tool.<br></description></P>
2329<HR>
2330<H3><A name="note44-68">Note 44-68: (TOOL) Revised <CODE>DevMenu</CODE> [SDK]</A></H3>
2331<P><description>Fixed a bug that caused the screens to turn yellow if the SD Card was removed while <CODE>DevMenu</CODE> was running.<br></description></P>
2332<HR>
2333<H3><A name="note44-69">Note 44-69: (TOOL) Changed the RSF format [SDK]</A></H3>
2334<P><description>Added an item for specifying the media size in RSF files.<br> For details, see the <CODE>makerom</CODE> reference page: <CODE>$CTR_SDK/documents/tools/ctr_makerom.html</CODE>.<br></description></P>
2335<HR>
2336<H3><A name="note44-70">Note 44-70: (TOOL) Fixed a bug in <CODE>ctr_TexturePackager32.exe</CODE> related to specifying the mipmap level [SDK]</A></H3>
2337<P><description>Fixed a bug that prevented <CODE>ctr_TexturePackager32.exe</CODE> from obtaining the correct results (or caused it to exit illegally) when a texture node in the input XML file did not have a <CODE>miplimit</CODE> written. In such cases, the default value was an invalid value.<br> The default value was therefore changed to <CODE>1</CODE>, indicating no mipmap levels, and the tool's version number was changed to 1.0.0.<br></description></P>
2338<HR>
2339<H3><A name="note44-71">Note 44-71: (TOOL) Added a <CODE>ctr_makerom32.exe</CODE> feature for compressing static regions [SDK | System Updater]</A></H3>
2340<P><description>Added a feature to <CODE>ctr_makerom32</CODE> for compressing static regions.<br> This feature is enabled by default.<br> For details, see the <CODE>makerom</CODE> reference page: <CODE>$CTR_SDK/documents/tools/ctr_makerom.html</CODE>.<br></description></P>
2341<HR>
2342<H3><A name="note44-72">Note 44-72: (TOOL) Added the <CODE>dmen_PrintResult</CODE> constant [SDK]</A></H3>
2343<P><description>Fixed a bug that caused the upper screen to turn red and the lower screen to turn yellow when <CODE>DevMenu</CODE> returned an unexpected <CODE>Result</CODE>.<br></description></P>
2344<HR>
2345<H3><A name="note44-73">Note 44-73: (TOOL) Improved <CODE>makerom</CODE> encryption [SDK]</A></H3>
2346<P><description>Sped up encryption performed by <CODE>makerom</CODE>.<br></description></P>
2347<HR>
2348<H3><A name="note44-74">Note 44-74: (UDS) Fixed a bug that prevented <CODE>statusUpdateEvent</CODE> from being signaled when the local host connected to a network in Audience mode [SDK]</A></H3>
2349<P><description>Fixed a bug in the <CODE>ConnectNetwork</CODE> function that prevented <CODE>statusUpdateEvent</CODE> from being signaled when the local host connected to a network as an Audience node.<br></description></P>
2350<HR>
2351<H3><A name="note44-75">Note 44-75: (UDS) Changed the upper limit on endpoints that can be created by the <CODE>CreateEndpoint</CODE> function [SDK]</A></H3>
2352<P><description>Changed the <CODE>CreateEndpoint</CODE> function so that it can create up to 16 endpoints that exist <I>simultaneously</I> rather than 16 endpoints <I>total</I>.<br> If the <CODE>DestroyEndpoint</CODE> function deletes an endpoint, the <CODE>CreateEndpoint</CODE> function can now be run more than 16 times.<br></description></P>
2353<HR>
2354<H3><A name="note44-76">Note 44-76: (UDS) Fixed a bug that allowed the <CODE>CreateEndpoint</CODE> function to run prior to initialization [SDK]</A></H3>
2355<P><description>Fixed a bug that allowed the <CODE>CreateEndpoint</CODE> function to successfully run even when the UDS library had not been successfully initialized.<br></description></P>
2356<HR>
2357<H3><A name="note44-77">Note 44-77: (UDS) Fixed a bug in the <CODE>NetworkDescription::GetMacAddress</CODE> function [SDK]</A></H3>
2358<P><description>Fixed a bug that caused the <CODE>NetworkDescription::GetMacAddress</CODE> function to return <CODE>NULL</CODE> when run on a <CODE>NetworkDescription</CODE> obtained either prior to initialization or when an invalid beacon was received.<br></description></P>
2359<HR>
2360<H3><A name="note44-78">Note 44-78: (UDS) Fixed a bug that prevented 16 endpoints from being created [SDK]</A></H3>
2361<P><description>Fixed a bug that only allowed the <CODE>CreateEndpoint</CODE> function to create 15 endpoints even though the Function Reference Manual stated that up to 16 (provisional specification) can be created.<br></description></P>
2362<HR>
2363<H3><A name="note44-79">Note 44-79: (UDS) Changed terminology for Audience mode [SDK]</A></H3>
2364<P><description>Renamed <CODE>Audience mode</CODE> to <CODE>Spectator mode</CODE> for UDS communication.<br> Unchanged Audience-related definitions and function names can be used for now, but at some point in the future that support will be removed.<br></description></P>
2365<HR>
2366<H3><A name="note44-80">Note 44-80: (UDS) Revised the Function Reference Manual [SDK]</A></H3>
2367<P><description>Added a note to the descriptions of the <CODE>CreateNetwork</CODE>, <CODE>Scan</CODE>, and <CODE>ConnectNetwork</CODE> functions, stating that they require time to complete.<br></description></P>
2368<HR>
2369<H3><A name="note44-81">Note 44-81: (ULCD) Changed specifications for <CODE>nn::ulcd::StereoCamera</CODE> [SDK]</A></H3>
2370<P><description>Starting with this version, you must run <B>Reset Setting</B> in the <CODE>Config</CODE> tool before using the <CODE>StereoCamera</CODE> class.<br> Also, the <CODE>StereoCamera::Finalize</CODE> function did nothing in the past, but now processing has been added to it. You must now call it when you destroy an instance of the <CODE>StereoCamera</CODE> class.<br></description></P>
2371<HR>
2372<H3><A name="KnownIssues_0_12_0_Release">Known Issues in the SDK 0.12.0 Release</A></H3>
2373<knownissues><description>
2374        <ul>
2375          <li>After you have connected to and finished communicating with your first Chance Encounter Communication partner, you cannot communicate with another partner. Both systems must be reset to communicate again.</li>
2376          <li>The Function Reference Manual for the FRIENDS library describes <CODE>ResultConnected</CODE> incorrectly. This result is never returned when the local host connects.</li>
2377        </ul>
2378      </description></knownissues><HR>
2379<H2 style="line-height: 0"><A name="sdk_0_12_0_SystemUpdater">CTR-SDK Version 0.12.0 System Updater</A></H2>
2380<DIV style="text-align: right"><P style="line-height: 0">(2010/08/20)</P></DIV>
2381<HR>
2382<H3><A name="note43-01">Note 43-01: (AC) Organized C-language functions [System Updater]</A></H3>
2383<P><description>Renamed functions and reorganized C functions that had not kept up with other additions.<br>
2384        <ul>
2385          <li>Nonexistent implementations</li>
2386          <ul>
2387            <li>Deleted <CODE>nnacCancelConnect</CODE></li>
2388          </ul>
2389          <li>Function Name Changes</li>
2390          <ul>
2391            <li>Renamed <CODE>nnacDebugSetNetworkSettingA</CODE> to <CODE>nnacDebugSetNetworkSetting1</CODE></li>
2392          </ul>
2393          <li>Addition</li>
2394          <ul>
2395            <li><CODE>nnacGetLastErrorCode</CODE></li>
2396            <li><CODE>nnacGetLastDetailErrorCode</CODE></li>
2397            <li><CODE>nnacGetConnectingApType</CODE></li>
2398            <li><CODE>nnacGetConnectingNintendoZoneBeaconSubset</CODE></li>
2399          </ul>
2400        </ul>
2401      </description></P>
2402<HR>
2403<H3><A name="note43-02">Note 43-02: (AC) Revised the <CODE>Connect</CODE> function [System Updater]</A></H3>
2404<P><description>Fixed a bug that made it impossible to use WPA to connect to an access point in WPA/WPA2 mixed mode.<br></description></P>
2405<HR>
2406<H3><A name="note43-03">Note 43-03: (AC) Deprecated the <CODE>DebugFlushNetworkSetting</CODE> function [System Updater]</A></H3>
2407<P><description>Removed the <CODE>DebugFlushNetworkSetting</CODE> function.<br> Settings made by <CODE>DebugSetNetworkSetting1</CODE> can be used as temporary network settings, but these settings can no longer be saved permanently in NAND memory.<br></description></P>
2408<HR>
2409<H3><A name="note43-04">Note 43-04: (AC) Added the <CODE>RegisterDisconnectEvent</CODE> function [System Updater]</A></H3>
2410<P><description>Added a function that can register an event to detect unintended access point disconnections.<br></description></P>
2411<HR>
2412<H3><A name="note43-05">Note 43-05: (CAMERA) Removed the <CODE>IsBufferError</CODE> function [SDK | System Updater]</A></H3>
2413<P><description>Removed the <CODE>IsBufferError</CODE> function. Starting with CTR-SDK 0.11, the CAMERA library clears the buffer and the error state whenever a buffer error occurs. This change caused the function to be unable to correctly identify buffer errors.<br> To determine whether a buffer error has occurred, check the event state obtained by the <CODE>GetBufferErrorInterruptEvent</CODE> function.<br></description></P>
2414<HR>
2415<H3><A name="note43-06">Note 43-06: (CAMERA) Revised the <CODE>SetExposure</CODE> function [SDK | System Updater]</A></H3>
2416<P><description>Fixed a bug that prevented the <CODE>SetExposure</CODE> function from properly configuring the exposure in some environments where particular framerates have been set.<br></description></P>
2417<HR>
2418<H3><A name="note43-07">Note 43-07: (CAMERA) Changed processing within the <CODE>SynchronizeVsyncTiming</CODE> function [SDK | System Updater]</A></H3>
2419<P><description>Modified the <CODE>SynchronizeVsyncTiming</CODE> function's internal processing to improve performance.<br> As a result of these changes, the V-Sync signals after this function is run do not have as large a discrepancy as they did before the changes were made.<br> However, two issues have not really been fixed. First, the screen used to turn extremely dark for four frames after this function was run. Now, when the brightness of the two camera images is very different, the screen turns extremely bright for three frames after this function is run. Second, it still takes as long as before for the auto-exposure to stabilize.<br></description></P>
2420<HR>
2421<H3><A name="note43-08">Note 43-08: (CAMERA) Replaced the shutter sound [System Updater]</A></H3>
2422<P><description>Replaced the shutter sound played by the <CODE>PlayShutterSound</CODE> function with the final version of the sound.<br></description></P>
2423<HR>
2424<H3><A name="note43-09">Note 43-09: (CAMERA) Added processing to compensate for individual system differences in white balance [SDK | System Updater]</A></H3>
2425<P><description>Added processing that, when the white balance is set, applies parameters measured at the factory to compensate for differences between individual systems. <br> However, these parameters are not stored in systems manufactured prior to mid-August.<br> White balance settings have not changed for these systems.<br></description></P>
2426<HR>
2427<H3><A name="note43-10">Note 43-10: (CAMERA) Fixed camera LED behavior when the shutter sound is played while the inner camera is in use [System Updater]</A></H3>
2428<P><description>Fixed a bug that illuminated the camera LED when the shutter sound was played while the inner camera was in use.<br></description></P>
2429<HR>
2430<H3><A name="note43-11">Note 43-11: (CAMERA) Fixed camera LED behavior when the recording-started and recording-ended sounds are played [System Updater]</A></H3>
2431<P><description>Fixed camera LED behavior while the outer cameras are in use so that the camera LED begins flashing when the recording-started sound is played and returns to being steadily illuminated when the recording-ended sound is played.<br></description></P>
2432<HR>
2433<H3><A name="note43-12">Note 43-12: (CEC) Changed the Chance Encounter Communication daemon [System Updater]</A></H3>
2434<P><description>Changed the Chance Encounter Communication daemon as follows.<br>
2435        <ul>
2436          <li>Added the <CODE>CecControl::StartScanning</CODE> function to start scanning and the <CODE>CecControl::StopScanning</CODE> function to stop scanning. These functions can be used after the <CODE>nn::cec::Finalize</CODE> function.<br> These functions represent a provisional specification.</li>
2437          <li>Added a feature to remember the MAC addresses of previous communication partners and refrain from communicating with them again as a measure to reduce power consumption. Follow the steps below to erase these stored addresses and allow further communication with previous partners.</li>
2438          <ul>
2439            <li>Start running the daemon with <CODE>CecControl::StartScanning(true)</CODE>.</li>
2440            <li>Write data to the outbox.</li>
2441            <li>Delete the data in the outbox.</li>
2442            <li>Delete the box.</li>
2443          </ul>
2444          <li>Move the data storage location to NAND memory.</li>
2445        </ul>
2446      </description></P>
2447<HR>
2448<H3><A name="note43-13">Note 43-13: (CFG) Revised the <CODE>nn::cfg::CTR::GetRegion</CODE> function [System Updater]</A></H3>
2449<P><description>Fixed a bug that caused the <CODE>nn::cfg::CTR::GetRegion</CODE> function to get undefined region codes.<br></description></P>
2450<HR>
2451<H3><A name="note43-14">Note 43-14: (DLP) Added support for system updates of card-based software [System Updater]</A></H3>
2452<P><description>Added support for system updates through Download Play <I>for card-based software only</I>. (NAND-based software will be supported in the future.) <br>Card-based software distributes the system required for running the child program to clients from its own update partition. Following a system update, the server (the card-based software) enters the <CODE>SERVER_STATE_WAITING_RECONNECT</CODE> state and waits until rebooted clients reconnect. You must therefore provide a user interface for canceling Download Play. <BR>While an application is under development it cannot include an update partition. Be aware that you cannot perform system updates through Download Play during development.</description></P>
2453<HR>
2454<H3><A name="note43-15">Note 43-15: (DLP) Restricted the number of titles that can be scanned [System Updater]</A></H3>
2455<P><description>Restricted the number of titles that can be simultaneously scanned to 16. Previously this number was unlimited.<br> Use a value of 16 or less for the <SPAN class="argument">scanNum</SPAN> argument to the <CODE>FakeClient::Initialize</CODE> function.<br></description></P>
2456<HR>
2457<H3><A name="note43-16">Note 43-16: (DLP) Filtering by region while scanning [System Updater]</A></H3>
2458<P><description>Server and title information that differs from the local system's region is now filtered out while scanning.<br> Following this change, a system can no longer connect to a server with a different region.<br> Also, the type of the region information handled by Download Play has been changed to <CODE>nn::cfg::CfgRegionCode</CODE>.<br></description></P>
2459<HR>
2460<H3><A name="note43-17">Note 43-17: (DLP) Changed the reconnection information stored in the <CODE>RebootInfo</CODE> structure [System Updater]</A></H3>
2461<P><description>The <CODE>RebootInfo</CODE> structure stores child reconnection information. Replaced its <CODE>mac</CODE> member variable with the <CODE>bssid</CODE> member variable. <br> Copy the server's MAC address into the <CODE>bssid</CODE> member variable as you did prior to this change.<br></description></P>
2462<HR>
2463<H3><A name="note43-18">Note 43-18: (DLP) Embedding child programs in applications [System Updater | Sample Demos]</A></H3>
2464<P><description>Allowed child programs to be embedded in applications and distributed.<br> In line with this change, child programs can no longer be distributed from SD Cards.<br><br> To learn how to embed programs, see the OMakefile for <CODE>$SampleDemos/dlp/SimpleServer</CODE>.<br> To distribute an embedded child program, specify the child program's ID in the <CODE>Server::Initialize</CODE> function.<br></description></P>
2465<HR>
2466<H3><A name="note43-19">Note 43-19: (DLP) Getting network reconnection parameters for child programs [System Updater]</A></H3>
2467<P><description>With CTR-SDK 0.11 an SD Card was required to write parameters, but this is no longer necessary.<br> You can now use the <CODE>nn::dlp::GetRebootInfo</CODE> function to get parameters from the system-specific memory region.<br></description></P>
2468<HR>
2469<H3><A name="note43-20">Note 43-20: (DLP) Embedding icons in child programs and reading icons from the server [System Updater | Sample Demos]</A></H3>
2470<P><description>Servers can now read information (icons and metadata) from ICN files embedded in child programs. <br> For examples of child programs with embedded ICN files, see <CODE>$SampleDemos/dlp/Child</CODE>.<br> This eliminates the need to specify the icon and program title with the <CODE>Server::Initialize</CODE> function, so its arguments were changed.<br></description></P>
2471<HR>
2472<H3><A name="note43-21">Note 43-21: (FS) Fixed a bug in the formatting of save data [System Updater]</A></H3>
2473<P><description>Fixed a bug that prevented the <CODE>nn::fs::FormatSaveData</CODE> function from formatting data properly and caused it to create fewer than the specified number of files when a large number of files (or other similar characteristic) was specified.<br></description></P>
2474<HR>
2475<H3><A name="note43-22">Note 43-22: (GX) Fixed a bug that prevented completion notifications from being sent for graphics processing while <CODE>NN_LOG</CODE> was in use [SDK | System Updater]</A></H3>
2476<P><description>Fixed a bug that occurred when <CODE>NN_LOG</CODE> was used to output a large number of log messages. This bug prevented completion notifications from being sent for graphics commands and, among other problems, caused the <CODE>nngxWaitCmdlistDone</CODE> function to stop returning.<br></description></P>
2477<HR>
2478<H3><A name="note43-23">Note 43-23: (GX) Fixed a bug that caused programs to stop with red screens when vertex data and/or textures were placed in VRAM [System Updater]</A></H3>
2479<P><description>Fixed a bug that caused programs to show red screens and stop at a random time if vertex data and textures had been placed in VRAM and were being used from VRAM.<br></description></P>
2480<HR>
2481<H3><A name="note43-24">Note 43-24: (HID) Fixed a bug that prevented the debug pad from working properly [System Updater]</A></H3>
2482<P><description>Fixed a bug that prevented the debug pad from working properly during debug log output.<br></description></P>
2483<HR>
2484<H3><A name="note43-25">Note 43-25: (HID) Changed the timing at which to start sampling the accelerometers [SDK | System Updater]</A></H3>
2485<P><description>The library used to begin sampling the accelerometers when the system started up. Now, it starts sampling when an instance of the <CODE>AccelerometerReader</CODE> class is created and stops when the instance is destroyed.<br></description></P>
2486<HR>
2487<H3><A name="note43-26">Note 43-26: (HTTP) Fixed a bug in the multipart lazy POST feature [System Updater]</A></H3>
2488<P><description>Fixed a bug that caused invalid data to be sent in multipart lazy POST operations.<br></description></P>
2489<HR>
2490<H3><A name="note43-27">Note 43-27: (HTTP) Fixed a bug that occurred with server keepalive timeouts [System Updater]</A></H3>
2491<P><description>Fixed a bug that caused the next round of HTTP communication to a server to fail following a keepalive timeout on the server.<br></description></P>
2492<HR>
2493<H3><A name="note43-28">Note 43-28: (HTTP) Added support for timeouts in blocking functions [System Updater]</A></H3>
2494<P><description>Added Read and Send functions that block until communication has completed and allow a timeout to be specified.<br></description></P>
2495<HR>
2496<H3><A name="note43-29">Note 43-29: (MIC) Fixed return values from the <CODE>GetLastSamplingAddress</CODE> function [SDK | System Updater]</A></H3>
2497<P><description>Fixed the <CODE>GetLastSamplingAddress</CODE> function to return a pointer to the address where the most recent microphone sampling results are stored, rather than the previous address.<br></description></P>
2498<HR>
2499<H3><A name="note43-30">Note 43-30: (MIC) Added the <CODE>SetLowPassFilter</CODE> function [SDK | System Updater]</A></H3>
2500<P><description>Added the <CODE>SetLowPassFilter</CODE> function, which configures whether a low-pass filter is applied to microphone input data.<br></description></P>
2501<HR>
2502<H3><A name="note43-31">Note 43-31: (MIC) Revised settings for the microphone input gain [System Updater]</A></H3>
2503<P><description>Fixed the microphone input gain settings, which had been unsuitable.<br> This revision increases the base input amplitude by approximately 6 dB.<br></description></P>
2504<HR>
2505<H3><A name="note43-32">Note 43-32: (OS) Changed the behavior of the <CODE>nn::dbg::Break</CODE> function [System Updater]</A></H3>
2506<P><description>When the <CODE>nn::dbg::Break</CODE> function is not called from the debugger environment, applications now exit rather than displaying a yellow upper screen and stopping.<br><br> By setting <B>Break Stop</B> equal to <B>enable</B> with the <CODE>Config</CODE> tool, however, you can force applications to stop rather than exit.<br></description></P>
2507<HR>
2508<H3><A name="note43-33">Note 43-33: (OS) Changed <CODE>nn::os::Thread::Sleep</CODE> [SDK | System Updater]</A></H3>
2509<P><description>Rather than being put to sleep, a thread is now forced to spin-wait with <CODE>nn::os::SpinWaitCpuCycles</CODE> if the sleep time specified to the <CODE>nn::os::Thread::Sleep</CODE> function is less than a certain value.<br></description></P>
2510<HR>
2511<H3><A name="note43-34">Note 43-34: (OS) Added user exception handler [SDK | System Updater]</A></H3>
2512<P><description>When exceptions occur outside of the debugger environment, applications now exit rather than displaying a red upper screen and stopping.<br><br> The <CODE>nn::os::SetUserExceptionHandler</CODE> function was added for exception processing in applications.<br> To allow an application to process exceptions, set <B>Exception Handler</B> equal to <B>enable</B> in the <CODE>Config</CODE> tool.<br></description></P>
2513<HR>
2514<H3><A name="note43-35">Note 43-35: (SND) Implemented high-pass filter for headphones [System Updater]</A></H3>
2515<P><description>Implemented a high-pass filter with a cut-off frequency of 10 Hz to protect headphones and reduce power consumption.<br> There is no detectable change in audio quality.<br></description></P>
2516<HR>
2517<H3><A name="note43-36">Note 43-36: (SSL) Added SHA256 certificate support [System Updater]</A></H3>
2518<P><description>Added support for SSL communication with SHA-256 certificates.<br></description></P>
2519<HR>
2520<H3><A name="note43-37">Note 43-37: (SSL) Added support for built-in commercial CA certificates [System Updater]</A></H3>
2521<P><description>Added support for SSL communication using pre-installed (built-in) commercial CA certificates.<br></description></P>
2522<HR>
2523<H3><A name="note43-38">Note 43-38: (TOOL) Added a <CODE>ctr_makerom32.exe</CODE> feature for compressing static regions [SDK | System Updater]</A></H3>
2524<P><description>Added a feature to <CODE>ctr_makerom32</CODE> for compressing static regions.<br> This feature is enabled by default.<br> See the reference page for details.<br></description></P>
2525<HR>
2526<H3><A name="note43-39">Note 43-39: (UDS) Fixed a bug that prevented the <CODE>GetConnectionStatus</CODE> function from obtaining the correct information in Audience mode [System Updater]</A></H3>
2527<P><description>Fixed a bug that prevented the correct information from being obtained when the <CODE>GetConnectionStatus</CODE> function was run in Audience mode.<br></description></P>
2528<HR>
2529<H3><A name="KnownIssues_0_12_0_SystemUpdater">Known Issues with System Updater in Version 0.12.0 of the SDK</A></H3>
2530<knownissues><description>
2531        <ul>
2532          <li>The debugger software cannot import CIA files.</li>
2533          <li>Save data access is not thread-safe.</li>
2534          <li>In the AC library, network settings made by <CODE>DebugSetNetworkSetting1</CODE> are applied to NAND memory when a connection succeeds, even though they should not be.</li>
2535        </ul>
2536      </description></knownissues><HR>
2537<H2 style="line-height: 0"><A name="sdk_0_12_0_SampleDemos">CTR-SDK Version 0.12.0 Sample Demos</A></H2>
2538<DIV style="text-align: right"><P style="line-height: 0">(2010/08/20)</P></DIV>
2539<HR>
2540<H3><A name="note42-01">Note 42-01: (DLP) Embedding child programs in applications [System Updater | Sample Demos]</A></H3>
2541<P><description>Allowed child programs to be embedded in applications and distributed.<br> In line with this change, child programs can no longer be distributed from SD Cards.<br><br> To learn how to embed programs, see the OMakefile for <CODE>$SampleDemos/dlp/SimpleServer</CODE>.<br> To distribute an embedded child program, specify the child program's ID in the <CODE>Server::Initialize</CODE> function.<br></description></P>
2542<HR>
2543<H3><A name="note42-02">Note 42-02: (DLP) Embedding icons in child programs and reading icons from the server [System Updater | Sample Demos]</A></H3>
2544<P><description>Servers can now read information (icons and metadata) from ICN files embedded in child programs. <br> For examples of child programs with embedded ICN files, see <CODE>$SampleDemos/dlp/Child</CODE>.<br> This eliminates the need to specify the icon and program title with the <CODE>Server::Initialize</CODE> function, so its arguments were changed.<br></description></P>
2545<HR>
2546<H3><A name="note42-03">Note 42-03: (GX) Fixed a quaternion generation bug in the vertex shaders for the DMPGL samples [Sample Demos]</A></H3>
2547<P><description>The process of generating quaternions from normal and tangent vectors was confirmed to produce invalid results with the vertex shader files included with the DMPGL samples.<br> A bug in the calculations following the branch at the <CODE>l_full_quaternion_calc_fallback</CODE> or <CODE>l_full_quaternion_calc_fallback_reflection</CODE> label resulted in invalid lighting at the boundary between results of entering the branch and results of not entering the branch. This bug has been fixed.<br></description></P>
2548<HR>
2549<H3><A name="note42-04">Note 42-04: (GX) Fixed issues related to lookup table generation in the <CODE>ProctexClamp</CODE> sample [Sample Demos]</A></H3>
2550<P><description>Fixed the lookup table generated by the <CODE>LoadLamp</CODE> function in the <CODE>ProctexClamp</CODE> sample. Formerly this lookup table was not set with correct values for the number of elements (the first half of 128 elements and the latter half of 128 delta values).<br></description></P>
2551<HR>
2552<H3><A name="note42-05">Note 42-05: (GX) Allowed the number of generated display buffers to be specified [Sample Demos]</A></H3>
2553<P><description>Allowed any value, rather than only <CODE>2</CODE>, to be specified as the number of display buffers to generate (separately for the upper and lower screens) with the <CODE>Initialize</CODE> function in the <CODE>demo::RenderSystem*</CODE> classes.<br> Specifying any value other than <CODE>2</CODE> used to result in an error.<br></description></P>
2554<HR>
2555<H3><A name="note42-06">Note 42-06: (RDT) Revised <CODE>basic</CODE> sample demos [Sample Demos]</A></H3>
2556<P><description>Fixed the <CODE>basic</CODE> sample demo so that even Release builds generate log output.<br></description></P>
2557<HR>
2558<H3><A name="note42-07">Note 42-07: (RDT) Added a sample demo for bidirectional communication [Sample Demos]</A></H3>
2559<P><description>Added the <CODE>bidirectional</CODE> RDT sample demo.<br> This demo shows sample code for sending and receiving data between two systems simultaneously.<br></description></P>
2560<HR>
2561<H3><A name="note42-08">Note 42-08: (SND) Changed <CODE>StreamPlayer</CODE>sample demo [Sample Demos]</A></H3>
2562<P><description>Changed the <CODE>StreamPlayer</CODE> SND sample demo so that it now performs streaming playback of ADPCM files in the BCWAV format.<br></description></P>
2563<HR>
2564<H3><A name="note42-09">Note 42-09: (UDS) Changed the implementation of <CODE>com_demo1</CODE> [Sample Demos]</A></H3>
2565<P><description>Changed the synchronous objects used for mutual exclusion in the <CODE>com_demo1</CODE> demo from <CODE>Mutex</CODE> to <CODE>CriticalSection</CODE>.<br> You can also now set the priority of individual threads.<br></description></P>
2566<HR>
2567<H3><A name="note42-10">Note 42-10: (UDS) Handled changed terminology for Audience mode in <CODE>com_demo1</CODE> [Sample Demos]</A></H3>
2568<P><description>Renamed <I>AUDIENCE Mode</I> to <I>SPECTATOR Mode</I>.<br></description></P>
2569<HR>
2570<H3><A name="KnownIssues_0_12_0_SampleDemos">Known Issues with SDK 0.12.0 Sample Demos</A></H3>
2571<knownissues><description>
2572        <ul>
2573          <li>If the remaining battery life reaches Level 0 even once, the <CODE>Battery</CODE> PTM demo stops running properly.</li>
2574        </ul>
2575      </description></knownissues><HR>
2576<H2 style="line-height: 0"><A name="sdk_0_11_2_Release">CTR-SDK Version 0.11.2 Release</A></H2>
2577<DIV style="text-align: right"><P style="line-height: 0">(2010/07/29)</P></DIV>
2578<HR>
2579<H3><A name="note41-01">Note 41-01: (SND) Fixed a bug that stopped sound during non-looping playback of short waveforms [SDK]</A></H3>
2580<P><description>Fixed a bug that stopped sound during non-looping playback of a short waveform that ends within a single sound frame (5 ms).<br></description></P>
2581<HR>
2582<H3><A name="note41-02">Note 41-02: (TOOL) Fixed <CODE>makerom</CODE> [SDK]</A></H3>
2583<P><description>Fixed a bug that prevented ROM files from being created at or beyond a fixed size (of approximately 400 MB).<br></description></P>
2584<HR>
2585<H3><A name="KnownIssues_0_11_2_Release">Known Issues in the SDK 0.11.2 Release</A></H3>
2586<knownissues><description>
2587        <ul>
2588          <li>The <CODE>nn::fs::FormatSaveData</CODE> function parses the <SPAN class="argument">maxFiles</SPAN> and <SPAN class="argument">maxDirectories</SPAN> arguments in reverse. To deal with this, pass the opposite values as arguments in CTR-SDK 0.11.</li>
2589          <li>The <CODE>statusUpdateEvent</CODE> that is signaled when a system connects to a network as a Master or Client is not signaled when the same system connects as an Audience.</li>
2590          <li>You cannot use the following functions in the profanity library.
2591              <ul>
2592                <li>The <CODE>CheckProfanityWords</CODE> function that checks all regions</li>
2593                <li>The <CODE>CheckProfanityWords</CODE> function that checks each region separately, called using <CODE>CFG_REGION_TAIWAN</CODE></li>
2594              </ul>
2595              The <CODE>ngc_simple</CODE> demo therefore does not run properly.
2596          </li>
2597          <li>After you have connected to and finished communicating with your first Chance Encounter Communication partner, you cannot communicate with another partner. Both systems must be reset to communicate again. Communication data that has been sent and received is saved on the SD Card and is therefore not erased even after a reset.</li>
2598          <li>The Power Button originally needed to be pressed for two or more seconds to start the shutdown process, but because of a bug the system may shut down even if the Power Button is held down for a shorter period of time.</li>
2599        </ul>
2600      </description></knownissues><HR>
2601<H2 style="line-height: 0"><A name="sdk_0_11_1_Release">CTR-SDK Version 0.11.1 Release</A></H2>
2602<DIV style="text-align: right"><P style="line-height: 0">(2010/07/28)</P></DIV>
2603<HR>
2604<H3><A name="note40-01">Note 40-01: (FS) Fixed the <CODE>nn::fs::GetRomRequiredMemorySize</CODE> function [SDK]</A></H3>
2605<P><description>Fixed the <CODE>nn::fs::GetRomRequiredMemorySize</CODE> function to return the correct values.<br></description></P>
2606<HR>
2607<H3><A name="note40-02">Note 40-02: (SND) Fixed a bug that created noise during playback of an ADPCM stream [SDK]</A></H3>
2608<P><description>Fixed a bug that created noise when a buffer jump was performed during streaming playback of an ADPCM format audio source.<br></description></P>
2609<HR>
2610<H3><A name="KnownIssues_0_11_1_Release">Known Issues in the SDK 0.11.1 Release</A></H3>
2611<knownissues><description>
2612        <ul>
2613          <li>The <CODE>nn::fs::FormatSaveData</CODE> function parses the <SPAN class="argument">maxFiles</SPAN> and <SPAN class="argument">maxDirectories</SPAN> arguments in reverse. To deal with this, pass the opposite values as arguments in CTR-SDK 0.11.</li>
2614          <li>The <CODE>statusUpdateEvent</CODE> that is signaled when a system connects to a network as a Master or Client is not signaled when the same system connects as an Audience.</li>
2615          <li>You cannot use the following functions in the profanity library.
2616              <ul>
2617                <li>The <CODE>CheckProfanityWords</CODE> function that checks all regions</li>
2618                <li>The <CODE>CheckProfanityWords</CODE> function that checks each region separately, called using <CODE>CFG_REGION_TAIWAN</CODE></li>
2619              </ul>
2620              The <CODE>ngc_simple</CODE> demo therefore does not run properly.
2621          </li>
2622          <li>After you have connected to your first communication partner and finished communication, you cannot communicate with another partner. Both systems must be reset to communicate again. Communication data that has been sent and received is saved on the SD Card and is therefore not erased even after a reset.</li>
2623          <li>The Power Button originally needed to be pressed for two or more seconds to start the shutdown process, but because of a bug the system may shut down even if the Power Button is held down for a shorter period of time.</li>
2624        </ul>
2625      </description></knownissues><HR>
2626<H2 style="line-height: 0"><A name="sdk_0_11_0_Release">CTR-SDK Version 0.11.0 Release</A></H2>
2627<DIV style="text-align: right"><P style="line-height: 0">(2010/07/22)</P></DIV>
2628<HR>
2629<H3><A name="note39-01">Note 39-01: (CAMERA) Removed C wrappers [SDK]</A></H3>
2630<P><description>Removed C wrapper functions from the camera library because they cannot be supported.<br></description></P>
2631<HR>
2632<H3><A name="note39-02">Note 39-02: (CAMERA) Revised the <CODE>Finalize</CODE> function [SDK | System Updater]</A></H3>
2633<P><description>Revised the <CODE>Finalize</CODE> function to turn off the camera LED if it is illuminated.<br></description></P>
2634<HR>
2635<H3><A name="note39-03">Note 39-03: (CAMERA) Added the <CODE>GetSuitableY2rStandardCoefficient</CODE> function [SDK | System Updater]</A></H3>
2636<P><description>Added the <CODE>GetSuitableY2rStandardCoefficient</CODE> function, which gets conversion coefficients suitable for converting YUV data output by the cameras (on the CTR system running the program) into the RGB format using the Y2R library.<br></description></P>
2637<HR>
2638<H3><A name="note39-04">Note 39-04: (CAMERA) Revised the <CODE>Initialize</CODE> and <CODE>Finalize</CODE> functions [SDK | System Updater]</A></H3>
2639<P><description>Revised the <CODE>Initialize</CODE> and <CODE>Finalize</CODE> functions to initialize and clean up settings.<br></description></P>
2640<HR>
2641<H3><A name="note39-05">Note 39-05: (CAMERA) Removed the <CODE>SynchronizeWhiteBalance</CODE> function [SDK | System Updater]</A></H3>
2642<P><description>Removed the <CODE>SynchronizeWhiteBalance</CODE> function because it had a bug that proved difficult to fix.<br> We are considering an alternate method of synchronizing the brightness and contrast between the left and right cameras to adjust image brightness and coloring.<br></description></P>
2643<HR>
2644<H3><A name="note39-06">Note 39-06: (CAMERA) Changed the camera configuration function's return value [SDK | System Updater]</A></H3>
2645<P><description>Changed the following camera setting functions to return an <CODE>nn::Result</CODE> value because there was a need for applications to handle errors.<br>
2646        <ul>
2647          <li><CODE>Initialize</CODE></li>
2648          <li><CODE>Activate</CODE></li>
2649          <li><CODE>SwitchContext</CODE></li>
2650          <li><CODE>SetExposure</CODE></li>
2651          <li><CODE>SetWhiteBalance</CODE></li>
2652          <li><CODE>SetSharpness</CODE></li>
2653          <li><CODE>SetAutoExposure</CODE></li>
2654          <li><CODE>IsAutoExposure</CODE></li>
2655          <li><CODE>SetAutoWhiteBalance</CODE></li>
2656          <li><CODE>IsAutoWhiteBalance</CODE></li>
2657          <li><CODE>FlipImage</CODE></li>
2658          <li><CODE>SetDetailSize</CODE></li>
2659          <li><CODE>SetSize</CODE></li>
2660          <li><CODE>SetFrameRate</CODE></li>
2661          <li><CODE>SetPhotoMode</CODE></li>
2662          <li><CODE>SetEffect</CODE></li>
2663          <li><CODE>SetContrast</CODE></li>
2664          <li><CODE>SetLensCorrection</CODE></li>
2665          <li><CODE>SetOutputFormat</CODE></li>
2666          <li><CODE>SetAutoExposureWindow</CODE></li>
2667          <li><CODE>SetNoiseFilter</CODE></li>
2668          <li>SynchronizeVsyncTiming</li>
2669          <li><CODE>PlayShutterSound</CODE></li>
2670        </ul>
2671      </description></P>
2672<HR>
2673<H3><A name="note39-07">Note 39-07: (CAMERA) Added and updated shutter sounds [SDK | System Updater]</A></H3>
2674<P><description>Removed <CODE>SHUTTER_SOUND_TYPE_CONTINUOUS</CODE>, a <CODE>ShutterSoundType</CODE> that indicates continuous shutter sounds, and added <CODE>SHUTTER_SOUND_TYPE_MOVIE</CODE> and <CODE>SHUTTER_SOUND_TYPE_MOVIE_END</CODE>, which indicate the start and end of video filming, respectively.<br> Data has also been updated for the normal shutter sound.<br></description></P>
2675<HR>
2676<H3><A name="note39-08">Note 39-08: (CAMERA) Removed a feature that notifies a recovery event [SDK | System Updater]</A></H3>
2677<P><description>Removed the <CODE>GetRebootEvent</CODE> function, which gets a notification event when a malfunction causes a recovery, and the <CODE>IsRebootSuccessful</CODE> function, which determines whether the recovery succeeded or failed.<br> From now on, a notification is sent for events with the <CODE>GetBufferErrorInterruptEvent</CODE> function regardless of whether recovery succeeded or failed.<br> If recovery fails, an error is returned afterwards by a call to a camera setting function that returns a <CODE>Result</CODE> value.<br> If a camera setting function is called during a recovery, it blocks internally until recovery has completed (successfully or not).<br></description></P>
2678<HR>
2679<H3><A name="note39-09">Note 39-09: (CAMERA) Removed functions that automatically receive data [SDK | System Updater]</A></H3>
2680<P><description>Removed the following functions, which automatically received image data from the camera at every frame.<br>
2681        <ul>
2682          <li><CODE>SetReceivingAuto</CODE></li>
2683          <li><CODE>SetReceivingRgbAuto</CODE></li>
2684          <li><CODE>StopReceivingAuto</CODE></li>
2685          <li><CODE>StopReceivingRgbAuto</CODE></li>
2686        </ul>
2687      </description></P>
2688<HR>
2689<H3><A name="note39-10">Note 39-10: (CAMERA) Added functions for batch setting changes [SDK | System Updater]</A></H3>
2690<P><description>Added the following functions, which change multiple camera settings all at once.<br>
2691        <ul>
2692          <li><CODE>SetPackageParameterWithoutContext</CODE></li>
2693          <li><CODE>SetPackageParameterWithContext</CODE></li>
2694        </ul>
2695      </description></P>
2696<HR>
2697<H3><A name="note39-11">Note 39-11: (CEC) Changed handling of title-specific IDs [SDK]</A></H3>
2698<P><description>Changed the notation &quot;<CODE>GameID</CODE>&quot; to &quot;<CODE>CecTitleId</CODE>&quot;.<br> If the most-significant 24 bits of a new Chance Encounter box's <CODE>CecTitleId</CODE> match an existing box, it can no longer be created because it is considered to be a box for the same title.<br></description></P>
2699<HR>
2700<H3><A name="note39-12">Note 39-12: (CEC) Added support for the Chance Encounter Communication library [SDK]</A></H3>
2701<P><description>Added support for the CEC library starting with CTR-SDK 0.11.<br>
2702        <ul>
2703          <li>Changes from the beta version</li>
2704          <ul>
2705            <li>Added the <CODE>MessageBoxInfoReader</CODE> class.</li>
2706          </ul>
2707          <li>Limitations</li>
2708          <ul>
2709            <li>Data is saved on an SD Card, which must be inserted in the system.</li>
2710            <li>Because communication does not start automatically, you must start it using the <CODE>CecControl</CODE> class.</li>
2711          </ul>
2712        </ul>
2713      </description></P>
2714<HR>
2715<H3><A name="note39-13">Note 39-13: (CEC) Changed the name of the Chance Encounter Communication library [SDK]</A></H3>
2716<P><description>Renamed the Chance Encounter Communication library's namespace, classes, files, and so on from &quot;<CODE>cecd</CODE>&quot; to &quot;<CODE>cec</CODE>&quot;.<br> Class names no longer begin with &quot;<CODE>Cec</CODE>&quot;.<br>
2717        <ul>
2718          <li>Changed <CODE>&lt;nn/cecd.h&gt;</CODE> to <CODE>&lt;nn/cec.h&gt;</CODE></li>
2719          <li>Changed <CODE>libnn_cecd</CODE> to <CODE>libnn_cec</CODE></li>
2720          <li>Changed <CODE>nn::cecd::CecdXXX()</CODE> to <CODE>nn::cec::XXX()</CODE></li>
2721          <li>Renamed the <CODE>CecMessageBox</CODE> class to <CODE>MessageBox</CODE></li>
2722        </ul>
2723      </description></P>
2724<HR>
2725<H3><A name="note39-14">Note 39-14: CFG) Changed the API for getting user information [SDK]</A></H3>
2726<P><description>Made the following changes to the API for getting user information.
2727        <ul>
2728          <li>Added constants used to parse simple address information IDs.</li>
2729          <li>Removed functions for getting the area code (it is now obtained from the simple address information ID).</li>
2730          <li>Added Taiwan to the region list.</li>
2731        </ul>
2732      </description></P>
2733<HR>
2734<H3><A name="note39-15">Note 39-15: (DLP) Added CTR Download Play [SDK | System Updater]</A></H3>
2735<P><description>Unlike on a Nintendo DS, CTR Download Play saves downloaded child programs in NAND memory.<br> However, when a new child program is downloaded it overwrites the old one.<br> There is no support for this library with CTR-SDK 0.11.<br>
2736          <ul>
2737            <li>Added elements</li>
2738            <ul>
2739              <li>Server API</li>
2740              <ul>
2741                <li>Loads and distributes a child program from ROM. Child programs are temporarily being distributed from SD Cards.</li>
2742              </ul>
2743              <li>Simulated client API</li>
2744              <ul>
2745                <li>Connects to a server without downloading.</li>
2746              </ul>
2747              <li><CODE>DlpClient</CODE></li>
2748              <ul>
2749                <li>A client application used for development. It downloads and boots a child program.</li>
2750              </ul>
2751              <li>Sample Demos</li>
2752              <ul>
2753                <li><CODE>SimpleServer</CODE>: Sample demo for a server</li>
2754                <li><CODE>FakeChild</CODE>: Sample demo for a simulated client</li>
2755                <li><CODE>Child</CODE>: Sample demo for a child program</li>
2756              </ul>
2757            </ul>
2758            <li>Usage Restrictions</li>
2759            <ul>
2760              <li>Prepare the server location for storing the child program on an SD Card. The child program will be included in the server ROM in the future.</li>
2761              <li>The rating and ULCD flags are not supported in the child meta-information broadcast by the server. Invalid values are always distributed.</li>
2762              <li>Parameters for re-connecting to the network after the child program boots are tentatively being written to an SD Card.</li>
2763              <li>Behavior has only been verified with up to three systems, including the server.</li>
2764            </ul>
2765            <li>Currently Known Bugs</li>
2766            <ul>
2767              <li>The child program cannot boot if <CODE>DlpChild</CODE> was specified as the <CODE>TitleInfo</CODE>/<CODE>Category</CODE> entry in the RSF file. Specify <CODE>Application</CODE>.</li>
2768              <li>After the client has been re-initialized, it halts if the <CODE>StartScan</CODE> function is called to start scanning.</li>
2769            </ul>
2770          </ul>
2771      </description></P>
2772<HR>
2773<H3><A name="note39-16">Note 39-16: (DSP) Revised header files [SDK]</A></H3>
2774<P><description>Revised all constants and macros defined by <CODE>#define</CODE> statements so that they start with <CODE>NN_DSP_</CODE>.<br></description></P>
2775<HR>
2776<H3><A name="note39-17">Note 39-17: (FND) Revised build conditions for the <CODE>nn::fnd::HeapBase::DebugFillMemory</CODE> function [SDK]</A></H3>
2777<P><description>Fixed a bug that caused actual processing for the <CODE>nn::fnd::HeapBase::DebugFillMemory</CODE> function to be run even in Release builds.<br></description></P>
2778<HR>
2779<H3><A name="note39-18">Note 39-18: (FS) Fixed a bug that prevented CTR save data from being read [SDK]</A></H3>
2780<P><description>Fixed a bug that under specific conditions prevented access to save data at paths beginning with &quot;data:&quot; on CTR Cards.<br></description></P>
2781<HR>
2782<H3><A name="note39-19">Note 39-19: (FS) Added functions for accessing save data [SDK]</A></H3>
2783<P><description>Save data regions must now be explicitly formatted and mounted when save data archives are used.<br> The <CODE>nn::fs::FormatSaveData</CODE> and <CODE>nn::fs::MountSaveData</CODE> functions were added to format and mount save data, respectively.<br> The <CODE>nn::fs::CommitSaveData</CODE> function was also added for the save data commit feature that will be added in the future.<br></description></P>
2784<HR>
2785<H3><A name="note39-20">Note 39-20: (FS) Revised directory reads [SDK]</A></H3>
2786<P><description>Stopped volume labels from being listed when directories are read.<br> Volume labels had been listed until now.<br></description></P>
2787<HR>
2788<H3><A name="note39-21">Note 39-21: (FS) Fixed a bug that caused seek operations to the end of a file to fail [SDK]</A></H3>
2789<P><description>Fixed a bug that prevented seek operations to the end of a file in functions such as <CODE>Seek</CODE> and <CODE>SetPosition</CODE> for <CODE>nn::fs::FileStream</CODE> classes.<br></description></P>
2790<HR>
2791<H3><A name="note39-22">Note 39-22: (FS) Added functions for accessing extended save data [SDK]</A></H3>
2792<P><description>Added functions for accessing expanded save data: <CODE>nn::fs::CreateAndMountExtSaveData</CODE> creates it and <CODE>nn::fs::MountExtSaveData</CODE> mounts it.<br> Also added the <CODE>nn::fs::ReadExtSaveDataIcon</CODE> function for accessing the icon data in expanded save data.<br></description></P>
2793<HR>
2794<H3><A name="note39-23">Note 39-23: (GX) Updated the DMPGL documentation [SDK]</A></H3>
2795<P><description>The following are the main changes to each document.<br>
2796        <ul>
2797          <li><CODE>DMPGL20_system_API_specification.pdf</CODE></li>
2798          <ul>
2799            <li>Added tables with the registers corresponding to uniforms for the reserved geometry shaders.</li>
2800            <li>Added information on address restrictions for cube map textures.</li>
2801          </ul>
2802          <li>DMPGL20_specification.pdf</li>
2803          <ul>
2804            <li>Added section 5.1.14 Texture Coordinate Precision under section 5.1 Texture Units in Chapter 5 Rasterization.</li>
2805          </ul>
2806          <li><CODE>DMPGL20_programing_guide.pdf</CODE></li>
2807          <ul>
2808            <li>Added precautions for a texture filter mode of <CODE>GL_NEAREST</CODE>.</li>
2809            <li>Added text related to the vertex buffer in Chapter 19 Performance-Enhancement Techniques.</li>
2810          </ul>
2811        </ul>
2812      </description></P>
2813<HR>
2814<H3><A name="note39-24">Note 39-24: (GX) Fixed a bug in the PICA macro header [SDK]</A></H3>
2815<P><description>Revised the macro headers as follows.<br>
2816        <ul>
2817          <li><CODE>gx_MacroShader.h</CODE></li>
2818          <ul>
2819            <li>Fixed an error in a bitwise AND for <CODE>index</CODE> in <CODE>PICA_CMD_DATA_GS_FLOAT_ADDR(mode, index)</CODE>.</li>
2820            <li>Revised <CODE>PICA_CMD_DATA_VS_FLOAT_ADDR(mode, index)</CODE> to take a bitwise AND for <CODE>index</CODE> like <CODE>PICA_CMD_DATA_GS_FLOAT_ADDR</CODE>.</li>
2821          </ul>
2822          <li><CODE>gx_MacroTexture.h</CODE></li>
2823          <ul>
2824            <li>Fixed errors in the argument names used by the internal implementation of <CODE>PICA_CMD_DATA_TEXTURE_LOD_LEVEL(lodBias, maxLodLevel, minLodLevel)</CODE>.</li>
2825            <li>Renamed <CODE>PICA_DATA_TEXTURE_FORMAT_HILO8_DMP_UNSIGNED_BYTE_DMP</CODE> to <CODE>PICA_DATA_TEXTURE_FORMAT_HILO8_DMP_UNSIGNED_BYTE</CODE> to match the specifications (the old definition was moved to <CODE>gx_MacroOld.h</CODE>).</li>
2826          </ul>
2827        </ul>
2828      </description></P>
2829<HR>
2830<H3><A name="note39-25">Note 39-25: (GX) Revised the description of <CODE>nn::gx::CTR::MemAccessPrioMode</CODE> [SDK]</A></H3>
2831<P><description>Fixed a mistake in the description of the <CODE>nn::gx::CTR::MemAccessPrioMode</CODE> definition.<br></description></P>
2832<HR>
2833<H3><A name="note39-26">Note 39-26: (GX) Added information on the specifications for the product of the emission and global ambient colors [SDK]</A></H3>
2834<P><description>Added information on the specifications of the primary color equation for fragment lighting. When light source 0 is disabled (<CODE>dmp_FragmentLightSource[0].enabled</CODE> is <CODE>GL_FALSE</CODE>), it disables the sum that is multiplied with the emission and global ambient color.<br></description></P>
2835<HR>
2836<H3><A name="note39-27">Note 39-27: (GX) Fixed a subdivision bug in <CODE>DMP_subdivision3.obj</CODE> [SDK]</A></H3>
2837<P><description>Fixed a bug that prevented attributes output to the <CODE>o3</CODE> register of <CODE>DMP_subdivision3.obj</CODE> from being interpolated properly.<br></description></P>
2838<HR>
2839<H3><A name="note39-28">Note 39-28: (GX) Fixed a bug in the silhouette triangle shader [SDK]</A></H3>
2840<P><description>Fixed a bug that created invalid silhouettes when two vertices in a single TWN primitive overlapped.<br></description></P>
2841<HR>
2842<H3><A name="note39-29">Note 39-29: (GX) Fixed a bug that occurred when deleting texture collections [SDK]</A></H3>
2843<P><description>Fixed a bug that caused the currently bound texture collection to be deleted immediately and 0 to be bound as the texture collection, rather than waiting for another texture collection to be bound.<br></description></P>
2844<HR>
2845<H3><A name="note39-30">Note 39-30: (GX) Added a feature to get valid debugging information related to command list execution [SDK]</A></H3>
2846<P><description>Increased the number of values that can be passed to the <SPAN class="argument">pname</SPAN> argument of the <CODE>nngxGetCmdlistParameteri</CODE> function for the current command list, allowing you to get a variety of information.<br> <B>Note:</B> See the documentation for further details.<br></description></P>
2847<HR>
2848<H3><A name="note39-31">Note 39-31: (GX) Added a function to generate commands that transfer data while converting the block format [SDK]</A></H3>
2849<P><description>Added the <CODE>nngxTransferLinearImage</CODE> function. This is the opposite of the <CODE>nngxTransferRenderImage</CODE> function: It adds commands that convert image data into block format and transfers it to the specified render buffer or texture.<br></description></P>
2850<HR>
2851<H3><A name="note39-32">Note 39-32: (GX) Fixed a bug that prevented scissoring-related commands from being generated when a program object had not been set [SDK]</A></H3>
2852<P><description>Fixed a bug that occurred during validation after the current program object had been unset by a function call such as <CODE>glUseProgram(0)</CODE>, preventing scissoring-related commands with no relationship to the original program object (<CODE>NN_GX_STATE_SCISSOR</CODE>) from being generated.<br></description></P>
2853<HR>
2854<H3><A name="note39-33">Note 39-33: (GX) Removed unnecessary register settings for the line shader [SDK]</A></H3>
2855<P><description>Fixed the line shader to no longer use the <CODE>b0</CODE> register, which originally should have been unnecessary.<br><br> Note that this revision has changed the values required when you directly generate commands to configure the reserved geometry shader.<br> Specifically, the value written to <CODE>0x280[15:0]</CODE> has changed from <CODE>0x0001</CODE> to <CODE>0x0000</CODE>.<br></description></P>
2856<HR>
2857<H3><A name="note39-34">Note 39-34: (GX) Added a feature that can get the render buffer address [SDK]</A></H3>
2858<P><description>Made it possible to get the address of the bound render buffer by specifying <CODE>GL_RENDERBUFFER_DATA_ADDR_DMP</CODE> to the <SPAN class="argument">pname</SPAN> argument of <CODE>glGetRenderbufferParameteriv</CODE>.<br></description></P>
2859<HR>
2860<H3><A name="note39-35">Note 39-35: (GX) Added information on input restrictions for lookup tables [SDK]</A></H3>
2861<P><description>Added information on the following hardware restriction that had been omitted from the documentation: <CODE>GL_LIGHT_ENV_SP_DMP</CODE> and <CODE>GL_LIGHT_ENV_CP_DMP</CODE> cannot be specified for <CODE>dmp_LightEnv.lutInput{FR,RR,RG,RB}</CODE>.<br></description></P>
2862<HR>
2863<H3><A name="note39-36">Note 39-36: (GX) Added a function that disables updates for a specified state [SDK]</A></H3>
2864<P><description>Added the <CODE>nngxInvalidateState</CODE> function, which can disable the update flag for the specified state with an argument.<br></description></P>
2865<HR>
2866<H3><A name="note39-37">Note 39-37: (HID) Fixed a bug in <CODE>STICK_CLAMP_MODE_CROSS</CODE> mode [SDK | System Updater]</A></H3>
2867<P><description>In <CODE>STICK_CLAMP_MODE_CROSS</CODE> mode alone, the latter half of values that should have been continuous from 0 to 103 jumped instead (for example, from 80 to 103).<br> This problem has been corrected.<br></description></P>
2868<HR>
2869<H3><A name="note39-38">Note 39-38: (HID) Reviewed specifications for the <CODE>SetStickClamp</CODE> and <CODE>GetStickClamp</CODE> functions [SDK | System Updater]</A></H3>
2870<P><description>Reviewed the maximum and minimum clamp values that can be specified with the <CODE>SetStickClamp</CODE> function.<br>
2871         <ul>
2872           <li><CODE>const s16 LIMIT_OF_STICK_CLAMP_MAX       =  150 &lt;- 153</CODE> in SDK 0.10.2</li>
2873           <li><CODE>const s16 MIN_OF_STICK_CLAMP_MODE_CIRCLE =   50 &lt;-  50</CODE> in SDK 0.10.2 (unchanged)</li>
2874           <li><CODE>const s16 MIN_OF_STICK_CLAMP_MODE_CROSS  =   38 &lt;-  46</CODE> in SDK 0.10.2</li>
2875         </ul>
2876         Any specified argument values that do not conform to these restrictions are corrected to the limit values.<br><br> The <CODE>SetStickClamp</CODE> and <CODE>GetStickClamp</CODE> functions used to use common parameters regardless of the clamp mode, but now these parameters are managed separately. This is because threshold values have different limits in each clamp mode. Note that the <CODE>SetStickClamp</CODE> and <CODE>GetStickClamp</CODE> functions handle threshold values for the current clamp mode.</description></P>
2877<HR>
2878<H3><A name="note39-39">Note 39-39: (HIO) Removed <CODE>libnn_hiolow</CODE> [SDK]</A></H3>
2879<P><description>Removed <CODE>libnn_hiolow.*.a</CODE> because the <CODE>libnn_hiolow</CODE> features are included in the <CODE>libnn_dev</CODE> library.<br></description></P>
2880<HR>
2881<H3><A name="note39-40">Note 39-40: (MATH) Revised the <CODE>SinIdx</CODE>, <CODE>CosIdx</CODE>, <CODE>SinCosIdx </CODE>functions [SDK]</A></H3>
2882<P><description>Sped up the <CODE>SinIdx</CODE>, <CODE>CosIdx</CODE>, and <CODE>SinCosIdx</CODE> functions.<br> Each function's output has remained the same.<br></description></P>
2883<HR>
2884<H3><A name="note39-41">Note 39-41: (MIC) Removed C wrappers [SDK]</A></H3>
2885<P><description>Removed C wrapper functions for the Microphone library because they cannot be supported.<br></description></P>
2886<HR>
2887<H3><A name="note39-42">Note 39-42: (MIC) Added a function to get the region within which it is prohibited to determine that there is microphone input [SDK]</A></H3>
2888<P><description>Added the <CODE>GetForbiddenArea</CODE> function, which gets the maximum and minimum values for the region within which it is prohibited to determine that there is input. These limits change with the microphone amp and gain.<br></description></P>
2889<HR>
2890<H3><A name="note39-43">Note 39-43: (MIC) Added constants that indicate the guaranteed region for microphone input values [SDK]</A></H3>
2891<P><description>Added constants for each sampling type's guaranteed microphone input range, which are different.<br>
2892        <ul>
2893          <li><CODE>TYPE_8BIT_GUARANTEED_INPUT_MIN</CODE></li>
2894          <li><CODE>TYPE_8BIT_GUARANTEED_INPUT_MAX</CODE></li>
2895          <li><CODE>TYPE_16BIT_GUARANTEED_INPUT_MIN</CODE></li>
2896          <li><CODE>TYPE_16BIT_GUARANTEED_INPUT_MAX</CODE></li>
2897          <li><CODE>TYPE_SIGNED_8BIT_GUARANTEED_INPUT_MIN</CODE></li>
2898          <li><CODE>TYPE_SIGNED_8BIT_GUARANTEED_INPUT_MAX</CODE></li>
2899          <li><CODE>TYPE_SIGNED_16BIT_GUARANTEED_INPUT_MIN</CODE></li>
2900          <li><CODE>TYPE_SIGNED_16BIT_GUARANTEED_INPUT_MAX</CODE></li>
2901        </ul>
2902      </description></P>
2903<HR>
2904<H3><A name="note39-44">Note 39-44: (OS) Changed mutex methods in the default implementation of <CODE>malloc</CODE> and <CODE>free</CODE> [SDK]</A></H3>
2905<P><description>Changed the heap mutex object used by the default implementation of <CODE>malloc</CODE> and <CODE>free</CODE> from <CODE>nn::os::Mutex</CODE> to <CODE>nn::os::CriticalSection</CODE>.<br></description></P>
2906<HR>
2907<H3><A name="note39-45">Note 39-45: (PTM) Added interfaces for the remaining battery life, the battery recharge state, and the existence of an AC plug [SDK]</A></H3>
2908<P><description>Added interfaces under <CODE>nn::ptm::CTR</CODE> for the remaining battery life, the battery recharge state, and the existence of an AC plug.<br></description></P>
2909<HR>
2910<H3><A name="note39-46">Note 39-46: (RDT) Fixed a bug that prevented proper state transitions in the Sender [SDK]</A></H3>
2911<P><description>Fixed a bug that occurred when a Sender sent an Open request to a Receiver and the Receiver's confirmation response packet got lost, preventing the Sender from properly transitioning between states afterward.<br></description></P>
2912<HR>
2913<H3><A name="note39-47">Note 39-47: (SND) Improved the effect of 3D surround sound mode [SDK]</A></H3>
2914<P><description>Changed the effect of selecting 3D surround sound mode so that it is appropriate for the test unit.<br></description></P>
2915<HR>
2916<H3><A name="note39-48">Note 39-48: (SND) Added a feature that specifies the loop position during DSP-ADPCM encoding [SDK]</A></H3>
2917<P><description>Added a feature to specify the loop position in the <CODE>EncodeAdpcmData</CODE> function.<br></description></P>
2918<HR>
2919<H3><A name="note39-49">Note 39-49: (SND) Added a function to decode DSP-ADPCM data [SDK]</A></H3>
2920<P><description>Added the <CODE>DecodeAdpcmData</CODE> function, which converts DSP-ADPCM data into 16-bit PCM data.<br></description></P>
2921<HR>
2922<H3><A name="note39-50">Note 39-50: (SND) Added DSP-ADPCM utility functions [SDK]</A></H3>
2923<P><description>Added the <CODE>ConvertAdpcmPos2Nib</CODE> and <CODE>ConvertAdpcmNib2Pos</CODE> functions, which convert between DSP-ADPCM nibble counts and sample counts.<br></description></P>
2924<HR>
2925<H3><A name="note39-51">Note 39-51: (SND) Changed specifications for the <CODE>nn::snd::SetSoundOutputMode</CODE> function [SDK]</A></H3>
2926<P><description>Changed the specifications for the relationship between the sound output mode specified by the system settings and the <SPAN class="argument">mode</SPAN> argument specified by the <CODE>nn::snd::SetSoundOutputMode</CODE> function.<br><br> The downmix coefficients for monaural output were also changed.<br> For details, see the Function Reference Manual and the <I>CTR Programming Manual</I>.<br></description></P>
2927<HR>
2928<H3><A name="note39-52">Note 39-52: (SND) Changed specifications for the <CODE>nn::snd::SetSurroundDepth</CODE> function [SDK]</A></H3>
2929<P><description>Changed the <CODE>nn::snd::SetSurroundDepth</CODE> function's argument from a <CODE>u16</CODE> value to an <CODE>f32</CODE> value.<br> The initial depth value is now <CODE>1.0f</CODE>.<br></description></P>
2930<HR>
2931<H3><A name="note39-53">Note 39-53: (SND) Changed specifications for the <CODE>nn::snd::Voice::AppendWaveBuffer</CODE> function [SDK]</A></H3>
2932<P><description>Changed constraints related to the buffer to register.<br> For details, see the Function Reference Manual and the <I>CTR Programming Manual</I>.<br></description></P>
2933<HR>
2934<H3><A name="note39-54">Note 39-54: (SND) Fixed a bug in the <CODE>nn::snd::Voice::SetVolume</CODE> function [SDK]</A></H3>
2935<P><description>Fixed a bug that turned small volume changes given to the <CODE>nn::snd::Voice::SetVolume</CODE> function into noise.<br></description></P>
2936<HR>
2937<H3><A name="note39-55">Note 39-55: (SND) Added the <CODE>nn::snd::Voice::SetupBcwav</CODE> function [SDK]</A></H3>
2938<P><description>Added the <CODE>nn::snd::Voice::SetupBcwav</CODE> function, which parses a BCWAV file and then configures the required <CODE>nn::snd::Voice</CODE> settings.<br></description></P>
2939<HR>
2940<H3><A name="note39-56">Note 39-56: (SND) Fixed a bug in the filter feature [SDK]</A></H3>
2941<P><description>Fixed a bug that caused noise when the <CODE>nn::snd::Voice</CODE> filter feature was used with the biquad filter type set.<br></description></P>
2942<HR>
2943<H3><A name="note39-57">Note 39-57: (SND) Revised header files [SDK]</A></H3>
2944<P><description>Revised all constants defined by <CODE>#define</CODE> statements so that they start with <CODE>NN_SND_</CODE>.<br></description></P>
2945<HR>
2946<H3><A name="note39-58">Note 39-58: (SND) Changed the volume configuration [SDK | System Updater]</A></H3>
2947<P><description>Reviewed the volume configuration for the overall system.<br> Specifically, the digital volume was increased and the analog volume was decreased.<br> The total volume has not changed.<br><br> Always run <CODE>ResetSettings</CODE> with the <CODE>Config</CODE> tool after applying the SystemUpdater for CTR-SDK 0.11.<br> Otherwise, the proper volume will not be used.<br></description></P>
2948<HR>
2949<H3><A name="note39-59">Note 39-59: (Socket) Changed specifications for the <CODE>Initialize</CODE> function [SDK]</A></H3>
2950<P><description>The <CODE>Initialize</CODE> function used to accept an allocator, but it has been changed to accept a memory region that is 4096-byte aligned.<br><br> You can still try to use the old function for the time being, but we plan to remove it because it uses memory inefficiently.<br></description></P>
2951<HR>
2952<H3><A name="note39-60">Note 39-60: (TOOL) Fixed an issue related to backlight settings with the Config tool [SDK]</A></H3>
2953<P><description>Fixed a bug that prevented the backlight brightness and active backlight setting (on or off) from being applied immediately after being changed by the <CODE>Config</CODE> tool.<br></description></P>
2954<HR>
2955<H3><A name="note39-61">Note 39-61: (TOOL) Changed the <CODE>DevMenu</CODE> [SDK]</A></H3>
2956<P><description>Made the following changes to the <CODE>DevMenu</CODE>.<br>
2957        <ul>
2958          <li>Revised error dialog boxes to display textual Result information.</li>
2959          <li>Fixed a bug that caused the screen to break up on application startup.</li>
2960          <li>Fixed a bug that caused the program to freeze when an SD Card was inserted and then immediately removed.</li>
2961          <li>Allowed the user to erase all displayed programs by pressing the L Button, R Button, and X Button simultaneously.</li>
2962          <li>Changed the list order to use ascending program IDs.</li>
2963        </ul>
2964      </description></P>
2965<HR>
2966<H3><A name="note39-62">Note 39-62: (TOOL) Changed <CODE>ctr_makerom32.exe</CODE> [SDK]</A></H3>
2967<P><description>Made the following changes to <CODE>ctr_makerom32</CODE>.<br> For details, see <CODE>$CTR_SDK/documents/tools/ctr_makerom.html</CODE>.<br>
2968        <ul>
2969          <li>Added an option to output a list of files stored in ROMFS as well as the output image title when <CODE>ctr_makerom</CODE> is run.</li>
2970          <li>Changed <CODE>ctr_makerom</CODE> to output a warning when it is run with <CODE>BasicInfo/InitialCode</CODE> specified in an RSF file. We plan to delete this item in the next release.</li>
2971          <li>Allowed the following items to be specified in an RSF file.</li>
2972          <ul>
2973            <li><CODE>BasicInfo/CompanyCode</CODE></li>
2974            <li><CODE>BasicInfo/ProductCode</CODE></li>
2975            <li><CODE>TitleInfo/UniqueId</CODE></li>
2976          </ul>
2977        </ul>
2978      </description></P>
2979<HR>
2980<H3><A name="note39-63">Note 39-63: (TPL) Added the Texture Packager Library [SDK]</A></H3>
2981<P><description>Added the TPL library, which loads textures from packages at runtime, and a tool that loads TGA image files and then converts them into the native PICA format (compressed or otherwise) to create a package file that combines multiple textures.<br></description></P>
2982<HR>
2983<H3><A name="note39-64">Note 39-64: (UDS) Overloaded the <CODE>==</CODE> and <CODE>!=</CODE> operators of the <CODE>NetworkDescriptor</CODE> class [SDK]</A></H3>
2984<P><description>Overloaded the <CODE>==</CODE> and <CODE>!=</CODE> operators of the <CODE>NetworkDescriptor</CODE> class so that objects of that class can be compared.<br></description></P>
2985<HR>
2986<H3><A name="note39-65">Note 39-65: (UDS) Changed the behavior of the <CODE>NetworkDescriptionReader::GetNetworkDescription</CODE> function [SDK]</A></H3>
2987<P><description>The <CODE>NetworkDescriptionReader::GetNetworkDescription</CODE> function has always returned an error when it gets an invalid UDS network beacon, but it succeeds even when the data is invalid. The function was changed so that data will not be obtained in such cases.<br></description></P>
2988<HR>
2989<H3><A name="note39-66">Note 39-66: (UDS) Changed the behavior of the <CODE>NetworkDescriptionReader::GetNodeInformationList</CODE> function [SDK]</A></H3>
2990<P><description>The <CODE>NetworkDescriptionReader::GetNodeInformationList</CODE> function has always returned an error when it gets an invalid UDS network beacon, but it succeeds even when the data is invalid. The function was changed so that data will not be obtained in such cases.<br></description></P>
2991<HR>
2992<H3><A name="note39-67">Note 39-67: (UDS) Changed the behavior of the <CODE>Receive</CODE> and <CODE>ReceiveFrom</CODE> functions [SDK]</A></H3>
2993<P><description>The absence of data that should have been received has been treated as an error when the <CODE>NO_WAIT</CODE> option is specified, but now the function itself succeeds and returns 0 as the received data size.<br></description></P>
2994<HR>
2995<H3><A name="note39-68">Note 39-68: (UDS) Reviewed <CODE>Result</CODE> values [SDK]</A></H3>
2996<P><description>Reviewed and adjusted the <CODE>Result</CODE> values returned by the functions in the UDS library.<br> For details, see the Function Reference Manual.<br> Definitions prior to CTR-SDK 0.10.2 can still be used, but we plan to remove them in the next release.<br></description></P>
2997<HR>
2998<H3><A name="note39-69">Note 39-69: (UDS) Changed the behavior of the <CODE>SendTo</CODE> function [SDK]</A></H3>
2999<P><description>Revised this function to return rather than ignore send errors caused by depleted resources within the wireless driver when the <CODE>NO_WAIT</CODE> option is specified.<br> Nothing has changed when the <CODE>NO_WAIT</CODE> option is not specified.<br></description></P>
3000<HR>
3001<H3><A name="note39-70">Note 39-70: (UDS) Prohibited the use of port 0 [SDK]</A></H3>
3002<P><description>Revised the <CODE>SendTo</CODE> and <CODE>Attach</CODE> functions to not allow the use of port 0, which is reserved by the system.<br></description></P>
3003<HR>
3004<H3><A name="note39-71">Note 39-71: (UDS) Added a link to the UDS library in the Function Reference Manual's index [SDK]</A></H3>
3005<P><description>Revised the Network section in the index of the Function Reference Manual because there was no link to the UDS library, making it hard to access.<br></description></P>
3006<HR>
3007<H3><A name="note39-72">Note 39-72: (Y2R) Removed C wrappers [SDK]</A></H3>
3008<P><description>Removed C wrapper functions for the Y2R library because they cannot be supported.<br></description></P>
3009<HR>
3010<H3><A name="note39-73">Note 39-73: (Y2R) Revised the <CODE>Initialize</CODE> and <CODE>Finalize</CODE> functions [SDK | System Updater]</A></H3>
3011<P><description>Revised the <CODE>Initialize</CODE> and <CODE>Finalize</CODE> functions to initialize and clean up settings.<br></description></P>
3012<HR>
3013<H3><A name="note39-74">Note 39-74: (Y2R) Revised the <CODE>SetStandardCoefficient</CODE> function [SDK | System Updater]</A></H3>
3014<P><description>Revised the conversion coefficients set by <CODE>COEFFICIENT_ITU_R_BT_601</CODE> and <CODE>COEFFICIENT_ITU_R_BT_709</CODE> in the <CODE>SetStandardCoefficient</CODE> function.<br> These revisions have caused the R and B output values to be 1 smaller and the G output values to be 1 larger than before with <CODE>COEFFICIENT_ITU_R_BT_601</CODE>.<br> The G value is sometimes 1 larger than before with <CODE>COEFFICIENT_ITU_R_BT_709</CODE>.<br><br> Both <CODE>COEFFICIENT_ITU_R_BT_601</CODE> and <CODE>COEFFICIENT_ITU_R_BT_709</CODE> assume that the YUV input values are between 0 and 255. Two new conversion coefficients, <CODE>COEFFICIENT_ITU_R_BT_601_SCALING</CODE> and <CODE>COEFFICIENT_ITU_R_BT_709_SCALING</CODE>, were added to support Y input values between 16 and 235 and UV input values between 16 and 240.<br></description></P>
3015<HR>
3016<H3><A name="note39-75">Note 39-75: (Y2R) Changed the <CODE>StartConversion</CODE> function's return value [SDK | System Updater]</A></H3>
3017<P><description>Changed the <CODE>StartConversion</CODE> function to return an <CODE>nn::Result</CODE> value because there was a need for applications to handle errors.<br></description></P>
3018<HR>
3019<H3><A name="note39-76">Note 39-76: (Y2R) Added functions for batch setting changes [SDK | System Updater]</A></H3>
3020<P><description>Added the <CODE>SetPackageParameter</CODE> function, which changes multiple Y2R settings all at once.<br></description></P>
3021<HR>
3022<H3><A name="KnownIssues_0_11_0_Release">Known Issues in the SDK 0.11.0 Release</A></H3>
3023<knownissues><description>
3024        <ul>
3025          <li>The <CODE>nn::fs::GetRomRequiredMemorySize</CODE> function has been confirmed to return incorrect values when it is called with <SPAN class="argument">useCache</SPAN> set to <CODE>true</CODE>. Because you may encounter memory corruption or other fatal errors if you use these values to mount a ROM, pass the sum of the following values to <CODE>nn::fs::MountRom</CODE>.</li>
3026              <ul>
3027                <li>The value obtained from <CODE>nn::fs::GetRomRequiredMemorySize</CODE> with <SPAN class="argument">useCache</SPAN> set to <CODE>false</CODE></li>
3028                <li>(the number of files in the ROM) * 64 bytes</li>
3029                <li>(the number of directories in the ROM) * 64 bytes</li>
3030                <li>1 KB</li>
3031              </ul>
3032          <li>The <CODE>nn::fs::FormatSaveData</CODE> function parses the <SPAN class="argument">maxFiles</SPAN> and <SPAN class="argument">maxDirectories</SPAN> arguments in reverse. To deal with this, pass the opposite values as arguments in CTR-SDK 0.11.</li>
3033          <li>The FS library may not always be thread-safe in its timing. Further details are still under investigation, but please inform us if you encounter any symptoms that you think may be caused by this.</li>
3034          <li>The <CODE>statusUpdateEvent</CODE> that is signaled when a system connects to a network as a Master or Client is not signaled when the same system connects as an Audience.</li>
3035          <li>You cannot use the following functions in the profanity library.
3036              <ul>
3037                <li>The <CODE>CheckProfanityWords</CODE> function that checks all regions</li>
3038                <li>The <CODE>CheckProfanityWords</CODE> function that checks each region separately, called using <CODE>CFG_REGION_TAIWAN</CODE></li>
3039              </ul>
3040              The <CODE>ngc_simple</CODE> demo therefore does not run properly.
3041          </li>
3042          <li>After you have connected to your first communication partner and finished communication, you cannot communicate with another partner. Both systems must be reset to communicate again. Communication data that has been sent and received is saved on the SD Card and is therefore not erased even after a reset.</li>
3043          <li>The Power Button originally needed to be pressed for two or more seconds to start the shutdown process, but because of a bug the system may shut down even if the Power Button is held down for a shorter period of time.</li>
3044        </ul>
3045      </description></knownissues><HR>
3046<H2 style="line-height: 0"><A name="sdk_0_11_0_Release%20SystemUpdater">CTR-SDK Version 0.11 Release SystemUpdater</A></H2>
3047<DIV style="text-align: right"><P style="line-height: 0">(2010/07/22)</P></DIV>
3048<HR>
3049<H3><A name="note38-01">Note 38-01: (AC) Revised the <CODE>Connect</CODE> function [System Updater]</A></H3>
3050<P><description>Revised the <CODE>Connect</CODE> function as follows.<br>
3051          <ul>
3052            <li>Fixed a bug that caused the kernel to abort when a Nintendo Zone was discovered.</li>
3053            <li>Fixed a bug that kept the system connected to an access point when it failed an Internet connection test.</li>
3054          </ul>
3055      </description></P>
3056<HR>
3057<H3><A name="note38-02">Note 38-02: (AC) Added the <CODE>GetLinkLevel</CODE> function [System Updater]</A></H3>
3058<P><description>Added a function to get the wireless signal strength for the access point that is currently connected.<br></description></P>
3059<HR>
3060<H3><A name="note38-03">Note 38-03: (CAMERA) Revised the <CODE>Finalize</CODE> function [SDK | System Updater]</A></H3>
3061<P><description>Revised the <CODE>Finalize</CODE> function to turn off the camera LED if it is illuminated.<br></description></P>
3062<HR>
3063<H3><A name="note38-04">Note 38-04: (CAMERA) Added the <CODE>GetSuitableY2rStandardCoefficient</CODE> function [SDK | System Updater]</A></H3>
3064<P><description>Added the <CODE>GetSuitableY2rStandardCoefficient</CODE> function, which gets conversion coefficients suitable for converting YUV data output by the cameras (on the CTR system running the program) into the RGB format using the Y2R library.<br></description></P>
3065<HR>
3066<H3><A name="note38-05">Note 38-05: (CAMERA) Revised the <CODE>Initialize</CODE> and <CODE>Finalize</CODE> functions [SDK | System Updater]</A></H3>
3067<P><description>Revised the <CODE>Initialize</CODE> and <CODE>Finalize</CODE> functions to initialize and clean up settings.<br></description></P>
3068<HR>
3069<H3><A name="note38-06">Note 38-06: (CAMERA) Removed the <CODE>SynchronizeWhiteBalance</CODE> function [SDK | System Updater]</A></H3>
3070<P><description>Removed the <CODE>SynchronizeWhiteBalance</CODE> function because it had a bug that proved difficult to fix.<br> We are considering an alternate method of synchronizing the brightness and contrast between the left and right cameras to adjust image brightness and coloring.<br></description></P>
3071<HR>
3072<H3><A name="note38-07">Note 38-07: (CAMERA) Revised the timing at which the camera LED is illuminated [System Updater]</A></H3>
3073<P><description>The LED was revised to illuminate only when an outer camera, rather than any camera, starts up.<br></description></P>
3074<HR>
3075<H3><A name="note38-08">Note 38-08: (CAMERA) Changed the camera configuration function's return value [SDK | System Updater]</A></H3>
3076<P><description>Changed the following camera setting functions to return an <CODE>nn::Result</CODE> value because there was a need for applications to handle errors.<br>
3077        <ul>
3078          <li><CODE>Initialize</CODE></li>
3079          <li><CODE>Activate</CODE></li>
3080          <li><CODE>SwitchContext</CODE></li>
3081          <li><CODE>SetExposure</CODE></li>
3082          <li><CODE>SetWhiteBalance</CODE></li>
3083          <li><CODE>SetSharpness</CODE></li>
3084          <li><CODE>SetAutoExposure</CODE></li>
3085          <li><CODE>IsAutoExposure</CODE></li>
3086          <li><CODE>SetAutoWhiteBalance</CODE></li>
3087          <li><CODE>IsAutoWhiteBalance</CODE></li>
3088          <li><CODE>FlipImage</CODE></li>
3089          <li><CODE>SetDetailSize</CODE></li>
3090          <li><CODE>SetSize</CODE></li>
3091          <li><CODE>SetFrameRate</CODE></li>
3092          <li><CODE>SetPhotoMode</CODE></li>
3093          <li><CODE>SetEffect</CODE></li>
3094          <li><CODE>SetContrast</CODE></li>
3095          <li><CODE>SetLensCorrection</CODE></li>
3096          <li><CODE>SetOutputFormat</CODE></li>
3097          <li><CODE>SetAutoExposureWindow</CODE></li>
3098          <li><CODE>SetNoiseFilter</CODE></li>
3099          <li>SynchronizeVsyncTiming</li>
3100          <li><CODE>PlayShutterSound</CODE></li>
3101        </ul>
3102      </description></P>
3103<HR>
3104<H3><A name="note38-09">Note 38-09: (CAMERA) Added and updated shutter sounds [SDK | System Updater]</A></H3>
3105<P><description>Removed <CODE>SHUTTER_SOUND_TYPE_CONTINUOUS</CODE>, a <CODE>ShutterSoundType</CODE> that indicates continuous shutter sounds, and added <CODE>SHUTTER_SOUND_TYPE_MOVIE</CODE> and <CODE>SHUTTER_SOUND_TYPE_MOVIE_END</CODE>, which indicate the start and end of video filming, respectively.<br> Data has also been updated for the normal shutter sound.<br></description></P>
3106<HR>
3107<H3><A name="note38-10">Note 38-10: (CAMERA) Removed a feature that notifies a recovery event [SDK | System Updater]</A></H3>
3108<P><description>Removed the <CODE>GetRebootEvent</CODE> function, which gets a notification event when a malfunction causes a recovery, and the <CODE>IsRebootSuccessful</CODE> function, which determines whether the recovery succeeded or failed.<br> From now on, a notification is sent for events with the <CODE>GetBufferErrorInterruptEvent</CODE> function regardless of whether recovery succeeded or failed.<br> If recovery fails, an error is returned afterwards by a call to a camera setting function that returns a <CODE>Result</CODE> value.<br> If a camera setting function is called during a recovery, it blocks internally until recovery has completed (successfully or not).<br></description></P>
3109<HR>
3110<H3><A name="note38-11">Note 38-11: (CAMERA) Removed functions that automatically receive data [SDK | System Updater]</A></H3>
3111<P><description>Removed the following functions, which automatically received image data from the camera at every frame.<br>
3112        <ul>
3113          <li><CODE>SetReceivingAuto</CODE></li>
3114          <li><CODE>SetReceivingRgbAuto</CODE></li>
3115          <li><CODE>StopReceivingAuto</CODE></li>
3116          <li><CODE>StopReceivingRgbAuto</CODE></li>
3117        </ul>
3118      </description></P>
3119<HR>
3120<H3><A name="note38-12">Note 38-12: (CAMERA) Added functions for batch setting changes [SDK | System Updater]</A></H3>
3121<P><description>Added the following functions, which change multiple camera settings all at once.<br>
3122        <ul>
3123          <li><CODE>SetPackageParameterWithoutContext</CODE></li>
3124          <li><CODE>SetPackageParameterWithContext</CODE></li>
3125        </ul>
3126      </description></P>
3127<HR>
3128<H3><A name="note38-13">Note 38-13: (DLP) Added CTR Download Play [SDK | System Updater]</A></H3>
3129<P><description>Unlike on a Nintendo DS, CTR Download Play saves downloaded child programs in NAND memory.<br> However, when a new child program is downloaded it overwrites the old one.<br> There is no support for this library with CTR-SDK 0.11.<br>
3130          <ul>
3131            <li>Added elements</li>
3132            <ul>
3133              <li>Server API</li>
3134              <ul>
3135                <li>Loads and distributes a child program from ROM. Child programs are temporarily being distributed from SD Cards.</li>
3136              </ul>
3137              <li>Simulated client API</li>
3138              <ul>
3139                <li>Connects to a server without downloading.</li>
3140              </ul>
3141              <li><CODE>DlpClient</CODE></li>
3142              <ul>
3143                <li>A client application used for development. It downloads and boots a child program.</li>
3144              </ul>
3145              <li>Sample Demos</li>
3146              <ul>
3147                <li><CODE>SimpleServer</CODE>: Sample demo for a server</li>
3148                <li><CODE>FakeChild</CODE>: Sample demo for a simulated client</li>
3149                <li><CODE>Child</CODE>: Sample demo for a child program</li>
3150              </ul>
3151            </ul>
3152            <li>Usage Restrictions</li>
3153            <ul>
3154              <li>Prepare the server location for storing the child program on an SD Card. The child program will be included in the server ROM in the future.</li>
3155              <li>The rating and ULCD flags are not supported in the child meta-information broadcast by the server. Invalid values are always distributed.</li>
3156              <li>Parameters for re-connecting to the network after the child program boots are tentatively being written to an SD Card.</li>
3157              <li>Behavior has only been verified with up to three systems, including the server.</li>
3158            </ul>
3159            <li>Currently Known Bugs</li>
3160            <ul>
3161              <li>The child program cannot boot if <CODE>DlpChild</CODE> was specified as the <CODE>TitleInfo</CODE>/<CODE>Category</CODE> entry in the RSF file. Specify <CODE>Application</CODE>.</li>
3162              <li>After the client has been re-initialized, it halts if the <CODE>StartScan</CODE> function is called to start scanning.</li>
3163            </ul>
3164          </ul>
3165      </description></P>
3166<HR>
3167<H3><A name="note38-14">Note 38-14: (GX) Added support for the 3D LED [System Updater]</A></H3>
3168<P><description>Made the system's 3D LED (the green light) illuminate when <CODE>NN_GX_DISPLAYMODE_STEREO</CODE> is specified by the <CODE>nngxSetDisplayMode</CODE> function to enable stereoscopic display.<br></description></P>
3169<HR>
3170<H3><A name="note38-15">Note 38-15: (HID) Changed memory addresses assigned when the <CODE>Initialize</CODE> function is called [System Updater]</A></H3>
3171<P><description>Revised the input buffer address assigned when the <CODE>Initialize</CODE> function is called so that it does not overlap with addresses that can be used as an application heap.<br></description></P>
3172<HR>
3173<H3><A name="note38-16">Note 38-16: (HID) Fixed a bug in <CODE>STICK_CLAMP_MODE_CROSS</CODE> mode [SDK | System Updater]</A></H3>
3174<P><description>In <CODE>STICK_CLAMP_MODE_CROSS</CODE> mode alone, the latter half of values that should have been continuous from 0 to 103 jumped instead (for example, from 80 to 103).<br> This problem has been corrected.<br></description></P>
3175<HR>
3176<H3><A name="note38-17">Note 38-17: (HID) Reviewed specifications for the <CODE>SetStickClamp</CODE> and <CODE>GetStickClamp</CODE> functions [SDK | System Updater]</A></H3>
3177<P><description>Reviewed the maximum and minimum clamp values that can be specified with the <CODE>SetStickClamp</CODE> function.<br>
3178         <ul>
3179           <li><CODE>const s16 LIMIT_OF_STICK_CLAMP_MAX       =  150 &lt;- 153</CODE> in SDK 0.10.2</li>
3180           <li><CODE>const s16 MIN_OF_STICK_CLAMP_MODE_CIRCLE =   50 &lt;-  50</CODE> in SDK 0.10.2 (unchanged)</li>
3181           <li><CODE>const s16 MIN_OF_STICK_CLAMP_MODE_CROSS  =   38 &lt;-  46</CODE> in SDK 0.10.2</li>
3182         </ul>
3183         Any specified argument values that do not conform to these restrictions are corrected to the limit values.<br><br> The <CODE>SetStickClamp</CODE> and <CODE>GetStickClamp</CODE> functions used to use common parameters regardless of the clamp mode, but now these parameters are managed separately. This is because threshold values have different limits in each clamp mode. Note that the <CODE>SetStickClamp</CODE> and <CODE>GetStickClamp</CODE> functions handle threshold values for the current clamp mode.</description></P>
3184<HR>
3185<H3><A name="note38-18">Note 38-18: (HID) Changed accelerometer axis settings [System Updater]</A></H3>
3186<P><description>Changed accelerometer axis settings, taking compatibility with existing Nintendo hardware into account.<br> Note that these changes have replaced axes and reversed signs.<br>
3187        <ul>
3188          <li>Previous axis settings</li>
3189          <ul>
3190            <li>Positive x-axis: Right from the +Control Pad</li>
3191            <li>Positive y-axis: Down from the +Control Pad</li>
3192            <li>Positive z-axis: Into the Touch Screen</li>
3193          </ul>
3194          <li>Changed axis settings</li>
3195          <ul>
3196            <li>Positive x-axis: Left from the +Control Pad</li>
3197            <li>Positive y-axis: Into the Touch Screen</li>
3198            <li>Positive z-axis: Up from the +Control Pad</li>
3199          </ul>
3200        </ul>
3201      </description></P>
3202<HR>
3203<H3><A name="note38-19">Note 38-19: (HID) Fixed a bug that occurred when the Sleep Mode switch was set to &quot;sleep&quot; at startup [System Updater]</A></H3>
3204<P><description>Fixed a bug that prevented input from keys other than the L Button and R Button when the Sleep Mode switch was set to &quot;sleep&quot; at startup.<br></description></P>
3205<HR>
3206<H3><A name="note38-20">Note 38-20: (HTTP) Revised the <CODE>AddPostData*</CODE> functions [System Updater]</A></H3>
3207<P><description>Fixed a bug that prevented more than 998 bytes of data from being set with the <CODE>AddPostData*</CODE> functions.<br></description></P>
3208<HR>
3209<H3><A name="note38-21">Note 38-21: (HTTP) Fixed a misspelling in the <CODE>NofityFinishSendPostData</CODE> function [System Updater]</A></H3>
3210<P><description>Fixed the spelling of the <CODE>NofityFinishSendPostData</CODE> function by changing &quot;Nofity&quot; to &quot;Notify.&quot;<br></description></P>
3211<HR>
3212<H3><A name="note38-22">Note 38-22: (HTTP) Fixed a bug in the <CODE>SendPostDataAscii</CODE> function [System Updater]</A></H3>
3213<P><description>Fixed a bug that caused a terminating null character to be sent as POST data along with the string.<br></description></P>
3214<HR>
3215<H3><A name="note38-23">Note 38-23: (HTTP/SSL) Added support for a Class 2 CA certificate built into the system [System Updater]</A></H3>
3216<P><description>Added support for a Nintendo Class 2 CA certificate built into the system.<br></description></P>
3217<HR>
3218<H3><A name="note38-24">Note 38-24: (MIC) Revised the <CODE>Finalize</CODE> function [System Updater]</A></H3>
3219<P><description>Revised the <CODE>Finalize</CODE> function to stop any sampling in progress when it is called, turn off the microphone, and then set the microphone's amplifier gain equal to its initial value of 43.<br></description></P>
3220<HR>
3221<H3><A name="note38-25">Note 38-25: (MIC) Changed the initial value for the microphone's amplifier gain in the <CODE>SetAmpGain</CODE> and <CODE>GetAmpGain</CODE> functions [System Updater]</A></H3>
3222<P><description>Changed the initial value of the microphone's amplifier gain from 50 to 43.<br></description></P>
3223<HR>
3224<H3><A name="note38-26">Note 38-26: (MIC) Revised the microphone's silent period [System Updater]</A></H3>
3225<P><description>Revised the microphone to be silent when it is turned on or recovers from Sleep Mode because for the first second microphone input is unstable.<br></description></P>
3226<HR>
3227<H3><A name="note38-27">Note 38-27: (NWN) Changed the scanning interval for Chance Encounter zones [System Updater]</A></H3>
3228<P><description>Changed the interval between scans for Chance Encounter zones from 20 seconds to 10 seconds.<br></description></P>
3229<HR>
3230<H3><A name="note38-28">Note 38-28: (OS) Revised the debugger's VFP register value [System Updater]</A></H3>
3231<P><description>Fixed a bug that prevent the debugger's VFP register value from being updated properly.<br></description></P>
3232<HR>
3233<H3><A name="note38-29">Note 38-29: (OS) Added a feature to cancel the screen that is forced to be displayed when a program stops abnormally [System Updater]</A></H3>
3234<P><description>Added a feature that can cancel the display of a red upper and lower screen, which notifies the user that abnormal processing was detected on the system.<br> Press the L Button, R Button, START, and SELECT simultaneously to stop forcing the screen to be displayed.<br></description></P>
3235<HR>
3236<H3><A name="note38-30">Note 38-30: (OS) Fixed a bug that occurred when <CODE>Wait</CODE> was called on multiple objects [System Updater]</A></H3>
3237<P><description>Fixed a bug that prevented recovery from a call to <CODE>Wait</CODE> in <CODE>nn::os::WaitObject::WaitAll</CODE>.<br></description></P>
3238<HR>
3239<H3><A name="note38-31">Note 38-31: (OS) Revised the Power Button [System Updater]</A></H3>
3240<P><description>Starting with CTR-SDK 0.10, the power turned off four seconds after the Power Button was held down for two seconds. This has been changed in CTR-SDK 0.11 so that the power turns off when the Power Button is held down for six seconds.<br></description></P>
3241<HR>
3242<H3><A name="note38-32">Note 38-32: (SND) Fixed a bug that on rare occasions increased the volume [System Updater]</A></H3>
3243<P><description>Fixed a bug that on rare occasions increased the volume irrespective of the system volume.<br></description></P>
3244<HR>
3245<H3><A name="note38-33">Note 38-33: (SND) Fixed a bug that sometimes decreased the volume [System Updater]</A></H3>
3246<P><description>Fixed a firmware bug that on rare occasions decreased the volume.<br></description></P>
3247<HR>
3248<H3><A name="note38-34">Note 38-34: (SND) Changed the volume configuration [SDK | System Updater]</A></H3>
3249<P><description>Reviewed the volume configuration for the overall system.<br> Specifically, the digital volume was increased and the analog volume was decreased.<br> The total volume has not changed.<br><br> Always run <CODE>ResetSettings</CODE> with the <CODE>Config</CODE> tool after applying the SystemUpdater for CTR-SDK 0.11.<br> Otherwise, the proper volume will not be used.<br></description></P>
3250<HR>
3251<H3><A name="note38-35">Note 38-35: (SSL) Added an SSL function to get random numbers [System Updater]</A></H3>
3252<P><description>Added an SSL function to get pseudorandom numbers that use internal system information.<br></description></P>
3253<HR>
3254<H3><A name="note38-36">Note 38-36: (SSL) Added support for getting all the data in a server certificate chain [System Updater]</A></H3>
3255<P><description>Added support for getting all the data in a server certificate chain verified by an SSL handshake.<br></description></P>
3256<HR>
3257<H3><A name="note38-37">Note 38-37: (SSL) Added a function to collectively get the causes of a failed server certificate verification [System Updater]</A></H3>
3258<P><description>Added the <CODE>GetCertVerifyErrors</CODE> function, which collectively gets the causes of a failure to verify a server certificate.<br></description></P>
3259<HR>
3260<H3><A name="note38-38">Note 38-38: (SSL) Added support for non-blocking sockets [System Updater]</A></H3>
3261<P><description>Added support for SSL communication using non-blocking sockets.<br></description></P>
3262<HR>
3263<H3><A name="note38-39">Note 38-39: (Socket) Fixed a memory leak [System Updater]</A></H3>
3264<P><description>Fixed a memory leak that occurred when the system disconnected from an access point during socket communication.<br></description></P>
3265<HR>
3266<H3><A name="note38-40">Note 38-40: (Socket) Changed the maximum number of socket descriptors that can be created [System Updater]</A></H3>
3267<P><description>Changed the maximum number of socket descriptors that can be created by the application to 16.<br></description></P>
3268<HR>
3269<H3><A name="note38-41">Note 38-41: (TOOL) Added Config tool features [System Updater]</A></H3>
3270<P><description>Added Sound Output and System Mode to Other Settings in the Config tool.<br> For details, see the Function Reference Manual.<br></description></P>
3271<HR>
3272<H3><A name="note38-42">Note 38-42: (UDS) Fixed a bug that caused invalid signal strength values when a Client was running [System Updater]</A></H3>
3273<P><description>Fixed a bug that caused the detection of lower signal strength values than expected in Client systems.<br></description></P>
3274<HR>
3275<H3><A name="note38-43">Note 38-43: (UDS) Optimized the beacon data size [System Updater]</A></H3>
3276<P><description>Stopped adding unnecessary empty data to the data sent with a beacon.<br></description></P>
3277<HR>
3278<H3><A name="note38-44">Note 38-44: (UDS) Support for disabled wireless mode [System Updater]</A></H3>
3279<P><description>Modified the <CODE>nn::uds::Initialize</CODE> function to return an error if it is called while wireless functionality is disabled.<br> Likewise, if the Wi-Fi Button is pressed while the UDS library is in use, the system disconnects from the current network regardless of its wireless mode and then any function other than <CODE>Finalize</CODE> fails.<br></description></P>
3280<HR>
3281<H3><A name="note38-45">Note 38-45: (Y2R) Revised the <CODE>Initialize</CODE> and <CODE>Finalize</CODE> functions [SDK | System Updater]</A></H3>
3282<P><description>Revised the <CODE>Initialize</CODE> and <CODE>Finalize</CODE> functions to initialize and clean up settings.<br></description></P>
3283<HR>
3284<H3><A name="note38-46">Note 38-46: (Y2R) Revised the <CODE>SetStandardCoefficient</CODE> function [SDK | System Updater]</A></H3>
3285<P><description>Revised the conversion coefficients set by <CODE>COEFFICIENT_ITU_R_BT_601</CODE> and <CODE>COEFFICIENT_ITU_R_BT_709</CODE> in the <CODE>SetStandardCoefficient</CODE> function.<br> These revisions have caused the R and B output values to be 1 smaller and the G output values to be 1 larger than before with <CODE>COEFFICIENT_ITU_R_BT_601</CODE>.<br> The G value is sometimes 1 larger than before with <CODE>COEFFICIENT_ITU_R_BT_709</CODE>.<br><br> Both <CODE>COEFFICIENT_ITU_R_BT_601</CODE> and <CODE>COEFFICIENT_ITU_R_BT_709</CODE> assume that the YUV input values are between 0 and 255. Two new conversion coefficients, <CODE>COEFFICIENT_ITU_R_BT_601_SCALING</CODE> and <CODE>COEFFICIENT_ITU_R_BT_709_SCALING</CODE>, were added to support Y input values between 16 and 235 and UV input values between 16 and 240.<br></description></P>
3286<HR>
3287<H3><A name="note38-47">Note 38-47: (Y2R) Changed the <CODE>StartConversion</CODE> function's return value [SDK | System Updater]</A></H3>
3288<P><description>Changed the <CODE>StartConversion</CODE> function to return an <CODE>nn::Result</CODE> value because there was a need for applications to handle errors.<br></description></P>
3289<HR>
3290<H3><A name="note38-48">Note 38-48: (Y2R) Added functions for batch setting changes [SDK | System Updater]</A></H3>
3291<P><description>Added the <CODE>SetPackageParameter</CODE> function, which changes multiple Y2R settings all at once.<br></description></P>
3292<HR>
3293<H3><A name="KnownIssues_0_11_0_Release%20SystemUpdater">Known Issues with System Updater in the SDK 0.11.0 Release</A></H3>
3294<knownissues><description>
3295        <ul>
3296          <li>The debugger software cannot import CIA files.</li>
3297        </ul>
3298      </description></knownissues><HR>
3299<H2 style="line-height: 0"><A name="sdk_0_11_0_Release%20SampleDemos">CTR-SDK Version 0.11.0 Release SampleDemos</A></H2>
3300<DIV style="text-align: right"><P style="line-height: 0">(2010/07/22)</P></DIV>
3301<HR>
3302<H3><A name="note37-01">Note 37-01: (PTM) Added battery-related sample demos [Sample Demos]</A></H3>
3303<P><description>Added sample demos that get the remaining battery life and recharge state.<br></description></P>
3304<HR>
3305<H3><A name="note37-02">Note 37-02: (SND) Revised <CODE>BcwavPlayer</CODE> [Sample Demos]</A></H3>
3306<P><description>Revised the <CODE>BcwavPlayer</CODE> sample demo to use <CODE>nn::snd::Voice::SetupBcwav</CODE>.<br></description></P>
3307<HR>
3308<H3><A name="note37-03">Note 37-03: (SND) Added specifications for the sound output mode [Sample Demos]</A></H3>
3309<P><description>Added code that explicitly specifies stereo output in every <CODE>snd</CODE> sample demo except <CODE>3DSurround</CODE>.<br></description></P>
3310<HR>
3311<H3><A name="note37-04">Note 37-04: (SND) Changed <CODE>AdpcmEncoder</CODE> sample demo [Sample Demos]</A></H3>
3312<P><description>Renamed the <CODE>AdpcmEncoder</CODE> sample demo to <CODE>AdpcmEncDec</CODE> and added sample code for the decoder.<br></description></P>
3313<HR>
3314<H3><A name="note37-05">Note 37-05: (TPL) Added <CODE>TPL</CODE> sample demos [Sample Demos]</A></H3>
3315<P><description>Added the following sample demos for the TPL library: <CODE>IconSample</CODE>, <CODE>ReadTexturePackage</CODE>, <CODE>ReadTexturePackage2</CODE>, and <CODE>ReadTexturePackage3</CODE>.<br></description></P>
3316<HR>
3317<H3><A name="note37-06">Note 37-06: (UDS) Revised demos following changes to the <CODE>Result</CODE> values [Sample Demos]</A></H3>
3318<P><description>Made the demos adhere to the changed <CODE>Result</CODE> values for the UDS library.<br> For details on how to handle the <CODE>Result</CODE> values, see the <CODE>simple</CODE> demo.<br></description></P>
3319<HR>
3320<H3><A name="note37-07">Note 37-07: (UDS) Revised <CODE>com_demo1</CODE> [Sample Demos]</A></H3>
3321<P><description>Fixed a bug that caused program execution to freeze when a client called a master-only function or a master called a client-only function.<br></description></P>
3322<HR>
3323<H3><A name="note37-08">Note 37-08: (Miscellaneous) Replaced <CODE>NN_OS_DEVICE_MEMORY_SIZE</CODE> with the <CODE>nn::os::GetDeviceMemorySize</CODE> function [Sample Demos]</A></H3>
3324<P><description>Replaced the <CODE>NN_OS_DEVICE_MEMORY_SIZE</CODE> macro used in the sample demos with the <CODE>nn::os::GetDeviceMemorySize</CODE> function.<br></description></P>
3325<HR>
3326<H3><A name="KnownIssues_0_11_0_Release%20SampleDemos">Known Issues with SDK 0.11.0 Release Sample Demos</A></H3>
3327<P>  None.</P>
3328<HR>
3329<H2 style="line-height: 0"><A name="sdk_0_10_2_Release%20SystemUpdater">CTR-SDK Version 0.10.2 Release SystemUpdater</A></H2>
3330<DIV style="text-align: right"><P style="line-height: 0">(2010/07/06)</P></DIV>
3331<HR>
3332<H3><A name="note36-01">Note 36-01: (CAMERA) Fixed processing that detects camera problems [System Updater]</A></H3>
3333<P><description>Fixed a bug that occurred when the single camera module was in use: even if the camera was running normally, a problem would be detected and the camera restarted.<br></description></P>
3334<HR>
3335<H3><A name="KnownIssues_0_10_2_Release%20SystemUpdater">Known Issues with System Updater in the SDK 0.10.2 Release</A></H3>
3336<knownissues><description>
3337        <ul>
3338          <li>The volume sometimes increases momentarily regardless of the position of the volume control. </li>
3339          <li>The Chance Encounter communications data format was changed from CTR-SDK 0.11. If earlier data remains, it must be deleted.</li>
3340        </ul>
3341      </description></knownissues><HR>
3342<H2 style="line-height: 0"><A name="sdk_0_10_1_Release">CTR-SDK Version 0.10.1 Release</A></H2>
3343<DIV style="text-align: right"><P style="line-height: 0">(2010/07/05)</P></DIV>
3344<HR>
3345<H3><A name="note35-01">Note 35-01: (CAMERA) Added a <CODE>nn::camera::FrameRate</CODE> setting [SDK | System Updater]</A></H3>
3346<P><description>Added <CODE>FRAME_RATE_10</CODE> to the <CODE>nn::camera::FrameRate</CODE> enumerated type.<br> You can specify <CODE>FRAME_RATE_10</CODE> to the <CODE>nn::camera::SetFrameRate</CODE> function to fix the framerate at 10 fps.<br></description></P>
3347<HR>
3348<H3><A name="note35-02">Note 35-02: (FS) Fixed a bug in the address conversion table for backup devices [SDK]</A></H3>
3349<P><description>Fixed a bug that could prevent the address conversion table from being updated normally as well as corrupt data when the total number of writes to a backup device (NorFlush within a card) reached a certain count.<br></description></P>
3350<HR>
3351<H3><A name="note35-03">Note 35-03: (GX) Addressed screen flickering that occurred when active backlight controls were enabled [SDK]</A></H3>
3352<P><description>Made adjustments to reduce screen flickering in images displayed by the application when active backlight controls are enabled.<br><br> To apply these revisions, you must launch the <CODE>Config</CODE> tool and run <B>Reset setting</B>.<br></description></P>
3353<HR>
3354<H3><A name="note35-04">Note 35-04: (GX) Fixed a bug that prevented the display buffer from being placed in VRAM-B [SDK]</A></H3>
3355<P><description>Fixed a bug that caused the library to trigger an assert statement when the display buffer was placed in VRAM-B.<br></description></P>
3356<HR>
3357<H3><A name="note35-05">Note 35-05: (OS) Changed memory-related functions [SDK | System Updater]</A></H3>
3358<P><description>Added the following memory-related functions.
3359        <ul>
3360          <li><CODE>SetDeviceMemorySize</CODE></li>
3361          <li><CODE>GetDeviceMemorySize</CODE></li>
3362          <li><CODE>GetHeapAddress</CODE></li>
3363          <li><CODE>SetHeapSize</CODE></li>
3364          <li><CODE>GetHeapSize</CODE></li>
3365        </ul>
3366        Some specifications for memory-related functions in the OS library have also changed, but these could not be applied to the Function Reference Manual. Details are planned to be added in the next release of the CTR-SDK.<br><br> This was changed in version 0.10 but was left out of the changelog.<br></description></P>
3367<HR>
3368<H3><A name="note35-06">Note 35-06: (SND) Revised the system volume [SDK]</A></H3>
3369<P><description>Reviewed the system volume.<br> It is now approximately 5.5 dB louder than it was in CTR-SDK 0.10.<br></description></P>
3370<HR>
3371<H3><A name="note35-07">Note 35-07: (SND) Fixed bugs in the waveform converter [SDK]</A></H3>
3372<P><description>Revised the waveform converter, <CODE>ctr_WaveConverter</CODE>, as follows.<br>
3373        <ul>
3374          <li>Fixed a bug that prevented sample output when the <CODE>--pcm16</CODE> and <CODE>--pcm8</CODE> options were specified.</li>
3375          <li>Fixed a bug that caused audio to break up and stop playing when WAV and AIFF files in the 8-bit PCM format were converted.</li>
3376        </ul>
3377      </description></P>
3378<HR>
3379<H3><A name="note35-08">Note 35-08: (TOOL) Revised <CODE>DevMenu</CODE> [SDK]</A></H3>
3380<P><description>Rather than halting at a yellow screen as it used to, the program now displays an error dialog box when there is an error in the SD Card file system.<br></description></P>
3381<HR>
3382<H3><A name="note35-09">Note 35-09: (TOOL) Added <CODE>StereoCameraCalibrator</CODE> [SDK]</A></H3>
3383<P><description>Added <CODE>StereoCameraCalibrator</CODE>, a tool that manually sets calibration data for the stereo cameras, as well as image files to use with the tool.<br><br> The tool itself was included in version 0.10 but was left out of the changelog.<br></description></P>
3384<HR>
3385<H3><A name="note35-10">Note 35-10: (TOOL) Added <CODE>ctr_makecia32.exe</CODE> [SDK]</A></H3>
3386<P><description>Prior to CTR-SDK 0.10, <CODE>ctr_makesimplecia32.exe</CODE> was used to generate CIA files. From now on, <CODE>ctr_makecia32.exe</CODE> will be used.<br> CIA files will therefore be encrypted.<br><br> <a href="changelog.html#note33-86">Note33-86</a> mistakenly stated that <CODE>ctr_makecia32.exe</CODE> was added: the tool was actually included in CTR-SDK 0.10.1.<br></description></P>
3387<HR>
3388<H3><A name="note35-11">Note 35-11: (TOOL) Fixed a bug in <CODE>ctr_makerom32.exe</CODE> [SDK]</A></H3>
3389<P><description>Fixed a bug that prevented 256 MB or larger CCI files from being generated in some environments.<br> The <CODE>UseAes</CODE> option, which was released as a temporary workaround, has been removed.<br></description></P>
3390<HR>
3391<H3><A name="KnownIssues_0_10_1_Release">Known Issues in the SDK 0.10.1 Release</A></H3>
3392<knownissues><description>
3393        <ul>
3394          <li>You cannot import CIA files generated by <CODE>ctr_makesimplecia32.exe</CODE> into <CODE>DevMenu</CODE>.</li>
3395        </ul>
3396      </description></knownissues><HR>
3397<H2 style="line-height: 0"><A name="sdk_0_10_1_Release%20SystemUpdater">CTR-SDK Version 0.10.1 Release SystemUpdater</A></H2>
3398<DIV style="text-align: right"><P style="line-height: 0">(2010/07/05)</P></DIV>
3399<HR>
3400<H3><A name="note34-01">Note 34-01: (CAMERA) Added a <CODE>nn::camera::FrameRate</CODE> setting [SDK | System Updater]</A></H3>
3401<P><description>Added <CODE>FRAME_RATE_10</CODE> to the <CODE>nn::camera::FrameRate</CODE> enumerated type.<br> You can specify <CODE>FRAME_RATE_10</CODE> to the <CODE>nn::camera::SetFrameRate</CODE> function to fix the framerate at 10 fps.<br></description></P>
3402<HR>
3403<H3><A name="note34-02">Note 34-02: (HID) Fixed the <CODE>nn::fs::Directory::Read</CODE> function to list the proper number of entries [System Updater]</A></H3>
3404<P><description>There was a bug in the <CODE>nn::fs::Directory::Read</CODE> function that caused it to list one less than the actual number of entries in a directory.<br> This problem was fixed.<br><br> This was changed in version 0.10 but was left out of the changelog.<br></description></P>
3405<HR>
3406<H3><A name="note34-03">Note 34-03: (OS) Changed memory-related functions [SDK | System Updater]</A></H3>
3407<P><description>Added the following memory-related functions.
3408        <ul>
3409          <li><CODE>SetDeviceMemorySize</CODE></li>
3410          <li><CODE>GetDeviceMemorySize</CODE></li>
3411          <li><CODE>GetHeapAddress</CODE></li>
3412          <li><CODE>SetHeapSize</CODE></li>
3413          <li><CODE>GetHeapSize</CODE></li>
3414        </ul>
3415        Some specifications for memory-related functions in the OS library have also changed, but these could not be applied to the Function Reference Manual. Details are planned to be added in the next release of the CTR-SDK.<br><br> This was changed in version 0.10 but was left out of the changelog.<br></description></P>
3416<HR>
3417<H3><A name="KnownIssues_0_10_1_Release%20SystemUpdater">Known Issues with System Updater in the SDK 0.10.1 Release</A></H3>
3418<knownissues><description>
3419        <ul>
3420          <li>The volume sometimes increases momentarily regardless of the position of the volume control. </li>
3421        </ul>
3422      </description></knownissues><HR>
3423<H2 style="line-height: 0"><A name="sdk_0_10_0_Release">CTR-SDK Version 0.10.0 Release</A></H2>
3424<DIV style="text-align: right"><P style="line-height: 0">(2010/06/23)</P></DIV>
3425<HR>
3426<H3><A name="note33-01">Note 33-01: (CAMERA) Revised the <CODE>Activate</CODE> function [SDK | System Updater]</A></H3>
3427<P><description>Fixed a bug that prevented the proper application of settings made during standby if <CODE>nn::camera::SELECT_OUT1_OUT2</CODE> or <CODE>nn::camera::SELECT_IN1_OUT2</CODE> was specified as an argument to the <CODE>nn::camera::Activate</CODE> function.<br> This revision causes an irregular shift in the timing of the two camera V-Sync signals immediately following the <CODE>Activate</CODE> function call. To suppress this shift, call the <CODE>SynchronizeVsyncTiming</CODE> function after <CODE>Activate</CODE>.<br></description></P>
3428<HR>
3429<H3><A name="note33-02">Note 33-02: (CAMERA) Revised the <CODE>SetAutoWhiteBalance</CODE> function [SDK | System Updater]</A></H3>
3430<P><description>Fixed a bug that caused the <CODE>SetAutoWhiteBalance</CODE> function to succeed when the white balance was not set to <CODE>WHITE_BALANCE_NORMAL</CODE>, even though it should have failed in this case.<br> This fix causes the <CODE>SetAutoWhiteBalance</CODE> function to behave as described in the Function Reference Manual.<br></description></P>
3431<HR>
3432<H3><A name="note33-03">Note 33-03: (CAMERA) Revised the <CODE>SetNoiseFilter</CODE> function [SDK | System Updater]</A></H3>
3433<P><description>Fixed a bug in the <CODE>SetNoiseFilter</CODE> function that, when the function was used to turn off the noise-reduction feature, either prevented the feature from being turned off or introduced image noise.<br></description></P>
3434<HR>
3435<H3><A name="note33-04">Note 33-04: (CAMERA) Revised the <CODE>SetTrimmingParams</CODE> and <CODE>SetTrimmingParamsCenter</CODE> functions [SDK|SystemUpdater]</A></H3>
3436<P><description>Fixed bugs in the <CODE>SetTrimmingParams</CODE> and <CODE>SetTrimmingParamsCenter</CODE> functions that prevented trimming from the top line and that shifted the first trimmed line up by one line.<br></description></P>
3437<HR>
3438<H3><A name="note33-05">Note 33-05: (CAMERA) Added support for the camera LED [SDK | System Updater]</A></H3>
3439<P><description>Added processing that lights up the camera LED when any camera is started by the <CODE>nn::camera::Activate</CODE> function.<br> The camera LED turns off when active cameras are put into standby mode.<br></description></P>
3440<HR>
3441<H3><A name="note33-06">Note 33-06: (CAMERA) Added processing to recover from a camera malfunction [SDK | System Updater]</A></H3>
3442<P><description>Added a feature that automatically recovers the camera to its state immediately before beginning capture if it malfunctions.<br> The <CODE>GetRebootEvent</CODE> function was added to get event notifications sent when this recovery process occurs and the <CODE>IsRebootSuccessful</CODE> function was added to determine whether recovery succeeded or failed.<br></description></P>
3443<HR>
3444<H3><A name="note33-07">Note 33-07: (CAMERA) Added a function to play the shutter sound [SDK | System Updater]</A></H3>
3445<P><description>Added the <CODE>nn::camera::PlayShutterSound</CODE> function to play the shutter sound and momentarily turn off the camera LED.<br></description></P>
3446<HR>
3447<H3><A name="note33-08">Note 33-08: (CAMERA/Y2R) Changed the <CODE>Initialize</CODE> function's return value [SDK | System Updater]</A></H3>
3448<P><description>Revised the <CODE>Initialize</CODE> function to return <CODE>false</CODE> when indicating that a camera or Y2R feature cannot be reused when it is already being used by another process.<br> You can only use such features when <CODE>true</CODE> is returned.<br></description></P>
3449<HR>
3450<H3><A name="note33-09">Note 33-09: (CECD) Updated Chance Encounter Communication daemon (beta version) [SDK]</A></H3>
3451<P><description>Added the <CODE>cecd</CODE> Chance Encounter Communication daemon and the API to access it.<br> It can get, set, receive, and send data.<br> When the daemon starts running after data has been set, it begins a search and exchanges data via wireless communication.<br> Limitations:<br>
3452        <ul>
3453          <li>The TITLE ID (GameID) must be set manually.</li>
3454          <li>Data is saved to an SD Card.<br> (An error occurs if an SD Card has not been inserted.)</li>
3455        </ul>
3456      </description></P>
3457<HR>
3458<H3><A name="note33-10">Note 33-10: (CFG) Added functions to get user information [SDK]</A></H3>
3459<P><description>Added functions to get the user name, birthday, country, area, language, and simple address.<br></description></P>
3460<HR>
3461<H3><A name="note33-11">Note 33-11: (CFG) Added function to get system information [SDK]</A></H3>
3462<P><description>Added a function to get region information.<br></description></P>
3463<HR>
3464<H3><A name="note33-12">Note 33-12: (DSP) Revised the Function Reference Manual [SDK]</A></H3>
3465<P><description>Added descriptions of uses for the <CODE>nn::dsp::LoadComponent</CODE> function in the Function Reference Manual.<br></description></P>
3466<HR>
3467<H3><A name="note33-13">Note 33-13: (DSP) Removed some functions from the public API [SDK]</A></H3>
3468<P><description>The following functions are no longer supported and have been removed from the public API.<br>
3469        <ul>
3470          <li><CODE>CreateSharedMemory</CODE></li>
3471          <li><CODE>DeleteSharedMemory</CODE></li>
3472          <li><CODE>CopyBetweenDSPWramAndSharedMemory</CODE></li>
3473          <li><CODE>GetVirtualAddress</CODE></li>
3474          <li><CODE>GetPhysicalAddress</CODE></li>
3475          <li><CODE>ConvertProcessAddressFromDSP</CODE></li>
3476          <li><CODE>GetSemaphoreEventHandle</CODE></li>
3477          <li><CODE>SetSemaphoreEventMask</CODE></li>
3478        </ul>
3479      </description></P>
3480<HR>
3481<H3><A name="note33-14">Note 33-14: (DSPSND) Removed the DSPSND library [SDK]</A></H3>
3482<P><description>Removed the DSPSND library. Use the SND library for DSP sounds.<br></description></P>
3483<HR>
3484<H3><A name="note33-15">Note 33-15: (DevEnv) Revised <CODE>version.h</CODE> [SDK]</A></H3>
3485<P><description>Fixed a bug that prevented <CODE>version.h</CODE> from being accessed within an OMakefile.<br></description></P>
3486<HR>
3487<H3><A name="note33-16">Note 33-16: (DevEnv) Suppressed warnings for missing declarations in source code [SDK]</A></H3>
3488<P><description>Suppressed compiler warning 96: &quot;a translation unit must contain at least one declaration.&quot;<br></description></P>
3489<HR>
3490<H3><A name="note33-17">Note 33-17: (DevEnv) Changed the default build filter from TEG2 to TS [SDK]</A></H3>
3491<P><description>Changed <CODE>omake</CODE> builds to generate binaries for TS boards, rather than for TEG2 boards, by default when <CODE>FILTER</CODE> is not specified.<br></description></P>
3492<HR>
3493<H3><A name="note33-18">Note 33-18: (DevEnv) Added an environment variable for specifying the ARM compiler to use for builds [SDK]</A></H3>
3494<P><description>Added the <CODE>CTRSDK_RVCT_VER</CODE> environment variable to set the version of the ARM compiler to use for builds.<br> This environment variable only specifies the major and minor versions of the ARM compiler and is unrelated to updates of the build number alone.<br></description></P>
3495<HR>
3496<H3><A name="note33-19">Note 33-19: (DevEnv) Added the <CODE>CCFLAGS_DEV_OPT</CODE> build variable [SDK]</A></H3>
3497<P><description>Allowed the optimization level of development builds of applications to be specified using <CODE>CCFLAGS_DEV_OPT</CODE> in the OMakefile.<br></description></P>
3498<HR>
3499<H3><A name="note33-20">Note 33-20: (DevEnv) Added the <CODE>CTR_APPTYPE</CODE> build variable [SDK]</A></H3>
3500<P><description>A <CODE>CTR_APPTYPE</CODE> value can now be set in the OMakefile.<br> CXI and CIA files are generated if the OMakefile sets <CODE>CTR_APPTYPE=NAND</CODE>, and CCI files are generated if <CODE>CTR_APPTYPE=CARD</CODE>.<br> All file types—CCI, CXI, and CIA—are generated if <CODE>CTR_APPTYPE=BOTH</CODE>.<br><br> The <CODE>CTR_NANDAPP</CODE> build variable, which has similar functionality, is planned to be removed in the next SDK release.<br> Although it has been left in CTR-SDK 0.10 to maintain compatibility, use <CODE>CTR_APPTYPE</CODE> instead.<br></description></P>
3501<HR>
3502<H3><A name="note33-21">Note 33-21: (FND) Revised the <CODE>ExpHeapTemplate::Allocate</CODE> member function [SDK]</A></H3>
3503<P><description>Added <CODE>64</CODE>, <CODE>128</CODE>, <CODE>-64</CODE>, and <CODE>-128</CODE> as specifiable <SPAN class="argument">alignment</SPAN> values in the <CODE>ExpHeapTemplate::Allocate</CODE> member function.<br></description></P>
3504<HR>
3505<H3><A name="note33-22">Note 33-22: (FND) Revised <CODE>FrameHeap::Free</CODE> [SDK]</A></H3>
3506<P><description>Although the <CODE>FrameHeap::Free</CODE> function can free just regions allocated from either the head or the tail, it used to free all regions regardless of what was specified.<br> This function has been fixed to release only the specified memory.<br> Other <CODE>FrameHeap</CODE> functions have been modified along with this one.<br></description></P>
3507<HR>
3508<H3><A name="note33-23">Note 33-23: (FND) Revised <CODE>HeapBase::HasAddress</CODE> [SDK]</A></H3>
3509<P><description>Changed <CODE>HeapBase::HasAddress</CODE> to be a <CODE>const</CODE> member function with a <CODE>const</CODE> pointer as an argument.<br> The <CODE>HasAddress</CODE> member functions for <CODE>ExpHeapBase</CODE>, <CODE>ExpHeapTemplate</CODE>, <CODE>FrameHeapBase</CODE>, <CODE>FrameHeapTemplate</CODE>, <CODE>UnitHeapBase</CODE>, and <CODE>UnitHeapTemplate</CODE> have also been revised.<br></description></P>
3510<HR>
3511<H3><A name="note33-24">Note 33-24: (FS) Changed the method for initializing ROM [SDK]</A></H3>
3512<P><description>ROM regions accessible by the &quot;<CODE>rom:</CODE>&quot; syntax used to be automatically mounted when the <CODE>nn::fs::Initialize</CODE> function was called, but now the <CODE>nn::fs::MountRom(size_t maxFile, size_t maxDirectory, void* workingMemory, size_t workingMemorySize)</CODE> function must be called explicitly to mount them. You must pass a memory buffer to <SPAN class="argument">workingMemory</SPAN> that is as large as the size returned by the <CODE>nn::fs::GetRomRequiredMemorySize(size_t maxFile, size_t maxDirectory)</CODE> function. When calling the <CODE>nn::fs::MountRom</CODE> function, the user can now specify the number of files and directories that can be opened simultaneously using the &quot;<CODE>rom:</CODE>&quot; syntax. These settings are only restricted by memory capacity.</description></P>
3513<HR>
3514<H3><A name="note33-25">Note 33-25: (FS) Added support for 8.3 filenames that only have lowercase characters [SDK | System Updater]</A></H3>
3515<P><description>To support the extended FAT specifications for Windows, a long path name can now be obtained as expected for any file or directory having an 8.3 path name that contains only lowercase characters on an SD Memory Card.<br> Previously, all entry names were recognized as uppercase characters based on the standard specification of FAT.<br></description></P>
3516<HR>
3517<H3><A name="note33-26">Note 33-26: (GX) Added the <CODE>nngxAddVramDmaCommand</CODE> function to issue DMA transfer commands [SDK]</A></H3>
3518<P><description>Added the <CODE>nngxAddVramDmaCommand</CODE> function, which adds DMA transfer commands to the current command list.<br></description></P>
3519<HR>
3520<H3><A name="note33-27">Note 33-27: (GX) Restrictions on Using the L4 and A4 formats [SDK]</A></H3>
3521<P><description>It is now confirmed that hardware restrictions require that data in 4-bit texture formats (L4 or A4) be placed in a different memory region than data in non-4-bit formats when both types of texture formats are enabled at the same time and are used for multitextures.<br> (The ETC format is treated as a non-4-bit format for the purposes of these restrictions.)<br><br>
3522 <B>Note:</B> This restriction is described as above in the current specifications, but further tests have revealed that when data that uses a 4-bit format is placed in main memory (FCRAM), multitexture rendering is possible regardless of where data that uses a non-4-bit format is placed.<br> (The specifications will be updated in the next release.)<br></description></P>
3523<HR>
3524<H3><A name="note33-28">Note 33-28: (GX) Fixed a bug in the <CODE>NN_GX_STATE_FRAMEBUFFER</CODE> complete commands [SDK]</A></H3>
3525<P><description>Fixed a bug that prevented some necessary commands (commands that set registers <CODE>0x06e</CODE> and <CODE>0x11e</CODE>) from being generated in the <CODE>NN_GX_STATE_FRAMEBUFFER</CODE> complete commands.<br></description></P>
3526<HR>
3527<H3><A name="note33-29">Note 33-29: (GX) Added PICA register information [SDK]</A></H3>
3528<P><description>Updated the <I>DMPGL 2.0 System API Specifications</I>. <br>The following PICA register information was updated. See the document for further details.<br>
3529        <ul>
3530          <li>Added supplementary information about cases when the command buffer Byte Enable (BE) setting is 0.</li>
3531          <li>Added register information for the <CODE>dmp_Gas.autoAcc</CODE> uniform.</li>
3532          <li>Added register information related to clearing the early depth buffer.</li>
3533          <li>Added register information for the rendering API.</li>
3534          <li>Added register settings relevant when a reserved geometry shader is used.</li>
3535          <li>Added register information related to clearing the framebuffer cache.</li>
3536          <li>Added register information related to commands that issue interrupts.</li>
3537          <li>Added a list of PICA registers.</li>
3538        </ul>
3539      </description></P>
3540<HR>
3541<H3><A name="note33-30">Note 33-30: (GX) Added the <CODE>SetMemAccessPrioMode</CODE> function [SDK | System Updater]</A></H3>
3542<P><description>Added the <CODE>SetMemAccessPrioMode</CODE> function, which sets the access priority of the CPU and/or GPU when they access main memory.<br></description></P>
3543<HR>
3544<H3><A name="note33-31">Note 33-31: (GX) Added support for reading the depth buffer with the <CODE>glReadPixels</CODE> function [SDK]</A></H3>
3545<P><description>You can now read the content of the depth buffer with the <CODE>glReadPixels</CODE> function by setting the <SPAN class="argument">format</SPAN> argument equal to <CODE>GL_DEPTH_COMPONENT</CODE> and the <SPAN class="argument">type</SPAN> argument equal to the bit width of the depth values to get.<br></description></P>
3546<HR>
3547<H3><A name="note33-32">Note 33-32: (GX) Changed argument types in the <CODE>nngxAdd3DCommand</CODE> function [SDK]</A></H3>
3548<P><description>Changed the <SPAN class="argument">bufferaddr</SPAN> argument type from <CODE>GLvoid*</CODE> to <CODE>const GLvoid*</CODE>.<br></description></P>
3549<HR>
3550<H3><A name="note33-33">Note 33-33: (GX) Fixed a bug that prevented command buffer overflow errors from occurring in the <CODE>nngxValidateState</CODE> function [SDK]</A></H3>
3551<P><description>Revised the <CODE>nngxValidateState</CODE> function so that a <CODE>GL_ERROR_8066_DMP</CODE> error occurs when this function's validation operation generates more commands than the current command buffer can hold.<br></description></P>
3552<HR>
3553<H3><A name="note33-34">Note 33-34: (GX) Changed the errors that occur during validation with the <CODE>nngxValidateState</CODE> function into extended error codes [SDK]</A></H3>
3554<P><description>Changed the error codes that occur during validation with the <CODE>nngxValidateState</CODE> function from <CODE>GL_INVALID_OPERATION</CODE> to <CODE>GL_ERROR_806C_DMP</CODE>.<br> For more information on what causes errors during validation, see the <I>System API Specifications</I>.<br></description></P>
3555<HR>
3556<H3><A name="note33-35">Note 33-35: (GX) Added VRAM regions that can be used by applications [SDK]</A></H3>
3557<P><description>Extended the VRAM regions that can be used by applications from 2 MB to 3 MB in both VRAMA and VRAMB, for a total of 6 MB. <br>(However, there are limitations on where display buffers can be placed. For details, see the <CODE>nngxDisplayBufferStorage</CODE> page in the Function Reference Manual.)<br></description></P>
3558<HR>
3559<H3><A name="note33-36">Note 33-36: (GX) Fixed a bug in address checks for cube map textures [SDK]</A></H3>
3560<P><description>Each of a cube map texture's six faces has been required to share the same most-significant 10 address bits. However, because all six faces must fit in the same 32-MB boundary, it is actually sufficient for only the most-significant 7 bits to be the same.<br> Internal address checks have been revised accordingly.<br></description></P>
3561<HR>
3562<H3><A name="note33-37">Note 33-37: (GX) Added the <CODE>nngxClearFillCmdlist</CODE> function to both clear and fill a command buffer at the same time [SDK]</A></H3>
3563<P><description>Added the <CODE>nngxClearFillCmdlist</CODE> function, which not only clears the bound command list object but also initializes the command buffer with a specified 32-bit value.<br></description></P>
3564<HR>
3565<H3><A name="note33-38">Note 33-38: (GX) Added extended error codes to represent command buffer overflows [SDK]</A></H3>
3566<P><description>A <CODE>GL_INVALID_OPERATION</CODE> error used to be generated when the current command list's command buffer overflowed. Now a dedicated error code, <CODE>GL_ERROR_COMMANDBUFFER_FULL_DMP</CODE>, is generated.<br></description></P>
3567<HR>
3568<H3><A name="note33-39">Note 33-39: (GX) Deleted dummy commands used when clearing the texture cache [SDK]</A></H3>
3569<P><description>Ten dummy commands used to be generated for register <CODE>0x080</CODE> when the texture cache was cleared. Further testing revealed that these dummy commands are unnecessary, so they have been deleted.<br></description></P>
3570<HR>
3571<H3><A name="note33-40">Note 33-40: (GX) Fixed a bug related to clamping the particle system (geometry shader) time [SDK]</A></H3>
3572<P><description>Fixed a bug that prevented all subsequent particles from being generated after any one particle was clamped and therefore not generated.<br> Processing has also been added to clamp particles when the <CODE>dmp_Partsys.time</CODE> uniform has a value of 0 or less.<br></description></P>
3573<HR>
3574<H3><A name="note33-41">Note 33-41: (GX) Added a function that applies antialias filters while transferring block images [SDK]</A></H3>
3575<P><description>Added the <CODE>nngxFilterBlockImage</CODE> function, which issues commands to apply a 2x2 antialias filter on block-formatted data while transferring it to a specified address.<br></description></P>
3576<HR>
3577<H3><A name="note33-42">Note 33-42: (GX) Updated macro header files [SDK]</A></H3>
3578<P><description>Changed macro header files as follows.<br>
3579        <ul>
3580          <li>Changed specifications and other areas in a way that breaks compatibility (this cannot be circumvented even with <CODE>gx_MacroOld.h</CODE>).</li>
3581<br>You must address the following issues if they apply to any macros that you are using. Otherwise, build errors and unintended behavior might occur.
3582          <ul>
3583            <li>Enumerated type constant definitions for the comparison functions for alpha tests, depth tests, and stencil tests (<CODE>PICA_DATA_ALPHA_TEST_*</CODE>) have been changed from 32-bit values (which accounted for the position of the bit that was set in the register) to 1-bit values. <br><CODE>PICA_CMD_DATA_DEPTH_COLOR_MASK</CODE>, <CODE>PICA_CMD_DATA_STENCIL_TEST</CODE>, and <CODE>PICA_CMD_DATA_FRAG_OP_ALPHA_TEST</CODE> were changed along with these.</li>
3584            <li>Added parentheses to the following macros.</li>
3585              <ul>
3586                <li><CODE>PICA_CMD_SET_DISABLE_ALPHA_TEST</CODE></li>
3587                <li><CODE>PICA_CMD_SET_BLEND_DEFAULT</CODE></li>
3588                <li><CODE>PICA_CMD_SET_BLEND_NOTHING</CODE></li>
3589                <li><CODE>PICA_CMD_SET_DISABLE_EARLY_DEPTH_TEST</CODE></li>
3590                <li><CODE>PICA_CMD_SET_GS_ATTR_IN_MAP_RESERVED</CODE></li>
3591                <li><CODE>PICA_CMD_SET_GS_MISC_REG0_DISABLE</CODE></li>
3592                <li><CODE>PICA_CMD_SET_GS_MISC_REG0_SUBDIVISION</CODE></li>
3593                <li><CODE>PICA_CMD_SET_GS_MISC_REG0_PARTICLE</CODE></li>
3594              </ul>
3595            <li>The <CODE>PICA_CMD_DATA_VS_GS_OUT_REG_NUM</CODE> and <CODE>PICA_CMD_DATA_VS_GS_OUT_REG_NUM3</CODE> macros used to require an argument value that was one less than the number of output registers used in the vertex shaders, because this value was then set in bits [2:0] of register <CODE>0x4f</CODE> and bits [3:0] of registers <CODE>0x24a</CODE>, <CODE>0x25e</CODE>, and <CODE>0x251</CODE>. These macros have been revised to internally subtract one from the value that is passed in.</li>
3596            <li>The <CODE>PICA_CMD_DATA_VS_ATTR_NUM0</CODE> and <CODE>PICA_CMD_DATA_VS_ATTR_NUM1</CODE> macros used to require an argument value that was one less than the number of input vertex attributes to the vertex shaders, because this value was then set in bits [3:0] of registers <CODE>0x2b9</CODE> and <CODE>0x242</CODE>. These macros have been revised to internally subtract one from the value that is passed in.</li>
3597            <li>Deleted <CODE>PICA_DATA_FRAG_LIGHT_ENV_LAYER_CONFIG{8-10}</CODE> following their deletion from the specifications.</li>
3598            <li>Changed the value set in <CODE>PICA_REG_FRAG_LIGHT_SRC_NUM</CODE> (<CODE>0x1c2</CODE>) by the <CODE>PICA_CMD_DATA_FRAG_LIGHT_NUM</CODE> macro to one less than the number of light sources (or 0 when all light sources are disabled).</li>
3599            <li>Deleted unnecessary arguments from the following macros.</li>
3600              <ul>
3601                <li><CODE>PICA_CMD_DATA_TEXTURE1_WRAP_FILTER</CODE></li>
3602                <li><CODE>PICA_CMD_DATA_TEXTURE2_WRAP_FILTER</CODE></li>
3603              </ul>
3604          </ul>
3605<br>
3606          <li>Changes caused by new items</li>
3607          <ul>
3608            <li>Added a new file, <CODE>gx_MacroReg.h</CODE>, that puts all macro definitions for register addresses together.</li>
3609            <li>Added a new file, <CODE>gx_MacroOld.h</CODE>, as the old version of macros for which current updates broke compatibility with the previous header files. <br>(We are considering gradually removing this header file in future releases.)</li>
3610            <li>Added the following new macro definitions for register addresses.</li>
3611              <ul>
3612                <li><CODE>PICA_REG_INTERRUPT</CODE> (<CODE>0x10</CODE>), the register that sets commands that generate interrupts</li>
3613                <li><CODE>PICA_REG_EARLY_DEPTH_CLEAR</CODE> (<CODE>0x63</CODE>), the register with settings related to the early depth buffer</li>
3614              </ul>
3615            <li>Added new <CODE>PICA_DATA_*</CODE> enumerated types (these types were previously incomplete) as well as new macro functions, <CODE>PICA_CMD_DATA_*</CODE> and <CODE>PICA_CMD_SET_*</CODE>.</li>
3616          </ul>
3617<br>
3618          <li>Changes caused by bug fixes</li>
3619<br>Fixed known bugs in <CODE>gx_MacroMisc.h</CODE>, <CODE>gx_MacroTexture.h</CODE>, <CODE>gx_MacroShader.h</CODE>, and <CODE>gx_MacroFragment.h</CODE>.
3620        </ul>
3621      </description></P>
3622<HR>
3623<H3><A name="note33-43">Note 33-43: (GX) Added support for automatic mipmap generation [SDK]</A></H3>
3624<P><description>Added a feature to automatically generate mipmaps for textures that use antialias-filtered block image transfers.<br> For details on the formats for which mipmaps can be generated as well as size restrictions, see the DMPGL specifications.<br></description></P>
3625<HR>
3626<H3><A name="note33-44">Note 33-44: (GX) Deleted lighting layer configurations 8–10 [SDK]</A></H3>
3627<P><description>The following were determined to have poor performance and were thus deleted from the specifications: <CODE>GL_LIGHT_ENV_LAYER_CONFIG8_DMP</CODE>, <CODE>GL_LIGHT_ENV_LAYER_CONFIG9_DMP</CODE>, and <CODE>GL_LIGHT_ENV_LAYER_CONFIG10_DMP</CODE>.<br> There are no perfect substitutes for these configurations, but the following methods can reduce the number of cycles to two.<br>
3628        <ul>
3629          <li>Layer configuration 8: Use layer configuration 6 with D1 and FR disabled.</li>
3630          <li>Layer configuration 9: Use layer configuration 4 with RR, RG, and RB disabled.</li>
3631          <li>Layer configuration 10: Use layer configuration 4 with D1, D2, and SP disabled.</li>
3632        </ul>
3633      </description></P>
3634<HR>
3635<H3><A name="note33-45">Note 33-45: (GX) Stopped using invalid bit in register <CODE>0x6f</CODE> [SDK]</A></H3>
3636<P><description>Revised the <CODE>glShaderBinary</CODE> and <CODE>glLinkProgram</CODE> functions to stop unnecessarily operating on the invalid bit [17:17] in register <CODE>0x6f</CODE>.<br></description></P>
3637<HR>
3638<H3><A name="note33-46">Note 33-46: (GX) Fixed a bug that caused incorrect behavior with certain placements of vertex and index arrays [SDK]</A></H3>
3639<P><description>Fixed a bug that caused incorrect behavior when vertex arrays were placed in main memory and index arrays were placed in VRAM.<br></description></P>
3640<HR>
3641<H3><A name="note33-47">Note 33-47: (HID) Changed threshold values for clamping the Slide Pad [SDK]</A></H3>
3642<P><description>Changed the threshold values for clamping the Slide Pad.<br><br> The minimum value for circular clamping (<CODE>MIN_OF_STICK_CLAMP_MODE_CIRCLE</CODE>) was changed from 66 to 50.<br> The maximum value for clamping (<CODE>LIMIT_OF_STICK_CLAMP_MAX</CODE>) was changed from 133 to 153.<br> These threshold values are still under consideration and may change in the future.<br></description></P>
3643<HR>
3644<H3><A name="note33-48">Note 33-48: (HIO) Relocated the PC-side HostIO library [SDK]</A></H3>
3645<P><description>Moved the PC-side HostIO library and its header files, all of which have been included in the CTR-SDK, to the <CODE>$KMC_CTRHOSTIO/SDK</CODE> directory.<br></description></P>
3646<HR>
3647<H3><A name="note33-49">Note 33-49: (JPEG) Added JPEG encoder functions for MP-format data [SDK]</A></H3>
3648<P><description>Added the following functions for MP-format data.<br>
3649        <ul>
3650          <li><CODE>SetMpTypeFlags</CODE></li>
3651          <li><CODE>SetMpIndividualNum</CODE></li>
3652          <li><CODE>ClearMpIndividualNum</CODE></li>
3653          <li><CODE>SetMpPanOrientation</CODE></li>
3654          <li><CODE>ClearMpPanOrientation</CODE></li>
3655          <li><CODE>SetMpPanOverlapH</CODE></li>
3656          <li><CODE>ClearMpPanOverlapH</CODE></li>
3657          <li><CODE>SetMpPanOverlapV</CODE></li>
3658          <li><CODE>ClearMpPanOverlapV</CODE></li>
3659          <li><CODE>SetMpBaseViewpointNum</CODE></li>
3660          <li><CODE>ClearMpBaseViewpointNum</CODE></li>
3661          <li><CODE>SetMpConvergenceAngle</CODE></li>
3662          <li><CODE>ClearMpConvergenceAngle</CODE></li>
3663          <li><CODE>SetMpBaselineLength</CODE></li>
3664          <li><CODE>ClearMpBaselineLength</CODE></li>
3665          <li><CODE>SetMpVerticalDivergence</CODE></li>
3666          <li><CODE>ClearMpVerticalDivergence</CODE></li>
3667          <li><CODE>SetMpAxisDistanceX</CODE></li>
3668          <li><CODE>ClearMpAxisDistanceX</CODE></li>
3669          <li><CODE>SetMpAxisDistanceY</CODE></li>
3670          <li><CODE>ClearMpAxisDistanceY</CODE></li>
3671          <li><CODE>SetMpAxisDistanceZ</CODE></li>
3672          <li><CODE>ClearMpAxisDistanceZ</CODE></li>
3673          <li><CODE>SetMpYawAngle</CODE></li>
3674          <li><CODE>ClearMpYawAngle</CODE></li>
3675          <li><CODE>SetMpPitchAngle</CODE></li>
3676          <li><CODE>ClearMpPitchAngle</CODE></li>
3677          <li><CODE>SetMpRollAngle</CODE></li>
3678          <li><CODE>ClearMpRollAngle</CODE></li>
3679          <li><CODE>StartMpEncoderNext</CODE></li>
3680          <li><CODE>GetMpRegionsToBuildJpegData</CODE></li>
3681        </ul>
3682      </description></P>
3683<HR>
3684<H3><A name="note33-50">Note 33-50: (JPEG) Added setter functions for the JPEG encoder [SDK]</A></H3>
3685<P><description>Added the following functions for setting parameters used during JPEG encoding.<br>
3686        <ul>
3687          <li><CODE>SetThumbnailSize</CODE></li>
3688          <li><CODE>SetInputBufferWidth</CODE></li>
3689          <li>SetDateTime</li>
3690        </ul>
3691      </description></P>
3692<HR>
3693<H3><A name="note33-51">Note 33-51: (JPEG) Added functions for extracting EXIF information with the JPEG decoder [SDK]</A></H3>
3694<P><description>Added the following functions for getting EXIF values and analyzing only EXIF information while decoding.<br>
3695        <ul>
3696          <li><CODE>ExtractExif</CODE></li>
3697          <li><CODE>GetLastDateTime</CODE></li>
3698          <li><CODE>GetLastSoftwarePointer</CODE></li>
3699          <li><CODE>GetLastSoftwareLength</CODE></li>
3700          <li><CODE>GetLastTwlPhotoMakerNote</CODE></li>
3701        </ul>
3702      </description></P>
3703<HR>
3704<H3><A name="note33-52">Note 33-52: (JPEG) Added functions for analyzing MP-format data with the JPEG decoder [SDK]</A></H3>
3705<P><description>Added the following functions for MP-format data.<br>
3706        <ul>
3707          <li><CODE>GetMpIndex</CODE></li>
3708          <li><CODE>GetMpNumberOfImages</CODE></li>
3709          <li><CODE>GetMpImageUidListSize</CODE></li>
3710          <li><CODE>GetMpImageUidListOffset</CODE></li>
3711          <li><CODE>GetMpTotalFrames</CODE></li>
3712          <li><CODE>GetMpEntry</CODE></li>
3713          <li><CODE>GetMpImageType</CODE></li>
3714          <li><CODE>GetMpImageSize</CODE></li>
3715          <li><CODE>GetMpImageOffset</CODE></li>
3716          <li><CODE>GetMpDependentImage1EntryNum</CODE></li>
3717          <li><CODE>GetMpDependentImage2EntryNum</CODE></li>
3718          <li><CODE>GetMpAttribute</CODE></li>
3719          <li><CODE>GetMpIndividualNum</CODE></li>
3720          <li><CODE>GetMpPanOrientation</CODE></li>
3721          <li><CODE>GetMpPanOverlapH</CODE></li>
3722          <li><CODE>GetMpPanOverlapV</CODE></li>
3723          <li><CODE>GetMpBaseViewpointNum</CODE></li>
3724          <li><CODE>GetMpConvergenceAngle</CODE></li>
3725          <li><CODE>GetMpBaselineLength</CODE></li>
3726          <li><CODE>GetMpVerticalDivergence</CODE></li>
3727          <li><CODE>GetMpAxisDistanceX</CODE></li>
3728          <li><CODE>GetMpAxisDistanceY</CODE></li>
3729          <li><CODE>GetMpAxisDistanceZ</CODE></li>
3730          <li><CODE>GetMpYawAngle</CODE></li>
3731          <li><CODE>GetMpPitchAngle</CODE></li>
3732          <li><CODE>GetMpRollAngle</CODE></li>
3733        </ul>
3734      </description></P>
3735<HR>
3736<H3><A name="note33-53">Note 33-53: (JPEG) Added functions for setting the image width in the JPEG decoder [SDK]</A></H3>
3737<P><description>Added the following functions to use when decoding results are output to a buffer that has a larger image width than the image to decode.<br>
3738        <ul>
3739          <li>SetOutputBufferWidth</li>
3740          <li><CODE>GetLastOutputBufferWidth</CODE></li>
3741        </ul>
3742      </description></P>
3743<HR>
3744<H3><A name="note33-54">Note 33-54: (JPEG) Added thumbnail output formats for the JPEG encoder [SDK]</A></H3>
3745<P><description>Changed the <CODE>SetThumbnailSize</CODE> function so that it can set thumbnail output formats other than YUV422.<br></description></P>
3746<HR>
3747<H3><A name="note33-55">Note 33-55: (JPEG) Added functions for applications to get and set MakerNote data [SDK]</A></H3>
3748<P><description>Added the following functions to get and set data embedded in the MakerNote region of a created JPEG file.<br>
3749        <ul>
3750          <li><CODE>SetUserMakerNote</CODE></li>
3751          <li><CODE>GetLastUserMakerNotePointer</CODE></li>
3752          <li><CODE>GetLastUserMakerNoteSize</CODE></li>
3753          <li><CODE>GetLastTwlUserMakerNotePointer</CODE></li>
3754          <li><CODE>GetLastTwlUserMakerNoteSize</CODE></li>
3755          <li>SetImageUid</li>
3756          <li><CODE>GetLastImageUid</CODE></li>
3757        </ul>
3758      </description></P>
3759<HR>
3760<H3><A name="note33-56">Note 33-56: (MATH) Added the <CODE>SafeNormalize</CODE> functions [SDK]</A></H3>
3761<P><description>Added the following functions that run &quot;safe&quot; Normalize operations, returning the default values for vectors with a size of 0.<br>
3762        <ul>
3763          <li><CODE>VEC2SafeNormalize</CODE></li>
3764          <li><CODE>VEC2::SafeNormalize</CODE></li>
3765          <li><CODE>VEC3SafeNormalize</CODE></li>
3766          <li><CODE>VEC3::SafeNormalize</CODE></li>
3767          <li><CODE>VEC4SafeNormalize</CODE></li>
3768          <li><CODE>VEC4::SafeNormalize</CODE></li>
3769        </ul>
3770      </description></P>
3771<HR>
3772<H3><A name="note33-57">Note 33-57: (MATH) Improved the accuracy of sine and cosine calculations [SDK]</A></H3>
3773<P><description>Revised some values that did not fully utilize <CODE>float</CODE> accuracy in the internal table used to find the sine and cosine.<br></description></P>
3774<HR>
3775<H3><A name="note33-58">Note 33-58: (MATH) Added multiplication functions for all components in <CODE>Vector2</CODE>, <CODE>Vector3</CODE>, and <CODE>Vector4</CODE> vectors [SDK]</A></H3>
3776<P><description>The following functions have been added.<br>
3777        <ul>
3778          <li><CODE>VEC{2,3,4}Mult</CODE></li>
3779          <li><CODE>VEC{2,3,4}::operator*=(const VEC{2,3,4}&)</CODE></li>
3780        </ul>
3781      </description></P>
3782<HR>
3783<H3><A name="note33-59">Note 33-59: (MATH) Fixed a bug in the values obtained by the <CODE>GetRow</CODE> and <CODE>GetColumn</CODE> functions in <CODE>math_Matrix23.h</CODE> [SDK]</A></H3>
3784<P><description>Fixed processing that accidentally treated a 2x3 matrix as a 3x2 matrix within the <CODE>GetRow</CODE> and <CODE>GetColumn</CODE> functions in <CODE>math_Matrix23.h</CODE>.<br></description></P>
3785<HR>
3786<H3><A name="note33-60">Note 33-60: (MATH) Increased speed of functions [SDK]</A></H3>
3787<P><description>Optimized implementations of the following functions. <br><br> <CODE>Hermite, MTX33Copy, MTX33MAdd, MTX33Mult, MTX33ToMTX34, MTX34Add,<br> MTX34CameraRotate, MTX34Copy, MTX34Inverse, MTX34InvTranspose, <br> MTX34LookAt, MTX34MAdd, MTX34Mult, MTX34MultArray, MTX34MultScale, <br> MTX34MultTranslate, MTX34RotXYZFIdx, MTX34RotXYZRad, MTX34RotXYZTranslateFIdx, <br> MTX34Scale, MTX34ToMTX33, MTX34ToQUAT, MTX34Translate, MTX34Transpose, <br> MTX43Add, MTX43Copy, MTX43Mult, MTX43Transpose, MTX44Add, MTX44Copy, <br> MTX44Frustum, MTX44FrustumPivot, MTX44Inverse, MTX44Mult, <br> MTX44MultArray, MTX44MultScale, MTX44MultTranslate, <br> MTX44Ortho, MTX44OrthoPivot, MTX44PerspectivePivotRad, MTX44RotXYZRad, <br> MTX44Scale, MTX44T, MTX44Transpose, QUATInverse, QUATMult, <br> QUATNormalize, QUATToMTX34, VEC3Cross, VEC3Len, VEC3Normaliz, <br> VEC3Transform, VEC3TransformArray, MTX44Pivot, MTX34RotAxisRad_, <br> MTX44PerspectiveRad, MTX44RotAxisRad_</CODE><br><br> The optimizations are valid for Release and Development builds. Note, however, that these optimizations are not applied to Debug builds.<br></description></P>
3788<HR>
3789<H3><A name="note33-61">Note 33-61: (MIC) Added a return value to the <CODE>mic::FreeBuffer</CODE> function [SDK]</A></H3>
3790<P><description>Revised the <CODE>mic::FreeBuffer</CODE> function to return an error if it is called during microphone sampling.<br></description></P>
3791<HR>
3792<H3><A name="note33-62">Note 33-62: (MIC) Added the microphone library to the default libraries [SDK]</A></H3>
3793<P><description>It used to be necessary to explicitly add the microphone library to an OMakefile to use it, but this is no longer necessary because the library has been added to the build system's default libraries.<br></description></P>
3794<HR>
3795<H3><A name="note33-63">Note 33-63: (MIC) Deleted a function that allocates memory and added a function that sets memory [SDK]</A></H3>
3796<P><description>The microphone library used to allocate memory internally with the <CODE>AllocateBuffer</CODE> function. This process has been revised in CTR-SDK 0.10 so that the application allocates memory and <CODE>SetBuffer</CODE>is used to set it to the microphone library.<br> The application must provide memory with a size and address that are 4-KB aligned.<br> Call the <CODE>ResetBuffer</CODE> function to stop using the memory set in the microphone library.<br></description></P>
3797<HR>
3798<H3><A name="note33-64">Note 33-64: (MIDI) Added the MIDI library [SDK | System Updater]</A></H3>
3799<P><description>Added the MIDI library.<br></description></P>
3800<HR>
3801<H3><A name="note33-65">Note 33-65: (RDT) Added the RDT library [SDK]</A></H3>
3802<P><description>Added the RDT library, which runs local communications with trusted data.<br> The RDT library is a high-level library located above the UDS library.<br></description></P>
3803<HR>
3804<H3><A name="note33-66">Note 33-66: (SND) Added 3D surround sound features [SDK]</A></H3>
3805<P><description>Added support for 3D surround sound output.<br> (Effects are still provisional, however, and are highly likely to change in the future.)<br></description></P>
3806<HR>
3807<H3><A name="note33-67">Note 33-67: (SND) Fixed a bug that corrupted waveforms during ADPCM playback [SDK]</A></H3>
3808<P><description>Fixed a bug that corrupted waveforms only in the first data to have <CODE>AppendWaveBuffer</CODE> called on a Voice during ADPCM playback.<br></description></P>
3809<HR>
3810<H3><A name="note33-68">Note 33-68: (SND) Fixed a bug in the <CODE>AllocVoice</CODE> function [SDK]</A></H3>
3811<P><description>Fixed a bug that caused <CODE>AllocVoice</CODE> to return invalid results.<br></description></P>
3812<HR>
3813<H3><A name="note33-69">Note 33-69: (SND) Added a DSP-ADPCM encoder [SDK]</A></H3>
3814<P><description>Added the <CODE>nn::snd::EncodeAdpcmData</CODE> function, which is a DSP-ADPCM encoder, and the <CODE>nn::snd::GetAdpcmOutputBufferSize</CODE> function, which returns the size of the encoding results.<br></description></P>
3815<HR>
3816<H3><A name="note33-70">Note 33-70: (SND) Fixed a bug in the <CODE>GetPlayPosition</CODE> function [SDK]</A></H3>
3817<P><description>Fixed a bug that caused the <CODE>GetPlayPosition</CODE> function to return an undefined value immediately after the <CODE>AllocVoice</CODE> function was called.<br></description></P>
3818<HR>
3819<H3><A name="note33-71">Note 33-71: (SND) Added a function to get <CODE>Mix</CODE> bus data [SDK]</A></H3>
3820<P><description>Added the <CODE>nn::snd::GetMixedBusData</CODE> function, which gets the <CODE>MixBus</CODE> final output information for DSP sounds.<br></description></P>
3821<HR>
3822<H3><A name="note33-72">Note 33-72: (SND) Added a <CODE>MixParam</CODE> constructor [SDK]</A></H3>
3823<P><description>Added a constructor for the <CODE>MixParam</CODE> structure.<br></description></P>
3824<HR>
3825<H3><A name="note33-73">Note 33-73: (SND) Added functions for loading files in the BCWAV format [SDK]</A></H3>
3826<P><description>Added functions to the <CODE>nn::snd::Bcwav</CODE> namespace for loading waveform (BCWAV) files generated by <CODE>ctr_WaveConverter</CODE>.<br></description></P>
3827<HR>
3828<H3><A name="note33-74">Note 33-74: (SND) Fixed a bug that caused the <CODE>nn::snd::WaitForDspSync</CODE> function to enter an endless loop [SDK]</A></H3>
3829<P><description>Fixed a bug that caused the <CODE>nn::snd::WaitForDspSync</CODE> function to enter an endless loop in situations such as during playback of a high-pitched Voice with a high sampling rate.<br></description></P>
3830<HR>
3831<H3><A name="note33-75">Note 33-75: (SND) Changed definitions in the <CODE>nn::snd::WaveBuffer</CODE> structure [SDK]</A></H3>
3832<P><description>Added the <CODE>const</CODE> modifier to the <CODE>pAdpcmContext</CODE> member variable of the <CODE>WaveBuffer</CODE> structure.<br></description></P>
3833<HR>
3834<H3><A name="note33-76">Note 33-76: (SND) Fixed a bug that caused execution to halt on a null assertion while <CODE>nn::snd::Voice</CODE> was in use [SDK]</A></H3>
3835<P><description>Fixed a bug that caused program execution to halt on a null assertion during sound playback with the <CODE>Voice</CODE> class's <CODE>AppendWaveBuffer</CODE> function.<br></description></P>
3836<HR>
3837<H3><A name="note33-77">Note 33-77: (SND) Fixed a SND library bug that would suddenly stop audio output [SDK]</A></H3>
3838<P><description>Fixed a bug that would suddenly stop all audio output during audio playback with the SND library.<br></description></P>
3839<HR>
3840<H3><A name="note33-78">Note 33-78: (SND) Added filter features [SDK]</A></H3>
3841<P><description>Added functions to set a one-pole low-pass filter and a two-pole filter for a <CODE>Voice</CODE>.<br></description></P>
3842<HR>
3843<H3><A name="note33-79">Note 33-79: (SND) Added a function for determining whether headphones have been inserted [SDK | System Updater]</A></H3>
3844<P><description>Added the <CODE>nn::snd::GetHeadphoneStatus</CODE> function, which gets the headphone connection state.<br></description></P>
3845<HR>
3846<H3><A name="note33-80">Note 33-80: (SND) Revised the Function Reference Manual [SDK]</A></H3>
3847<P><description>Fixed errors in the Function Reference Manual for the SND library.<br></description></P>
3848<HR>
3849<H3><A name="note33-81">Note 33-81: (SND) Fixed loop playback bugs [SDK]</A></H3>
3850<P><description>Fixed bugs that prevented proper loop playback of a high-pitch or high-sampling-rate <CODE>Voice</CODE> when the PCM data buffer was small.<br></description></P>
3851<HR>
3852<H3><A name="note33-82">Note 33-82: (SND) Added a waveform converter [SDK]</A></H3>
3853<P><description>Added <CODE>ctr_WaveConverter32.exe</CODE>, a tool that converts waveform (WAV and AIFF) files into the DSP ADPCM format. For details, see <a href="../tools/ctr_WaveConverter.html"><CODE>ctr_WaveConverter</CODE></a>.<br></description></P>
3854<HR>
3855<H3><A name="note33-83">Note 33-83: (SND) Fixed a bug that caused the playback position to lag during long playback times [SDK]</A></H3>
3856<P><description>Fixed a bug that caused the playback position to lag behind the original position during long playback.<br></description></P>
3857<HR>
3858<H3><A name="note33-84">Note 33-84: (TOOL) Added <CODE>Config</CODE> tool features [SDK]</A></H3>
3859<P><description>Allowed the user name to be edited with the <CODE>Config</CODE> tool.<br> A description of how to edit the user name has been added to the documentation.<br></description></P>
3860<HR>
3861<H3><A name="note33-85">Note 33-85: (TOOL) Changed the <CODE>DevMenu</CODE> [SDK]</A></H3>
3862<P><description>Made the following changes to the <CODE>DevMenu</CODE>.
3863        <ul>
3864          <li>Made it possible to use <CODE>DevMenu</CODE> to launch applications written to a CTR Card (by selecting &quot;CARD&quot; from the program list).</li>
3865          <li>Stopped the application startup screen from being displayed immediately after an import with <CODE>DevMenu</CODE>. (Start these applications from the program management screen.)</li>
3866          <li>Added support for hot-swapping SD Cards (although execution freezes if an SD Card is inserted and then immediately removed).</li>
3867          <li>Changed display to include the product code on the list of items.</li>
3868          <li>Revised the program IDs displayed on the program list from 16-digit numbers to 8-digit numbers.</li>
3869          <li>Fixed a bug that caused a program to be deleted when X was pressed on the Import screen after the program was selected from the Programs screen.</li>
3870          <li>Fixed a bug that caused corrupted display of the list.</li>
3871        </ul>
3872      </description></P>
3873<HR>
3874<H3><A name="note33-86">Note 33-86: (TOOL) Added <CODE>ctr_makecia32.exe</CODE> [SDK]</A></H3>
3875<P><description>Added <CODE>ctr_makecia32.exe</CODE>, which generates CIA files.<br></description></P>
3876<HR>
3877<H3><A name="note33-87">Note 33-87: (TOOL) Added CXI file encryption and CDI file generation [SDK]</A></H3>
3878<P><description>The CXI files generated when a NAND application is built are now encrypted.<br> In the current release, CDI files (unencrypted CXI files) are also generated at the same time.<br> In future releases they will no longer be generated by default.<br></description></P>
3879<HR>
3880<H3><A name="note33-88">Note 33-88: (TOOL) Updated the shader assembler and linker [SDK]</A></H3>
3881<P><description>Updated the shader assembler and linker as follows.<br>
3882        <ul>
3883          <li>Added support for evaluating an equality, inequality, bitwise OR, bitwise AND, or any combination of these in <CODE>#if</CODE> and <CODE>#elif</CODE> statements.</li>
3884          <li>Added support for <CODE>#line</CODE>.</li>
3885          <li>Revised so that unused regions are initialized with a value of 0.</li>
3886          <li>Revised <CODE>#pragma output_map</CODE> to cause an error when <CODE>texture3</CODE> is specified to it.</li>
3887        </ul>
3888      </description></P>
3889<HR>
3890<H3><A name="note33-89">Note 33-89: (UDS) Changed how the buffer used by the UDS library is allocated [SDK]</A></H3>
3891<P><description>The buffer used internally by the UDS library is now allocated and specified by the application rather than allocated and obtained automatically within the library.<br> Note that the specifications for the <CODE>nn::uds::Initialize</CODE> function have changed.<br></description></P>
3892<HR>
3893<H3><A name="note33-90">Note 33-90: (UDS) Fixed a bug that prevented networks from being found after specified channels were scanned [SDK]</A></H3>
3894<P><description>Fixed a bug that prevented existing networks from being detected on the channel(s) specified for scanning with the <CODE>nn::uds::Scan</CODE> function.<br></description></P>
3895<HR>
3896<H3><A name="note33-91">Note 33-91: (UDS) User name and local friend code are now obtained from the system information [SDK]</A></H3>
3897<P><description>Changed the UDS library to get the user name and local friend code from the system information because this was just made possible.<br> You no longer have to specify anything with the <CODE>nn::uds::SetNodeInformation</CODE> function. <br>(Currently, any specified information is simply not applied. In the next release, this function is scheduled for deletion.)<br> Definitions in the <CODE>nn::uds::NodeInformation</CODE> structure have also been changed following the shift to get data from the system information.<br></description></P>
3898<HR>
3899<H3><A name="note33-92">Note 33-92: (UDS) Changed specifications for the <CODE>CreateNetwork</CODE> and <CODE>Scan</CODE> functions following policy changes to local communication IDs [SDK]</A></H3>
3900<P><description>Local communication IDs were originally planned to be set by the system automatically, but this has changed so that now applications must always set the IDs themselves. Consequently, the <CODE>CreateNetwork</CODE> and <CODE>Scan</CODE> functions, which do not set a local communication ID, were removed.<br></description></P>
3901<HR>
3902<H3><A name="note33-93">Note 33-93: (UGC) Added a profanity-check library [SDK]</A></H3>
3903<P><description>Added a feature that determines whether a user-specified string has any problems that make it unusable.<br></description></P>
3904<HR>
3905<H3><A name="note33-94">Note 33-94: (UGC) Added a blacklist library [SDK]</A></H3>
3906<P><description>Added features to register, clear, and search for information on the authors of user-generated content.<br></description></P>
3907<HR>
3908<H3><A name="note33-95">Note 33-95: (ULCD) Revised internal calculations in the <CODE>CalculateMatrices[Real]</CODE> functions [SDK]</A></H3>
3909<P><description>Calculations in the <CODE>nn::ulcd::StereoCamera::CalculateMatrices[Real]</CODE> functions assumed that viewing volume parameters were set in advance so that <CODE>left &lt; right</CODE> and <CODE>bottom &lt; top</CODE>. If these conditions were not satisfied, the proper results were not output.<br> This was revised so that each parameter does not depend on its size relative to the others.<br></description></P>
3910<HR>
3911<H3><A name="note33-96">Note 33-96: (ULCD) Changed argument specifications for the <CODE>StereoCamera::CalculateMatrices[Real]</CODE> functions [SDK]</A></H3>
3912<P><description>Changed the <CODE>CalculateMatrices[Real]</CODE> functions so that the <SPAN class="argument">depthRange</SPAN> argument only accepts values in the range [0, 1] rather than any value greater than or equal to 0.<br> The argument was also renamed to <SPAN class="argument">factor</SPAN> to reflect its current use.<br></description></P>
3913<HR>
3914<H3><A name="note33-97">Note 33-97: (ULCD) Changed specifications for the <CODE>StereoCamera::GetMaxParallax</CODE> function [SDK]</A></H3>
3915<P><description>This function used to return the distance between the left and right cameras as the parallax required to display an object at the greatest stereoscopic depth.<br> That specification applied a parallax that is larger than necessary, though, so the function was changed to return a maximum parallax value that is fixed in advance.<br></description></P>
3916<HR>
3917<H3><A name="note33-98">Note 33-98: (ULCD) Updated the <I>Description of the ULCD Library</I> [SDK]</A></H3>
3918<P><description>Updated the <I>Description of the ULCD Library</I>.<br> For details on what was updated, see the documentation.<br> <CODE>$CTR_SDK/documents/TechnicalNotes/AboutULCDLibrary/AboutULCDLibrary.pdf</CODE><br></description></P>
3919<HR>
3920<H3><A name="note33-99">Note 33-99: (ULCD) Added functions to get and set the maximum parallax [SDK]</A></H3>
3921<P><description>Added the <CODE>nn::ulcd::StereoCamera::SetLimitParallax</CODE> function to set the parallax to generate for objects at the far clipping plane in a stereoscopic representation.<br> This parallax is created from the maximum separation between the images for the left and right eyes.<br><br> However, you can only set a maximum parallax that is within a fixed range.<br> Because this fixed range has currently not yet been decided, there is not actually an upper limit and any value can be set.<br> A warning is output if you specify a value larger than the one in the guidelines.<br><br> The <CODE>nn::ulcd::StereoCamera::GetLimitParallax</CODE> function was also added to get this value.<br> The value set by this function is valid when the <CODE>nn::ulcd::StereoCamera::CalculateMatrices</CODE> function is used.<br></description></P>
3922<HR>
3923<H3><A name="note33-100">Note 33-100: (Y2R) Changed arguments to the <CODE>SetDitheringWeightParam</CODE> function [SDK | System Updater]</A></H3>
3924<P><description>Changed the <CODE>SetDitheringWeightParam</CODE> function's arguments from pass-by-value to pass-by-reference.<br></description></P>
3925<HR>
3926<H3><A name="note33-101">Note 33-101: (Y2R) Added a <SPAN class="argument">stride</SPAN> argument to functions that transfer source data for conversion [SDK | System Updater]</A></H3>
3927<P><description>Added the ability to specify an offset to the following function that transfers the source data for conversion. This offset value is added independently of the single-transfer size.<br>
3928        <ul>
3929          <li><CODE>SetReceiving</CODE></li>
3930        </ul>
3931        If the offset is omitted, this function will behave as it did with previous versions of the CTR-SDK.<br></description></P>
3932<HR>
3933<H3><A name="KnownIssues_0_10_0_Release">Known Issues in the SDK 0.10.0 Release</A></H3>
3934<P>  None.</P>
3935<HR>
3936<H2 style="line-height: 0"><A name="sdk_0_10_0_Release%20SystemUpdater">CTR-SDK Version 0.10.0 Release SystemUpdater</A></H2>
3937<DIV style="text-align: right"><P style="line-height: 0">(2010/06/23)</P></DIV>
3938<HR>
3939<H3><A name="note32-01">Note 32-01: (AC) Revised the <CODE>AC_Connect</CODE> function [System Updater]</A></H3>
3940<P><description>Fixed the following problems with the <CODE>AC_Connect</CODE> function:
3941        <ul>
3942          <li>Fixed bug when connecting to an access point with a stealth SSID</li>
3943          <li>Keyless access points were assumed to use open system authentication and keyed access points were assumed to use shared key authentication, resulting in a bug where keyed open system authentication access points could not be connected to. This is now worked around by attempting an open system authentication connection on the third retry.</li>
3944        </ul>
3945      </description></P>
3946<HR>
3947<H3><A name="note32-02">Note 32-02: (AC) Revised the <CODE>AC_ConnectAsync</CODE> function [System Updater]</A></H3>
3948<P><description>Fixed a bug that caused connection attempts via the <CODE>AC_ConnectAsync</CODE> function to always fail if the same function had been used to connect and disconnect earlier.<br></description></P>
3949<HR>
3950<H3><A name="note32-03">Note 32-03: (AC) <CODE>AC_DebugSetNetworkSettingA</CODE> [System Updater]</A></H3>
3951<P><description>Changed the network setting slot names from A-C to 1-3. Changed function names accordingly. There have been no changes to arguments or behavior.<br></description></P>
3952<HR>
3953<H3><A name="note32-04">Note 32-04: (AC) Revised the <CODE>DebugSetNetworkSetting1</CODE> function [System Updater]</A></H3>
3954<P><description>Changed the destination to which the <CODE>AC_DebugSetNetworkSetting1</CODE> function writes network settings from the SD Card to NAND.<br></description></P>
3955<HR>
3956<H3><A name="note32-05">Note 32-05: (AC) Revised the WPA connection process [System Updater]</A></H3>
3957<P><description>Fixed bug where, after a successful WPA connection, data could not be sent or received.<br></description></P>
3958<HR>
3959<H3><A name="note32-06">Note 32-06: (AC) Fixed a scan bug that occurred after a failed connection attempt [System Updater]</A></H3>
3960<P><description>Fixed a bug where, after a failed attempt to connect to an access point, scan results would not be returned.<br></description></P>
3961<HR>
3962<H3><A name="note32-07">Note 32-07: (CAMERA) Revised the <CODE>Activate</CODE> function [SDK | System Updater]</A></H3>
3963<P><description>Fixed a bug that prevented the proper application of settings made during standby if <CODE>nn::camera::SELECT_OUT1_OUT2</CODE> or <CODE>nn::camera::SELECT_IN1_OUT2</CODE> was specified as an argument to the <CODE>nn::camera::Activate</CODE> function.<br> This revision causes an irregular shift in the timing of the two camera V-Sync signals immediately following the <CODE>Activate</CODE> function call. To suppress this shift, call the <CODE>SynchronizeVsyncTiming</CODE> function after <CODE>Activate</CODE>.<br></description></P>
3964<HR>
3965<H3><A name="note32-08">Note 32-08: (CAMERA) Revised the <CODE>SetAutoWhiteBalance</CODE> function [SDK | System Updater]</A></H3>
3966<P><description>Fixed a bug that caused the <CODE>SetAutoWhiteBalance</CODE> function to succeed when the white balance was not set to <CODE>WHITE_BALANCE_NORMAL</CODE>, even though it should have failed in this case.<br> This fix causes the <CODE>SetAutoWhiteBalance</CODE> function to behave as described in the Function Reference Manual.<br></description></P>
3967<HR>
3968<H3><A name="note32-09">Note 32-09: (CAMERA) Revised the <CODE>SetNoiseFilter</CODE> function [SDK | System Updater]</A></H3>
3969<P><description>Fixed a bug in the <CODE>SetNoiseFilter</CODE> function that, when the function was used to turn off the noise-reduction feature, either prevented the feature from being turned off or introduced image noise.<br></description></P>
3970<HR>
3971<H3><A name="note32-10">Note 32-10: (CAMERA) Revised the <CODE>SetTrimmingParams</CODE> and <CODE>SetTrimmingParamsCenter</CODE> functions [SDK|SystemUpdater]</A></H3>
3972<P><description>Fixed bugs in the <CODE>SetTrimmingParams</CODE> and <CODE>SetTrimmingParamsCenter</CODE> functions that prevented trimming from the top line and that shifted the first trimmed line up by one line.<br></description></P>
3973<HR>
3974<H3><A name="note32-11">Note 32-11: (CAMERA) Added support for the camera LED [SDK | System Updater]</A></H3>
3975<P><description>Added processing that lights up the camera LED when any camera is started by the <CODE>nn::camera::Activate</CODE> function.<br> The camera LED turns off when active cameras are put into standby mode.<br></description></P>
3976<HR>
3977<H3><A name="note32-12">Note 32-12: (CAMERA) Added a function to play the shutter sound [SDK | System Updater]</A></H3>
3978<P><description>Added the <CODE>nn::camera::PlayShutterSound</CODE> function to play the shutter sound and momentarily turn off the camera LED.<br></description></P>
3979<HR>
3980<H3><A name="note32-13">Note 32-13: (CAMERA/Y2R) Changed the <CODE>Initialize</CODE> function's return value [SDK | System Updater]</A></H3>
3981<P><description>Revised the <CODE>Initialize</CODE> function to return <CODE>false</CODE> when indicating that a camera or Y2R feature cannot be reused when it is already being used by another process.<br> You can only use such features when <CODE>true</CODE> is returned.<br></description></P>
3982<HR>
3983<H3><A name="note32-14">Note 32-14: (FS) Revised NAND and SD Memory Card error processing [System Updater]</A></H3>
3984<P><description>Fixed bug where the system would freeze after failed access to NAND or SD Card memory.<br> This fix also applies to attempts to write to a write-protected SD Card.<br></description></P>
3985<HR>
3986<H3><A name="note32-15">Note 32-15: (HID) Revised the <CODE>nn::fs::Directory::Read</CODE> function [System Updater]</A></H3>
3987<P><description>Fixed bug where the system would freeze if the <CODE>nn::fs::Directory::Read</CODE> function was run in a root directory with no entries.<br></description></P>
3988<HR>
3989<H3><A name="note32-16">Note 32-16: (FS) Revised <CODE>sdmc:</CODE> archives [SDK | System Updater]</A></A></H3>
3990<P><description>Formerly, attempts to access locations higher than 4GB in SD Memory Cards would sometimes cause invalid accesses, resulting in data and format corruption.<br> This problem was fixed.<br></description></P>
3991<HR>
3992<H3><A name="note32-17">Note 32-17: (FS) Added save data support [SDK | System Updater]</A></H3>
3993<P><description>Added the ability to access save data by specifying <CODE>data:/...</CODE> in the path.<br></description></P>
3994<HR>
3995<H3><A name="note32-18">Note 32-18: (FS) Added support for 8.3 filenames that only have lowercase characters [SDK | System Updater]</A></H3>
3996<P><description>To support the extended FAT specifications for Windows, a long path name can now be obtained as expected for any file or directory having an 8.3 path name that contains only lowercase characters on an SD Memory Card.<br> Previously, all entry names were recognized as uppercase characters based on the standard specification of FAT.<br></description></P>
3997<HR>
3998<H3><A name="note32-19">Note 32-19: (FS) Added support for add-on data [System Updater]</A></H3>
3999<P><description>Added the ability to access add-on data by specifying <CODE>extdata:/...</CODE> in the path.<br></description></P>
4000<HR>
4001<H3><A name="note32-20">Note 32-20: (GX) Changed LCD backlight-related settings [System Updater]</A></H3>
4002<P><description>Updated the LCD backlight-related parameters so that the active backlight control features (which reduce power consumption) are enabled by default.<br> This active backlight control can be turned On/Off and the brightness level can be changed using the <CODE>Config</CODE> tool.<br></description></P>
4003<HR>
4004<H3><A name="note32-21">Note 32-21: (GX) Added the <CODE>SetMemAccessPrioMode</CODE> function [SDK | System Updater]</A></H3>
4005<P><description>Added the <CODE>SetMemAccessPrioMode</CODE> function, which sets the access priority of the CPU and/or GPU when they access main memory.<br></description></P>
4006<HR>
4007<H3><A name="note32-22">Note 32-22: (GX) Fixed problem that caused vertical line noise to appear on screen [System Updater]</H3>
4008<P><description>Fixed bug where vertical line noise would appear on screen when the CPU attempted a large number of main memory accesses while camera(s) or other devices were being used.<br> (Note that this problem may still occur depending on the settings of the <CODE>SetMemAccessPrioMode</CODE> function, added in this version.)<br></description></P>
4009<HR>
4010<H3><A name="note32-23">Note 32-23: (HTTP/SSL) Added support for internal certificates [System Updater]</A></H3>
4011<P><description>Added support for device-internal CA and client certificates.<br> Also overhauled API functions for using these certificates.<br></description></P>
4012<HR>
4013<H3><A name="note32-24">Note 32-24: (MIDI) Added the MIDI library [SDK | System Updater]</A></H3>
4014<P><description>Added the MIDI library.<br></description></P>
4015<HR>
4016<H3><A name="note32-25">Note 32-25: (NET) Added wireless On/Off features [System Updater]</A></H3>
4017<P><description>Implemented feature to turn wireless on/off by pressing the Wi-Fi Button.<br> The wireless LED is lit when wireless is on, and blinks when a wireless signal is being sent.<br></description></P>
4018<HR>
4019<H3><A name="note32-26">Note 32-26: (OS) Fixed a bug where <CODE>Wait*</CODE> functions with a timeout would not return [System Updater]</A></H3>
4020<P><description>There was a bug where control would not return when using the <CODE>nn::os::WaitObject::Wait*</CODE> functions with a timeout.<br> This problem has been corrected.<br></description></P>
4021<HR>
4022<H3><A name="note32-27">Note 32-27: (OS) Revised the order in which synchronous objects release threads [System Updater]</A></H3>
4023<P><description>Fixed a bug where, when multiple threads were waiting for a single synchronous object, threads would not wake up in order of priority.<br></description></P>
4024<HR>
4025<H3><A name="note32-28">Note 32-28: (OS) Modified the length of time until power-off [System Updater]</A></H3>
4026<P><description>Changed the length of time the Power Button must be held down before the system will power off.<br> Hold the Power Button down for at least 2 seconds to power off.<br> The system will power off 4 seconds after that.<br></description></P>
4027<HR>
4028<H3><A name="note32-29">Note 32-29: (SND) High-frequency sound when headphones are inserted [System Updater]</A></H3>
4029<P><description>Fixed bug that produced a high-pitched whine while the headphone jack was inserted, which would continue if the jack was only inserted partway.<br></description></P>
4030<HR>
4031<H3><A name="note32-30">Note 32-30: (SND) Added a function for determining whether headphones have been inserted [SDK | System Updater]</A></H3>
4032<P><description>Added the <CODE>nn::snd::GetHeadphoneStatus</CODE> function, which gets the headphone connection state.<br></description></P>
4033<HR>
4034<H3><A name="note32-31">Note 32-31: (Socket) Changed header files [SDK]</A></H3>
4035<P><description>Socket headers previously depended on headers in <CODE>nn/net</CODE> and below, but this dependency has been removed.<br> In line with this change, symbols beginning with <CODE>NSOC</CODE> can no longer be used.<br><br> <CODE>nn/net</CODE> remains for compatibility purposes, but will be deleted in future.<br></description></P>
4036<HR>
4037<H3><A name="note32-32">Note 32-32: (Socket/UDS) Fixed problem where system would deadlock under high load [System Updater]</A></H3>
4038<P><description>Fixed a bug where the system would deadlock when under load due to very frequent sending and receiving.<br></description></P>
4039<HR>
4040<H3><A name="note32-33">Note 32-33: (UDS) Added support for <CODE>Audience</CODE> mode [System Updater]</A></H3>
4041<P><description>Added ability to connect to a UDS network as an audience member (spectator) by setting <CODE>CONNECT_AS_AUDIENCE</CODE> with the <CODE>ConnectNetwork</CODE> function.<br></description></P>
4042<HR>
4043<H3><A name="note32-34">Note 32-34: (UDS) Implemented <CODE>EjectAudience</CODE> function [System Updater]</A></H3>
4044<P><description>The <CODE>EjectAudience</CODE> function has now been implemented and can be used. Formerly it had not actually been implemented within the library and would always return an error.<br></description></P>
4045<HR>
4046<H3><A name="note32-35">Note 32-35: (UDS) Fixed bug where <CODE>SetApplicationDataToBeacon</CODE> and <CODE>GetApplicationDataFromBeacon</CODE> functions could not set or get data [System Updater]</A></H3>
4047<P><description>Fixed bug where data could not be set or obtained when setting arbitrary data to a beacon using the <CODE>SetApplicationDataToBeacon</CODE> function, or when getting data from a connected master beacon using the <CODE>GetApplicationDataFromBeacon</CODE> function.<br></description></P>
4048<HR>
4049<H3><A name="note32-36">Note 32-36: (UDS) Reduced processing load when receiving [System Updater]</A></H3>
4050<P><description>Reduced processing load when receiving UDS communication.<br></description></P>
4051<HR>
4052<H3><A name="note32-37">Note 32-37: (ULCD) Added support for automatically disabling stereoscopic display [System Updater]</A></H3>
4053<P><description>Added support to automatically turn the parallax barrier off and disable stereoscopic display when the 3D depth value is 0.<br></description></P>
4054<HR>
4055<H3><A name="note32-38">Note 32-38: (Y2R) Changed arguments to the <CODE>SetDitheringWeightParam</CODE> function [SDK | System Updater]</A></H3>
4056<P><description>Changed the <CODE>SetDitheringWeightParam</CODE> function's arguments from pass-by-value to pass-by-reference.<br></description></P>
4057<HR>
4058<H3><A name="note32-39">Note 32-39: (Y2R) Added a <SPAN class="argument">stride</SPAN> argument to functions that transfer source data for conversion [SDK | System Updater]</A></H3>
4059<P><description>Added the ability to specify an offset to the following function that transfers the source data for conversion. This offset value is added independently of the single-transfer size.<br>
4060        <ul>
4061          <li><CODE>SetReceiving</CODE></li>
4062        </ul>
4063        If the offset is omitted, this function will behave as it did with previous versions of the CTR-SDK.<br></description></P>
4064<HR>
4065<H3><A name="KnownIssues_0_10_0_Release%20SystemUpdater">Known Issues with SDK 0.10.0 Release System Updater</A></H3>
4066<knownissues><description>
4067        <ul>
4068          <li>The debugger cannot import CIA files.</li>
4069        </ul>
4070      </description></knownissues><HR>
4071<H2 style="line-height: 0"><A name="sdk_0_10_0_Release%20SampleDemos">CTR-SDK Version 0.10.0 Release SampleDemos</A></H2>
4072<DIV style="text-align: right"><P style="line-height: 0">(2010/06/23)</P></DIV>
4073<HR>
4074<H3><A name="note31-01">Note 31-01: (FS) Added features to the multifeature demos [Sample Demos]</A></H3>
4075<P><description>One of the multifeature demos (<CODE>demo1</CODE>) has been modified to read and write save data (<CODE>data:/</CODE>).<br></description></P>
4076<HR>
4077<H3><A name="note31-02">Note 31-02: (GX) Sped up the <CODE>ScreenCapture</CODE> sample and fixed a bug in it [Sample Demos]</A></H3>
4078<P><description>Writing to an SD Card in the <CODE>ScreenCapture</CODE> sample has been accelerated by 15-20% by using an intermediate buffer. (The caller must provide the intermediate buffer.)<br>The following bugs were also fixed.
4079        <ul>
4080          <li>Fixed bug where the last 5 bytes of the BMP header template (<CODE>u8</CODE> array) used when writing were not initialized.</li>
4081          <li>Fixed bug where a display buffer allocated for saving could not be released after a failed attempt to save the display buffer. After repeated save failures, the system would halt due to insufficient memory.</li>
4082        </ul>
4083      </description></P>
4084<HR>
4085<H3><A name="note31-03">Note 31-03: (GX) Added graphics demos [Sample Demos]</A></H3>
4086<P><description>Added the following samples related to the graphics library.
4087        <ul>
4088          <li><CODE>TriangleSimpleCmd</CODE>: Demo that uses PICA register macro headers to directly create a 3D command buffer and render a triangle.</li>
4089          <li><CODE>FragmentLightingSimpleCmd</CODE>: Demo that uses PICA register macro headers to directly create a 3D command buffer and perform simple fragment lighting.</li>
4090        </ul>
4091      </description></P>
4092<HR>
4093<H3><A name="note31-04">Note 31-04: (HIO) Revised the PC-side <CODE>HostIO</CODE> sample [Sample Demos]</A></H3>
4094<P><description>Changed the libraries used by the sample, in line with moving the PC-side <CODE>HostIO</CODE> library to the <CODE>$(KMC_CTRHOSTIO)/SDK</CODE> directory.<br></description></P>
4095<HR>
4096<H3><A name="note31-05">Note 31-05: (RDT) Added RDT sample demos [Sample Demos]</A></H3>
4097<P><description>Added the <CODE>basic</CODE> sample demo, which uses the RDT library to perform very basic communication.<br></description></P>
4098<HR>
4099<H3><A name="note31-06">Note 31-06: (SND) Added sample demos [Sample Demos]</A></H3>
4100<P><description>Added the following samples related to the SND library.
4101        <ul>
4102          <li><CODE>FilterSample</CODE>: Demo that uses IIR filters.</li>
4103          <li><CODE>BcwavPlayer</CODE>: Demo that handles BCWAV files.</li>
4104          <li><CODE>AdpcmEncoder</CODE>: Demo of the DSP-ADPCM encoder.</li>
4105          <li><CODE>3DSurround</CODE>: Demo of 3D surround sound.</li>
4106        </ul>
4107      </description></P>
4108<HR>
4109<H3><A name="note31-07">Note 31-07: (UGC) Added simple sample of the profanity-check library [Sample Demos]</A></H3>
4110<P><description>Added the <CODE>ngc_simple</CODE> demo, which performs a profanity check without specifying a region.<br></description></P>
4111<HR>
4112<H3><A name="note31-08">Note 31-08: (UGC) Added simple sample of the blacklist library [Sample Demos]</A></H3>
4113<P><description>Added the <CODE>ubl_simple</CODE> demo, which registers and checks author information.<br></description></P>
4114<HR>
4115<H3><A name="KnownIssues_0_10_0_Release%20SampleDemos">Known Issues with SDK 0.10.0 Release Sample Demos</A></H3>
4116<knownissues><description>
4117        <ul>
4118          <li>There is a bug in the <CODE>Release - small</CODE> build of <CODE>uds/com_demo1</CODE> that prevents scans from working properly.<br> Communication works properly when using other build options.</li>
4119          <li>The <CODE>camera/Simple</CODE> demo freezes on rare occasions if the settings are changed by pressing the buttons repeatedly.</li>
4120        </ul>
4121      </description></knownissues><HR>
4122<H2 style="line-height: 0"><A name="sdk_0_9_7_Release">CTR-SDK Version 0.9.7 Release</A></H2>
4123<DIV style="text-align: right"><P style="line-height: 0">(2010/05/26)</P></DIV>
4124<HR>
4125<H3><A name="KnownIssues_0_9_7_Release">Known Issues in the SDK 0.9.7 Release</A></H3>
4126<knownissues><description>
4127        <ul>
4128          <li>The <CODE>Seek</CODE> functions of file control classes under <CODE>nn::fs</CODE> do not operate properly when <CODE>nn::fs::POSITION_BASE_END</CODE> is specified as an argument.</li>
4129          <li>The <CODE>nn::fs::FileReader::TryInitialize</CODE> function sometimes returns an error depending on the folder layout or the content of files in the ROM or on an SD Card.</li>
4130          <li>The <CODE>nn::ac::CTR::DebugFlushNetworkSetting</CODE> function does not operate correctly unless an SD Card is inserted.</li>
4131        </ul>
4132      </description></knownissues><HR>
4133<H2 style="line-height: 0"><A name="sdk_0_9_7_Release%20SystemUpdater">CTR-SDK Version 0.9.7 Release SystemUpdater</A></H2>
4134<DIV style="text-align: right"><P style="line-height: 0">(2010/05/26)</P></DIV>
4135<HR>
4136<H3><A name="note29-01">Note 29-01: (SND) Improved sound pressure levels in headphone output and removed distortion [System Updater]</A></H3>
4137<P><description>Fixed a bug that caused the audio output by headphones to be very quiet and/or distorted.<br></description></P>
4138<HR>
4139<H3><A name="KnownIssues_0_9_7_Release%20SystemUpdater">Known Issues with System Updater in the SDK 0.9.7 Release</A></H3>
4140<P>  None.</P>
4141<HR>
4142<H2 style="line-height: 0"><A name="sdk_0_9_6_Release">CTR-SDK Version 0.9.6 Release</A></H2>
4143<DIV style="text-align: right"><P style="line-height: 0">(2010/05/24)</P></DIV>
4144<HR>
4145<H3><A name="note28-01">Note 28-01: (GX) Fixed a bug in the texture cache flush [SDK]</A></H3>
4146<P><description>There was a bug where the texture cache was not flushed correctly. This bug was introduced in the CTR-SDK 0.9.2, but has been fixed.<br></description></P>
4147<HR>
4148<H3><A name="KnownIssues_0_9_6_Release">Known Issues with SDK 0.9.6 Release</A></H3>
4149<knownissues><description>
4150        <ul>
4151          <li>The <CODE>Seek</CODE> functions of file control classes under <CODE>nn::fs</CODE> do not operate properly when <CODE>nn::fs::POSITION_BASE_END</CODE> is specified as an argument.</li>
4152          <li>The <CODE>nn::fs::FileReader::TryInitialize</CODE> function sometimes returns an error depending on the folder layout or the content of files in the ROM or on an SD Card.</li>
4153          <li>The <CODE>nn::ac::CTR::DebugFlushNetworkSetting</CODE> function does not operate correctly unless an SD Card is inserted.</li>
4154        </ul>
4155      </description></knownissues><HR>
4156<H2 style="line-height: 0"><A name="sdk_0_9_6_Release%20SystemUpdater">CTR-SDK Version 0.9.6 Release SystemUpdater</A></H2>
4157<DIV style="text-align: right"><P style="line-height: 0">(2010/05/24)</P></DIV>
4158<HR>
4159<H3><A name="note27-01">Note 27-01: (CAMERA/Y2R) Fixed a bug where function calls would not return [System Updater]</A></H3>
4160<P><description>There was a bug where calling the following functions in the <CODE>camera</CODE> and <CODE>y2r</CODE> libraries would occasionally not return. This has been fixed.<br>
4161        <ul>
4162          <li><CODE>nn::camera::SetReceiving</CODE></li>
4163          <li><CODE>nn::camera::SetReceivingAuto</CODE></li>
4164          <li><CODE>nn::camera::SetReceivingRgbAuto</CODE></li>
4165          <li><CODE>nn::y2r::SetReceiving</CODE></li>
4166          <li><CODE>nn::y2r::SetSendingY</CODE></li>
4167          <li><CODE>nn::y2r::SetSendingU</CODE></li>
4168          <li><CODE>nn::y2r::SetSendingV</CODE></li>
4169          <li><CODE>nn::y2r::SetSendingYuv</CODE></li>
4170        </ul>
4171        There was a bug where calling the following functions in the <CODE>camera</CODE> library would occasionally not capture. This has been fixed.<br>
4172        <ul>
4173          <li><CODE>nn::camera::SetReceivingAuto</CODE></li>
4174          <li><CODE>nn::camera::SetReceivingRgbAuto</CODE></li>
4175        </ul>
4176      </description></P>
4177<HR>
4178<H3><A name="KnownIssues_0_9_6_Release%20SystemUpdater">Known Issues with System Updater in the SDK 0.9.6 Release</A></H3>
4179<P>  None.</P>
4180<HR>
4181<H2 style="line-height: 0"><A name="sdk_0_9_5_Release">CTR-SDK Version 0.9.5 Release</A></H2>
4182<DIV style="text-align: right"><P style="line-height: 0">(2010/05/20)</P></DIV>
4183<HR>
4184<H3><A name="note26-01">Note 26-01: (SND) Fixed a bug that occurred during a Voice volume change [SDK]</A></H3>
4185<P><description>Fixed a bug that caused noise to occur if the volume changed from approximately 0.005 to a smaller value when the <CODE>nn::snd::Voice</CODE> class was used for playback.<br></description></P>
4186<HR>
4187<H3><A name="KnownIssues_0_9_5_Release">Known Issues in the SDK 0.9.5 Release</A></H3>
4188<knownissues><description>
4189        <ul>
4190          <li>The <CODE>Seek</CODE> functions of file control classes under <CODE>nn::fs</CODE> do not operate properly when <CODE>nn::fs::POSITION_BASE_END</CODE> is specified as an argument.</li>
4191          <li>The <CODE>nn::fs::FileReader::TryInitialize</CODE> function sometimes returns an error depending on the folder layout or the content of files in the ROM or on an SD Card.</li>
4192          <li>The <CODE>nn::ac::CTR::DebugFlushNetworkSetting</CODE> function does not operate correctly unless an SD Card is inserted.</li>
4193        </ul>
4194      </description></knownissues><HR>
4195<H2 style="line-height: 0"><A name="sdk_0_9_4_Release">CTR-SDK Version 0.9.4 Release</A></H2>
4196<DIV style="text-align: right"><P style="line-height: 0">(2010/05/19)</P></DIV>
4197<HR>
4198<H3><A name="note25-01">Note 25-01: (SND) Fixed a Volume Mixer bug [SDK]</A></H3>
4199<P><description>Fixed a bug in the <CODE>SetVolume</CODE> function (<CODE>nn::snd::Voice</CODE>) that caused noise to occur when there was a significant change in volume.<br></description></P>
4200<HR>
4201<H3><A name="KnownIssues_0_9_4_Release">Known Issues in the SDK 0.9.4 Release</A></H3>
4202<knownissues><description>
4203        <ul>
4204          <li>The <CODE>Seek</CODE> functions of file control classes under <CODE>nn::fs</CODE> do not operate properly when <CODE>nn::fs::POSITION_BASE_END</CODE> is specified as an argument.</li>
4205          <li>The <CODE>nn::fs::FileReader::TryInitialize</CODE> function sometimes returns an error depending on the folder layout or the content of files in the ROM or on an SD Card.</li>
4206          <li>The <CODE>nn::ac::CTR::DebugFlushNetworkSetting</CODE> function does not operate correctly unless an SD Card is inserted.</li>
4207        </ul>
4208      </description></knownissues><HR>
4209<H2 style="line-height: 0"><A name="sdk_0_9_4_Release%20SystemUpdater">CTR-SDK Version 0.9.4 Release SystemUpdater</A></H2>
4210<DIV style="text-align: right"><P style="line-height: 0">(2010/05/19)</P></DIV>
4211<HR>
4212<H3><A name="note24-01">Note 24-01: (MCU) Changed the 3D LED to always be illuminated [System Updater]</A></H3>
4213<P><description>As a special measure for E3, changed the 3D LED to always be illuminated.<br></description></P>
4214<HR>
4215<H3><A name="note24-02">Note 24-02: (MCU) Fixed a bug that caused the volume to increase temporarily at indeterminate times [System Updater]</A></H3>
4216<P><description>Fixed a bug that caused the volume to increase temporarily.<br></description></P>
4217<HR>
4218<H3><A name="note24-03">Note 24-03: (MCU) Fixed a bug that caused the power and LCDs to turn off, and resets to occur, at indeterminate times [System Updater]</A></H3>
4219<P><description>Fixed a bug that caused the power and LCD to suddenly turn off and the system to reset.<br></description></P>
4220<HR>
4221<H3><A name="note24-04">Note 24-04: (MCU) Changed the time to power off when the Power Button is held down [System Updater]</A></H3>
4222<P><description>As a special measure for E3, changed the Power Button to turn off the power when it is held down for one second.<br></description></P>
4223<HR>
4224<H3><A name="note24-05">Note 24-05: (OS) Fixed a bug that caused the firmware to halt when running for a long time [System Updater]</A></H3>
4225<P><description>Fixed a bug that caused the firmware to halt after running for a long time.<br> When this bug occurs, execution halts with a red screen.<br></description></P>
4226<HR>
4227<H3><A name="KnownIssues_0_9_4_Release%20SystemUpdater">Known Issues with System Updater in the SDK 0.9.4 Release</A></H3>
4228<P>  None.</P>
4229<HR>
4230<H2 style="line-height: 0"><A name="sdk_0_9_3_Release">CTR-SDK Version 0.9.3 Release</A></H2>
4231<DIV style="text-align: right"><P style="line-height: 0">(2010/05/12)</P></DIV>
4232<HR>
4233<H3><A name="note23-01">Note 23-01: (GX) Added header files with macros for PICA register information [SDK]</A></H3>
4234<P><description>Added a header file with macro definitions for addresses and other PICA register information based on the <I>DMPGL 2.0 System API Specifications</I>.<br> This is not linked by default and must be directly included if it is needed.<br></description></P>
4235<HR>
4236<H3><A name="note23-02">Note 23-02: (GX) Updated documentation [SDK]</A></H3>
4237<P><description>Updated the following documentation. For details on what was updated, see each document's Revision History.
4238        <ul>
4239          <li>DMPGL20_programming_guide.pdf</li>
4240          <li>DMPGL20_specification.pdf</li>
4241          <li><CODE>DMPGL20_system_API_specification.pdf</CODE></li>
4242          <li>VertexShaderReferenceManual.pdf</li>
4243        </ul>
4244      </description></P>
4245<HR>
4246<H3><A name="note23-03">Note 23-03: (GX) Added a way to get the address of data for bound textures [SDK]</A></H3>
4247<P><description>Added a new parameter, <CODE>GL_TEXTURE_DATA_ADDR_DMP</CODE>, that can be used with the <CODE>glGetTexParameteriv</CODE> function.<br> This gets the address of the bound texture object.<br> Set <SPAN class="argument">params</SPAN> equal to a 6-element array when <SPAN class="argument">target</SPAN> is <CODE>GL_TEXTURE_CUBE_MAP</CODE>. The <SPAN class="argument">params</SPAN> argument gets the following addresses in order: <CODE>GL_TEXTURE_CUBE_MAP_POSITIVE_X</CODE>, <CODE>GL_TEXTURE_CUBE_MAP_NEGATIVE_X</CODE>, <CODE>GL_TEXTURE_CUBE_MAP_POSITIVE_Y</CODE>, <CODE>GL_TEXTURE_CUBE_MAP_NEGATIVE_Y</CODE>, <CODE>GL_TEXTURE_CUBE_MAP_POSITIVE_Z</CODE>, and <CODE>GL_TEXTURE_CUBE_MAP_NEGATIVE_Z</CODE>.</P>
4248<HR>
4249<H3><A name="note23-04">Note 23-04: (GX) Fixed a bug that prevented fixed vertex attributes from being updated properly when program objects were switched [SDK]</A></H3>
4250<P><description>Fixed a bug that prevented fixed vertex attributes included in vertex data from being updated properly when program objects were switched.<br></description></P>
4251<HR>
4252<H3><A name="note23-05">Note 23-05: (GX) Added a way to get the address of vertex data for bound vertex buffer objects [SDK]</A></H3>
4253<P><description>Updated the <CODE>glGetBufferParameteriv</CODE> function so that you can set <SPAN class="argument">pname</SPAN> equal to <CODE>GL_BUFFER_DATA_ADDR_DMP</CODE> to get the address of vertex data for the bound vertex buffer object.<br></description></P>
4254<HR>
4255<H3><A name="KnownIssues_0_9_3_Release">Known Issues in the SDK 0.9.3 Release</A></H3>
4256<knownissues><description>
4257        <ul>
4258          <li>The <CODE>Seek</CODE> functions of file control classes under <CODE>nn::fs</CODE> do not operate properly when <CODE>nn::fs::POSITION_BASE_END</CODE> is specified as an argument.</li>
4259          <li>The <CODE>nn::fs::FileReader::TryInitialize</CODE> function sometimes returns an error depending on the folder layout or the content of files in the ROM or on an SD Card.</li>
4260          <li>The <CODE>nn::ac::CTR::DebugFlushNetworkSetting</CODE> function does not operate correctly unless an SD Card is inserted.</li>
4261        </ul>
4262      </description></knownissues><HR>
4263<H2 style="line-height: 0"><A name="sdk_0_9_3_Release%20SystemUpdater">CTR-SDK Version 0.9.3 Release SystemUpdater</A></H2>
4264<DIV style="text-align: right"><P style="line-height: 0">(2010/05/12)</P></DIV>
4265<HR>
4266<H3><A name="note22-01">Note 22-01: (Miscellaneous) Fixed a bug that caused program execution to freeze in some environments [System Updater]</A></H3>
4267<P><description>Fixed a bug that caused the application to freeze when it was started at particular times in some environments.<br></description></P>
4268<HR>
4269<H3><A name="KnownIssues_0_9_3_Release%20SystemUpdater">Known Issues with System Updater in the SDK 0.9.3 Release</A></H3>
4270<P>  None.</P>
4271<HR>
4272<H2 style="line-height: 0"><A name="sdk_0_9_2_Release">CTR-SDK Version 0.9.2 Release</A></H2>
4273<DIV style="text-align: right"><P style="line-height: 0">(2010/05/07)</P></DIV>
4274<HR>
4275<H3><A name="note21-01">Note 21-01: (CAMERA) Calibration data definitions for stereo cameras [SDK | System Updater]</A></H3>
4276<P><description>Defined formats of calibration data required for correcting the position of stereo cameras and added functions to access data. <br>The following functions were added.
4277        <ul>
4278          <li><CODE>GetStereoCameraCalibrationData</CODE> function</li>
4279          <li><CODE>GetParallaxOnChart</CODE> function</li>
4280          <li><CODE>GetStereoCameraCalibrationMatrix</CODE> function</li>
4281        </ul>
4282      </description></P>
4283<HR>
4284<H3><A name="note21-02">Note 21-02: (GX) Updated the DMPGL documentation [SDK]</A></H3>
4285<P><description>Updated the following documents.
4286        <ul>
4287          <li>Updated <CODE>DMPGL20_load_pattern_setting.pdf</CODE>.</li>
4288          <li>Updated <CODE>DMPGL20_programming_guide.pdf</CODE>.</li>
4289          <li>Updated <CODE>DMPGL20_specification.pdf</CODE>.</li>
4290          <li>Updated <CODE>DMPGL20_system_API_specification.pdf</CODE>.</li>
4291          <li>Updated <CODE>VertexShaderReferenceManual.pdf</CODE>.</li>
4292        </ul>
4293      </description></P>
4294<HR>
4295<H3><A name="note21-03">Note 21-03: (GX) Removed error checks for Release builds [SDK]</A></H3>
4296<P><description>Revised each of the GL and NNGX functions to prevent GL errors from occurring in Release builds.<br> (Behavior is undefined when a process causes an error.)<br></description></P>
4297<HR>
4298<H3><A name="note21-04">Note 21-04: (GX) Fixed bugs in <CODE>glFramebufferRenderbuffer</CODE> [SDK]</A></H3>
4299<P><description>Fixed a bug that prevented an error from occurring when a depth buffer was attached to a color attachment point (<CODE>GL_COLOR_ATTACHMENT0</CODE>).<br> (A <CODE>GL_INVALID_OPERATION</CODE> error is generated.)<br></description></P>
4300<HR>
4301<H3><A name="note21-05">Note 21-05: (GX) Fixed a problem that caused invalid format recognition when <CODE>glTexImage2D</CODE> was called multiple times [SDK]</A></H3>
4302<P><description>Fixed a bug that prevented the correct format from being recognized when <CODE>glTexImage2D</CODE> was called multiple times with only the <CODE>type</CODE> argument changed.<br></description></P>
4303<HR>
4304<H3><A name="note21-06">Note 21-06: (GX) Added the <CODE>nngxGetCommandGenerationMode</CODE> function [SDK]</A></H3>
4305<P><description>Added a new function to get the current command output mode (set by the <CODE>nngxSetCommandGenerationMode</CODE> function).<br></description></P>
4306<HR>
4307<H3><A name="note21-07">Note 21-07: (GX) Fixed a bug that caused only 239 lines to be displayed on the lower screen [SDK]</A></H3>
4308<P><description>Fixed a bug that prevented the bottom line of pixels from being displayed on the lower screen of the TS board.<br></description></P>
4309<HR>
4310<H3><A name="note21-08">Note 21-08: (GX) Fixed a bug that caused execution to hang when no vertex attributes used vertex arrays [SDK]</A></H3>
4311<P><description>Fixed a problem that caused the GPU to hang when every vertex attribute used was a constant (specified by <CODE>glVertexAttrib*</CODE>).<br></description></P>
4312<HR>
4313<H3><A name="note21-09">Note 21-09: (HID) Added support for the Classic Controller PRO for development tools [SDK]</A></H3>
4314<P><description>Added support for the Classic Controller PRO for development tools.<br> You can only use this controller if it is connected to a TS board when the system starts up.<br> You can get input values with the <CODE>DebugPadReader</CODE> class.<br> The analog sticks are calibrated at startup and when the following buttons are pressed simultaneously.<br>
4315        <ul>
4316          <li>The A Button, + Button, - Button, and Left on the +Control Pad.</li>
4317        </ul>
4318        Do not touch the Slide Pad while it is being calibrated.<br></description></P>
4319<HR>
4320<H3><A name="note21-10">Note 21-10: (SND) Fixed sound distortion [SDK]</A></H3>
4321<P><description>Fixed a problem that caused distorted sounds to be played back.<br></description></P>
4322<HR>
4323<H3><A name="note21-11">Note 21-11: (SND) Fixed a bug that caused all sound playback to stop when neither a loop or buffer jump was specified [SDK]</A></H3>
4324<P><description>Fixed a bug that caused all voices to stop during DSP sound playback if there is no specified loop or buffer jump.<br></description></P>
4325<HR>
4326<H3><A name="note21-12">Note 21-12: (TOOL) Added <CODE>DevMenu</CODE> [SDK]</A></H3>
4327<P><description>Added the <CODE>DevMenu</CODE> tool, which can import and execute CIA files from an SD Card.<br></description></P>
4328<HR>
4329<H3><A name="note21-13">Note 21-13: (TOOL) Updated the shader assembly language [SDK]</A></H3>
4330<P><description>Changed the shader assembly language as follows.
4331        <ul>
4332          <li>Added a feature to specify a single register to <CODE>bind_symbol</CODE>.<br> <CODE>(#pragma bind_symbol(symbol name, register id))</CODE></li>
4333        </ul>
4334      </description></P>
4335<HR>
4336<H3><A name="note21-14">Note 21-14: (ULCD) Changed prerequisites [SDK]</A></H3>
4337<P><description>Adjusted the following conditions assumed by internal library calculations.<br> These values have not been set in stone and may be fine-tuned later.<br>
4338        <ul>
4339          <li>Inter-eye distance<br> This was previously 65 mm and is now 62 mm.</li>
4340          <li>Distance between the viewer's eyes and the display<br> This was previously 290 mm and is now 289 mm.</li>
4341          <li>The maximum depth that the human eye can naturally experience three dimensions<br> This was previously 29.49 mm and has been revised to 30.96 mm.</li>
4342      </ul>
4343      </description></P>
4344<HR>
4345<H3><A name="note21-15">Note 21-15: (ULCD) Added macro definitions that specify the display in autostereoscopic mode [SDK]</A></H3>
4346<P><description>Defined different, easy-to-understand macro names that specify the display to bind when autostereoscopy is in use.<br> (The existing macros can also be used as before.)<br>
4347        <ul>
4348          <li><CODE>NN_GX_DISPLAY0</CODE> corresponds to <CODE>NN_GX_DISPLAY0_LEFT</CODE></li>
4349          <li><CODE>NN_GX_DISPLAY0_EXT</CODE> corresponds to <CODE>NN_GX_DISPLAY0_RIGHT</CODE></li>
4350        </ul>
4351      </description></P>
4352<HR>
4353<H3><A name="KnownIssues_0_9_2_Release">Known Issues with SDK 0.9.2 Release</A></H3>
4354<knownissues><description>
4355        <ul>
4356          <li>The <CODE>Seek</CODE> functions of file control classes under <CODE>nn::fs</CODE> do not operate properly when <CODE>nn::fs::POSITION_BASE_END</CODE> is specified as an argument.</li>
4357          <li>The <CODE>nn::fs::FileReader::TryInitialize</CODE> function sometimes returns an error depending on the folder layout or the content of files in the ROM or on an SD Card.</li>
4358          <li>The <CODE>nn::ac::CTR::DebugFlushNetworkSetting</CODE> function does not operate correctly unless an SD Card is inserted.</li>
4359        </ul>
4360      </description></knownissues><HR>
4361<H2 style="line-height: 0"><A name="sdk_0_9_2_Release%20SystemUpdater">CTR-SDK Version 0.9.2 Release: SystemUpdater</A></H2>
4362<DIV style="text-align: right"><P style="line-height: 0">(2010/05/07)</P></DIV>
4363<HR>
4364<H3><A name="note20-01">Note 20-01: (OS) Added support for debugging CIA files [System Updater]</A></H3>
4365<P><description>The debugger can now import and debug CIA files.<br> To use this feature, you need PARTNER-CTR/S version 2010/05/06 or later.<br> However, the CIA import feature in PARTNER-CTR/S version 2010/05/06 is still in evaluation; official support is planned for the next release of PARTNER-CTR/S.<br></description></P>
4366<HR>
4367<H3><A name="note20-02">Note 20-02: (OS) Fixed a bug that caused the debugger to hang when loading a process [System Updater]</A></H3>
4368<P><description>Fixed a bug that caused the debugger to hang while loading applications that run together with multiple processes.<br></description></P>
4369<HR>
4370<H3><A name="note20-03">Note 20-03: (UDS) Fixed a bug that prevented Client nodes from reconnecting [System Updater]</A></H3>
4371<P><description>Fixed a bug that prevented Client nodes from reconnecting under particular conditions.<br></description></P>
4372<HR>
4373<H3><A name="note20-04">Note 20-04: (UDS) Fixed a bug that corrupted Master management data when a Client failed to connect [System Updater]</A></H3>
4374<P><description>Fixed a bug that was found to corrupt some network management data held by the Master node when a Client node failed to connect.<br></description></P>
4375<HR>
4376<H3><A name="KnownIssues_0_9_2_Release%20SystemUpdater">Known Issues with System Updater in SDK 0.9.2 Release</A></H3>
4377<P>  None.</P>
4378<HR>
4379<H2 style="line-height: 0"><A name="sdk_0_9_2_Release%20SampleDemos">CTR-SDK Version 0.9.2 Release SampleDemos</A></H2>
4380<DIV style="text-align: right"><P style="line-height: 0">(2010/05/07)</P></DIV>
4381<HR>
4382<H3><A name="note19-01">Note 19-01: (GX) Added <CODE>ScreenCapture</CODE> sample demos [Sample Demos]</A></H3>
4383<P><description>Added <CODE>ScreenCapture</CODE> samples that output the content of the specified display buffer to an SD Card.<br></description></P>
4384<HR>
4385<H3><A name="KnownIssues_0_9_2_Release%20SampleDemos">Known Issues with SDK 0.9.2 Release Sample Demos</A></H3>
4386<knownissues><description>
4387        <ul>
4388          <li>There is a bug in the <CODE>Release - small</CODE> build of <CODE>demo1</CODE> where triangles do not render to the upper screen.<br> Triangles render properly when using other build options.</li>
4389          <li>There is a bug in the <CODE>Release - small</CODE> build of <CODE>uds/com_demo1</CODE> that prevents scans from working properly.<br> Communication works properly when using other build options.</li>
4390          <li>There is a bug in the <CODE>Release - small</CODE> build of <CODE>gx/Api/RenderToTexture</CODE> that causes extremely slow rendering speeds.<br> There is no problem when using other build options.</li>
4391          <li>The <CODE>camera/Simple</CODE> demo freezes on rare occasions if the settings are changed by pressing the buttons repeatedly.</li>
4392        </ul>
4393      </description></knownissues><HR>
4394<H2 style="line-height: 0"><A name="sdk_0_9_1_Release">CTR-SDK Version 0.9.1 Release</A></H2>
4395<DIV style="text-align: right"><P style="line-height: 0">(2010/04/23)</P></DIV>
4396<HR>
4397<H3><A name="note18-01">Note 18-01: (OS) Fixed bugs for file read and write operations [<B>SDK</B>]</A></H3>
4398<P><description>Fixed a bug that caused the following symptoms when the file system was used to perform a read or a write operation of data of certain sizes to or from certain addresses.
4399        <ul>
4400          <li>The operation would never return.</li>
4401          <li>Some of the transferred data would be corrupted.</li>
4402        </ul>
4403      </description></P>
4404<HR>
4405<H3><A name="note18-02">Note 18-02: (SND) Changed the DSP sound specifications [<B>SDK</B>]</A></H3>
4406<P><description>The update period for sound parameters was changed to approximately 5 milliseconds.<br> The maximum number of allocatable voices has also been changed to 24.<br></description></P>
4407<HR>
4408<H3><A name="note18-03">Note 18-03: (TOOL) Added <CODE>ctr_makesimplecia32.exe</CODE> [<B>SDK</B>]</A></H3>
4409<P><description>Added the <CODE>ctr_makesimplecia32.exe</CODE> tool, which is used to generate <CODE>.cia</CODE> files.<br> In the future, <CODE>.cia</CODE> files will be used to import NAND applications. However, data in this format cannot yet be used.<br></description></P>
4410<HR>
4411<H3><A name="note18-04">Note 18-04: (UDS) Revised the <CODE>nn::uds::Finalize</CODE> function to finalize status update events [<B>SDK</B>]</A></H3>
4412<P><description>The <CODE>nn::uds::Finalize</CODE> function has been revised so that it now finalizes status update events that were initialized using <CODE>nn::uds::Initialize</CODE>.<br></description></P>
4413<HR>
4414<H3><A name="note18-05">Note 18-05: (UDS) Eliminated use of <CODE>std::vector</CODE> by the library [<B>SDK</B>]</A></H3>
4415<P><description>It was discovered that the UDS library used <CODE>std::vector</CODE>. The library has been revised to eliminate its use of <CODE>std::vector</CODE>.<br></description></P>
4416<HR>
4417<H3><A name="KnownIssues_0_9_1_Release">Known Issues with SDK 0.9.1 Release</A></H3>
4418<knownissues><description>
4419        <ul>
4420          <li>There is a bug that causes distorted sound playback roughly once every 30 times after the TS board is powered on.<br> If this occurs, noise will continue until the board is powered off.</li>
4421          <li>The lowest line on the lower LCD does not display.</li>
4422          <li>The <CODE>Seek</CODE> functions of file control classes under <CODE>nn::fs</CODE> do not operate properly when <CODE>nn::fs::POSITION_BASE_END</CODE> is specified as an argument.</li>
4423          <li>The <CODE>nn::fs::FileReader::TryInitialize</CODE> function sometimes returns an error depending on the folder layout or the content of files in the ROM or on an SD Card.</li>
4424          <li>The <CODE>nn::ac::CTR::DebugFlushNetworkSetting</CODE> function does not operate correctly unless an SD Card is inserted.</li>
4425        </ul>
4426      </description></knownissues><HR>
4427<H2 style="line-height: 0"><A name="sdk_0_9_1_Release%20SystemUpdater">CTR-SDK Version 0.9.1 Release SystemUpdater</A></H2>
4428<DIV style="text-align: right"><P style="line-height: 0">(2010/04/23)</P></DIV>
4429<HR>
4430<H3><A name="note17-01">Note 17-01: (OS) Revised adjustments for LCD flickering [System Updater]</A></H3>
4431<P><description>CTR-SDK 0.9 used a different adjustment value for flickering than the previously released SDKs did.<br> This adjustment value was revised to fix a bug that caused vertical stripes to appear on the LCDs.<br> However, please note that this value is just an average. If you want to use values that are customized for each system, you will need to run the <CODE>Config</CODE> tool and select the <CODE>ResetSetting</CODE> option.<br> After running the <CODE>Config</CODE> tool, use the sliding-type power switch on the TEG2 or TS board to power cycle the board. The setting will be applied once the board is powered back on.<br> With the TS board, the setting will not be applied if the slider to the left of the coin battery is set to the <CODE>Batt</CODE> position.<br> In this case, move the switch to the <CODE>4V</CODE> position and restart the system.<br></description></P>
4432<HR>
4433<H3><A name="note17-02">Note 17-02: (SOCKET) Revised the socket startup and finalization [System Updater]</A></H3>
4434<P><description>Fixed a bug that caused the socket library to halt if the startup and finalization for sockets were handled directly (without using the AC library), and finalization was initiated shortly after initialization.<br></description></P>
4435<HR>
4436<H3><A name="note17-03">Note 17-03: (SOCKET) Revised the packet-sending operation [System Updater]</A></H3>
4437<P><description>Fixed a bug that caused invalid regions to be accessed when sending packets.<br></description></P>
4438<HR>
4439<H3><A name="KnownIssues_0_9_1_Release%20SystemUpdater">Known Issues with SDK 0.9.1 Release System Updater</A></H3>
4440<P>  None.</P>
4441<HR>
4442<H2 style="line-height: 0"><A name="sdk_0_9_1_Release%20SampleDemos">CTR-SDK Version 0.9.1 Release SampleDemos</A></H2>
4443<DIV style="text-align: right"><P style="line-height: 0">(2010/04/23)</P></DIV>
4444<HR>
4445<H3><A name="note16-01">Note 16-01: (DEMO) Fixed bugs related to double-buffering of the display buffer [Sample Demos]</A></H3>
4446<P><description>Fixed a bug with the <CODE>lib_demo</CODE> library used by the SampleDemos package. This bug caused only one of the display buffers to be shown for the right eye and the lower LCD.<br></description></P>
4447<HR>
4448<H3><A name="KnownIssues_0_9_1_Release%20SampleDemos">Known Issues with SDK 0.9.1 Release Sample Demos</A></H3>
4449<knownissues><description>
4450        <ul>
4451          <li>There is a bug in the <CODE>Release - small</CODE> build of <CODE>demo1</CODE> where triangles do not render to the upper screen.<br> Triangles render properly when using other build options.</li>
4452          <li>There is a bug in the <CODE>Release - small</CODE> build of <CODE>uds/com_demo1</CODE> that prevents scans from working properly.<br> Communication works properly when using other build options.</li>
4453          <li>There is a bug in the <CODE>Release - small</CODE> build of <CODE>gx/Api/RenderToTexture</CODE> that causes extremely slow rendering speeds.<br> There is no problem when using other build options.</li>
4454          <li>The <CODE>camera/Simple</CODE> demo freezes on rare occasions if the settings are changed by pressing the buttons repeatedly.</li>
4455        </ul>
4456      </description></knownissues><HR>
4457<H2 style="line-height: 0"><A name="sdk_0_9_0_Release">CTR-SDK Version 0.9.0 Release</A></H2>
4458<DIV style="text-align: right"><P style="line-height: 0">(2010/04/14)</P></DIV>
4459<HR>
4460<H3><A name="note15-01">Note 15-01: (AC) Added AC library [SDK | System Updater]</A></H3>
4461<P><description>Added the AC (auto-connection) library and demos.<br> This library is not supported by CTR-SDK 0.9.<br></description></P>
4462<HR>
4463<H3><A name="note15-02">Note 15-02: (CAMERA) Added support for the second outer camera [SDK | System Updater]</A></H3>
4464<P><description>With prior versions, only one of the outer cameras could be used, but this update adds support to the CAMERA library for using the second outer camera.<br> In line with this change, the following functions were changed to add a port argument.<br>
4465        <ul>
4466          <li><CODE>StartCapture</CODE></li>
4467          <li><CODE>StopCapture</CODE></li>
4468          <li><CODE>IsBusy</CODE></li>
4469          <li><CODE>ClearBuffer</CODE></li>
4470          <li><CODE>IsBufferError</CODE></li>
4471          <li><CODE>GetVsyncInterruptEvent</CODE></li>
4472          <li><CODE>GetBufferErrorInterruptEvent</CODE></li>
4473          <li><CODE>SetReceivingAuto</CODE></li>
4474          <li><CODE>SetReceivingRgbAuto</CODE></li>
4475          <li><CODE>StopReceivingAuto</CODE></li>
4476          <li><CODE>StopReceivingRgbAuto</CODE></li>
4477          <li><CODE>SetReceiving</CODE></li>
4478          <li><CODE>IsFinishedReceiving</CODE></li>
4479          <li><CODE>SetReceivingRgb</CODE></li>
4480          <li><CODE>IsFinishedReceivingRgb</CODE></li>
4481          <li><CODE>SetTransferLines</CODE></li>
4482          <li><CODE>SetTransferBytes</CODE></li>
4483          <li><CODE>GetTransferBytes</CODE></li>
4484          <li><CODE>SetTrimming</CODE></li>
4485          <li><CODE>IsTrimming</CODE></li>
4486          <li><CODE>SetTrimmingParams</CODE></li>
4487          <li><CODE>GetTrimmingParams</CODE></li>
4488          <li><CODE>SetTrimmingParamsCenter</CODE></li>
4489        </ul>
4490        With this added support, <CODE>SELECT_ALL</CODE> now specifies the use of the inner camera and outer cameras 1 and 2.<br> Consequently, the former meaning of <CODE>SELECT_ALL</CODE> can now be specified using <CODE>SELECT_IN1_OUT1</CODE> instead. Please change affected code accordingly.<br> On boards that do not have stereo cameras, this feature cannot be used, so do not use any settings that include outer camera 2 in the above functions.<br></description></P>
4491<HR>
4492<H3><A name="note15-03">Note 15-03: (CAMERA) Revised the CAMERA library configuration functions [SDK | System Updater]</A></H3>
4493<P><description>Revised the <CODE>FlipImage</CODE> function for flipping images, inverting the left-right flip for the specified value.<br> The revised <CODE>Flip</CODE> enumerated type and image orientation correspond as follows. <br><br><CODE>Flip</CODE> enumerated type: Image orientation<br> ------------------------------<br> <CODE>FLIP_NONE</CODE>: Normal<br><CODE>FLIP_HORIZONTAL</CODE>: Mirrored<br><CODE>FLIP_VERTICAL</CODE>: Flipped top to bottom<br><CODE>FLIP_REVERSE</CODE>: Mirrored, then flipped top to bottom<br><br>With this change, the <CODE>Flip</CODE> enumerated type matches the <CODE>CAMERAFlip</CODE> enumerated type used in the TWL-SDK.<br></description></P>
4494<HR>
4495<H3><A name="note15-04">Note 15-04: (CAMERA) Revised CAMERA AC library functions [SDK | System Updater]</A></H3>
4496<P><description>The maximum values returned by the <CODE>GetMaxBytes</CODE> and <CODE>GetMaxLines</CODE> functions previously equaled to the buffer size, but these are now half of the buffer size in order to help prevent buffer errors.<br></description></P>
4497<HR>
4498<H3><A name="note15-05">Note 15-05: (CAMERA) Revised reference for <CODE>nn::camera::CTR::FrameRate</CODE> [SDK]</A></H3>
4499<P><description>Despite being able to capture at 30 fps at sizes larger than QVGA, the reference page stated otherwise. This description has been removed.<br></description></P>
4500<HR>
4501<H3><A name="note15-06">Note 15-06: (CAMERA) Adjusted the camera image quality [SDK | System Updater]</A></H3>
4502<P><description>Adjusted the contrast parameter set by the <CODE>SetContrast</CODE> function.<br> Image quality when contrast has been adjusted is therefore different from that in CTR-SDK 0.8.<br> The default contrast is the same as CTR-SDK versions 0.8 and earlier.<br> In line with this change, the setting values corresponding to the <CODE>Contrast</CODE> enumerated type's <CODE>CONTRAST_HIGH</CODE> and <CODE>CONTRAST_LOW</CODE> have also been changed.<br>
4503        <ul>
4504          <li>(Previous)</li>
4505          <ul>
4506            <li><CODE>CONTRAST_HIGH = CONTRAST_PATTERN_05</CODE></li>
4507            <li><CODE>CONTRAST_LOW  = CONTRAST_PATTERN_07</CODE></li>
4508          </ul>
4509          <li>(Revised)</li>
4510          <ul>
4511            <li><CODE>CONTRAST_LOW  = CONTRAST_PATTERN_05</CODE></li>
4512            <li><CODE>CONTRAST_HIGH = CONTRAST_PATTERN_07</CODE></li>
4513          </ul>
4514        </ul>
4515      </description></P>
4516<HR>
4517<H3><A name="note15-07">Note 15-07: (CAMERA) Added image data auto-receive configuration functions [SDK | System Updater]</A></H3>
4518<P><description>Added <CODE>SetReceivingAuto</CODE>, <CODE>SetReceivingRgbAuto</CODE>, <CODE>StopReceivingAuto</CODE>, and <CODE>StopReceivingRgbAuto</CODE> functions to set and stop automatic reception of camera image data.<br></description></P>
4519<HR>
4520<H3><A name="note15-08">Note 15-08: (CECD) Added Chance Encounter Communication daemon (alpha version) [SDK]</A></H3>
4521<P><description>Added the <CODE>cecd</CODE> Chance Encounter Communication daemon and the API to access it.<br> This only provides the API to save and get data.<br> There are currently the following restrictions.<br>
4522        <ul>
4523          <li>No features included to exchange via network.</li>
4524          <li>Data is saved to an SD Card.</li>
4525        </ul>
4526      </description></P>
4527<HR>
4528<H3><A name="note15-09">Note 15-09: (DBG) Debugger output, ASSERT enable / disable switch [SDK]</A></H3>
4529<P><description>Changed build system to allow for enabling/disabling debug output and ASSERTs/WARNINGs regardless of build type.<br> However, the debug output and ASSERTs/WARNINGs used internally by the SDK cannot be enabled or disabled.<br> Specifying <CODE>DEBUG_PRINT=true</CODE> to the macro enables <CODE>NN_LOG</CODE>, and specifying <CODE>DEBUG_PRINT=false</CODE> leaves <CODE>NN_LOG</CODE> empty. <br>Specifying <CODE>ASSERT_WARNING=true</CODE> to the macro enables <CODE>NN_*ASSERT/NN_WARNING</CODE>, and specifying <CODE>ASSERT_WARNING=false</CODE> leaves <CODE>NN_*ASSERT/NN_WARNING</CODE> empty. <br><br>Example: <CODE>omake BUILD=release DEBUG_PRINT=false ASSERT_WARNING=true</CODE><br></description></P>
4530<HR>
4531<H3><A name="note15-10">Note 15-10: (DEMO) Moved the demo library [SDK | Sample Demos]</A></H3>
4532<P><description>Changed the <CODE>nn::demo</CODE> library class structure, and moved to the <CODE>SampleDemos/common</CODE> directory as the <CODE>lib_demo</CODE> library.<br> We plan to remove the previous <CODE>demo</CODE> library in the next release.<br> In this transition period, we have included just the <CODE>demo</CODE> library itself and the header files, and have deprecated the function reference and documentation.<br> Be aware of the following points when transitioning from the <CODE>nn::demo</CODE> to the <CODE>lib_demo</CODE> library.<br>
4533        <ul>
4534          <li>The upper and lower screens now share one framebuffer object (color buffer / depth buffer) to reduce VRAM usage.<br> Consequently, when rendering to both the upper and lower screens, rendering alternately to the upper and lower screens will produce a mixed display of the rendering results, so instead first complete rendering to one target screen and then proceed to rendering for the next.</li>
4535              For example, you can render to both the upper and lower screens as follows.<br>
4536            <ol>
4537              <li>Set the upper screen as the target, clear the framebuffer, complete rendering, and then send the results to the display buffer and swap the buffer.</li>
4538              <li>Set the lower screen as the target, clear the framebuffer, complete rendering, and then send the results to the display buffer and swap the buffer.</li>
4539            </ol>
4540              See the sample demo source code in the <CODE>SampleDemos/gx</CODE> directory for programming specifics.<br>
4541        </ul>
4542      </description></P>
4543<HR>
4544<H3><A name="note15-11">Note 15-11: (DSP) Moved header files [SDK]</A></H3>
4545<P><description>Categorized <CODE>dsp</CODE> header files and moved to sub-directories named <CODE>MPCore</CODE> and <CODE>Common</CODE>.<br></description></P>
4546<HR>
4547<H3><A name="note15-12">Note 15-12: (DevEnv) Added <CODE>--gnu</CODE> option [SDK]</A></H3>
4548<P><description>Added <CODE>--gnu</CODE> option for Release and Development builds.<br> This <CODE>--gnu</CODE> option was not added for Debug builds.<br></description></P>
4549<HR>
4550<H3><A name="note15-13">Note 15-13: (DevEnv) Changed to -Otime [SDK]</A></H3>
4551<P><description>In the past, size was prioritized during optimization even for <CODE>fast</CODE> builds. This was changed to instead prioritize speed during optimization.<br> A <CODE>small</CODE> build still optimizes for size.<br></description></P>
4552<HR>
4553<H3><A name="note15-14">Note 15-14: (DevEnv) Added TS board support [SDK | System Updater]</A></H3>
4554<P><description>Added support for running on a TS board.<br></description></P>
4555<HR>
4556<H3><A name="note15-15">Note 15-15: (DevEnv) Added Windows 7 64-bit OS support [SDK]</A></H3>
4557<P><description>Added support for developing CTR applications in a Windows 7 64-bit environment.<br></description></P>
4558<HR>
4559<H3><A name="note15-16">Note 15-16: (DevEnv) Changed version.h [SDK]</A></H3>
4560<P><description>Added <CODE>NN_VERSION_MICRO</CODE>, <CODE>NN_VERSION_RELSTEP</CODE>, and <CODE>NN_VERSION_PATCH</CODE> to version.h, and commented out the unneeded <CODE>NN_VERSION_DATE</CODE> and <CODE>NN_VERSION_TIME</CODE>.<br></description></P>
4561<HR>
4562<H3><A name="note15-17">Note 15-17: (DevEnv) Added BOM to source code [SDK]</A></H3>
4563<P><description>Added a UTF-8 BOM to CTR-SDK header and source code files.<br></description></P>
4564<HR>
4565<H3><A name="note15-18">Note 15-18: (DevEnv) Changed dependency analysis [SDK]</A></H3>
4566<P><description>Rebuilding modified source files sometimes would fail previously. This bug has been fixed.<br> In line with this change, build times are now slightly longer.<br></description></P>
4567<HR>
4568<H3><A name="note15-19">Note 15-19: (DevEnv) Restricted function call optimization [SDK]</A></H3>
4569<P><description>Function call optimizations are now restricted in order to improve call stack display in the debugger.<br> Specifically, we added a <CODE>--retain=calls</CODE> compiler option for non-Release builds.<br></description></P>
4570<HR>
4571<H3><A name="note15-20">Note 15-20: (FND) Added features to <CODE>nn::fnd::DateTime</CODE> class [SDK]</A></H3>
4572<P><description>Added features to the <CODE>nn::fnd::DateTime</CODE> class required to handle date and time.<br></description></P>
4573<HR>
4574<H3><A name="note15-21">Note 15-21: (FND) Added <CODE>nn::fnd::DateTimeParameters</CODE> [SDK]</A></H3>
4575<P><description>Added <CODE>nn::fnd::DateTimeParameters</CODE> as a structure that can represent an individual date and time value separate from the <CODE>nn::fnd::DateTime</CODE> class.<br></description></P>
4576<HR>
4577<H3><A name="note15-22">Note 15-22: (FS) Revised ROMFS file alignment [SDK]</A></H3>
4578<P><description>Changed ROMFS creation using <CODE>makerom</CODE> to make file data 4-byte aligned.<br></description></P>
4579<HR>
4580<H3><A name="note15-23">Note 15-23: (FS) Added <CODE>nn::fnd::Directory</CODE> class [SDK]</A></H3>
4581<P><description>Added <CODE>nn::fs::Directory</CODE> for scanning files and directories located in a directory.<br></description></P>
4582<HR>
4583<H3><A name="note15-24">Note 15-24: (FS) Changed <CODE>nn::fnd::DirectoryEntry</CODE> structure member size [SDK]</A></H3>
4584<P><description>Changed the <CODE>nn::fs::DirectoryEntry</CODE> structure's <CODE>entrySize</CODE> member type from a <CODE>u32</CODE> to an <CODE>s64</CODE>.<br></description></P>
4585<HR>
4586<H3><A name="note15-25">Note 15-25: (GX) Fixed a bug where no command would be generated for the viewport during <CODE>NN_GX_STATE_OTHERS</CODE> validation [SDK]</A></H3>
4587<P><description>Fixed a bug where no command would be generated for the <CODE>glViewport</CODE> function when validating with <CODE>NN_GX_STATE_OTHERS</CODE> specified for the command cache feature's state.<br></description></P>
4588<HR>
4589<H3><A name="note15-26">Note 15-26: (GX) Added TS features (texture processing) [SDK]</A></H3>
4590<P><description>Added the following features, only for TS boards.<br>
4591        <ul>
4592          <li>Expanded texture combiners from 3 steps to 6.</li>
4593          <li>Added buffering feature for texture combiner intermediate calculation results.</li>
4594          <li>Added LA4, A4, and ETC1 with alpha to the texture formats.</li>
4595          <li>Added operand for swapping color elements to the texture combiners (RGB to RRR or GGG or BBB).</li>
4596        </ul>
4597      </description></P>
4598<HR>
4599<H3><A name="note15-27">Note 15-27: (GX) Added TS features (fragment lighting) [SDK]</A></H3>
4600<P><description>Added the following features, only for TS boards.<br>
4601        <ul>
4602          <li>Increased fragment lights from 4 to 8.</li>
4603          <li>Extended LUTs from 16 to 32.</li>
4604          <li>Increased layer configurations from 8 types to 11.</li>
4605          <li>Added the distance attenuation feature.</li>
4606          <li>Spotlight features have been extended to allow attenuation curves to be specified individually.</li>
4607        </ul>
4608      </description></P>
4609<HR>
4610<H3><A name="note15-28">Note 15-28: (GX) Fixed a bug relating to <CODE>dmp_LightEnv.bumpRenorm</CODE>, <CODE>dmp_LightEnv.bumpMode</CODE> [SDK]</A></H3>
4611<P><description>Fixed a bug where lighting would not work properly when <CODE>dmp_LightEnv.bumpRenorm</CODE> is set to <CODE>GL_FALSE</CODE> and <CODE>dmp_LightEnv.bumpMode</CODE> is set to <CODE>GL_LIGHT_ENV_BUMP_NOT_USED_DMP</CODE>.<br></description></P>
4612<HR>
4613<H3><A name="note15-29">Note 15-29: (GX) Fixed a bug in <CODE>glFramebufferTexture2D</CODE> function error check [SDK]</A></H3>
4614<P><description>Fixed a bug where no error would occur even when the texture specified in a call to the <CODE>glFramebufferTexture2D</CODE> function has the data transfer pattern of having no copy in main memory and with the GPU accessing main memory.<br></description></P>
4615<HR>
4616<H3><A name="note15-30">Note 15-30: (GX) Relaxed error checking in the <CODE>nngxAdd3DCommand</CODE> [SDK]</A></H3>
4617<P><description>Changed the specifications for the <CODE>nngxAdd3DCommand</CODE> function to raise no error if the <SPAN class="argument">buffersize</SPAN> argument is a multiple of 4 when <CODE>GL_TRUE</CODE> is specified for the <SPAN class="argument">copycmd</SPAN> argument.<br></description></P>
4618<HR>
4619<H3><A name="note15-31">Note 15-31: (GX) Changed the <CODE>nngxCopyCmdlist</CODE> function to allow copying to a command list that is waiting [SDK]</A></H3>
4620<P><description>The <CODE>nngxCopyCmdlist</CODE> function would previously result in an error if the the <CODE>nngxRunCmdlist</CODE> function was called and the copy destination command list was in a waiting state unless the state was reset using the <CODE>nngxClearCmdlist</CODE> function.<br> Now this restriction is only effective during execution (while the GPU is actually processing the command).<br> Copying is allowed even while execution is halted with the <CODE>nngxStopCmdlist</CODE> function.<br></description></P>
4621<HR>
4622<H3><A name="note15-32">Note 15-32: (GX) Fixed a bug in the <CODE>nngxCopyCmdlist</CODE> function where command counters were not cleared after execution [SDK]</A></H3>
4623<P><description>A portion of the internal state of a destination command list was previously retained despite copying and overwriting when using a command list copied using the <CODE>nngxCopyCmdlist</CODE> function.<br> The counter from previous completed executions would remain, such that the copied commands would not run. This bug has been fixed.<br></description></P>
4624<HR>
4625<H3><A name="note15-33">Note 15-33: (GX) Deprecated the <CODE>nngxReserveSwapBuffers</CODE> function [SDK]</A></H3>
4626<P><description>Deprecated the <CODE>nngxReserveSwapBuffers</CODE> function, as the <CODE>nngxSwapBuffers</CODE> function has equivalent functionality.<br></description></P>
4627<HR>
4628<H3><A name="note15-34">Note 15-34: (GX) Added error check to the <CODE>nngxSwapBuffers</CODE> function [SDK]</A></H3>
4629<P><description>Changed specifications to raise a <CODE>GL_ERROR_8053_DMP</CODE> error if the specified display buffer address is not 16-byte aligned after calculating all the settings from <CODE>nngxDisplayEnv</CODE> and other functions.<br></description></P>
4630<HR>
4631<H3><A name="note15-35">Note 15-35: (GX) Added functions for command cache feature [SDK]</A></H3>
4632<P><description>Added <CODE>nngxAddCmdlist</CODE> function, which appends a copy of a command list object rather than overwriting, and the <CODE>nngxGetUpdatedStatus</CODE> function, which gets the current updated graphics state.<br></description></P>
4633<HR>
4634<H3><A name="note15-36">Note 15-36: (GX) Added ability to specify only a part of a data transfer pattern [SDK]</A></H3>
4635<P><description>The data transfer pattern was specified by the bitwise OR as the first argument of the <CODE>glBufferData</CODE> and other functions, and it included both whether data could be duplicated to the main memory and whether the GPU should access main memory or VRAM. Previously, it was required to explicitly specify both, but now it is also possible to specify only one or the other.<br> The unspecified pattern will default to the value described in the function reference and in <CODE>$CTR_SDK/documents/DMPGL20/DMPGL20_load_pattern_setting.pdf</CODE>.<br></description></P>
4636<HR>
4637<H3><A name="note15-37">Note 15-37: (GX) Optimized geometry shader for lines that only have vertex attributes [SDK]</A></H3>
4638<P><description>Fixed unintended implementation of <CODE>DMP_stripLine0.obj</CODE>.<br> The geometry shader is not designed to work correctly if the number of output vertex shaders is greater than the attribute count (number of files) input for the geometry shader. However, this was not true with the line shader.<br></description></P>
4639<HR>
4640<H3><A name="note15-38">Note 15-38: (GX) Fixed an error check bug when 0 is specified for the data when creating a vertex buffer [SDK]</A></H3>
4641<P><description>Fixed a bug where no error would occur even when the data address was <CODE>NULL</CODE> for the vertex buffer in the data transfer pattern where a copy is created in main memory and the GPU is accessing the VRAM.<br></description></P>
4642<HR>
4643<H3><A name="note15-39">Note 15-39: (HID) Clamping touch panel input [SDK]</A></H3>
4644<P><description>Added a 5-pixel clamp to the outer edge of the touch panel, where it is difficult to touch the screen with the stylus.<br> Touching outside this border returns coordinates for inside the border.<br> In line with this change, the obtainable coordinates are now as follows.<br>
4645        <ul>
4646          <li>X axis: 5 &lt;= x &lt;= 314</li>
4647          <li>Y axis: 5 &lt;= y &lt;= 234</li>
4648        </ul>
4649      </description></P>
4650<HR>
4651<H3><A name="note15-40">Note 15-40: (HIO) Added samples and documentation for the HIO library [SDK]</A></H3>
4652<P><description>Added HIO library samples and documentation.<br></description></P>
4653<HR>
4654<H3><A name="note15-41">Note 15-41: (HIO) Revised host-side file operations [SDK]</A></H3>
4655<P><description>It is no longer required to explicitly open a channel for host-side file operations.<br> In line with this change, the following has also changed.<br>
4656        <ul>
4657          <li>The <CODE>HostSystemChannel</CODE> class member functions <CODE>Open</CODE>/<CODE>Close</CODE>/<CODE>Puts</CODE>/<CODE>Gets</CODE> have been removed, and the other functions have been moved to the <CODE>nn::hio::CTR</CODE> namespace.</li>
4658          <li>The <CODE>HostFile</CODE> and <CODE>HostDirectory</CODE> class member functions have had any reference to a <CODE>HostSystemChannel</CODE> instance removed from their arguments.</li>
4659        </ul>
4660      </description></P>
4661<HR>
4662<H3><A name="note15-42">Note 15-42: (HIO) Added functions and classes to support wide-character strings [SDK]</A></H3>
4663<P><description>Added functions and classes for handling wide-character strings.<br></description></P>
4664<HR>
4665<H3><A name="note15-43">Note 15-43: (SSL) Added the HTTP library [SDK | System Updater]</A></H3>
4666<P><description>Added the HTTP library and demos.<br> This library is not supported by CTR-SDK 0.9.<br></description></P>
4667<HR>
4668<H3><A name="note15-44">Note 15-44: (JPEG) Added the JPEG codec library [SDK]</A></H3>
4669<P><description>Added a library for encoding and decoding JPEG files.<br> These functions are not supported by CTR-SDK 0.9.<br></description></P>
4670<HR>
4671<H3><A name="note15-45">Note 15-45: (MATH) Added the MATH library functions [SDK]</A></H3>
4672<P><description>Added the following functions to the <CODE>MATH</CODE> library.<br>
4673        <ul>
4674          <li><CODE>VEC2IsZero</CODE></li>
4675          <li><CODE>VEC3IsZero</CODE></li>
4676          <li><CODE>VEC4IsZero</CODE></li>
4677          <li><CODE>VEC4IsZeroWOne</CODE></li>
4678          <li><CODE>MTX22IsIdentity</CODE></li>
4679          <li><CODE>MTX33IsIdentity</CODE></li>
4680          <li><CODE>MTX34CameraRotate</CODE></li>
4681        </ul>
4682      </description></P>
4683<HR>
4684<H3><A name="note15-46">Note 15-46: (MATH) Fixed bugs in <CODE>SinFIdx</CODE>, <CODE>CosFIdx</CODE>, <CODE>SinCosFIdx </CODE>functions [SDK]</A></H3>
4685<P><description>Fixed a bug where the above functions would return incorrect values.<br></description></P>
4686<HR>
4687<H3><A name="note15-47">Note 15-47: (MATH) Made the <CODE>math</CODE> API inline [SDK]</A></H3>
4688<P><description>Changed the <CODE>math</CODE> library to use the <CODE>inline</CODE> modifier by default for vector and matrix calculation functions.<br></description></P>
4689<HR>
4690<H3><A name="note15-48">Note 15-48: (MATH) Added member functions to the matrix and vector classes [SDK]</A></H3>
4691<P><description>Added API similar to the member functions of the <CODE>MATH</CODE> library's matrix and vector classes.<br></description></P>
4692<HR>
4693<H3><A name="note15-49">Note 15-49: (MATH) Optimized by rewriting (some) functions in assembler [SDK]</A></H3>
4694<P><description>Rewrote <CODE>MTX33Mult</CODE>, <CODE>MTX34Mult</CODE>, <CODE>MTX34Copy</CODE>, and <CODE>Hermite</CODE> functions in assembler to optimize speed.<br> Assembler versions are used by default.<br> The C-language versions can be used by explicitly calling the function name with <CODE>C</CODE> appended. <br>(Example: MTX33MultC)<br></description></P>
4695<HR>
4696<H3><A name="note15-50">Note 15-50: (OS) Fixed a bug when specifying sizes in excess of 8MB when calling the <CODE>nn::init::InitializeAllocator</CODE> function [SDK]</A></H3>
4697<P><description>Fixed a bug where operations would become unstable when specifying a value greater than 8MB in a call to the <CODE>nn::init::InitializeAllocator</CODE> function.<br></description></P>
4698<HR>
4699<H3><A name="note15-51">Note 15-51: (OS) Changed specifications for the <CODE>nninitStaticInit</CODE> function [SDK]</A></H3>
4700<P><description>The <CODE>nninitStaticInit</CODE> function was defined as a standard weak symbol function, but this was changed to match the NITRO and TWL-SDK specifications.<br></description></P>
4701<HR>
4702<H3><A name="note15-52">Note 15-52: (OS) Changed the program initialization sequence [SDK]</A></H3>
4703<P><description>It was previously required to call the <CODE>nn::os::Initialize</CODE> function when replacing the <CODE>nninitStartUp</CODE> function with a user-defined function. This was changed so that <CODE>nn::os::Initialize</CODE> is called before <CODE>nninitStartUp</CODE>.<br></description></P>
4704<HR>
4705<H3><A name="note15-53">Note 15-53: (OS) Added high-speed synchronization mechanisms [SDK | System Updater]</A></H3>
4706<P><description>Added <CODE>LightSemaphore</CODE>, <CODE>LightEvent</CODE>, and <CODE>LightBarrier</CODE> classes as high-speed synchronization mechanisms with no restrictions on how many can be used.<br></description></P>
4707<HR>
4708<H3><A name="note15-54">Note 15-54: (SND) Fixed a bug when specifying a pitch higher than 14 during ADPCM playback [SDK]</A></H3>
4709<P><description>Fixed a bug where specifying a pitch greater than 14 would produce noise when playing back from an <CODE>ADPCM</CODE> sound source.<br></description></P>
4710<HR>
4711<H3><A name="note15-55">Note 15-55: (SND) Added Aux bus [SDK]</A></H3>
4712<P><description>Added <CODE>Aux</CODE> bus and related features and parameters.<br></description></P>
4713<HR>
4714<H3><A name="note15-56">Note 15-56: (SND) Added functions to set and get DSP cycle count [SDK]</A></H3>
4715<P><description>Added functions related to <CODE>DSP</CODE> cycle count.<br></description></P>
4716<HR>
4717<H3><A name="note15-57">Note 15-57: (SND) Changed <CODE>nn::snd::MixParam</CODE> structure format [SDK]</A></H3>
4718<P><description>Changed the <CODE>nn::snd::MixParam</CODE> structure format.<br> Increased the channels to 4. However, as of the CTR-SDK 0.9 release, the <CODE>REAR_LEFT</CODE> and <CODE>REAR_RIGHT</CODE> channels are not yet supported, and specifying them will have no effect on processing.<br></description></P>
4719<HR>
4720<H3><A name="note15-58">Note 15-58: (SND) Fixed a bug where execution would not finish even after reaching the end of a sample [SDK]</A></H3>
4721<P><description>During a loop playback of a small amount of audio data (not necessarily a short sample length), clearing the loop flag and finishing playback without a buffer jump would cause a bug where playback would continue even after reaching the end of the sample. This has been fixed.<br></description></P>
4722<HR>
4723<H3><A name="note15-59">Note 15-59: (SND) Changed parameter default values [SDK]</A></H3>
4724<P><description>Changed the default <CODE>snd</CODE> parameter to an appropriate value.<br> See the related function references for details.<br></description></P>
4725<HR>
4726<H3><A name="note15-60">Note 15-60: (SND) Moved header files [SDK]</A></H3>
4727<P><description>Categorized <CODE>snd</CODE> header files and moved to sub-directories named <CODE>MPCore</CODE> and <CODE>Common</CODE>.<br></description></P>
4728<HR>
4729<H3><A name="note15-61">Note 15-61: (SND) Fixed a bug in releasing voice buffers [SDK]</A></H3>
4730<P><description>Fixed a bug where releasing buffers managed by a voice (such as the <CODE>Voice::Stop</CODE> or <CODE>nn::snd::FreeVoice</CODE> functions) would not work properly.<br></description></P>
4731<HR>
4732<H3><A name="note15-62">Note 15-62: (SND) Optimized the library [SDK]</A></H3>
4733<P><description>Optimized the library, reducing processing overhead.<br></description></P>
4734<HR>
4735<H3><A name="note15-63">Note 15-63: (SND) Fixed a bug that would occur when clearing loop flag during loop playback [SDK]</A></H3>
4736<P><description>There was a bug where clearing a loop flag during loop playback and then performing a buffer jump would sometimes result in the buffer jump not occurring and the playback buffer ceasing to exist, depending on when the loop flag is cleared.<br> This bug has been fixed.<br></description></P>
4737<HR>
4738<H3><A name="note15-64">Note 15-64: (SND) Added features to set and get interpolation method [SDK]</A></H3>
4739<P><description>Added functions to set and get the interpolation method.<br></description></P>
4740<HR>
4741<H3><A name="note15-65">Note 15-65: (SOCKET) Added the socket library [SDK | System Updater]</A></H3>
4742<P><description>Added the socket library and demos.<br> This library is not supported by CTR-SDK 0.9.<br></description></P>
4743<HR>
4744<H3><A name="note15-66">Note 15-66: (SSL) Added the SSL library [SDK | System Updater]</A></H3>
4745<P><description>Added the SSL library and demos.<br> This library is not supported by CTR-SDK 0.9.<br></description></P>
4746<HR>
4747<H3><A name="note15-67">Note 15-67: (TOOL) Added the <CODE>Config</CODE> tool [SDK]</A></H3>
4748<P><description>Added the <CODE>Config</CODE> tool (<CODE>$CTR_SDK/tools/TargetTools/CTR-T*/Release/Config.csu</CODE>) for configuring system setting initialization and HID calibration.<br> Added documentation for the <CODE>Config</CODE> tool.<br></description></P>
4749<HR>
4750<H3><A name="note15-68">Note 15-68: (UDS) Added the UDS library [SDK | System Updater]</A></H3>
4751<P><description>Added the UDS (local communication) library and demos.<br></description></P>
4752<HR>
4753<H3><A name="note15-69">Note 15-69: (ULCD) Added the autostereoscopy feature (API to change LCD mode and the LUCD library) [SDK]</A></H3>
4754<P><description>Added API to switch LCD modes, as required to implement autostereoscopy on the CTR.<br> Also added the <CODE>ULCD</CODE> library for creating the different images for the left and right eyes needed for 3D.<br> In line with this change, also added library documentation.<br></description></P>
4755<HR>
4756<H3><A name="note15-70">Note 15-70: (Y2R) Revised the Y2R library functions [SDK]</A></H3>
4757<P><description>Fixed a bug in the <CODE>SetDitheringWeightParams</CODE> function where only patterns 0 and 1 of the 0-3 dithering weights could be set. All four are now usable.<br></description></P>
4758<HR>
4759<H3><A name="note15-71">Note 15-71: (Y2R) Added a <SPAN class="argument">stride</SPAN> argument to functions that transfer source data for conversion [SDK | System Updater]</A></H3>
4760<P><description>Added the ability to specify an offset to the following functions that transfer the source data for conversion. This offset value is added independently of the single-transfer size.<br> If the offset is omitted, these functions will behave as they did with previous versions of the CTR-SDK.<br>
4761        <ul>
4762          <li><CODE>SetSendingY</CODE></li>
4763          <li><CODE>SetSendingU</CODE></li>
4764          <li><CODE>SetSendingV</CODE></li>
4765          <li><CODE>SetSendingYuv</CODE></li>
4766        </ul>
4767      </description></P>
4768<HR>
4769<H3><A name="KnownIssues_0_9_0_Release">Known Issues with SDK 0.9.0 Release</A></H3>
4770<knownissues><description>
4771        <ul>
4772          <li>There is a bug that causes distorted sound playback roughly once every 30 times after the TS board is powered on.<br> If this occurs, noise will continue until the board is powered off.</li>
4773          <li>The lowest line on the lower LCD does not display.</li>
4774          <li>The <CODE>Seek</CODE> functions of file control classes under <CODE>nn::fs</CODE> do not operate properly when <CODE>nn::fs::POSITION_BASE_END</CODE> is specified as an argument.</li>
4775          <li>The <CODE>nn::ac::CTR::DebugFlushNetworkSetting</CODE> function does not operate correctly unless an SD Card is inserted.</li>
4776        </ul>
4777      </description></knownissues><HR>
4778<H2 style="line-height: 0"><A name="sdk_0_9_0_Release%20SystemUpdater">CTR-SDK Version 0.9.0 Release SystemUpdater</A></H2>
4779<DIV style="text-align: right"><P style="line-height: 0">(2010/04/14)</P></DIV>
4780<HR>
4781<H3><A name="note14-01">Note 14-01: (AC) Added AC library [SDK | System Updater]</A></H3>
4782<P><description>Added the AC (auto-connection) library and demos.<br> This library is not supported by CTR-SDK 0.9.<br></description></P>
4783<HR>
4784<H3><A name="note14-02">Note 14-02: (CAMERA) Added support for the second outer camera [SDK | System Updater]</A></H3>
4785<P><description>With prior versions, only one of the outer cameras could be used, but this update adds support to the CAMERA library for using the second outer camera.<br> In line with this change, the following functions were changed to add a port argument.<br>
4786        <ul>
4787          <li><CODE>StartCapture</CODE></li>
4788          <li><CODE>StopCapture</CODE></li>
4789          <li><CODE>IsBusy</CODE></li>
4790          <li><CODE>ClearBuffer</CODE></li>
4791          <li><CODE>IsBufferError</CODE></li>
4792          <li><CODE>GetVsyncInterruptEvent</CODE></li>
4793          <li><CODE>GetBufferErrorInterruptEvent</CODE></li>
4794          <li><CODE>SetReceivingAuto</CODE></li>
4795          <li><CODE>SetReceivingRgbAuto</CODE></li>
4796          <li><CODE>StopReceivingAuto</CODE></li>
4797          <li><CODE>StopReceivingRgbAuto</CODE></li>
4798          <li><CODE>SetReceiving</CODE></li>
4799          <li><CODE>IsFinishedReceiving</CODE></li>
4800          <li><CODE>SetReceivingRgb</CODE></li>
4801          <li><CODE>IsFinishedReceivingRgb</CODE></li>
4802          <li><CODE>SetTransferLines</CODE></li>
4803          <li><CODE>SetTransferBytes</CODE></li>
4804          <li><CODE>GetTransferBytes</CODE></li>
4805          <li><CODE>SetTrimming</CODE></li>
4806          <li><CODE>IsTrimming</CODE></li>
4807          <li><CODE>SetTrimmingParams</CODE></li>
4808          <li><CODE>GetTrimmingParams</CODE></li>
4809          <li><CODE>SetTrimmingParamsCenter</CODE></li>
4810        </ul>
4811        With this added support, <CODE>SELECT_ALL</CODE> now specifies the use of the inner camera and outer cameras 1 and 2.<br> Consequently, the former meaning of <CODE>SELECT_ALL</CODE> can now be specified using <CODE>SELECT_IN1_OUT1</CODE> instead. Please change affected code accordingly.<br> On boards that do not have stereo cameras, this feature cannot be used, so do not use any settings that include outer camera 2 in the above functions.<br></description></P>
4812<HR>
4813<H3><A name="note14-03">Note 14-03: (CAMERA) Revised the CAMERA library configuration functions [SDK | System Updater]</A></H3>
4814<P><description>Revised the <CODE>FlipImage</CODE> function for flipping images, inverting the left-right flip for the specified value.<br> The revised <CODE>Flip</CODE> enumerated type and image orientation correspond as follows. <br><br><CODE>Flip</CODE> enumerated type: Image orientation<br> ------------------------------<br> <CODE>FLIP_NONE</CODE>: Normal<br><CODE>FLIP_HORIZONTAL</CODE>: Mirrored<br><CODE>FLIP_VERTICAL</CODE>: Flipped top to bottom<br><CODE>FLIP_REVERSE</CODE>: Mirrored, then flipped top to bottom<br><br>With this change, the <CODE>Flip</CODE> enumerated type matches the <CODE>CAMERAFlip</CODE> enumerated type used in the TWL-SDK.<br></description></P>
4815<HR>
4816<H3><A name="note14-04">Note 14-04: (CAMERA) Revised CAMERA AC library functions [SDK | System Updater]</A></H3>
4817<P><description>The maximum values returned by the <CODE>GetMaxBytes</CODE> and <CODE>GetMaxLines</CODE> functions previously equaled to the buffer size, but these are now half of the buffer size in order to help prevent buffer errors.<br></description></P>
4818<HR>
4819<H3><A name="note14-05">Note 14-05: (CAMERA) Adjusted the camera image quality [SDK | System Updater]</A></H3>
4820<P><description>Adjusted the contrast parameter set by the <CODE>SetContrast</CODE> function.<br> Image quality when contrast has been adjusted is therefore different from that in CTR-SDK 0.8.<br> The default contrast is the same as CTR-SDK versions 0.8 and earlier.<br> In line with this change, the setting values corresponding to the <CODE>Contrast</CODE> enumerated type's <CODE>CONTRAST_HIGH</CODE> and <CODE>CONTRAST_LOW</CODE> have also been changed.<br>
4821        <ul>
4822          <li>(Previous)</li>
4823          <ul>
4824            <li><CODE>CONTRAST_HIGH = CONTRAST_PATTERN_05</CODE></li>
4825            <li><CODE>CONTRAST_LOW  = CONTRAST_PATTERN_07</CODE></li>
4826          </ul>
4827          <li>(Revised)</li>
4828          <ul>
4829            <li><CODE>CONTRAST_LOW  = CONTRAST_PATTERN_05</CODE></li>
4830            <li><CODE>CONTRAST_HIGH = CONTRAST_PATTERN_07</CODE></li>
4831          </ul>
4832        </ul>
4833      </description></P>
4834<HR>
4835<H3><A name="note14-06">Note 14-06: (CAMERA) Added image data auto-receive configuration functions [SDK | System Updater]</A></H3>
4836<P><description>Added <CODE>SetReceivingAuto</CODE>, <CODE>SetReceivingRgbAuto</CODE>, <CODE>StopReceivingAuto</CODE>, and <CODE>StopReceivingRgbAuto</CODE> functions to set and stop automatic reception of camera image data.<br></description></P>
4837<HR>
4838<H3><A name="note14-07">Note 14-07: (DevEnv) Added TS board support [SDK | System Updater]</A></H3>
4839<P><description>Added support for running on a TS board.<br></description></P>
4840<HR>
4841<H3><A name="note14-08">Note 14-08: (FS) Fixed FATFS access bug [System Updater]</A></H3>
4842<P><description>Fixed a bug where files and directories on a FATFS could not be accessed.<br></description></P>
4843<HR>
4844<H3><A name="note14-09">Note 14-09: (FS) Added DMA support for NAND/SD Memory Cards [System Updater]</A></H3>
4845<P><description>Added DMA transfer support for access to NAND and SD Memory Cards.<br></description></P>
4846<HR>
4847<H3><A name="note14-10">Note 14-10: (FS) Implemented directory scans in ROM [System Updater]</A></H3>
4848<P><description>Implemented the directory scanning via an <CODE>nn::fs::Directory</CODE> object also for the directories in ROM that can be accessed using <CODE>&quot;rom:&quot;</CODE>.<br></description></P>
4849<HR>
4850<H3><A name="note14-11">Note 14-11: (GX) Removed alignment restrictions during VRAM transfers [System Updater]</A></H3>
4851<P><description>When transferring vertex data or textures to VRAM in DMPGL2.0, in addition to the restrictions described in the specification, data addresses had to be 8-byte aligned. This additional restriction has been removed.<br></description></P>
4852<HR>
4853<H3><A name="note14-12">Note 14-12: (GX) Fixed a bug in the lower-screen swap buffer [System Updater]</A></H3>
4854<P><description>Fixed a bug where Display 1 (the lower screen) could skip a frame, depending on when the <CODE>nngxSwapBuffers</CODE> function is called.<br></description></P>
4855<HR>
4856<H3><A name="note14-13">Note 14-13: (HID) Revised the <CODE>Reader</CODE> function of <CODE>TouchPanelReader</CODE> [System Updater]</A></H3>
4857<P><description>Fixed a bug where the X coordinate reported using the <CODE>TouchPanelReader</CODE> class's <CODE>Reader</CODE> function could be invalid when called at the moment the touch panel is touched.<br></description></P>
4858<HR>
4859<H3><A name="note14-14">Note 14-14: (SSL) Added the HTTP library [SDK | System Updater]</A></H3>
4860<P><description>Added the HTTP library and demos.<br> This library is not supported by CTR-SDK 0.9.<br></description></P>
4861<HR>
4862<H3><A name="note14-15">Note 14-15: (OS) Revised the <CODE>nn::os::Timer::ClearSignal</CODE> function [System Updater]</A></H3>
4863<P><description>Fixed a memory leak in the <CODE>nn::os::Timer::ClearSignal</CODE> function.<br></description></P>
4864<HR>
4865<H3><A name="note14-16">Note 14-16: (OS) Set upper limit on number of threads [System Updater]</A></H3>
4866<P><description>Raised the limit to 32 for the number of threads an application can run at any one time.<br></description></P>
4867<HR>
4868<H3><A name="note14-17">Note 14-17: (OS) Fixed a bug where debugger would fail to load <CODE>cci</CODE> files [System Updater]</A></H3>
4869<P><description>Fixed a bug where the debugger would display a command error and fail when loading <CODE>cci</CODE> files.<br></description></P>
4870<HR>
4871<H3><A name="note14-18">Note 14-18: (OS) Fixed a bug where hard breaks would not be possible after setting a breakpoint in the debugger [System Updater]</A></H3>
4872<P><description>Fixed a bug in the debugger where performing a hard break when a breakpoint address is being executed would cause the debugger to freeze.<br></description></P>
4873<HR>
4874<H3><A name="note14-19">Note 14-19: (OS) Modified the debugger exception notifications [System Updater]</A></H3>
4875<P><description>Changed code so the debugger is notified of undefined command exceptions and prefetch aborts.<br></description></P>
4876<HR>
4877<H3><A name="note14-20">Note 14-20: (OS) Fixed mutual exclusion bug in the firmware [System Updater]</A></H3>
4878<P><description>There was a bug in mutual exclusion in the firmware that, in rare cases, could cause various issues such as threads not starting or access exceptions occurring.<br> This problem was fixed.<br></description></P>
4879<HR>
4880<H3><A name="note14-21">Note 14-21: (OS) Fixed a bug where cycle timer cycles got longer [System Updater]</A></H3>
4881<P><description>Fixed a bug where the cycles set using the <CODE>nn::os::Timer::StartPeriodic</CODE> or <CODE>nn::os::Alarm::SetPeriodic</CODE> functions would become longer than the specified value.<br></description></P>
4882<HR>
4883<H3><A name="note14-22">Note 14-22: (OS) Added high-speed synchronization mechanisms [SDK | System Updater]</A></H3>
4884<P><description>Added <CODE>LightSemaphore</CODE>, <CODE>LightEvent</CODE>, and <CODE>LightBarrier</CODE> classes as high-speed synchronization mechanisms with no restrictions on how many can be used.<br></description></P>
4885<HR>
4886<H3><A name="note14-23">Note 14-23: (SND) Fixed a bug where volume was too low [System Updater]</A></H3>
4887<P><description>In CTR-SDK 0.8, there was a bug where sound volumes would be around half the levels expected for CTR-SDK 0.7 and earlier.<br> This bug has been fixed.<br></description></P>
4888<HR>
4889<H3><A name="note14-24">Note 14-24: (SND) Fixed a bug where volume + / - symbols were backwards [System Updater]</A></H3>
4890<P><description>Fixed a bug where the volume + / - symbols were backwards.<br></description></P>
4891<HR>
4892<H3><A name="note14-25">Note 14-25: (SOCKET) Added the socket library [SDK | System Updater]</A></H3>
4893<P><description>Added the socket library and demos.<br> This library is not supported by CTR-SDK 0.9.<br></description></P>
4894<HR>
4895<H3><A name="note14-26">Note 14-26: (SSL) Added the SSL library [SDK | System Updater]</A></H3>
4896<P><description>Added the SSL library and demos.<br> This library is not supported by CTR-SDK 0.9.<br></description></P>
4897<HR>
4898<H3><A name="note14-27">Note 14-27: (UDS) Added the UDS library [SDK | System Updater]</A></H3>
4899<P><description>Added the UDS (local communication) library and demos.<br></description></P>
4900<HR>
4901<H3><A name="note14-28">Note 14-28: (Y2R) Added a <SPAN class="argument">stride</SPAN> argument to functions that transfer source data for conversion [SDK | System Updater]</A></H3>
4902<P><description>Added the ability to specify an offset to the following functions that transfer the source data for conversion. This offset value is added independently of the single-transfer size.<br> If the offset is omitted, these functions will behave as they did with previous versions of the CTR-SDK.<br>
4903        <ul>
4904          <li><CODE>SetSendingY</CODE></li>
4905          <li><CODE>SetSendingU</CODE></li>
4906          <li><CODE>SetSendingV</CODE></li>
4907          <li><CODE>SetSendingYuv</CODE></li>
4908        </ul>
4909      </description></P>
4910<HR>
4911<H3><A name="KnownIssues_0_9_0_Release%20SystemUpdater">Known Issues with SDK 0.9.0 Release System Updater</A></H3>
4912<P>  None.</P>
4913<HR>
4914<H2 style="line-height: 0"><A name="sdk_0_9_0_Release%20SampleDemos">CTR-SDK Version 0.9.0 Release SampleDemos</A></H2>
4915<DIV style="text-align: right"><P style="line-height: 0">(2010/04/14)</P></DIV>
4916<HR>
4917<H3><A name="note13-01">Note 13-01: (DEMO) Moved the demo library [SDK | Sample Demos]</A></H3>
4918<P><description>Changed the <CODE>nn::demo</CODE> library class structure, and moved to the <CODE>SampleDemos/common</CODE> directory as the <CODE>lib_demo</CODE> library.<br> In line with this change, the released function reference and documentation has been deprecated.<br> Be aware of the following points when transitioning from the <CODE>nn::demo</CODE> to the <CODE>lib_demo</CODE> library.<br>
4919        <ul>
4920          <li>The upper and lower screens now share one framebuffer object (color buffer / depth buffer) to reduce VRAM usage.<br> Consequently, when rendering to both the upper and lower screens, rendering alternately to the upper and lower screens will produce a mixed display of the rendering results, so instead first complete rendering to one target screen and then proceed to rendering for the next.</li>
4921              For example, you can render to both the upper and lower screens as follows.<br>
4922            <ol>
4923              <li>Set the upper screen as the target, clear the framebuffer, complete rendering, and then send the results to the display buffer and swap the buffer.</li>
4924              <li>Set the lower screen as the target, clear the framebuffer, complete rendering, and then send the results to the display buffer and swap the buffer.</li>
4925            </ol>
4926              See the sample demo source code in the <CODE>SampleDemos/gx</CODE> directory for programming specifics.<br>
4927        </ul>
4928      </description></P>
4929<HR>
4930<H3><A name="note13-02">Note 13-02: (GX) Changed graphics demos [Sample Demos]</A></H3>
4931<P><description>Added / removed the following graphics demos.<br>
4932        <ul>
4933          <li>Added <CODE>Draw3d</CODE> demo that renders cuboids, spheres, and cylinders.</li>
4934          <li>Added <CODE>FragmentLightingSimple</CODE> demo that uses simple fragment lighting.</li>
4935          <li>Added <CODE>VertexBuffer</CODE> demo of how to specify the region where a vertex buffer object is allocated.</li>
4936          <li>Added <CODE>RenderToTexture</CODE> demo of rendering to a texture.</li>
4937          <li>Removed <CODE>DemoFont</CODE> demo of font display.</li>
4938        </ul>
4939      </description></P>
4940<HR>
4941<H3><A name="note13-03">Note 13-03: (GX) Changed vertex shader assembly code for sample demos [Sample Demos]</A></H3>
4942<P><description>Fixed double-writing to output register in the vertex shader assembly language (VSH files) included in the sample demos under the <CODE>gx</CODE> directory.<br></description></P>
4943<HR>
4944<H3><A name="note13-04">Note 13-04: (GX) Added two types of samples for fragment lighting [Sample Demos]</A></H3>
4945<P><description>Added the following sample demos under the <CODE>gx/DMPGL</CODE> directory.<br>
4946        <ul>
4947          <li><CODE>LightingDistanceAtte</CODE> (distance attenuation sample)</li>
4948          <li><CODE>LightingSpotAtte</CODE> (spotlight sample)</li>
4949        </ul>
4950      </description></P>
4951<HR>
4952<H3><A name="note13-05">Note 13-05: (SND) Changed sample demos [Sample Demos]</A></H3>
4953<P><description>Changed <CODE>SimplePlayer</CODE>'s <CODE>wav</CODE> sound source.<br></description></P>
4954<HR>
4955<H3><A name="note13-06">Note 13-06: (SND) Added sample demos [Sample Demos]</A></H3>
4956<P><description>Added <CODE>AuxBusSample</CODE> demo showing delay effects (BusA) and sine wave synthesis (BusB) using <CODE>AuxBus</CODE>.<br></description></P>
4957<HR>
4958<H3><A name="note13-07">Note 13-07: (ULCD) Added ULCD sample demos [Sample Demos]</A></H3>
4959<P><description>Added <CODE>ulcd/Simple</CODE> and <CODE>ulcd/RealMode</CODE> as ULCD sample demos.<br></description></P>
4960<HR>
4961<H3><A name="note13-08">Note 13-08: (Other) Changed demo1 [Sample Demos]</A></H3>
4962<P><description>Changed <CODE>demo1</CODE> so features were not mutually dependent, allowing each to operate independently.<br></description></P>
4963<HR>
4964<H3><A name="note13-09">Note 13-09: (Other) Deleted <CODE>using namespace</CODE> declaration from sample demos [Sample Demos]</A></H3>
4965<P><description>Removed <CODE>using namespace</CODE> declaration from sample demos, and now the demo uses explicit specification of namespaces that was previously omitted.</description></P>
4966<HR>
4967<H3><A name="KnownIssues_0_9_0_Release%20SampleDemos">Known Issues with SDK 0.9.0 Release Sample Demos</A></H3>
4968<knownissues><description>
4969        <ul>
4970          <li>There is a bug in the <CODE>Release - small</CODE> build of <CODE>demo1</CODE> where triangles do not render to the upper screen.<br> Triangles render properly when using other build options.</li>
4971          <li>There is a bug in the <CODE>Release - small</CODE> build of <CODE>uds/com_demo1</CODE> that prevents scans from working properly.<br> Communication works properly when using other build options.</li>
4972          <li>There is a bug in the <CODE>Release - small</CODE> build of <CODE>gx/Api/RenderToTexture</CODE> that causes extremely slow rendering speeds.<br> There is no problem when using other build options.</li>
4973          <li>The <CODE>camera/Simple</CODE> demo freezes on rare occasions if the settings are changed by pressing the buttons repeatedly.</li>
4974        </ul>
4975      </description></knownissues><HR>
4976<H2 style="line-height: 0"><A name="sdk_0_8_3_Release">CTR-SDK Version 0.8.3 Release</A></H2>
4977<DIV style="text-align: right"><P style="line-height: 0">(2010/03/15)</P></DIV>
4978<HR>
4979<H3><A name="note12-01">Note 12-01: Note 12-01: (DEMO) Revised the internal operations of the <CODE>nn::demo::RunCmdlistDone</CODE> function [<span>SDK</span>]</H3>
4980<P><description>This function has been revised following the addition of the <CODE>nngxWaitCmdlistDone</CODE> function, which waits for the CPU to finish running a command list.<br></description></P>
4981<HR>
4982<H3><A name="note12-02">Note 12-02: (DEMO) Replaced the <CODE>nngxReserveSwapBuffers</CODE> function with the <CODE>nngxSwapBuffers</CODE> function [SDK | Sample Demos]</H3>
4983<P><description>The <CODE>nngxReserveSwapBuffers</CODE> function has been replaced with the <CODE>nngxSwapBuffers</CODE> function in anticipation of its future elimination from the SDK.<br></description></P>
4984<HR>
4985<H3><A name="note12-03">Note 12-03: (GX) Updated the DMPGL documentation [SDK]</A></H3>
4986<P><description>Made the following document revisions.<br>
4987        <ul>
4988          <li><CODE>DMPGL20_system_API_specification.pdf</CODE></li>
4989          <li><CODE>DMPGL20_specification.pdf</CODE></li>
4990          <li>DMPGL20_programming_guide.pdf</li>
4991          <li><CODE>DMPGL20_load_pattern_setting.pdf</CODE></li>
4992          <li><CODE>DMPGL20_statecache_specification.pdf</CODE> (The name of this file has also been changed from &quot;<CODE>DMPGL20_commandcache_specification.pdf</CODE>.&quot;)</li>
4993          <li>VertexShaderReferenceManual.pdf</li>
4994        </ul>
4995      </description></P>
4996<HR>
4997<H3><A name="note12-04">Note 12-04: Note 12-04: (GX) Fixed a bug related to dmp_Texture*.samplerType switching [<span>SDK</span>]</H3>
4998<P><description>Fixed a bug that caused cube map textures to remain enabled even after one of the <CODE>dmp_Texture*.samplerType</CODE> reserved uniforms was changed from a cube map setting (like <CODE>GL_TEXTURE_CUBE_MAP</CODE>) to a 2D texture (like <CODE>GL_TEXTURE_2D</CODE>).<br></description></P>
4999<HR>
5000<H3><A name="note12-05">Note 12-05: (GX) Fixed a bug involving setting the alpha component with the <CODE>glBlend*</CODE> functions [SDK]</A></H3>
5001<P><description>Fixed a bug that prevented alpha components from being set properly with the <CODE>glBlendEquation</CODE> and <CODE>glBlendEquationSeparate</CODE> functions.<br></description></P>
5002<HR>
5003<H3><A name="note12-06">Note 12-06: (GX) Fixed bugs in <CODE>glBufferData</CODE> function [SDK]</A></H3>
5004<P><description>Fixed a bug that prevented an error from being detected if the <SPAN class="argument">data</SPAN> argument was <CODE>NULL(0)</CODE> when <CODE>NN_GX_MEM_FCRAM | GL_NO_COPY_FCRAM_DMP</CODE> was specified for the <CODE>glBufferData</CODE> function.<br></description></P>
5005<HR>
5006<H3><A name="note12-07">Note 12-07: (GX) Fixed bugs in <CODE>glBufferSubData</CODE> function [SDK]</A></H3>
5007<P><description>Fixed a bug that caused validity checks on the <SPAN class="argument">data</SPAN> argument to be skipped if <CODE>NN_GX_MEM_FCRAM | GL_NO_COPY_FCRAM_DMP</CODE> was specified for the <CODE>glBufferSubData</CODE> function.<br></description></P>
5008<HR>
5009<H3><A name="note12-08">Note 12-08: (GX) Changed <CODE>glBufferSubData</CODE> function specifications [SDK]</A></H3>
5010<P><description>With previous versions of the SDK, using the &quot;no copy in the main memory (FCRAM) and PICA accessing the main memory&quot; as the method to load the target vertex buffer would cause a <CODE>GL_INVALID_OPERATION</CODE> error. The specifications have now been changed so that the cache for the specified partial region is flushed.<br></description></P>
5011<HR>
5012<H3><A name="note12-09">Note 12-09: (GX) Fixed bugs in the <CODE>glLinkProgram</CODE> function [SDK]</A></H3>
5013<P><description>Fixed a bug that caused the program not to be updated correctly if the current program that was set with the <CODE>glUseProgram</CODE> function was relinked with the <CODE>glLinkProgram</CODE> function.<br><br> Fixed another bug that caused the program not to be updated correctly in the following sequence of events: (1) the <CODE>glDetachShader</CODE> or <CODE>glAttachShadershader</CODE> function was used to switch the shader of the current program that was set with the <CODE>glUseProgram</CODE> function, after which (2) the <CODE>glUseProgram</CODE> function was used to switch to another program without first relinking using the <CODE>glLinkProgram</CODE> function.<br></description></P>
5014<HR>
5015<H3><A name="note12-10">Note 12-10: Note 12-10: (GX) Added a parameter obtained by the <CODE>nngxGetCmdlistParameteri</CODE> function [<span>SDK</span>]</H3>
5016<P><description>Added two additional definitions for the <SPAN class="argument">param</SPAN> argument to the <CODE>nngxGetCmdlistParameteri</CODE> function: <CODE>NN_GX_CMDLIST_TOP_BUFADDR</CODE> and <CODE>NN_GX_CMDLIST_BINDING</CODE>.<br></description></P>
5017<HR>
5018<H3><A name="note12-11">Note 12-11: (GX) Fixed issues with the error detection of the <CODE>nngxInitialize</CODE> function [<span>SDK</span>]</A></H3>
5019<P><description>Fixed a bug that caused failed initializations not to be detected if the <CODE>nngxInitialize</CODE> function failed to allocate memory.<br></description></P>
5020<HR>
5021<H3><A name="note12-12">Note 12-12: (GX) Changed the <CODE>nngxReserveSwapBuffers</CODE> function to be equivalent of the <CODE>nngxSwapBuffers</CODE> function [SDK]</H3>
5022<P><description>A bug was found in the <CODE>nngxReserveSwapBuffers</CODE> function, and its functionality is already provided by the <CODE>nngxSwapBuffers</CODE> function, so it will be removed from the SDK in the future.<br> To facilitate a transition period, this function now serves as a wrapper for the <CODE>nngxSwapBuffers</CODE> function.<br> This function will be removed in the next release of the CTR-SDK.<br></description></P>
5023<HR>
5024<H3><A name="note12-13">Note 12-13: (GX) Revised the error checking of the <CODE>nngxTransferRenderImage</CODE> and <CODE>nngxSwapBuffers</CODE> functions [SDK]</A></H3>
5025<P><description>Fixed a bug that prevented errors from being detected if an application used a display buffer that hadn't been allocated by the <span>nngxTransferRenderImage</span> or <span>nngxSwapBuffers</span> functions.<br></description></P>
5026<HR>
5027<H3><A name="note12-14">Note 12-14: (GX) Changed specifications for the command cache feature [SDK]</A></H3>
5028<P><description>Overhauled the command cache system.<br> As a result of the specification changes, the &quot;command cache&quot; feature has been renamed the &quot;state cache,&quot; and the following functions have been added.<br>
5029        <ul>
5030          <li><CODE>nngxStartCmdlistSave</CODE></li>
5031          <li><CODE>nngxStopCmdlistSave</CODE></li>
5032          <li><CODE>nngxUseSavedCmdlist</CODE></li>
5033          <li><CODE>nngxExportCmdlist</CODE></li>
5034          <li><CODE>nngxImportCmdlist</CODE></li>
5035          <li><CODE>nngxGetExportedCmdlistInfo</CODE></li>
5036          <li><CODE>nngxCopyCmdlist</CODE></li>
5037          <li><CODE>nngxValidateState</CODE></li>
5038          <li><span>nngxForceStateUpdate</span></li>
5039          <li><CODE>nngxUpdateState</CODE></li>
5040          <li><span>nngxSetCommnadGenerationMode</span></li>
5041        </ul>
5042        Note that the functions that relate to this feature may be changed in a future release.<br></description></P>
5043<HR>
5044<H3><A name="note12-15">Note 12-15: (GX) Changed the timing when command lists are destroyed and cleared [SDK]</H3>
5045<P><description>It is now possible for the <CODE>nngxDeleteCmdlist</CODE> and <CODE>nngxClearCmdlist</CODE> functions to delete or clear command lists without generating errors, even if the command list still contains unexecuted commands.<br></description></P>
5046<HR>
5047<H3><A name="note12-16">Note 12-16: (GX) Added a function that waits until a command list finishes executing [SDK]</H3>
5048<P><description>Added the <CODE>nngxWaitCmdlistDone</CODE> function, which waits until a command list finishes executing.<br></description></P>
5049<HR>
5050<H3><A name="note12-17">Note 12-17: (GX) Changed the timing when command completion interrupt handlers are registered and disabled [SDK]</H3>
5051<P><description>It is now possible to call the <CODE>nngxEnableCmdlistCallback</CODE> and <CODE>nngxDisableCmdlistCallback</CODE> functions on command lists that are still being executed.<br></description></P>
5052<HR>
5053<H3><A name="note12-18">Note 12-18: (GX) Added system API error codes [SDK]</A></H3>
5054<P><description>Changed the errors returned by the system API (the functions with the &quot;<CODE>nngx</CODE>&quot; prefix) from GL error codes to extended error codes.<br></description></P>
5055<HR>
5056<H3><A name="note12-19">Note 12-19: (GX) Fixed a bug in procedural textures [SDK]</A></H3>
5057<P><description>Fixed a bug that caused the delta values (indicating the deltas between adjacent entries) in the noise modulation lookup table for procedural textures not to contain the expected values.<br></description></P>
5058<HR>
5059<H3><A name="note12-20">Note 12-20: (TOOL) Updated the shader assembly language [SDK]</A></H3>
5060<P><description>Changed the shader assembly language as follows.
5061        <ul>
5062          <li>Added support for the <CODE>#if defined()</CODE>, <CODE>#if !defined()</CODE>, and <CODE>#elif</CODE> directives.</li>
5063          <li>If the <CODE>-debug</CODE> option is not specified, the input file's path is now deleted.</li>
5064          <li>Added a single <CODE>nop</CODE> instruction immediately after the <CODE>end</CODE> instruction during assembly to resolve a hardware bug.</li>
5065        </ul>
5066      </description></P>
5067<HR>
5068<H3><A name="KnownIssues_0_8_3_Release">Known Issues with SDK 0.8.3 Release</A></H3>
5069<P>  None.</P>
5070<HR>
5071<H2 style="line-height: 0"><A name="sdk_0_8_3_Release%20SampleDemos">CTR-SDK Version 0.8.3 Release SampleDemos</A></H2>
5072<DIV style="text-align: right"><P style="line-height: 0">(2010/03/15)</P></DIV>
5073<HR>
5074<H3><A name="note11-01">Note 11-01: (DEMO) Replaced the <CODE>nngxReserveSwapBuffers</CODE> function with the <CODE>nngxSwapBuffers</CODE> function [SDK | Sample Demos]</H3>
5075<P><description>The <CODE>nngxReserveSwapBuffers</CODE> function has been replaced with the <CODE>nngxSwapBuffers</CODE> function in anticipation of its future elimination from the SDK.<br></description></P>
5076<HR>
5077<H3><A name="note11-02">Note 11-02: (GX) Revised the <CODE>GasCessna</CODE> sample [Sample Demos]</A></H3>
5078<P><description>Although the Cessna model did not contain any texture coordinates or tangent data, this demo had a shader that used these vertex attributes.<br> This has been changed to use an appropriate shader.<br> The Cessna model in the demo now uses shading.<br></description></P>
5079<HR>
5080<H3><A name="note11-03">Note 11-03: (GX) Fixed a bug in the <CODE>GasColorSimple</CODE> sample [Sample Demos]</A></H3>
5081<P><description>The same depth buffer as the one used in the upper screen's framebuffer object is now explicitly attached for framebuffer objects used during the gas density information rendering pass.<br></description></P>
5082<HR>
5083<H3><A name="note11-04">Note 11-04: (GX) Revised the <CODE>ProctexRandom</CODE> sample [Sample Demos]</A></H3>
5084<P><description>The final entry in the noise lookup table was not set.<br> There was also an error in the method used to generate the noise lookup table.<br> These issues have been fixed.<br></description></P>
5085<HR>
5086<H3><A name="note11-05">Note 11-05: (GX) Added samples of using command cache [Sample Demos]</A></H3>
5087<P><description>The following demos that use the command cache feature have been added
5088        <ul>
5089          <li>SampleDemos/gx/Api/CommandCacheSimple</li>
5090          <li>SampleDemos/gx/Api/CommandCacheVSUniformFrame</li>
5091          <li>SampleDemos/gx/Api/CommandCacheVSUniformModel</li>
5092        </ul>
5093      </description></P>
5094<HR>
5095<H3><A name="KnownIssues_0_8_3_Release%20SampleDemos">Known Issues with SDK 0.8.3 Release Sample Demos</A></H3>
5096<knownissues><description>
5097        <ul>
5098          <li>There is a bug with the linker included in the RVCT 4.0 20100209 version that generated invalid inline operations. As a result of this bug, the following sample demos do not function properly with &quot;small&quot; (size-optimized) release builds.<br> This linker bug will be fixed in the next release of the ARM compiler.</li>
5099          <ul>
5100            <li>gx/Api/CommandCacheSimple</li>
5101            <li>gx/Api/CommandCacheVSUniformFrame</li>
5102            <li>gx/Api/CommandCacheVSUniformModel</li>
5103            <li>gx/Api/CommandListDouble</li>
5104            <li>gx/DMPGL/SubdivisionLoopSimple</li>
5105          </ul>
5106        </ul>
5107      </description></knownissues><HR>
5108<H2 style="line-height: 0"><A name="sdk_0_8_2_Release">CTR-SDK Version 0.8.2 Release</A></H2>
5109<DIV style="text-align: right"><P style="line-height: 0">(2010/02/22)</P></DIV>
5110<HR>
5111<H3><A name="note10-01">Note 10-01: (HIO) Revised the HIO library initialization functions [SDK]</A></H3>
5112<P><description>Fixed a portion of the initialization process that was insufficient.<br></description></P>
5113<HR>
5114<H3><A name="note10-02">Note 10-02: (MATH) Fixed a bug that occurred if the input and output of the <CODE>VEC3Transform</CODE> function were the same [SDK]</A></H3>
5115<P><description>If the same pointer was specified for both the input and output of the <CODE>VEC3Transform</CODE> function using CTR-SDK 0.8.1, the function would return an invalid result.<br> This problem has been corrected.<br></description></P>
5116<HR>
5117<H3><A name="note10-03">Note 10-03: (SND) Fixed a bug in ADPCM playback [SDK]</A></H3>
5118<P><description>Fixed a bug that caused the playback length to be shorter than the specified length during playback of ADPCM sound sources.<br> This change was actually made in version 0.8.1, but it was inadvertently left out of the changelog.<br></description></P>
5119<HR>
5120<H3><A name="note10-04">Note 10-04: (SND) Revised the <CODE>Voice::IsPlaying</CODE> function [SDK]</H3>
5121<P><description>Fixed a bug with one-shot (non-looping) playback that caused the playback state not to change to <CODE>false</CODE>, even after the end of the sound source data was reached.<br></description></P>
5122<HR>
5123<H3><A name="note10-05">Note 10-05: (SND) Revised the <CODE>nn::snd::Voice::GetPlayPosition</CODE> function [SDK]</A></H3>
5124<P><description>Fixed a bug that caused the <CODE>nn::snd::Voice::GetPlayPosition</CODE> function to return an unexpected value if it was called immediately after interrupt notification from the DSP.<br></description></P>
5125<HR>
5126<H3><A name="note10-06">Note 10-06: (SND) Revised the updating process of voice buffer status [SDK]</A></H3>
5127<P><description>Fixed a bug in the code that updates the status of voice buffers. In certain circumstances, this bug failed to provide buffer information for the application to update (for example, information about the release of voices). This in turn would lead to an assertion failure because the buffer could not be found, and ultimately cause the program to halt.<br></description></P>
5128<HR>
5129<H3><A name="KnownIssues_0_8_2_Release">Known Issues with SDK 0.8.2 Release</A></H3>
5130<P>  None.</P>
5131<HR>
5132<H2 style="line-height: 0"><A name="sdk_0_8_1_Release">CTR-SDK Version 0.8.1 Release</A></H2>
5133<DIV style="text-align: right"><P style="line-height: 0">(2010/02/17)</P></DIV>
5134<HR>
5135<H3><A name="note9-01">Note 9-01: (DevEnv) Changed compiler and linker options [SDK]</A></H3>
5136<P><description>Changed the compiler and linker options used by the build system and in the creation of the CTR-SDK libraries.<br>
5137        <ul>
5138          <li>Compiler options:</li>
5139          <ul>
5140            <li>No specification	→	--remove_unneeded_entities</li>
5141            <li>Implicit specification	→	--littleend</li>
5142            <li>--debug_macros	→	--no_debug_macros</li>
5143            <li><span>--dwarf2</span>	→	<span>--dwarf3</span></li>
5144            <li>--no_unaligned_access	→	No specification</li>
5145          </ul>
5146          <li>Linker options:</li>
5147          <ul>
5148            <li>No specification	→	--no_eager_load_debug</li>
5149            <li>No specification	→	--vfemode=force</li>
5150            <li>Implicit specification	→	<span>--debug</span></li>
5151            <li>Implicit specification	→	--exception_tables=nocreate</li>
5152            <li>Added the <CODE>--no_bestdebug --inline --tailreorder</CODE> options for Release builds.</li>
5153            <li>Added the <CODE>--bestdebug</CODE> option for non-Release builds.</li>
5154          </ul>
5155        </ul>
5156        Made a change so that <CODE>__use_c99_matherr</CODE> is imported within <CODE>librtport.*.a</CODE>.<br> As a result of these changes, the use of CTR-SDK 0.8.1 requires the RVCT 4.0 20100209 or a later version of the ARM compiler.</description></P>
5157<HR>
5158<H3><A name="note9-02">Note 9-02: (HIO) Fixed a bug that prevented CCI files from being loaded if the HostIO functionality was used [SDK]</A></H3>
5159<P><description>Fixed a bug that caused load failures if an attempt was made to run a CCI file that uses the HIO library.<br></description></P>
5160<HR>
5161<H3><A name="note9-03">Note 9-03: (SND) Fixed a bug in ADPCM playback [SDK]</A></H3>
5162<P><description>Fixed a bug that caused noise to be generated as a result of an inability to decode properly while looping and buffer jumping during ADPCM playback.<br></description></P>
5163<HR>
5164<H3><A name="note9-04">Note 9-04: (SND) Revised how data from DSP is read [SDK]</A></H3>
5165<P><description>With the previous versions of the SDK, there was a chance that streaming playback would not operate properly because reads would occur even if there were no updates to the data received from the DSP.<br> The spec has been changed so that no reads will occur if the data has not been updated.<br></description></P>
5166<HR>
5167<H3><A name="note9-05">Note 9-05: (SND) Changed specifications for the <CODE>nn::snd::WaveBuffer</CODE> function [SDK]</A></H3>
5168<P><description>Changed <CODE>bufferSize</CODE> (which sets the buffer size using a member variable of the <CODE>nn::snd::WaveBuffer</CODE> structure) to <CODE>sampleLength</CODE> (which sets the sample length).<br></description></P>
5169<HR>
5170<H3><A name="KnownIssues_0_8_1_Release">Known Issues with SDK 0.8.1 Release</A></H3>
5171<P>  None.</P>
5172<HR>
5173<H2 style="line-height: 0"><A name="sdk_0_8_1_Release%20SampleDemos">CTR-SDK Version 0.8.1 Release SampleDemos</A></H2>
5174<DIV style="text-align: right"><P style="line-height: 0">(2010/02/17)</P></DIV>
5175<HR>
5176<H3><A name="note8-01">Note 8-01: (SND) Revised the demos that use sound [Sample Demos]</A></H3>
5177<P>In line with the change described in <description><a href="changelog.html#note9-05">Note 9-05</a>, revised <CODE>demo1</CODE>, <CODE>demo2</CODE>, <CODE>snd/SimplePlayer</CODE>, and <CODE>snd/StreamPlayer</CODE>.</P>
5178<HR>
5179<H3><A name="KnownIssues_0_8_1_Release%20SampleDemos">Known Issues with SDK 0.8.1 Release Sample Demos</A></H3>
5180<P>  None.</P>
5181<HR>
5182<H2 style="line-height: 0"><A name="sdk_0_8_0_Release">CTR-SDK Version 0.8.0 Release</A></H2>
5183<DIV style="text-align: right"><P style="line-height: 0">(2010/02/10)</P></DIV>
5184<HR>
5185<H3><A name="note7-01">Note 7-01: (CAMERA) Removed the <CODE>StopDmaRecv[Rgb]</CODE> function [SDK | System Updater]</A></H3>
5186<P><description>Applications no longer need to call the <CODE>StopDmaRecv[Rgb]</CODE> function explicitly, so this function has been removed.<br></description></P>
5187<HR>
5188<H3><A name="note7-02">Note 7-02: (CAMERA) Revised the CAMERA library function reference [SDK]</A></H3>
5189<P><description>Made the following revisions to the function reference for the camera library.
5190        <ul>
5191          <li>Added an explanation of the data format output by the cameras.</li>
5192          <li>Added a note to the reference about the number of frames required until the auto-exposure stabilizes when the cameras are first activated.</li>
5193        </ul>
5194      </description></P>
5195<HR>
5196<H3><A name="note7-03">Note 7-03: (CAMERA) Revised the CAMERA library configuration functions [SDK | System Updater]</A></H3>
5197<P><description>Fixed a bug that disabled the auto-exposure feature in the <CODE>SetAutoWhiteBalance</CODE> function, which is used to enable/disable automatic white balance.<br></description></P>
5198<HR>
5199<H3><A name="note7-04">Note 7-04: (CAMERA) Added and removed the CAMERA library functions [SDK | System Updater]</A></H3>
5200<P><description>The following functions have been added to set the operating mode of the cameras.<br>
5201        <ul>
5202          <li><CODE>SetDetailSize</CODE>: Specifies the size (in pixels) of the images output from the cameras</li>
5203          <li><CODE>SetContrast</CODE>: Changes the contrast</li>
5204          <li><CODE>LensCorrection</CODE>: Changes the level of vignetting correction</li>
5205        </ul>
5206        The following enumerated types were added following the addition of the functions listed above.<br>
5207        <ul>
5208          <li><CODE>Contrast</CODE></li>
5209          <li><CODE>LensCorrection</CODE></li>
5210        </ul>
5211      </description></P>
5212<HR>
5213<H3><A name="note7-05">Note 7-05: (CAMERA) Revised some function specifications in the CAMERA library [SDK | System Updater]</A></H3>
5214<P><description>The specifications of the following functions have been changed.<br>
5215        <ul>
5216          <li>The functions below now have a return value of <CODE>void</CODE>:</li>
5217          <ul>
5218            <li><CODE>Initialize</CODE></li>
5219            <li>Finalize</li>
5220            <li><CODE>StartCapture</CODE></li>
5221            <li><CODE>StopCapture</CODE></li>
5222            <li><CODE>ClearBuffer</CODE></li>
5223            <li><CODE>GetVsyncInterruptEvent</CODE></li>
5224            <li><CODE>GetBufferErrorInterruptEvent</CODE></li>
5225            <li><span>DmaRecv</span></li>
5226            <li><CODE>SetTransferLines</CODE></li>
5227            <li><CODE>SetTrimming</CODE></li>
5228            <li><CODE>SetTrimmingParams</CODE></li>
5229            <li><CODE>GetTrimmingParams</CODE></li>
5230            <li><CODE>SetTrimmingParamsCenter</CODE></li>
5231          </ul>
5232          <li>Functions that now return <CODE>bool</CODE>:</li>
5233          <ul>
5234            <li><CODE>ActivateModule</CODE></li>
5235            <li><span>SwitchContextModule</span></li>
5236            <li><span>SetExposureModule</span></li>
5237            <li><span>SetWhiteBalanceModule</span></li>
5238            <li><span>SetSharpnessModule</span></li>
5239            <li>SetAutoExposureModule</li>
5240            <li><span>IsAutoExposureModule</span></li>
5241            <li><span>SetAutoWhiteBalanceModule</span></li>
5242            <li><span>IsAutoWhiteBalanceModule</span></li>
5243            <li><CODE>FlipModule</CODE></li>
5244            <li><span>SetSizeModule</span></li>
5245            <li><span>SetFrameRateModule</span></li>
5246            <li><span>SetPhotoModeModule</span></li>
5247            <li><span>SetEffectModule</span></li>
5248          </ul>
5249          <li>The functions below now return data:</li>
5250          <ul>
5251            <li><CODE>IsBusy</CODE></li>
5252            <li><CODE>IsBufferError</CODE></li>
5253            <li><span>IsDmaRecvFinished</span></li>
5254            <li><CODE>GetMaxLines</CODE></li>
5255            <li><CODE>IsTrimming</CODE></li>
5256          </ul>
5257        </ul>
5258      </description></P>
5259<HR>
5260<H3><A name="note7-06">Note 7-06: (CAMERA) Removed and added the CAMERA library functions [SDK | System Updater]</A></H3>
5261<P><description>To support the latest SoC, the arguments or the return values of some of the functions have been changed. Other functions have been removed altogether.<br> New functions have also been added.<br>
5262        <ul>
5263          <li>The arguments or return values of the following functions have been changed:</li>
5264          <ul>
5265            <li><CODE>SetTransferLines</CODE></li>
5266            <li><CODE>GetMaxLines</CODE></li>
5267          </ul>
5268          <li>The following functions have been removed:</li>
5269          <ul>
5270            <li><span>GetTransferLines</span></li>
5271            <li><span>GetBytesAtOnce</span></li>
5272          </ul>
5273          <li>The following functions have been added:</li>
5274          <ul>
5275            <li><CODE>SetTransferBytes</CODE>: Specifies the number of bytes to accumulate in the buffer</li>
5276            <li><CODE>GetTransferBytes</CODE>: Gets the number of bytes currently accumulated in the buffer</li>
5277            <li><CODE>GetMaxBytes</CODE>: Returns the maximum number of bytes that can be stored in the buffer</li>
5278          </ul>
5279        </ul>
5280        Any references to the <CODE>GetTransferLines</CODE> and <CODE>GetBytesAtOnce</CODE> functions that have been removed should be replaced with references to the <CODE>GetTransferBytes</CODE> function.<br></description></P>
5281<HR>
5282<H3><A name="note7-07">Note 7-07: (CAMERA) Changed some function names in the CAMERA library [SDK | System Updater]</A></H3>
5283<P><description>Some of the function names have been changed, as shown below:<br>
5284        <ul>
5285          <li><CODE>DmaRecv</CODE> -&gt; <CODE>SetReceiving</CODE></li>
5286          <li><span>IsDmaRecvFinished</span>           -&gt; <span>IsFinishedReceiving</span></li>
5287          <li><CODE>ActivateModule</CODE> -&gt; <CODE>Activate</CODE></li>
5288          <li><CODE>SwitchContextModule</CODE> -&gt; <CODE>SwitchContext</CODE></li>
5289          <li><CODE>SetExposureModule</CODE> -&gt; <CODE>SetExposure</CODE></li>
5290          <li><CODE>SetWhiteBalanceModule</CODE> -&gt; <CODE>SetWhiteBalance</CODE></li>
5291          <li><CODE>SetSharpnessModule</CODE> -&gt; <CODE>SetSharpness</CODE></li>
5292          <li><CODE>SetAutoExposureModule</CODE> -&gt; <CODE>SetAutoExposure</CODE></li>
5293          <li><CODE>IsAutoExposureModule</CODE> -&gt; <CODE>IsAutoExposure</CODE></li>
5294          <li><span>SetAutoWhiteBalanceModule</span> -&gt; <span>SetAutoWhiteBalance</span></li>
5295          <li><CODE>IsAutoWhiteBalanceModule</CODE> -&gt; <CODE>IsAutoWhiteBalance</CODE></li>
5296          <li><span>FlipModule</span>                -&gt; <span>FlipImage</span></li>
5297          <li><CODE>SetSizeModule</CODE> -&gt; <CODE>SetSize</CODE></li>
5298          <li><CODE>SetFrameRateModule</CODE> -&gt; <CODE>SetFrameRate</CODE></li>
5299          <li><CODE>SetEffectModule</CODE> -&gt; <CODE>SetEffect</CODE></li>
5300          <li><CODE>SetPhotoMode</CODE> -&gt; <CODE>SetPhotoMode</CODE></li>
5301        </ul>
5302      </description></P>
5303<HR>
5304<H3><A name="note7-08">Note 7-08: (CAMERA) Added and revised the camera-related configuration parameters [SDK | System Updater]</A></H3>
5305<P><description>The enumerated types used by the functions that configure the camera settings have been revised. In addition, the range of values that can be specified for some of those functions has been expanded.
5306        <ul>
5307          <li><CODE>Size</CODE> enumerated type<br>Deleted the value indicating 298x224 resolution, and added a value indicating the native size of the CTR's upper screen (400x240).</li>
5308          <li><CODE>Effect</CODE> enumerated type<br>Increased the number of levels that can be set for the parameters from 6 to 22.</li>
5309          <li>Values set with the <CODE>SetSharpness</CODE> function<br>Changed the range from [-3, +5] to [-4, +5].</li>
5310        </ul>
5311      </description></P>
5312<HR>
5313<H3><A name="note7-09">Note 7-09: (CAMERA) Added data transfer completion event [SDK | System Updater]</A></H3>
5314<P><description>It is now possible to get events that notify of data transfer completion during calls to the <CODE>SetReceiving</CODE> and <CODE>SetReceivingRgb</CODE> functions. These functions are used to receive camera data.<br></description></P>
5315<HR>
5316<H3><A name="note7-10">Note 7-10: (DEMO) Added the <CODE>DrawFramework::GetFramebufferObject</CODE> and <CODE>GetRenderbufferObject</CODE> functions [SDK]</A></H3>
5317<P><description>Added functions to get the IDs of framebuffer objects and render buffer objects managed by the DrawFramework class.<br></description></P>
5318<HR>
5319<H3><A name="note7-11">Note 7-11: (DSP) Modified the <CODE>CreateSharedMemory</CODE> function [SDK]</H3>
5320<P><description>Removed the second and fifth arguments, which had not been used.<br></description></P>
5321<HR>
5322<H3><A name="note7-12">Note 7-12: (DSP) Added the DSP Function Reference Manual [SDK]</A></H3>
5323<P><description>Added the DSP reference manual.<br></description></P>
5324<HR>
5325<H3><A name="note7-13">Note 7-13: (DSP) Modified the <CODE>LoadComponent</CODE> function [SDK]</A></H3>
5326<P><description>Deleted the PIPE number that used to be specified as the third argument in previous versions of the SDK.<br></description></P>
5327<HR>
5328<H3><A name="note7-14">Note 7-14: (DSP) Modified the <CODE>LoadDefaultComponent</CODE> function [SDK]</A></H3>
5329<P><description>Added the <CODE>LoadDefaultComponent</CODE> function for loading components used by the SND library.<br></description></P>
5330<HR>
5331<H3><A name="note7-15">Note 7-15: (DSP) Increased the PIPE count [SDK]</A></H3>
5332<P><description>Increased the number of pipes used for communication with DSP to 8.<br></description></P>
5333<HR>
5334<H3><A name="note7-16">Note 7-16: (DSP) Modified the <CODE>RecvData</CODE>, <CODE>RecvDataIsReady</CODE>, <CODE>SendData</CODE>, and <CODE>SendDataIsEmpty</CODE> functions [SDK]</H3>
5335<P><description>The register number is now specified as the first argument.<br></description></P>
5336<HR>
5337<H3><A name="note7-17">Note 7-17: (DSP) Modified the <CODE>RegisterInterruptEvents</CODE> function [SDK]</A></H3>
5338<P><description>The PIPE number is now specified as the first argument.<br></description></P>
5339<HR>
5340<H3><A name="note7-18">Note 7-18: (DevEnv) Added reference about build rules [SDK]</A></H3>
5341<P><description>Added a reference page for build rules: $CTR_SDK/documents/SDKRules/BuildRules.html.<br></description></P>
5342<HR>
5343<H3><A name="note7-19">Note 7-19: (FND) Added an overloaded version of the <CODE>ExpHeap::Adjust</CODE> function that specifies the direction in which the expanded heap should be reduced [SDK]</A></H3>
5344<P><description>Added an overloaded function to the <CODE>Adjust</CODE> function of the <CODE>nn::fnd::ExpHeap</CODE>, which lets the developer shrink the size of the heap. This overloaded function allows the direction of adjustment to be specified.<br></description></P>
5345<HR>
5346<H3><A name="note7-20">Note 7-20: (FND) Added <CODE>nn::fnd::DateTime</CODE> class [SDK]</A></H3>
5347<P><description>Added the <CODE>nn::fnd::DateTime</CODE> class to get the current date and time.<br></description></P>
5348<HR>
5349<H3><A name="note7-21">Note 7-21: (FND) Revised the <CODE>nn::fnd::ExpHeapBase::GetSizeOf</CODE> function reference [SDK]</A></H3>
5350<P><description>Revised return values in the <CODE>nn::fnd::ExpHeapBase::GetSizeOf</CODE> function reference page.<br></description></P>
5351<HR>
5352<H3><A name="note7-22">Note 7-22: (FND) Added a feature to specify the location of the administrative region when creating nested heaps [SDK]</A></H3>
5353<P><description>Added arguments to the <CODE>nn::fnd::*Heap::Create</CODE> classes that allow the developer to specify where the management region should be located. These functions are used to create nested heaps in the <CODE>ExpHeap</CODE>, <CODE>FrameHeap</CODE>, and <CODE>UnitHeap</CODE> within the <CODE>nn::fnd</CODE> namespace.<br></description></P>
5354<HR>
5355<H3><A name="note7-23">Note 7-23: (GX) Revised the thread-related behavior of the <CODE>nngx</CODE> functions [SDK]</A></H3>
5356<P><description>Fixed the following two problems that involved <CODE>nngx</CODE> thread behavior.<br>
5357        <ul>
5358          <li>Low-priority threads would not run when the <CODE>nngxWaitVSync</CODE> function was running.</li>
5359          <li>Calling the <CODE>nngxInitialize</CODE> function in a thread with a priority of zero would result in a freeze.</li>
5360        </ul>
5361      </description></P>
5362<HR>
5363<H3><A name="note7-24">Note 7-24: (GX) Changed specifications for the <CODE>nngxInitialize</CODE> function [SDK]</A></H3>
5364<P><description>Removed unnecessary arguments from the definition of the <CODE>nngxInitialize</CODE> function.<br> A related change was made to the portion of the code that calls the <CODE>nngxInitialize</CODE> function in the DEMO library.<br> Note that this function is no longer compatible with previous versions of the CTR-SDK.<br></description></P>
5365<HR>
5366<H3><A name="note7-25">Note 7-25: (GX) Updated the graphics drivers [SDK]</A></H3>
5367<P><description>
5368        <ul>
5369          <li>Bugfixes</li>
5370          <ul>
5371            <li>Fixed an issue with the default settings for the diffuse colors of light 0 and materials in DMP fragment lighting.</li>
5372            <li>Fixed a bug in the default value of the reserved uniform <CODE>dmp_LightEnv.clampHighlights</CODE>.</li>
5373            <li>Fixed a bug that caused an error when the <CODE>GL_GAS_DMP</CODE> format was used with the <CODE>glCopyTexImage2D</CODE> function.</li>
5374            <li>Fixed a bug where you could not use textures in the <CODE>GL_GAS_DMP</CODE> format with texture units 1 and 2.</li>
5375            <li>Fixed a bug where you could not set <CODE>dmp_TexEnv[i].combineAlpha</CODE> to <CODE>GL_DOT3_RGBA</CODE>.</li>
5376            <li>Added error checking.</li>
5377          </ul>
5378          <li>New Features and Changed Specifications</li>
5379          <ul>
5380            <li>Added two new functions: <CODE>glUniformsDMP</CODE> and <CODE>glGetUniformsDMP</CODE>.</li>
5381            <li>Changed the maximum value for the V-Sync counter to <CODE>0x7FFFFFFE</CODE>.</li>
5382            <li>Implemented an optimization that reduces the number of searches for texture and vertex objects.</li>
5383          </ul>
5384          <li>Shader assembler tool-related fixes</li>
5385          <ul>
5386            <li>Errors and warning messages are now output to <CODE>sdterr</CODE> instead of <CODE>stdout</CODE>.</li>
5387          </ul>
5388        </ul>
5389      </description></P>
5390<HR>
5391<H3><A name="note7-26">Note 7-26: (GX) Revised graphics function reference [SDK]</A></H3>
5392<P><description>Made cosmetic and layout improvements to the function references of the <CODE>gl</CODE> and <CODE>nngx</CODE> APIs.<br></description></P>
5393<HR>
5394<H3><A name="note7-27">Note 7-27: (HID) Revised the terminology &quot;play radius&quot; to &quot;play&quot; within the <CODE>AccelerometerReader</CODE> class [SDK]</A></H3>
5395<P><description>Changed the terminology used to represent the tolerances that determine the sensitivity of the accelerometers. This used to be referred to as the &quot;play radius,&quot; but is now simply called &quot;play&quot; (or sometimes &quot;play range&quot;).<br> This change was made because the &quot;play&quot; is applied to the amount of change in acceleration (in other words, the &quot;snap&quot;) along each axis, not to the coordinates' distances from the origin.<br></description></P>
5396<HR>
5397<H3><A name="note7-28">Note 7-28: (HID) Revised touch panel calibration [SDK]</A></H3>
5398<P><description>Fixed a bug that resulted in invalid coordinates obtained for locations tapped at the left or top edge of some touch panels.<br></description></P>
5399<HR>
5400<H3><A name="note7-29">Note 7-29: (HID) Revised the definitions of the member functions of the <CODE>Pad</CODE> class [SDK]</A></H3>
5401<P><description>Added the <CODE>const</CODE> modifier to the <CODE>GetStickClamp</CODE> and <CODE>GetStickClampMode</CODE> member functions of the <CODE>nn::hid::CTR::PadReader</CODE> class.<br></description></P>
5402<HR>
5403<H3><A name="note7-30">Note 7-30: (HIO) Added the HIO library [SDK]</A></H3>
5404<P><description>Added the HIO library, which provides access between the CTR development hardware and a PC.<br></description></P>
5405<HR>
5406<H3><A name="note7-31">Note 7-31: (MIC) Revised the <CODE>AllocateBuffer</CODE> and <CODE>StartSampling</CODE> Functions [SDK]</A></H3>
5407<P><description>Errors will now always occur if the size or offsets specified for the <CODE>AllocateBuffer</CODE> and <CODE>StartSampling</CODE> functions are not two-byte aligned, or if the specified size exceeds the size of the buffer that has been allocated.<br></description></P>
5408<HR>
5409<H3><A name="note7-32">Note 7-32: (MIC) Revised the <CODE>microphone</CODE> function reference [SDK]</A></H3>
5410<P><description>Added descriptions to the MIC function reference.<br></description></P>
5411<HR>
5412<H3><A name="note7-33">Note 7-33: (NSTD) Renamed the <CODE>NSTD</CODE> Library [SDK]</A></H3>
5413<P><description>Renamed the NSTD library to <CODE>libnn_nstd</CODE>.<br></description></P>
5414<HR>
5415<H3><A name="note7-34">Note 7-34: (OS) Changed the documentation for the C-language wrapper functions [SDK]</A></H3>
5416<P><description>The documentation for the C-language wrapper functions has been standardized to text that links to the corresponding C++ functions.<br> The documentation for the following functions is now accessible from the list of OS-related C language wrapper functions:<br>
5417        <ul>
5418          <li><CODE>nnosInitializeAlarmSystem</CODE></li>
5419          <li>nnosInitializeDeviceMemory</li>
5420          <li>nnosGetDeviceMemoryAddress</li>
5421        </ul>
5422      </description></P>
5423<HR>
5424<H3><A name="note7-35">Note 7-35: (OS) Added and removed C-language wrapper functions [SDK]</A></H3>
5425<P><description>The following C wrapper functions have been added.<br>
5426        <ul>
5427          <li><CODE>nnosTimerSignal</CODE></li>
5428          <li><CODE>nnosThreadGetId</CODE></li>
5429          <li><CODE>nnosThreadIsAlive</CODE></li>
5430          <li><CODE>nnosThreadGetMainThread</CODE></li>
5431          <li><CODE>nnosInitialize</CODE></li>
5432        </ul>
5433        Deleted the following functions:<br>
5434        <ul>
5435          <li><CODE>nnosEventInitializeNoCreate</CODE></li>
5436        </ul>
5437      </description></P>
5438<HR>
5439<H3><A name="note7-36">Note 7-36: (OS) Revised the <CODE>CriticalSection</CODE> specifications [SDK]</A></H3>
5440<P><description>The <CODE>nn::os::CriticalSection</CODE> class can now obtain locks recursively, just like the <CODE>nn::os::Mutex</CODE> class.<br> The sizes of the <CODE>nn::os::CriticalSection</CODE> and <CODE>nn::os::BlockingQueue</CODE> classes have been changed following this revision.<br></description></P>
5441<HR>
5442<H3><A name="note7-37">Note 7-37: (OS) Eliminated alignment restrictions on buffers transferred via DMA [SDK]</A></H3>
5443<P><description>Functions that use DMAC internally for data transfer used to require that the buffer be aligned to larger boundaries than the alignment the functions originally required.<br> This restriction has been lifted.<br></description></P>
5444<HR>
5445<H3><A name="note7-38">Note 7-38: (OS) Fixed DMA transfer memory leaks [SDK]</A></H3>
5446<P><description>Fixed a bug that sometimes caused <CODE>DESCRIPTION_OUT_OF_MEMORY</CODE> errors to occur after repeated DMA system calls.<br></description></P>
5447<HR>
5448<H3><A name="note7-39">Note 7-39: (OS) Revised the function reference for the <CODE>nn::os::StackMemoryBlock</CODE> class [SDK]</A></H3>
5449<P><description>Corrected an error in the reference for <CODE>nn::os::StackMemoryBlock</CODE> that describes regions where physical memory is not allocated.<br></description></P>
5450<HR>
5451<H3><A name="note7-40">Note 7-40: (OS) Revised the function reference for <CODE>nn::os::WaitObject::WaitAny</CODE> [SDK]</A></H3>
5452<P><description>Revised the return values listed in the function reference for the <CODE>nn::os::WaitObject::WaitAny</CODE> function.<br></description></P>
5453<HR>
5454<H3><A name="note7-41">Note 7-41: (OS) Added a thread-safe typedef for heaps [SDK]</A></H3>
5455<P><description>Added typedefs for the <CODE>nn::fnd::ThreadSafeExpHeap</CODE>, <CODE>nn::fnd::ThreadSafeUnitHeap</CODE>, and <CODE>nn::fnd::ThreadSafeFrameHeap</CODE> functions, which implement thread-safe heaps by using critical sections on a per-heap basis.<br></description></P>
5456<HR>
5457<H3><A name="note7-42">Note 7-42: (SND) Released the sound library [SDK]</A></H3>
5458<P><description>Released the sound library.<br></description></P>
5459<HR>
5460<H3><A name="note7-43">Note 7-43: (TOOL) Changed the CCI format that is output from <CODE>ctr_makerom</CODE> [SDK | System Updater]</A></H3>
5461<P><description>The <CODE>ctr_makerom</CODE> tool now outputs images in CCI format.<br> As a result of this change, CCI files that were created using CTR-SDK 0.7 or earlier versions can no longer be loaded.<br></description></P>
5462<HR>
5463<H3><A name="note7-44">Note 7-44: (TOOL) Revised <CODE>ctr_makerom</CODE> [SDK]</A></H3>
5464<P><description>Added the Reject item to the RSF format. This setting makes it possible to specify files and directories that should be excluded from the ROM file system.<br> For details, see $CTR_SDK/documents/tools/ctr_makerom.html.<br></description></P>
5465<HR>
5466<H3><A name="note7-45">Note 7-45: (Y2R) Removed the <CODE>StopDmaRecv</CODE> and <CODE>StopDmaSend</CODE> functions [SDK | System Updater]</A></H3>
5467<P><description>Applications no longer need to call the <CODE>StopDmaRecv</CODE> or <CODE>StopDmaSend*</CODE> functions explicitly, so these functions have been removed.<br></description></P>
5468<HR>
5469<H3><A name="note7-46">Note 7-46: (Y2R) Revised the Y2R library references [SDK]</A></H3>
5470<P><description>Added a description of input and output data formats of the Y2R library.<br></description></P>
5471<HR>
5472<H3><A name="note7-47">Note 7-47: (Y2R) Revised the Y2R library [SDK | System Updater]</A></H3>
5473<P><description>Fixed a bug that caused transfers to fail in the <CODE>individual YUV mode</CODE> of the Y2R library.<br></description></P>
5474<HR>
5475<H3><A name="note7-48">Note 7-48: (Y2R) Revised the Y2R library [SDK | System Updater]</A></H3>
5476<P><description>Fixed an error in the conversion coefficients that can be set using the <CODE>SetStandardCoefficient</CODE> function.<br></description></P>
5477<HR>
5478<H3><A name="note7-49">Note 7-49: (Y2R) Revised some function specifications in the Y2R library [SDK | System Updater]</A></H3>
5479<P><description>The specifications of the following functions have been changed.<br>
5480        <ul>
5481          <li>The functions below now have a return value of <CODE>void</CODE>:</li>
5482          <ul>
5483            <li><CODE>Initialize</CODE></li>
5484            <li>Finalize</li>
5485            <li><CODE>SetInputFormat</CODE></li>
5486            <li><CODE>SetOutputFormat</CODE></li>
5487            <li><CODE>SetRotation</CODE></li>
5488            <li><CODE>SetBlockAlignment</CODE></li>
5489            <li><CODE>SetSpacialDithering</CODE></li>
5490            <li><CODE>SetTemporalDithering</CODE></li>
5491            <li><CODE>SetTransEndInterrupt</CODE></li>
5492            <li><CODE>GetTransEndEvent</CODE></li>
5493            <li><CODE>DmaSendY</CODE></li>
5494            <li><CODE>DmaSendU</CODE></li>
5495            <li><CODE>DmaSendV</CODE></li>
5496            <li><CODE>DmaSendYuv</CODE></li>
5497            <li><CODE>DmaRecvRgb</CODE></li>
5498            <li><CODE>SetInputLineWidth</CODE></li>
5499            <li><CODE>SetInputLines</CODE></li>
5500            <li><CODE>SetStandardCoefficient</CODE></li>
5501            <li><CODE>SetAlpha</CODE></li>
5502            <li><CODE>SetDitheringWeightParams</CODE></li>
5503            <li><CODE>GetDitheringWeightParams</CODE></li>
5504            <li><CODE>StartConversion</CODE></li>
5505            <li><CODE>StopConversion</CODE></li>
5506          </ul>
5507          <li>The functions below now return data:</li>
5508          <ul>
5509            <li><CODE>GetInputFormat</CODE></li>
5510            <li><CODE>GetOutputFormat</CODE></li>
5511            <li><CODE>GetRotation</CODE></li>
5512            <li><CODE>GetBlockAlignment</CODE></li>
5513            <li><CODE>GetSpacialDithering</CODE></li>
5514            <li><CODE>GetTemporalSpacialDithering</CODE></li>
5515            <li><CODE>GetTransEndInterrupt</CODE></li>
5516            <li><CODE>IsDmaSendFinished</CODE></li>
5517            <li><span>IsDmaRecvFinished</span></li>
5518            <li><CODE>GetInputLineWidth</CODE></li>
5519            <li><CODE>GetInputLines</CODE></li>
5520            <li><CODE>GetOutputFormatBytes</CODE></li>
5521            <li><CODE>GetOutputBlockSize</CODE></li>
5522            <li><CODE>GetOutputImageSize</CODE></li>
5523            <li><CODE>GetAlpha</CODE></li>
5524            <li><CODE>IsBusyConversion</CODE></li>
5525          </ul>
5526        </ul>
5527      </description></P>
5528<HR>
5529<H3><A name="note7-50">Note 7-50: (Y2R) Added Y2R library functions [SDK | System Updater]</A></H3>
5530<P><description>The following functions were added to check whether DMA transfers in the Y2R library have completed:<br>
5531        <ul>
5532          <li><CODE>IsFinishedSendingY</CODE></li>
5533          <li><CODE>IsFinishedSendingU</CODE></li>
5534          <li><CODE>IsFinishedSendingV</CODE></li>
5535        </ul>
5536      </description></P>
5537<HR>
5538<H3><A name="note7-51">Note 7-51: (Y2R) Revised some function names in the Y2R library [SDK | System Updater]</A></H3>
5539<P><description>Some of the function names have been changed, as shown below:<br>
5540        <ul>
5541          <li><CODE>GetTemporalSpacialDithering</CODE> -&gt; <CODE>GetTemporalDithering</CODE></li>
5542          <li><CODE>SetTransEndInterrupt</CODE> -&gt; <CODE>SetTransferEndInterrupt</CODE></li>
5543          <li><CODE>GetTransEndInterrupt</CODE> -&gt; <CODE>GetTransferEndInterrupt</CODE></li>
5544          <li><CODE>GetTransEndEvent</CODE> -&gt; <CODE>GetTransferEndEvent</CODE></li>
5545          <li><CODE>DmaSendY</CODE> -&gt; <CODE>SetSendingY</CODE></li>
5546          <li><CODE>DmaSendU</CODE> -&gt; <CODE>SetSendingU</CODE></li>
5547          <li><CODE>DmaSendV</CODE> -&gt; <CODE>SetSendingV</CODE></li>
5548          <li><CODE>DmaSendV</CODE> -&gt; <CODE>SetSendingV</CODE></li>
5549          <li><CODE>DmaSendYuv</CODE> -&gt; <CODE>SetSendingYuv</CODE></li>
5550          <li><CODE>IsDmaSendFinished</CODE> -&gt; <CODE>IsFinishedSendingYuv</CODE></li>
5551          <li><CODE>DmaRecvRgb</CODE> -&gt; <CODE>SetReceiving</CODE></li>
5552          <li><span>IsDmaRecvFinished</span>           -&gt; <span>IsFinishedReceiving</span></li>
5553        </ul>
5554      </description></P>
5555<HR>
5556<H3><A name="note7-52">Note 7-52: (Y2R) Removed the functions used to set data transfer requests from public availability [SDK]</A></H3>
5557<P><description>The functions below are no longer publicly available, since applications no longer need to explicitly configure the settings for data transfer requests during use of the Y2R library.<br>
5558        <ul>
5559          <li><CODE>SetOutputDreq</CODE></li>
5560          <li><CODE>GetOutputDreq</CODE></li>
5561          <li><CODE>SetInputDreq</CODE></li>
5562          <li><CODE>GetInputDreq</CODE></li>
5563        </ul>
5564      </description></P>
5565<HR>
5566<H3><A name="note7-53">Note 7-53: (Y2R) Removed some of the functions used to set and get the conversion coefficients from public availability [SDK]</A></H3>
5567<P><description>The functions that configure the detailed conversion coefficient parameters are no longer publicly available. The SDK now only provides functions for selecting one of the standard conversion coefficient types.<br> The functions that are no longer publicly available are listed below.<br>
5568        <ul>
5569          <li><CODE>SetCoefficientParams</CODE></li>
5570          <li><CODE>GetCoefficientParams</CODE></li>
5571          <li><CODE>GetStandardCoefficientParams</CODE></li>
5572        </ul>
5573      </description></P>
5574<HR>
5575<H3><A name="KnownIssues_0_8_0_Release">Known Issues with SDK 0.8.0 Release</A></H3>
5576<P>  None.</P>
5577<HR>
5578<H2 style="line-height: 0"><A name="sdk_0_8_0_Release%20SystemUpdater">CTR-SDK Version 0.8.0 Release SystemUpdater</A></H2>
5579<DIV style="text-align: right"><P style="line-height: 0">(2010/02/10)</P></DIV>
5580<HR>
5581<H3><A name="note6-01">Note 6-01: (CAMERA) Revised the <CODE>Finalize</CODE> function [System Updater]</A></H3>
5582<P><description>Fixed a but that caused the <CODE>Finalize</CODE> function to not operate properly.<br></description></P>
5583<HR>
5584<H3><A name="note6-02">Note 6-02: (CAMERA) Removed the <CODE>StopDmaRecv[Rgb]</CODE> function [SDK | System Updater]</A></H3>
5585<P><description>Applications no longer need to call the <CODE>StopDmaRecv[Rgb]</CODE> function explicitly, so this function has been removed.<br></description></P>
5586<HR>
5587<H3><A name="note6-03">Note 6-03: (CAMERA) Revised the CAMERA library configuration functions [SDK | System Updater]</A></H3>
5588<P><description>Fixed a bug that disabled auto exposure in the <CODE>SetAutoWhiteBalance</CODE> function, which is used to enable/disable automatic white balance.<br></description></P>
5589<HR>
5590<H3><A name="note6-04">Note 6-04: (CAMERA) Added and removed the CAMERA library functions [SDK | System Updater]</A></H3>
5591<P><description>The following functions have been added to set the operating mode of the cameras.<br>
5592        <ul>
5593          <li><CODE>SetDetailSize</CODE>: Specifies the size (in pixels) of the images output from the cameras</li>
5594          <li><CODE>SetContrast</CODE>: Changes the contrast</li>
5595          <li><CODE>LensCorrection</CODE>: Changes the level of vignetting correction</li>
5596        </ul>
5597        The following enumerated types were added following the addition of the functions listed above.<br>
5598        <ul>
5599          <li><CODE>Contrast</CODE></li>
5600          <li><CODE>LensCorrection</CODE></li>
5601        </ul>
5602      </description></P>
5603<HR>
5604<H3><A name="note6-05">Note 6-05: (CAMERA) Revised some function specifications in the CAMERA library [SDK | System Updater]</A></H3>
5605<P><description>The specifications of the following functions have been changed.<br>
5606        <ul>
5607          <li>The functions below now have a return value of <CODE>void</CODE>:</li>
5608          <ul>
5609            <li><CODE>Initialize</CODE></li>
5610            <li>Finalize</li>
5611            <li><CODE>StartCapture</CODE></li>
5612            <li><CODE>StopCapture</CODE></li>
5613            <li><CODE>ClearBuffer</CODE></li>
5614            <li><CODE>GetVsyncInterruptEvent</CODE></li>
5615            <li><CODE>GetBufferErrorInterruptEvent</CODE></li>
5616            <li><span>DmaRecv</span></li>
5617            <li><CODE>SetTransferLines</CODE></li>
5618            <li><CODE>SetTrimming</CODE></li>
5619            <li><CODE>SetTrimmingParams</CODE></li>
5620            <li><CODE>GetTrimmingParams</CODE></li>
5621            <li><CODE>SetTrimmingParamsCenter</CODE></li>
5622          </ul>
5623          <li>Functions that now return <CODE>bool</CODE>:</li>
5624          <ul>
5625            <li><CODE>ActivateModule</CODE></li>
5626            <li><span>SwitchContextModule</span></li>
5627            <li><span>SetExposureModule</span></li>
5628            <li><span>SetWhiteBalanceModule</span></li>
5629            <li><span>SetSharpnessModule</span></li>
5630            <li>SetAutoExposureModule</li>
5631            <li><span>IsAutoExposureModule</span></li>
5632            <li><span>SetAutoWhiteBalanceModule</span></li>
5633            <li><span>IsAutoWhiteBalanceModule</span></li>
5634            <li><CODE>FlipModule</CODE></li>
5635            <li><span>SetSizeModule</span></li>
5636            <li><span>SetFrameRateModule</span></li>
5637            <li><span>SetPhotoModeModule</span></li>
5638            <li><span>SetEffectModule</span></li>
5639          </ul>
5640          <li>The functions below now return data:</li>
5641          <ul>
5642            <li><CODE>IsBusy</CODE></li>
5643            <li><CODE>IsBufferError</CODE></li>
5644            <li><span>IsDmaRecvFinished</span></li>
5645            <li><CODE>GetMaxLines</CODE></li>
5646            <li><CODE>IsTrimming</CODE></li>
5647          </ul>
5648        </ul>
5649      </description></P>
5650<HR>
5651<H3><A name="note6-06">Note 6-06: (CAMERA) Removed and added the CAMERA library functions [SDK | System Updater]</A></H3>
5652<P><description>To support the latest SoC, the arguments or the return values of some of the functions have been changed. Other functions have been removed altogether.<br> New functions have also been added.<br>
5653        <ul>
5654          <li>The arguments or return values of the following functions have been changed:</li>
5655          <ul>
5656            <li><CODE>SetTransferLines</CODE></li>
5657            <li><CODE>GetMaxLines</CODE></li>
5658          </ul>
5659          <li>The following functions have been removed:</li>
5660          <ul>
5661            <li><span>GetTransferLines</span></li>
5662            <li><span>GetBytesAtOnce</span></li>
5663          </ul>
5664          <li>The following functions have been added:</li>
5665          <ul>
5666            <li><CODE>SetTransferBytes</CODE>: Specifies the number of bytes to accumulate in the buffer</li>
5667            <li><CODE>GetTransferBytes</CODE>: Gets the number of bytes currently accumulated in the buffer</li>
5668            <li><CODE>GetMaxBytes</CODE>: Returns the maximum number of bytes that can be stored in the buffer</li>
5669          </ul>
5670        </ul>
5671        Any references to the <CODE>GetTransferLines</CODE> and <CODE>GetBytesAtOnce</CODE> functions that have been removed should be replaced with references to the <CODE>GetTransferBytes</CODE> function.<br></description></P>
5672<HR>
5673<H3><A name="note6-07">Note 6-07: (CAMERA) Changed some function names in the CAMERA library [SDK | System Updater]</A></H3>
5674<P><description>Some of the function names have been changed, as shown below:<br>
5675        <ul>
5676          <li><CODE>DmaRecv</CODE> -&gt; <CODE>SetReceiving</CODE></li>
5677          <li><span>IsDmaRecvFinished</span>           -&gt; <span>IsFinishedReceiving</span></li>
5678          <li><CODE>ActivateModule</CODE> -&gt; <CODE>Activate</CODE></li>
5679          <li><CODE>SwitchContextModule</CODE> -&gt; <CODE>SwitchContext</CODE></li>
5680          <li><CODE>SetExposureModule</CODE> -&gt; <CODE>SetExposure</CODE></li>
5681          <li><CODE>SetWhiteBalanceModule</CODE> -&gt; <CODE>SetWhiteBalance</CODE></li>
5682          <li><CODE>SetSharpnessModule</CODE> -&gt; <CODE>SetSharpness</CODE></li>
5683          <li><CODE>SetAutoExposureModule</CODE> -&gt; <CODE>SetAutoExposure</CODE></li>
5684          <li><CODE>IsAutoExposureModule</CODE> -&gt; <CODE>IsAutoExposure</CODE></li>
5685          <li><span>SetAutoWhiteBalanceModule</span> -&gt; <span>SetAutoWhiteBalance</span></li>
5686          <li><CODE>IsAutoWhiteBalanceModule</CODE> -&gt; <CODE>IsAutoWhiteBalance</CODE></li>
5687          <li><span>FlipModule</span>                -&gt; <span>FlipImage</span></li>
5688          <li><CODE>SetSizeModule</CODE> -&gt; <CODE>SetSize</CODE></li>
5689          <li><CODE>SetFrameRateModule</CODE> -&gt; <CODE>SetFrameRate</CODE></li>
5690          <li><CODE>SetEffectModule</CODE> -&gt; <CODE>SetEffect</CODE></li>
5691          <li><CODE>SetPhotoMode</CODE> -&gt; <CODE>SetPhotoMode</CODE></li>
5692        </ul>
5693      </description></P>
5694<HR>
5695<H3><A name="note6-08">Note 6-08: (CAMERA) Added and revised the camera-related configuration parameters [SDK | System Updater]</A></H3>
5696<P><description>The enumerated types used by the functions that configure the camera settings have been revised. In addition, the range of values that can be specified for some of those functions has been expanded.
5697        <ul>
5698          <li><CODE>Size</CODE> enumerated type<br>Deleted the value indicating 298x224 resolution, and added a value indicating the native size of the CTR's upper screen (400x240).</li>
5699          <li><CODE>Effect</CODE> enumerated type<br>Increased the number of levels that can be set for the parameters from 6 to 22.</li>
5700          <li>Values set with the <CODE>SetSharpness</CODE> function<br>Changed the range from [-3, +5] to [-4, +5].</li>
5701        </ul>
5702      </description></P>
5703<HR>
5704<H3><A name="note6-09">Note 6-09: (CAMERA) Added data transfer completion event [SDK | System Updater]</A></H3>
5705<P><description>It is now possible to get events that notify of data transfer completion during calls to the <CODE>SetReceiving</CODE> and <CODE>SetReceivingRgb</CODE> functions. These functions are used to receive camera data.<br></description></P>
5706<HR>
5707<H3><A name="note6-10">Note 6-10: (FS) Added support for file and directory operations on SD Cards [System Updater]</A></H3>
5708<P><description>It is now possible to perform file and directory operations on SD Cards.<br> To do so, specify an <CODE>sdmc</CODE> archive and call the necessary functions in the FS library API.<br></description></P>
5709<HR>
5710<H3><A name="note6-11">Note 6-11: (FS) Added functions for creating, deleting, and renaming files and directories [System Updater]</A></H3>
5711<P><description>Added functions for deleting and renaming files, as well as functions for creating, deleting, and renaming directories.<br> Currently, these operations can only be done on archives stored on SD Cards.<br></description></P>
5712<HR>
5713<H3><A name="note6-12">Note 6-12: (FS) Added a class for reading and writing files [System Updater]</A></H3>
5714<P><description>Added a class for reading and writing files.<br> Currently, files can only be written to archives stored on SD Cards.<br></description></P>
5715<HR>
5716<H3><A name="note6-13">Note 6-13: (FS) Fixed a resource leak that used to be present when files were opened [System Updater]</A></H3>
5717<P><description>Fixed a bug in the firmware that caused a resource leak when files failed to open.<br></description></P>
5718<HR>
5719<H3><A name="note6-14">Note 6-14: (HID) Revised the sampling rate [System Updater]</A></H3>
5720<P><description>Adjusted the sampling period for the buttons, the analog stick, and the touch panel to 4 milliseconds.<br> Sampling of the accelerometer will occur every (approximately) 12 milliseconds.<br> These sampling periods are shorter than they were with previous versions of the SDK.<br></description></P>
5721<HR>
5722<H3><A name="note6-15">Note 6-15: (MIC) Revised the <CODE>Finalize</CODE> function [System Updater]</A></H3>
5723<P><description>Fixed a bug where the microphone was not usable once the <CODE>Finalize</CODE> function was called.<br></description></P>
5724<HR>
5725<H3><A name="note6-16">Note 6-16: (OS) Fixed a bug that caused the ending address to be incorrect when a breakpoint is set in the <CODE>Thread::Start</CODE> function [System Updater]</A></H3>
5726<P><description>Fixed a bug that caused the ending address to be incorrect when a breakpoint is set in the <CODE>Thread::Start</CODE> function of CTR-SDK 0.7.<br></description></P>
5727<HR>
5728<H3><A name="note6-17">Note 6-17: (OS) Fixed a bug that caused deadlocks [System Updater]</A></H3>
5729<P><description>Fixed a bug that caused deadlocks within the system under certain conditions.<br></description></P>
5730<HR>
5731<H3><A name="note6-18">Note 6-18: (OS) Fixed a bug that prevented the values of the VFP registers from being obtained correctly from the debugger [System Updater]</A></H3>
5732<P><description>Fixed a bug that prevented values of the VFP register from being obtained. This bug caused the debugger to always display a value of zero.<br></description></P>
5733<HR>
5734<H3><A name="note6-19">Note 6-19: (OS) Fixed a bug that caused strings output to the debugger to be output twice [System Updater]</A></H3>
5735<P><description>Fixed a bug that caused strings output to the debugger to be output twice.<br></description></P>
5736<HR>
5737<H3><A name="note6-20">Note 6-20: (OS) Fixed a bug that caused the debugger to hang if it was run continuously [System Updater]</A></H3>
5738<P><description>Fixed a bug that caused a hang if the processes for the camera and other demos were run continuously for a while in the debugger.<br></description></P>
5739<HR>
5740<H3><A name="note6-21">Note 6-21: (OS) Changed the maximum amount of memory that can be used on development hardware to 96 MB [System Updater]</A></H3>
5741<P><description>Previous versions of the SDK only allowed 64 MB of memory to be used, even on development hardware, but this has been increased to 96 MB.<br> Note that the amount of memory that will be usable on the production hardware has not changed from 64 MB.<br></description></P>
5742<HR>
5743<H3><A name="note6-22">Note 6-22: (OS) Fixed a bug that caused the debugger to hang when running applications that run threads frequently [System Updater]</A></H3>
5744<P><description>Fixed a bug that caused the debugger to hang when running applications that start and end threads frequently.<br> As a result of this bug fix, small (size-optimized) builds of the OS demos will no longer hang when run.<br></description></P>
5745<HR>
5746<H3><A name="note6-23">Note 6-23: (TOOL) Changed the CCI format that is output from <CODE>ctr_makerom</CODE> [SDK | System Updater]</A></H3>
5747<P><description>The <CODE>ctr_makerom</CODE> tool now outputs images in CCI format.<br> As a result of this change, CCI files that were created using CTR-SDK 0.7 or earlier versions can no longer be loaded.<br></description></P>
5748<HR>
5749<H3><A name="note6-24">Note 6-24: (Y2R) Revised the <CODE>Finalize</CODE> function [System Updater]</A></H3>
5750<P><description>Fixed a but that caused the <CODE>Finalize</CODE> function to not operate properly.<br></description></P>
5751<HR>
5752<H3><A name="note6-25">Note 6-25: (Y2R) Removed the <CODE>StopDmaRecv</CODE> and <CODE>StopDmaSend</CODE> functions [SDK | System Updater]</A></H3>
5753<P><description>Applications no longer need to call the <CODE>StopDmaRecv</CODE> or <CODE>StopDmaSend*</CODE> functions explicitly, so these functions have been removed.<br></description></P>
5754<HR>
5755<H3><A name="note6-26">Note 6-26: (Y2R) Revised the Y2R library [SDK | System Updater]</A></H3>
5756<P><description>Fixed a bug that caused transfers to fail in the <CODE>individual YUV mode</CODE> of the Y2R library.<br></description></P>
5757<HR>
5758<H3><A name="note6-27">Note 6-27: (Y2R) Revised the Y2R library [SDK | System Updater]</A></H3>
5759<P><description>Fixed an error in the conversion coefficients that can be set using the <CODE>SetStandardCoefficient</CODE> function.<br></description></P>
5760<HR>
5761<H3><A name="note6-28">Note 6-28: (Y2R) Revised some function specifications in the Y2R library [SDK | System Updater]</A></H3>
5762<P><description>The specifications of the following functions have been changed.<br>
5763        <ul>
5764          <li>The functions below now have a return value of <CODE>void</CODE>:</li>
5765          <ul>
5766            <li><CODE>Initialize</CODE></li>
5767            <li>Finalize</li>
5768            <li><CODE>SetInputFormat</CODE></li>
5769            <li><CODE>SetOutputFormat</CODE></li>
5770            <li><CODE>SetRotation</CODE></li>
5771            <li><CODE>SetBlockAlignment</CODE></li>
5772            <li><CODE>SetSpacialDithering</CODE></li>
5773            <li><CODE>SetTemporalDithering</CODE></li>
5774            <li><CODE>SetTransEndInterrupt</CODE></li>
5775            <li><CODE>GetTransEndEvent</CODE></li>
5776            <li><CODE>DmaSendY</CODE></li>
5777            <li><CODE>DmaSendU</CODE></li>
5778            <li><CODE>DmaSendV</CODE></li>
5779            <li><CODE>DmaSendYuv</CODE></li>
5780            <li><CODE>DmaRecvRgb</CODE></li>
5781            <li><CODE>SetInputLineWidth</CODE></li>
5782            <li><CODE>SetInputLines</CODE></li>
5783            <li><CODE>SetStandardCoefficient</CODE></li>
5784            <li><CODE>SetAlpha</CODE></li>
5785            <li><CODE>SetDitheringWeightParams</CODE></li>
5786            <li><CODE>GetDitheringWeightParams</CODE></li>
5787            <li><CODE>StartConversion</CODE></li>
5788            <li><CODE>StopConversion</CODE></li>
5789          </ul>
5790          <li>The functions below now return data:</li>
5791          <ul>
5792            <li><CODE>GetInputFormat</CODE></li>
5793            <li><CODE>GetOutputFormat</CODE></li>
5794            <li><CODE>GetRotation</CODE></li>
5795            <li><CODE>GetBlockAlignment</CODE></li>
5796            <li><CODE>GetSpacialDithering</CODE></li>
5797            <li><CODE>GetTemporalSpacialDithering</CODE></li>
5798            <li><CODE>GetTransEndInterrupt</CODE></li>
5799            <li><CODE>IsDmaSendFinished</CODE></li>
5800            <li><span>IsDmaRecvFinished</span></li>
5801            <li><CODE>GetInputLineWidth</CODE></li>
5802            <li><CODE>GetInputLines</CODE></li>
5803            <li><CODE>GetOutputFormatBytes</CODE></li>
5804            <li><CODE>GetOutputBlockSize</CODE></li>
5805            <li><CODE>GetOutputImageSize</CODE></li>
5806            <li><CODE>GetAlpha</CODE></li>
5807            <li><CODE>IsBusyConversion</CODE></li>
5808          </ul>
5809        </ul>
5810      </description></P>
5811<HR>
5812<H3><A name="note6-29">Note 6-29: (Y2R) Added Y2R library functions [SDK | System Updater]</A></H3>
5813<P><description>The following functions were added to check whether DMA transfers in the Y2R library have completed:<br>
5814        <ul>
5815          <li><CODE>IsFinishedSendingY</CODE></li>
5816          <li><CODE>IsFinishedSendingU</CODE></li>
5817          <li><CODE>IsFinishedSendingV</CODE></li>
5818        </ul>
5819      </description></P>
5820<HR>
5821<H3><A name="note6-30">Note 6-30: (Y2R) Revised some function names in the Y2R library [SDK | System Updater]</A></H3>
5822<P><description>Some of the function names have been changed, as shown below:<br>
5823        <ul>
5824          <li><CODE>GetTemporalSpacialDithering</CODE> -&gt; <CODE>GetTemporalDithering</CODE></li>
5825          <li><CODE>SetTransEndInterrupt</CODE> -&gt; <CODE>SetTransferEndInterrupt</CODE></li>
5826          <li><CODE>GetTransEndInterrupt</CODE> -&gt; <CODE>GetTransferEndInterrupt</CODE></li>
5827          <li><CODE>GetTransEndEvent</CODE> -&gt; <CODE>GetTransferEndEvent</CODE></li>
5828          <li><CODE>DmaSendY</CODE> -&gt; <CODE>SetSendingY</CODE></li>
5829          <li><CODE>DmaSendU</CODE> -&gt; <CODE>SetSendingU</CODE></li>
5830          <li><CODE>DmaSendV</CODE> -&gt; <CODE>SetSendingV</CODE></li>
5831          <li><CODE>DmaSendV</CODE> -&gt; <CODE>SetSendingV</CODE></li>
5832          <li><CODE>DmaSendYuv</CODE> -&gt; <CODE>SetSendingYuv</CODE></li>
5833          <li><CODE>IsDmaSendFinished</CODE> -&gt; <CODE>IsFinishedSendingYuv</CODE></li>
5834          <li><CODE>DmaRecvRgb</CODE> -&gt; <CODE>SetReceiving</CODE></li>
5835          <li><span>IsDmaRecvFinished</span>           -&gt; <span>IsFinishedReceiving</span></li>
5836        </ul>
5837      </description></P>
5838<HR>
5839<H3><A name="KnownIssues_0_8_0_Release%20SystemUpdater">Known Issues with SDK 0.8.0 Release System Updater</A></H3>
5840<knownissues><description>
5841        <ul>
5842          <li>The volume control slider settings are the reverse of those indicated by the silk-screened notations on the target boards.</li>
5843        </ul>
5844      </description></knownissues><HR>
5845<H2 style="line-height: 0"><A name="sdk_0_8_0_Release%20SampleDemos">CTR-SDK Version 0.8.0 Release SampleDemos</A></H2>
5846<DIV style="text-align: right"><P style="line-height: 0">(2010/02/10)</P></DIV>
5847<HR>
5848<H3><A name="note5-01">Note 5-01: (CAMERA) Revised sample demos [Sample Demos]</A></H3>
5849<P><description>Fixed an issue that prevented data from being fully repositioned when an image was rotated using the rotation feature of the Y2R library output buffer.<br></description></P>
5850<HR>
5851<H3><A name="note5-02">Note 5-02: (FND) Added features to the multifunction demos [Sample Demos]</A></H3>
5852<P><description>Added a feature to the multifunction demos (<CODE>demo1</CODE> and <CODE>demo2</CODE>) that retrieves and displays the current date and time.<br></description></P>
5853<HR>
5854<H3><A name="note5-03">Note 5-03: (GX) Fixed a bug in the <CODE>GasCessna</CODE> sample [Sample Demos]</A></H3>
5855<P><description>The same depth buffer as the one used in the upper screen's framebuffer object is now explicitly attached for framebuffer objects used during the gas density information rendering pass.<br></description></P>
5856<HR>
5857<H3><A name="note5-04">Note 5-04: (GX) Deleted unnecessary operations related to tangent attribute data [Sample Demos]</A></H3>
5858<P><description>Deleted unnecessary <CODE>mov</CODE> instructions for tangent values that are input as vertex data.<br></description></P>
5859<HR>
5860<H3><A name="note5-05">Note 5-05: (GX) Added a demo that performs double-buffering on a command list for rendering [Sample Demos]</A></H3>
5861<P><description>Added a <CODE>CommandListDouble</CODE> demo that performs double-buffering on a command list for rendering.<br></description></P>
5862<HR>
5863<H3><A name="note5-06">Note 5-06: (OS) Revised the <CODE>os</CODE> sample demo [Sample Demos]</A></H3>
5864<P><description>Changed the preferred processor from core 1 to core 0 within the thread demos.<br></description></P>
5865<HR>
5866<H3><A name="note5-07">Note 5-07: (SND) Added sample demos [Sample Demos]</A></H3>
5867<P><description>Added the <CODE>SimplePlayer</CODE> sample demo, which demonstrates how to play, stop, and alter the pitch of 8-bit and 16-bit PCM data. Also added the <CODE>StreamPlayer</CODE> sample demo, which plays dynamically generated sine sweep.<br></description></P>
5868<HR>
5869<H3><A name="note5-08">Note 5-08: (SND) Added features to the multifunction demos [Sample Demos]</A></H3>
5870<P><description>Added a feature to <CODE>demo1</CODE> that plays back data input from the microphone in pass-through mode. Also added a feature to <CODE>demo2</CODE> that plays sound effects of a sphere falling.<br></description></P>
5871<HR>
5872<H3><A name="KnownIssues_0_8_0_Release%20SampleDemos">Known Issues with SDK 0.8.0 Release Sample Demos</A></H3>
5873<P>  None.</P>
5874<HR>
5875<H2 style="line-height: 0"><A name="sdk_0_7_1_Release">CTR-SDK Version 0.7.1 Release</A></H2>
5876<DIV style="text-align: right"><P style="line-height: 0">(2010/01/15)</P></DIV>
5877<HR>
5878<H3><A name="note4-01">Note 4-01: (SND) Added support for the sound library of NintendoWare for CTR 0.4.0 [SDK]</A></H3>
5879<P><description>Made revisions required to support the sound library of NintendoWare for CTR 0.4.0.</description></P>
5880<HR>
5881<H3><A name="KnownIssues_0_7_1_Release">Known Issues with SDK 0.7.1 Release</A></H3>
5882<P>  None.</P>
5883<HR>
5884<H2 style="line-height: 0"><A name="sdk_0_7_0_Release">CTR-SDK Version 0.7.0 Release</A></H2>
5885<DIV style="text-align: right"><P style="line-height: 0">(2009/12/22)</P></DIV>
5886<HR>
5887<H3><A name="note3-01">Note 3-01: (CAMERA) Added the CAMERA library [SDK]</A></H3>
5888<P><description>Added the CAMERA library, which is used to access the camera.</description></P>
5889<HR>
5890<H3><A name="note3-02">Note 3-02: (CRYPTO) Added the <CODE>crypto</CODE> library [SDK]</A></H3>
5891<P><description>A new crypto library was added.<br> Currently, only SHA-1, SHA-256, SHA-1 HMAC, and SHA-256 HMAC functions are supported.<br></description></P>
5892<HR>
5893<H3><A name="note3-03">Note 3-03: (DEMO) Added classes for simple rendering of 2D geometric shapes [SDK]</A></H3>
5894<P><description>Added the following classes for simple rendering of 2D geometric shapes:<br>
5895        <ul>
5896          <li><CODE>nn::demo::CTR::DrawFrameworkEx</CODE></li>
5897          <li><CODE>nn::demo::CTR::RenderData</CODE></li>
5898          <li><CODE>nn::demo::CTR::TextsRenderData</CODE></li>
5899          <li><CODE>nn::demo::CTR::TrianglesRenderData</CODE></li>
5900          <li><CODE>nn::demo::CTR::ColorFillProgram</CODE></li>
5901          <li><CODE>nn::demo::CTR::DecalTextureProgram</CODE></li>
5902          <li><CODE>nn::demo::CTR::FontProgram</CODE></li>
5903          <li><CODE>nn::demo::CTR::ProgramObject</CODE></li>
5904        </ul>
5905      </description></P>
5906<HR>
5907<H3><A name="note3-04">Note 3-04: (DEMO) Added a document that explains the DEMO library [SDK]</A></H3>
5908<P><description>Added a new document that explains the DEMO library and contains more detailed information than that provided in the function reference.<br> $CTR_SDK/documents/TechnicalNotes/AboutDemoLibrary.pdf<br></description></P>
5909<HR>
5910<H3><A name="note3-05">Note 3-05: (DEMO) Modified the <CODE>DEMO_SetRenderingTarget</CODE> function [SDK]</A></H3>
5911<P><description>When the LCD serving as the rendering target is changed using the <CODE>DEMO_SetRenderingTarget</CODE> function, <CODE>glViewport</CODE> is now called.</description></P>
5912<HR>
5913<H3><A name="note3-06">Note 3-06: (DEMO) Changed the specifications of the <CODE>DrawFramework</CODE> class [DrawFramework]</A></H3>
5914<P><description>The following specifications of the <CODE>DrawFramework</CODE> class were changed:<br>
5915        <ul>
5916          <li>The location where renderbuffers are allocated is now split between VRAM-A and VRAM-B, depending on the type.</li>
5917          <li>Changed the display buffer format to RGB8.</li>
5918          <li>Added the ability to specify the stencil buffer during calls to the <CODE>ClearDisplay</CODE> function.</li>
5919        </ul>
5920      </description></P>
5921<HR>
5922<H3><A name="note3-07">Note 3-07: (DEMO) Added an argument to the <CODE>DrawFramework::SwapBuffer</CODE> function that specifies whether or not to wait for V-Sync before running [SDK]</A></H3>
5923<P><description>In earlier SDKs, the <CODE>DrawFramework::SwapBuffer</CODE> would always wait for a V-Sync, but the addition of the new <CODE>isWaitVSync</CODE> argument lets you specify whether or not to wait.<br> When this is set to <CODE>true</CODE> (the default value), the function waits for a V-Sync.<br></description></P>
5924<HR>
5925<H3><A name="note3-08">Note 3-08: (DEMO) Released <CODE>demo_MemoryManager.h</CODE> [SDK]</A></H3>
5926<P><description>The file <CODE>demo_MemoryManager.h</CODE> was previously undisclosed, but it is now a public header.<br></description></P>
5927<HR>
5928<H3><A name="note3-09">Note 3-09: (DEMO) Made <CODE>nn::demo::DrawFramework::SwapBuffer</CODE> into a virtual function [SDK]</A></H3>
5929<P><description>The <CODE>SwapBuffer</CODE> function has been made into a virtual function for convenience when inheriting the <CODE>DrawFramework</CODE> class.<br></description></P>
5930<HR>
5931<H3><A name="note3-10">Note 3-10: (DEMO) Changed the macro that sets the maximum number of output characters [SDK]</A></H3>
5932<P><description>The maximum number of characters that can be output using the <CODE>nn::demo::TextDrawFramework</CODE> class has been increased from 30 to 50.<br> The macro name also contained a spelling error, so it has been changed from <CODE>MAX_CHAR_NUM_PAR_LINE</CODE> to <CODE>MAX_CHAR_NUM_PER_LINE</CODE>.<br></description></P>
5933<HR>
5934<H3><A name="note3-11">Note 3-11: (DEMO) Changed the address alignment when allocating vertex buffers in VRAM [SDK]</A></H3>
5935<P><description>The address alignment used for the destination for transfers has been changed from 4 bytes to 8 bytes when allocating vertex buffers in VRAM using the <CODE>MemoryManager</CODE> class in the DEMO library.<br> This is not due to a change in the DMPGL 2.0 System API Specifications, but rather a restriction in the current implementation of DMA transfers.<br></description></P>
5936<HR>
5937<H3><A name="note3-12">Note 3-12: (DevEnv) Added the <CODE>NN_ENDIAN</CODE> macro [SDK]</A></H3>
5938<P><description>Added the <CODE>NN_ENDIAN</CODE> macro for determining the endianness of the platform. <br>This lets you use the endianness as a conditional in your programs by using code like the following: <br><CODE>#if NN_ENDIAN == NN_ENDIAN_VALUE_LITTLE</CODE><br></description></P>
5939<HR>
5940<H3><A name="note3-13">Note 3-13: (DevEnv) Changed the structure of the documents folder [SDK]</A></H3>
5941<P><description>The structure of the subdirectories of the documents folder was changed so that all documentation contained within the CTR-SDK can now be accessed from the top-level page ($CTR_SDK/documents/index.html).<br></description></P>
5942<HR>
5943<H3><A name="note3-14">Note 3-14: ((DevEnv) Changed the data types for <CODE>u32</CODE> and <CODE>s32</CODE> [SDK]</A></H3>
5944<P><description>Changed the data type for <CODE>u32</CODE> and <CODE>s32</CODE> from <CODE>[unsigned|signed] long int</CODE> to <CODE>[unsigned|signed] int</CODE>.<br></description></P>
5945<HR>
5946<H3><A name="note3-15">Note 3-15: (DevEnv) Changed the assembly rules [SDK]</A></H3>
5947<P><description>It is now possible to use C preprocessor directives (such as <CODE>#define</CODE>, <CODE>#if</CODE>, and <CODE>#end</CODE>) within assembly files.<br></description></P>
5948<HR>
5949<H3><A name="note3-16">Note 3-16: (DevEnv) Fixed a bug that caused duplicated option settings for macro definitions [SDK]</A></H3>
5950<P><description>Fixed a bug that caused duplicate macro-related options to be specified when compiling from the command line.<br></description></P>
5951<HR>
5952<H3><A name="note3-17">Note 3-17: (DevEnv) Deleted the <CODE>OMakefiles</CODE> for the libraries [SDK]</A></H3>
5953<P><description>The library source files that are included for certain parts of the SDK are only intended for reference during debugging. Their operation is not guaranteed if they are rebuilt by developers, so the <CODE>OMakefiles</CODE> for the libraries have been deleted in order to avoid confusion.<br></description></P>
5954<HR>
5955<H3><A name="note3-18">Note 3-18: (FND) Corrected the internal status check of the <CODE>nn::fnd::ExpHeap</CODE> class [SDK]</A></H3>
5956<P><description>Fixed a bug that caused the <CODE>nn::fnd::ExpHeap</CODE> class to erroneously determine that the class was in an invalid state.<br></description></P>
5957<HR>
5958<H3><A name="note3-19">Note 3-19: (FND) Added features to <CODE>nn::fnd::FrameHeap</CODE> class [SDK]</A></H3>
5959<P><description>It is now possible to allocate the frame heap in both directions.<br> By specifying a negative alignment value when allocating a memory block, it is now possible to allocate from the end of the heap.<br> It is now also possible to shrink the size of the heap in both directions using the <CODE>FrameHeap::Adjust</CODE> function.<br></description></P>
5960<HR>
5961<H3><A name="note3-20">Note 3-20: (FND) Added an allocator class for heaps [SDK]</A></H3>
5962<P><description>Added the <CODE>Allocator</CODE> classes to the class templates of <CODE>nn::fnd::ExpHeapTemplate</CODE> and <CODE>nn::fnd::UnitHeapTemplate</CODE>. These allocator classes share the same interface.<br></description></P>
5963<HR>
5964<H3><A name="note3-21">Note 3-21: (FND) Added a feature to create nested heaps [SDK]</A></H3>
5965<P><description>Added the following functions to the <CODE>ExpHeap</CODE>, <CODE>FrameHeap</CODE>, and <CODE>UnitHeap</CODE> classes in the <CODE>nn::fnd namespace</CODE>. These functions make it possible to create heaps within other heaps.<br>
5966        <ul>
5967          <li><CODE>nn::fnd::*Heap::Create</CODE>, which creates heaps within other heaps</li>
5968          <li><CODE>nn::fnd::HeapBase::Destroy</CODE>, which destroys heaps that have been created within other heaps</li>
5969        </ul>
5970      </description></P>
5971<HR>
5972<H3><A name="note3-22">Note 3-22: (FND) Added features to the heap classes [SDK]</A></H3>
5973<P><description>The following changes were made to the heap classes (<CODE>ExpHeap</CODE>, <CODE>FrameHeap</CODE>, and <CODE>UnitHeap</CODE>):
5974        <ul>
5975          <li>It is now possible to specify options to perform zero-clearing and debug-filling during allocation.</li>
5976          <li>It is now possible to obtain the starting address and memory size of the memory regions.</li>
5977          <li>Added the <CODE>Dump</CODE> function for displaying the content of the heap.</li>
5978          <li>Added the <CODE>ExpHeap::Adjust</CODE> function for shrinking the size of the expanded heap region.</li>
5979        </ul>
5980      </description></P>
5981<HR>
5982<H3><A name="note3-23">Note 3-23: (FND) Made the heap classes thread-safe [SDK]</A></H3>
5983<P><description>The <CODE>ExpHeapTemplate</CODE>, <CODE>UnitHeapTemplate</CODE>, and <CODE>FrameHeapTemplate</CODE> heap class templates have been added to the <CODE>nn::fnd namespace</CODE>. These templates can use the <CODE>LockPolicy</CODE> class to specify the thread-locking method.<br> As a result of this change, the <CODE>ExpHeap</CODE>, <CODE>UnitHeap</CODE>, and <CODE>FrameHeap</CODE> classes from previous versions of the SDK have been changed to typedefs for instances of the corresponding class templates.<br> There have been no changes to their interfaces.<br></description></P>
5984<HR>
5985<H3><A name="note3-24">Note 3-24: (FND) Added a feature to find the heap associated with a given block of allocated memory [SDK]</A></H3>
5986<P><description>Added the <CODE>nn::fnd::HeapBase::FindHeap</CODE> function, which is used to find the heap associated with the memory block at the specified address.<br></description></P>
5987<HR>
5988<H3><A name="note3-25">Note 3-25: (FS) Added to the <CODE>nn::fs::FileReader</CODE> class the ability to use the <CODE>char*</CODE> type to specify path names as ASCII strings [SDK]</A></H3>
5989<P><description>Overloaded versions of the constructors, the <CODE>Initialize</CODE> function, and the <CODE>TryInitialize</CODE> function in the <CODE>nn::fs::FileReader</CODE> class have been added. These overloaded functions allow path names to be specified as ASCII strings using the <CODE>char*</CODE> data type.<br></description></P>
5990<HR>
5991<H3><A name="note3-26">Note 3-26: (GX) Added the <CODE>DMPGL</CODE> sample [SDK]</A></H3>
5992<P><description>The remaining DMPGL samples from POD that were not included in CTR-SDK 0.6 have all been revised to support the CTR-SDK.<br></description></P>
5993<HR>
5994<H3><A name="note3-27">Note 3-27: (GX) Revised the graphics function reference [SDK]</A></H3>
5995<P><description>Added function reference manuals to the CTR-SDK for the graphics APIs (<CODE>gl*</CODE> and <CODE>nngx*</CODE>).<br> The format of these pages is provisional and will be overhauled in future versions of the SDK.<br></description></P>
5996<HR>
5997<H3><A name="note3-28">Note 3-28: (GX) Updated the graphics drivers [SDK]</A></H3>
5998<P><description>
5999        <ul>
6000          <li>Fixed the following bugs in the DMPGL 2.0 drivers:</li>
6001            <ul>
6002              <li>In previous versions of the SDK, the <SPAN class="argument">progs</SPAN> argument in the <CODE>glRestoreProgramsDMP</CODE> function did not follow the specifications. Specifically, if an invalid value for <SPAN class="argument">progs</SPAN> (for example, a null pointer) was passed to the function, the error <CODE>GL_INVALID_VALUE</CODE> would result instead of the expected error <CODE>GL_INVALID_OPERATION</CODE>. This has been corrected.</li>
6003              <li>Similarly, in previous versions of the SDK, if a non-zero value was specified for the <SPAN class="argument">level</SPAN> argument to the <CODE>glCopyTexImage2D</CODE> or <CODE>glCopyTexSubImage2D</CODE> functions, the error <CODE>GL_INVALID_VALUE</CODE> would occur instead of the expected value of <CODE>GL_INVALID_OPERATION</CODE>. This has been corrected.</li>
6004            </ul>
6005          <li>Added and revised the following features of the DMPGL 2.0 drivers:</li>
6006            <ul>
6007              <li>Added support for early depth tests</li>
6008              <li>Changed GL_DEPTH_COMPONENT24_STENCIL_INDEX8_DMP to GL_DEPTH24_STENCIL8_EXT</li>
6009              <li>Changed <CODE>GL_DEPTH_STENCIL_ATTACHMENT_DMP</CODE> to <CODE>GL_DEPTH_STENCIL_ATTACHMENT</CODE></li>
6010              <li>Added support for 32-block format (added the <CODE>glRenderBlockModeDMP</CODE> function)</li>
6011              <li>The <CODE>glGet</CODE> function now supports <CODE>GL_TEXTURE_COLLECTION_BINDING_DMP</CODE></li>
6012              <li>Added support for selecting the texture coordinate input</li>
6013                <ul>
6014                  <li>Added the reserved uniforms <CODE>dmp_Texture[2].texcoord</CODE> and <CODE>dmp_Texture[3].texcoord</CODE></li>
6015                  <li>The texture coordinates for procedural textures used by the particle system shader can now be output to <CODE>GL_TEXTURE2</CODE></li>
6016                </ul>
6017              <li>Revised the following specifications for vertex shader uniforms:</li>
6018                <ul>
6019                  <li>Changed all MAT-type uniforms so that they can be handled as arrays of VEC-type data</li>
6020                  <li><CODE>VEC</CODE>-type arrays can now be set using both the <CODE>glUniformf</CODE> and <CODE>glUniformMatrixf</CODE> functions</li>
6021                  <li><CODE>GL_TRUE</CODE> can now be specified for the <SPAN class="argument">transpose</SPAN> argument to the <CODE>glUniformMatrix</CODE> function</li>
6022                  <li>Made it possible to specify individual elements within a <CODE>VEC</CODE>-type array by adding an offset to the location value obtained using the <CODE>glGetUniformLocation</CODE> function.</li>
6023                  <li>Changed the upper limit of the number of uniforms within vertex shaders and geometry shaders that can be linked to a single program object to 2048.</li>
6024                  <li>Established an upper limit of 8191 on the number of program objects that can be used simultaneously.</li>
6025                </ul>
6026              <li>Changed <CODE>GL_REPEAT</CODE> to <CODE>GL_SYMMETRICAL_REPEAT_DMP</CODE> for the reserved uniforms <CODE>dmp_Texture[3].ptClampU</CODE> and <CODE>dmp_Texture[3].ptClampV</CODE></li>
6027              <li>Changed <CODE>GL_MIRRORED_REPEAT_DMP</CODE> to <CODE>GL_MIRRORED_REPEAT</CODE></li>
6028              <li>Added <CODE>GL_TEXTURE3</CODE> to the values that can be set for the reserved uniform <CODE>dmp_LightEnv.bumpSelector</CODE></li>
6029              <li>Added <CODE>GL_TEXTURE1</CODE>, <CODE>GL_TEXTURE2</CODE>, and <CODE>GL_TEXTURE3</CODE> to the values that can be set for the reserved uniform <CODE>dmp_LightEnv.shadowSelector</CODE></li>
6030              <li>Added the following features for the command state cache:</li>
6031                <ul>
6032                  <li>Added an argument for checking the buffer size to the &quot;save&quot; API</li>
6033                  <li>Added an argument for specifying the first object to the &quot;restore&quot; API</li>
6034                  <li>Added vertex shader uniforms and flags for restoring geometry shader uniform to the program state restoration API</li>
6035                </ul>
6036              <li>Bindings to object 0 within a <CODE>LUT</CODE> texture are now considered to be detached, and will no longer cause errors</li>
6037              <li>Added the <CODE>glTexSubImage1D</CODE> function</li>
6038              <li>Added error checking if <CODE>GL_COLOR_ATTACHMENT0</CODE> is provided as the second argument to the <CODE>glFramebufferRenderbuffer</CODE> function (<SPAN class="argument">attachment</SPAN>).</li>
6039              <li>Changed the specifications so that <CODE>GL_INVALID_OPERATION</CODE> will occur if an invalid color format is specified for the renderbuffer (or if the color format is anything other than <CODE>GL_GAS_DMP</CODE>)</li>
6040              <li>In previous versions of the SDK, the error <CODE>GL_INVALID_OPERATION</CODE> would occur during error-checking within the <CODE>glReadPixels</CODE> function if the framebuffer was set incorrectly. This has been corrected so that the error <CODE>GL_INVALID_FRAMEBUFFER_OPERATION</CODE> will occur instead.</li>
6041            </ul>
6042          <li>Fixed bugs with the point shader</li>
6043          <li>Fixed the following bugs and changed the following features of the shader assembly language</li>
6044            <ul>
6045              <li>Added support for selecting the texture coordinate input (deleted <CODE>#pragma output_map(texture3, oN)</CODE> from the specifications)</li>
6046              <li>The use of <CODE>#pragma bind_symbol</CODE> to set multiple input registers is now treated as an error</li>
6047              <li>Fixed a bug in the code that checks for consecutive calls to the <CODE>mova</CODE> instruction</li>
6048            </ul>
6049          <li>Revised the following documents:</li>
6050            <ul>
6051              <li>DMPGL20_specification.pdf</li>
6052              <li><CODE>DMPGL20_system_API_specification.pdf</CODE></li>
6053              <li>DMPGL20_programming_guide.pdf</li>
6054              <li><CODE>DMPGL20_commandcache_specification.pdf</CODE></li>
6055              <li>VertexShaderReferenceManual.pdf</li>
6056            </ul>
6057        </ul>
6058      </description></P>
6059<HR>
6060<H3><A name="note3-29">Note 3-29: (GX) Fixed an issue where the V-Sync timing for the upper and lower screens did not coincide [SDK | System Updater]</A></H3>
6061<P><description>The timing of V-Sync notification for the upper and lower screens would vary widely with previous versions of the SDK, but this has been corrected.<br></description></P>
6062<HR>
6063<H3><A name="note3-30">Note 3-30: (GX) Fixed a bug that caused only 239 lines to be displayed on the lower screen [SDK]</A></H3>
6064<P><description>Fixed a bug that caused the uppermost line of pixels on the lower LCD not to be displayed.<br></description></P>
6065<HR>
6066<H3><A name="note3-31">Note 3-31: (HID) Changed the names of the Initialize and Finalize functions [SDK]</A></H3>
6067<P><description>The initialization and finalization functions of the HID library were changed from <CODE>InitializeHid/FinalizeHid</CODE> to <CODE>Initialize/Finalize</CODE>.<br></description></P>
6068<HR>
6069<H3><A name="note3-32">Note 3-32: (HID) Changed input from SELECT to be treated as input from START [SDK]</A></H3>
6070<P><description>The use of the SELECT button is prohibited for CTR native applications.<br> Pressing SELECT is therefore now treated as presses of START.<br></description></P>
6071<HR>
6072<H3><A name="note3-33">Note 3-33: (HID) Added +Control Pad emulation for the Slide Pad [SDK]</A></H3>
6073<P><description>The <CODE>PadReader</CODE> class can now be used to obtain input from the analog stick that mimics input from the +Control Panel. This +Control Pad emulation can be obtained in the same way as button input.<br></description></P>
6074<HR>
6075<H3><A name="note3-34">Note 3-34: (HID) Revised the definitions of the member functions of the <CODE>Pad</CODE> class [SDK]</A></H3>
6076<P><description>Added the <CODE>const</CODE> modifier to the <CODE>GetStickClamp</CODE> and <CODE>GetStickClampMode</CODE> member functions of the <CODE>nn::hid::CTR::PadReader</CODE> class.<br></description></P>
6077<HR>
6078<H3><A name="note3-35">Note 3-35: (HID) Added support for the accelerometer [SDK]</A></H3>
6079<P><description>Added the <CODE>AccelerometerReader</CODE> class for using the accelerometer.<br></description></P>
6080<HR>
6081<H3><A name="note3-36">Note 3-36: (HID) Changed the names of the symbols for the +Control Pad [SDK]</A></H3>
6082<P><description>The names of the symbols for the +Control Pad were changed to use &quot;BUTTON&quot; instead of &quot;KEY.&quot;<br> For example, <CODE>KEY_LEFT</CODE> was changed to <CODE>BUTTON_LEFT</CODE>, and <CODE>PLUS_KEY_MASK</CODE> was changed to <CODE>PLUS_BUTTON_MASK</CODE>.<br></description></P>
6083<HR>
6084<H3><A name="note3-37">Note 3-37: (MATH) Added the <CODE>MTX44Perspective[Deg|Rad]</CODE> functions [SDK]</A></H3>
6085<P><description>Added the <CODE>MTX44PerspectiveDeg</CODE> and <CODE>MTX44PerspectiveRad</CODE> functions.<br> The <CODE>MTX44Perspective</CODE> function has been retained as an alternate name for the &quot;degree&quot; version for compatibility.<br></description></P>
6086<HR>
6087<H3><A name="note3-38">Note 3-38: (MATH) Added <CODE>Set</CODE> functions to the <CODE>Vector*</CODE> classes [SDK]</A></H3>
6088<P><description>Added the <CODE>Set</CODE> method to the <CODE>Vector2</CODE>, <CODE>Vector3</CODE>, and <CODE>Vector4</CODE> classes.<br></description></P>
6089<HR>
6090<H3><A name="note3-39">Note 3-39: (MATH) Revised the internal operations of the <CODE>nn::math::RunCmdlistDone</CODE> function [SDK]</A></H3>
6091<P><description>Fixed a bug in the algorithm used within the <CODE>DistSqPoint3ToPolyline3</CODE> function to select the shortest distance.<br></description></P>
6092<HR>
6093<H3><A name="note3-40">Note 3-40: (MATH) Added functions to find the product of a projection matrix and a rotation matrix [SDK]</A></H3>
6094<P><description>Added an API to find the product of a projection matrix and a rotation matrix that takes into account the actual layouts of the hardware's LCDs.<br></description></P>
6095<HR>
6096<H3><A name="note3-41">Note 3-41: (MIC) Added the MIC library [SDK]</A></H3>
6097<P><description>Added the MIC library, which is used to access the microphone.<br></description></P>
6098<HR>
6099<H3><A name="note3-42">Note 3-42: (OS) Changed the documentation for the C-language wrapper functions [SDK]</A></H3>
6100<P><description>The documentation for the C-language wrapper functions has been standardized to text that links to the corresponding C++ functions.<br> The documentation for the following functions is now accessible from the list of OS-related C language wrapper functions:<br>
6101        <ul>
6102          <li><CODE>nnosInitializeAlarmSystem</CODE> Function</li>
6103          <li>nnosInitializeDeviceMemory</li>
6104          <li>nnosGetDeviceMemoryAddress Function</li>
6105        </ul>
6106      </description></P>
6107<HR>
6108<H3><A name="note3-43">Note 3-43: (OS) Added and removed C-language wrapper functions [SDK]</A></H3>
6109<P><description>The following functions have been added.<br>
6110        <ul>
6111          <li><CODE>nnosTimerSignal</CODE> Function</li>
6112          <li><CODE>nnosThreadGetId</CODE> Function</li>
6113          <li><CODE>nnosThreadIsAlive</CODE> Function</li>
6114          <li><CODE>nnosThreadGetMainThread</CODE> Function</li>
6115          <li><CODE>nnosInitialize</CODE> Function</li>
6116        </ul>
6117        Deleted the following functions:<br>
6118        <ul>
6119          <li><CODE>nnosEventInitializeNoCreate</CODE> Function</li>
6120        </ul>
6121      </description></P>
6122<HR>
6123<H3><A name="note3-44">Note 3-44: (OS) Fixed a bug in which the <CODE>nn::fnd::FileReader</CODE> class was not set as no copy [SDK]</A></H3>
6124<P><description>The <CODE>nn::fnd::FileReader</CODE> class, which is supposed to be &quot;no copy,&quot; but was not in previous versions of the SDK. This has been fixed.<br></description></P>
6125<HR>
6126<H3><A name="note3-45">Note 3-45: (OS) Changed the access label for the <CODE>nn::os::HandleObject::Finalize</CODE> function to <CODE>protected</CODE> [SDK]</A></H3>
6127<P><description>Changed the access label for the <CODE>nn::os::HandleObject::Finalize</CODE> function to <CODE>protected</CODE>.<br></description></P>
6128<HR>
6129<H3><A name="note3-46">Note 3-46: (OS) Added the <CODE>nn::os::SafeBlockingQueue</CODE> class [SDK]</A></H3>
6130<P><description>Added the <CODE>nn::os::SafeBlockingQueue</CODE> class, which implements a blocking queue, using mutexes to ensure exclusive access.<br></description></P>
6131<HR>
6132<H3><A name="note3-47">Note 3-47: (OS) Revised the size of the <CODE>nn::os::StackBuffer</CODE> class template [SDK]</A></H3>
6133<P><description>Fixed a bug that caused the obtained size of the <CODE>nn::os::StackBuffer</CODE> class template to be up to 8 bytes more than expected.<br></description></P>
6134<HR>
6135<H3><A name="note3-48">Note 3-48: (OS) Added the <CODE>nn::os::Thread::GetMainThread</CODE> function [SDK]</A></H3>
6136<P><description>Added the <CODE>nn::os::Thread::GetMainThread</CODE> function, which obtains the main thread object, to the <CODE>nn::os::Thread</CODE> class.<br></description></P>
6137<HR>
6138<H3><A name="note3-49">Note 3-49: (OS) Fixed the <CODE>nn::os::Tick::ToTimeSpan</CODE> function [SDK]</A></H3>
6139<P><description>Fixed a bug that caused the <CODE>nn::os::Tick::ToTimeSpan</CODE> function to return incorrect results.<br></description></P>
6140<HR>
6141<H3><A name="note3-50">Note 3-50: (OS) Added the <CODE>nnosAlarmCanSet</CODE> function [SDK]</A></H3>
6142<P><description>Added the <CODE>nnosAlarmCanSet</CODE> function, which acts as a C-language wrapper for the <CODE>nn::os::Alarm::CanSet</CODE> function.<br></description></P>
6143<HR>
6144<H3><A name="note3-51">Note 3-51: (OS) Added the <CODE>nnosInitializeDeviceMemory</CODE> and <CODE>nnosGetDeviceMemoryAddress</CODE> functions [SDK]</A></H3>
6145<P><description>Added the <CODE>nnosInitializeDeviceMemory</CODE> and <CODE>nnosGetDeviceMemoryAddress</CODE> functions, which are used to perform operations on the device's memory from C.<br></description></P>
6146<HR>
6147<H3><A name="note3-52">Note 3-52: (OS) Added a system version check [SDK | System Updater]</A></H3>
6148<P><description>Added a mechanism for checking whether the version of the system installed on the development board matches the version of the system expected by the SDK that was used to build the program.<br> This version check is performed when the program is started. If the versions do not match, execution of the program halts.<br></description></P>
6149<HR>
6150<H3><A name="note3-53">Note 3-53: (OS) Revised the arguments to functions used to start threads [SDK]</A></H3>
6151<P><description>The overloaded versions of functions used to start threads in the <CODE>nn::os::Thread</CODE> class (including the <CODE>Start</CODE> function) have been revised to allow more flexibility in the values that can be accepted.<br></description></P>
6152<HR>
6153<H3><A name="note3-54">Note 3-54: (OS) Revised the behavior if timers are set to expire after zero seconds [SDK]</A></H3>
6154<P><description>With previous versions of the SDK, there used to be a slight time lag before the timer was signaled if a function like <CODE>StartOneShot</CODE> in the <CODE>nn::os::Timer</CODE> class was used to set a timer to expire after zero seconds. This time lag has been removed, and the timer is now signaled immediately.<br></description></P>
6155<HR>
6156<H3><A name="note3-55">Note 3-55: (OS) Added a class for specifying the lock policy [SDK]</A></H3>
6157<P><description>Added the <CODE>nn::os::LockPolicy</CODE> class, which is used to specify the lock policy for implementing thread safety.<br></description></P>
6158<HR>
6159<H3><A name="note3-56">Note 3-56: (TOOL) Revised <CODE>ctr_makerom</CODE> [SDK]</A></H3>
6160<P><description>Generation of CCI files used to require only an ELF file, but now requires RSF and DESC files as well.<br> In addition, configuration of CCI files is now done through the RSF file instead of by specifying command-line arguments.<br> For more details, refer to the reference manual for the <CODE>ctr_makerom</CODE> tool.<br> ${CTRSDK_ROOT}/documents/tools/ctr_makerom.html<br></description></P>
6161<HR>
6162<H3><A name="KnownIssues_0_7_0_Release">Known Issues with SDK 0.7.0 Release</A></H3>
6163<P>  None.</P>
6164<HR>
6165<H2 style="line-height: 0"><A name="sdk_0_7_0_Release%20SystemUpdater">CTR-SDK Version 0.7.0 Release SystemUpdater</A></H2>
6166<DIV style="text-align: right"><P style="line-height: 0">(2009/12/22)</P></DIV>
6167<HR>
6168<H3><A name="note2-01">Note 2-01: (FS) Fixed a resource leak in the file system [System Updater]</A></H3>
6169<P><description>Fixed a bug that caused a resource leak even after files opened using classes like <CODE>nn::fs::FileReader</CODE> were closed. This bug caused a limit on the number of files that could be opened.<br></description></P>
6170<HR>
6171<H3><A name="note2-02">Note 2-02: (GX) Removed restrictions on size during DMA transfers [System Updater]</A></H3>
6172<P><description>Removed the restriction that the size of all DMA transfers from main memory must be a multiple of four when allocating memory in VRAM.<br></description></P>
6173<HR>
6174<H3><A name="note2-03">Note 2-03: (GX) Fixed an issue where the V-Sync timing for the upper and lower screens did not coincide [SDK | System Updater]</A></H3>
6175<P><description>The timing of V-Sync notification for the upper and lower screens would vary widely with previous versions of the SDK, but this has been corrected.<br></description></P>
6176<HR>
6177<H3><A name="note2-04">Note 2-04: (OS) Fixed a bug that caused failures when attempting to load static regions 2 MB or greater in size [System Updater]</A></H3>
6178<P><description>Corrected a bug that caused failures when attempting to load static regions 2 MB or greater in size.<br> It is now possible to load static regions up to 31 MB in size.<br></description></P>
6179<HR>
6180<H3><A name="note2-05">Note 2-05: (OS) Cut out VFP context switching [System Updater]</A></H3>
6181<P><description>VFP context switching now only occurs when the application uses the VFP.<br></description></P>
6182<HR>
6183<H3><A name="note2-06">Note 2-06: (OS) Added a system version check [SDK | System Updater]</A></H3>
6184<P><description>Added a mechanism for checking whether the version of the system installed on the development board matches the version of the system expected by the SDK that was used to build the program.<br> This version check is performed when the program is started. If the versions do not match, execution of the program halts.<br></description></P>
6185<HR>
6186<H3><A name="note2-07">Note 2-07: (OS) Modified the debugger API [System Updater]</A></H3>
6187<P><description>Communication with the target board used to occur while running PARTNER-CTR/S, but this has been fixed.<br> PARTNER-CTR/S will need to be updated after the 2009/11/25 version.<br></description></P>
6188<HR>
6189<H3><A name="note2-08">Note 2-08: (OS) Improved performance [System Updater]</A></H3>
6190<P><description>Improved the performance when applications are run.<br></description></P>
6191<HR>
6192<H3><A name="note2-09">Note 2-09: (OS) Added multi-core support [System Updater]</A></H3>
6193<P><description>The debugger API now has multi-core support.<br> This makes it possible to attach the debugger monitor to processes that support multiple cores.<br></description></P>
6194<HR>
6195<H3><A name="note2-10">Note 2-10: (OS) Fixed a bug in which a single thread was able to acquire semaphores multiple times [System Updater]</A></H3>
6196<P><description>In previous versions of the firmware, if a certain thread was waiting on a semaphore, and multiple higher-priority threads then released that semaphore in succession, the thread that was waiting on that semaphore would acquire it multiple times. This issue has been corrected.<br></description></P>
6197<HR>
6198<H3><A name="KnownIssues_0_7_0_Release%20SystemUpdater">Known Issues with System Updater in the SDK 0.7.0 Release</A></H3>
6199<knownissues><description>
6200        <ul>
6201          <li>Setting a breakpoint in the <CODE>Thread::Start</CODE> function sometimes causes a kernel panic with the following output:<br><br> &gt; KernelPanic[core1]: kern_Debug.cpp:526<br> &gt; KDebug::OnDebuEvent : already event (4 1)</li>
6202        </ul>
6203      </description></knownissues><HR>
6204<H2 style="line-height: 0"><A name="sdk_0_7_0_Release%20SampleDemos">CTR-SDK Version 0.7.0 Release SampleDemos</A></H2>
6205<DIV style="text-align: right"><P style="line-height: 0">(2009/12/22)</P></DIV>
6206<HR>
6207<H3><A name="note1-01">Note 1-01: (CAMERA) Added features to the multifunction demos [Sample Demos]</A></H3>
6208<P><description>One of the multifunction demos (<CODE>demo1</CODE>) has been modified to use the camera.<br></description></P>
6209<HR>
6210<H3><A name="note1-02">Note 1-02: (GX) Added demos of the simple rendering features of 2D geometric shapes [Sample Demos]</A></H3>
6211<P><description>Added the <CODE>Draw2d</CODE> demo (which draws 2D geometric shapes) and the <CODE>DrawTexture2d</CODE> demo (which performs texture mapping on polygons).<br></description></P>
6212<HR>
6213<H3><A name="note1-03">Note 1-03: (GX) Revised the source code based on changes to the specifications of the <CODE>glUniformMatrix</CODE> functions [Sample Demos]</A></H3>
6214<P><description>The source code for the graphics sample demos were changed to reflect the new ability to transpose matrices using an argument to the <CODE>glUniformMatrix**</CODE> functions.<br></description></P>
6215<HR>
6216<H3><A name="note1-04">Note 1-04: (GX) Changed the directory structure [Sample Demos]</A></H3>
6217<P><description>Changed the directory structure under <CODE>SampleDemos/gx</CODE>.<br> The code for vertex shaders is now stored in the <CODE>shaders</CODE> directory, and the group of files loaded into ROMFS is now stored in the <CODE>romfiles</CODE> directory.<br></description></P>
6218<HR>
6219<H3><A name="note1-05">Note 1-05: (GX) Changed the directories so that shader binaries will be generated during builds [Sample Demos]</A></H3>
6220<P><description>The vertex shader code for &quot;<CODE>SampleDemos/demo1</CODE>&quot; and &quot;<CODE>SampleDemos/demo2</CODE>&quot; were moved to the <CODE>shaders</CODE> directory.<br> The <CODE>HostRoot</CODE> was also changed to the <CODE>romfiles</CODE> directory so that the shader binaries will be created in the <CODE>romfiles</CODE> directory during builds.<br></description></P>
6221<HR>
6222<H3><A name="note1-06">Note 1-06: (HID) Made changes and added features to the multifunction demos [Sample Demos]</A></H3>
6223<P><description>The following changes were made to the multifunction demos (<CODE>demo1</CODE> and <CODE>demo2</CODE>).
6224        <ul>
6225          <li>Changed to use the accelerometer</li>
6226          <li>Changed the button assignments so that SELECT is not used</li>
6227          <li>Changed the button operations to use holding the buttons down</li>
6228        </ul>
6229      </description></P>
6230<HR>
6231<H3><A name="note1-07">Note 1-07: (MIC) Added features to the multifunction demos [Sample Demos]</A></H3>
6232<P><description>The multifunction demos (<CODE>demo1</CODE> and <CODE>demo2</CODE>) now use the microphone.<br></description></P>
6233<HR>
6234<H3><A name="KnownIssues_0_7_0_Release%20SampleDemos">Known Issues with SDK 0.7.0 Release Sample Demos</A></H3>
6235<P>  None.</P>
6236<HR>
6237<hr><p>CONFIDENTIAL</p></body>
6238</HTML>
6239