<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.3dbrew.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Xcution</id>
	<title>3dbrew - User contributions [en]</title>
	<link rel="self" type="application/atom+xml" href="https://www.3dbrew.org/w/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Xcution"/>
	<link rel="alternate" type="text/html" href="https://www.3dbrew.org/wiki/Special:Contributions/Xcution"/>
	<updated>2026-04-24T12:59:22Z</updated>
	<subtitle>User contributions</subtitle>
	<generator>MediaWiki 1.43.1</generator>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=SHBIN&amp;diff=4779</id>
		<title>SHBIN</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=SHBIN&amp;diff=4779"/>
		<updated>2013-01-29T07:24:10Z</updated>

		<summary type="html">&lt;p&gt;Xcution: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:File formats]]&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
The SHBIN (SHader BINary) file is used to contain compiled VSH (Vertex SHader) files. (VSH files are vertex shader scripts)&lt;br /&gt;
&lt;br /&gt;
A SHBIN&#039;s structure starts with a header, then a DVLP, then DVLE(s) (depending on a variable in the header)&lt;br /&gt;
&lt;br /&gt;
== Header ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;DVLB&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Amount of DVLEs in SHBIN&lt;br /&gt;
|-&lt;br /&gt;
|  0x8&lt;br /&gt;
|  0x4&lt;br /&gt;
|  DVLE 1 offset&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
If there is more than 1 DVLE ( Amount &amp;gt; 0x01 ) the header continues with more offsets.&lt;br /&gt;
&lt;br /&gt;
So if there are 3 DVLEs then 0xC would be DVLE 2&#039;s offset, 0x10 would be DVLE 3&#039;s offset, ect...&lt;br /&gt;
&lt;br /&gt;
The DVLP file comes directly after the header.&lt;br /&gt;
&lt;br /&gt;
== DVLP ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;DVLP&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Contains ASM of the VSH?&lt;br /&gt;
&lt;br /&gt;
== DVLE ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;DVLE&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Contains registers of the VSH?&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=SHBIN&amp;diff=4778</id>
		<title>SHBIN</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=SHBIN&amp;diff=4778"/>
		<updated>2013-01-29T07:20:06Z</updated>

		<summary type="html">&lt;p&gt;Xcution: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:File formats]]&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
The SHBIN (SHader BINary) file is used to contain compiled VSH (Vertex SHader) files. These VSH files are shaders that can be used for vertexes.&lt;br /&gt;
&lt;br /&gt;
A SHBIN&#039;s structure starts with a header, then a DVLP, then DVLE(s) (depending on a variable in the header)&lt;br /&gt;
&lt;br /&gt;
== Header ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;DVLB&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Amount of DVLEs in SHBIN&lt;br /&gt;
|-&lt;br /&gt;
|  0x8&lt;br /&gt;
|  0x4&lt;br /&gt;
|  DVLE 1 offset&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
If there is more than 1 DVLE ( Amount &amp;gt; 0x01 ) the header continues with more offsets.&lt;br /&gt;
&lt;br /&gt;
So if there are 3 DVLEs then 0xC would be DVLE 2&#039;s offset, 0x10 would be DVLE 3&#039;s offset, ect...&lt;br /&gt;
&lt;br /&gt;
The DVLP file comes directly after the header.&lt;br /&gt;
&lt;br /&gt;
== DVLP ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;DVLP&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Contains ASM of the VSH?&lt;br /&gt;
&lt;br /&gt;
== DVLE ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;DVLE&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Contains registers of the VSH?&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=SHBIN&amp;diff=4777</id>
		<title>SHBIN</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=SHBIN&amp;diff=4777"/>
		<updated>2013-01-29T05:05:13Z</updated>

		<summary type="html">&lt;p&gt;Xcution: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:File formats]]&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
The SHBIN (SHader BINary) file is used to contain compiled VSH (Vertex SHader) files. These VSH files are shaders that can be used for vertexes.&lt;br /&gt;
&lt;br /&gt;
A SHBIN&#039;s structure starts with a header, then a DVLP, then DVLE(s) (depending on a variable in the header)&lt;br /&gt;
&lt;br /&gt;
== Header ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;DVLB&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Amount of DVLEs in SHBIN&lt;br /&gt;
|-&lt;br /&gt;
|  0x8&lt;br /&gt;
|  0x4&lt;br /&gt;
|  DVLE 1 offset&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
If there is more than 1 DVLE ( Amount &amp;gt; 0x01 ) the header continues with more offsets.&lt;br /&gt;
&lt;br /&gt;
So if there are 3 DVLEs then 0xC would be DVLE 2&#039;s offset, 0x10 would be DVLE 3&#039;s offset, ect...&lt;br /&gt;
&lt;br /&gt;
The DVLP file comes directly after the header.&lt;br /&gt;
&lt;br /&gt;
== DVLP ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;DVLP&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== DVLE ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;DVLE&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=SHBIN&amp;diff=4776</id>
		<title>SHBIN</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=SHBIN&amp;diff=4776"/>
		<updated>2013-01-29T02:33:22Z</updated>

		<summary type="html">&lt;p&gt;Xcution: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:File formats]]&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
The SHBIN (SHader BINary) file is used to contain compiled VSH (Vertex SHader) files. These VSH files are shaders that can be used for vertexes.&lt;br /&gt;
&lt;br /&gt;
A SHBIN contains a header, then a DVLP, then DVLE(s) (depending on a variable in the header)&lt;br /&gt;
&lt;br /&gt;
== Header ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;DVLB&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Amount of DVLEs in SHBIN&lt;br /&gt;
|-&lt;br /&gt;
|  0x8&lt;br /&gt;
|  0x4&lt;br /&gt;
|  DVLE 1 offset&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
If there is more than 1 DVLE ( Amount &amp;gt; 0x01 ) the header continues with more offsets.&lt;br /&gt;
&lt;br /&gt;
So if there are 3 DVLEs then 0xC would be DVLE 2&#039;s offset, 0x10 would be DVLE 3&#039;s offset, ect...&lt;br /&gt;
&lt;br /&gt;
The DVLP file comes directly after the header.&lt;br /&gt;
&lt;br /&gt;
== DVLP ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;DVLP&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== DVLE ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;DVLE&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=SHBIN&amp;diff=4775</id>
		<title>SHBIN</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=SHBIN&amp;diff=4775"/>
		<updated>2013-01-29T02:30:58Z</updated>

		<summary type="html">&lt;p&gt;Xcution: Created page with &amp;quot;Category:File formats == Overview ==  The SHBIN (SHader BINary) file is used to contain compiled VSH (Vertex SHader) files. These VSH files are shaders that can be used for v...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:File formats]]&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
The SHBIN (SHader BINary) file is used to contain compiled VSH (Vertex SHader) files. These VSH files are shaders that can be used for various reasons.&lt;br /&gt;
&lt;br /&gt;
A SHBIN contains a header, then a DVLP, then DVLE(s) (depending on a variable in the header)&lt;br /&gt;
&lt;br /&gt;
== Header ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;DVLB&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Amount of DVLEs in SHBIN&lt;br /&gt;
|-&lt;br /&gt;
|  0x8&lt;br /&gt;
|  0x4&lt;br /&gt;
|  DVLE 1 offset&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
If there is more than 1 DVLE ( Amount &amp;gt; 0x01 ) the header continues with more offsets.&lt;br /&gt;
&lt;br /&gt;
So if there are 3 DVLEs then 0xC would be DVLE 2&#039;s offset, 0x10 would be DVLE 3&#039;s offset, ect...&lt;br /&gt;
&lt;br /&gt;
The DVLP file comes directly after the header.&lt;br /&gt;
&lt;br /&gt;
== DVLP ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;DVLP&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== DVLE ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;DVLE&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=File:GFX_Test.jpg&amp;diff=4766</id>
		<title>File:GFX Test.jpg</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=File:GFX_Test.jpg&amp;diff=4766"/>
		<updated>2013-01-27T01:22:51Z</updated>

		<summary type="html">&lt;p&gt;Xcution: Tonight I decided to work on getting graphics initialised, and it worked.

This is a basic test which paints both screens green. It&amp;#039;s not much to look at, but getting it up is still great.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Tonight I decided to work on getting graphics initialised, and it worked.&lt;br /&gt;
&lt;br /&gt;
This is a basic test which paints both screens green. It&#039;s not much to look at, but getting it up is still great.&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=BCSTM&amp;diff=4759</id>
		<title>BCSTM</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=BCSTM&amp;diff=4759"/>
		<updated>2013-01-26T08:05:25Z</updated>

		<summary type="html">&lt;p&gt;Xcution: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:File formats]]&lt;br /&gt;
This document is about the format of CTR Streams (CSTM).&lt;br /&gt;
&lt;br /&gt;
The structure is almost exact to the CTR Wave Format (CWAV).&lt;br /&gt;
&lt;br /&gt;
=== Overview ===&lt;br /&gt;
&lt;br /&gt;
The structure of the CSTM is almost exactly the CWAV, except a few differences. The formats can be easily converted between eachother.&lt;br /&gt;
&lt;br /&gt;
These files are either found in rom:\sound\stream\ or they can be inside of a CSAR.&lt;br /&gt;
&lt;br /&gt;
=== Format ===&lt;br /&gt;
&lt;br /&gt;
The structure is very similar to the CWAV, except these notable differences :&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! OFFSET !! SIZE !!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
| 0x000 || 4 || MAGIC &amp;quot;CSTM&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Additionally it introduces a new partition called SEEK which comes right before DATA, so a CSTM would be ordered like this:&lt;br /&gt;
&lt;br /&gt;
* CSTM Header&lt;br /&gt;
* INFO Partition&lt;br /&gt;
* SEEK Partition&lt;br /&gt;
* DATA Partition&lt;br /&gt;
&lt;br /&gt;
By default this means that 0x24-0x2B in the CSTM Partition is the SEEK position and length respectively, and DATA position and length follows it. (in a CWAV 0x24-0x2B is usually the DATA position and length)&lt;br /&gt;
&lt;br /&gt;
=== SEEK ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! OFFSET !! SIZE !!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
| 0x000 || 4 || Magic (SEEK)&lt;br /&gt;
|-&lt;br /&gt;
| 0x004 || 4 || Length&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=BCSTM&amp;diff=4758</id>
		<title>BCSTM</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=BCSTM&amp;diff=4758"/>
		<updated>2013-01-26T08:04:41Z</updated>

		<summary type="html">&lt;p&gt;Xcution: Created page with &amp;quot;Category:File formats This document is about the format of CTR Streams (CSTM).  The structure is almost exact to the CTR Wave Format (CWAV).  === Overview ===  The structure ...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:File formats]]&lt;br /&gt;
This document is about the format of CTR Streams (CSTM).&lt;br /&gt;
&lt;br /&gt;
The structure is almost exact to the CTR Wave Format (CWAV).&lt;br /&gt;
&lt;br /&gt;
=== Overview ===&lt;br /&gt;
&lt;br /&gt;
The structure of the CSTM is almost exactly the CWAV, except a few differences. The formats can be easily converted between eachother.&lt;br /&gt;
&lt;br /&gt;
These files are either found in rom:\sound\stream\ or they can be inside of a CSAR.&lt;br /&gt;
&lt;br /&gt;
=== Format ===&lt;br /&gt;
&lt;br /&gt;
The structure is very similar to the CWAV, except these notable differences :&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! OFFSET !! SIZE !!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
| 0x000 || 4 || MAGIC &amp;quot;CSTM&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Additionally it introduces a new partition called SEEK which comes right before DATA, so a CSTM would be ordered like this:&lt;br /&gt;
&lt;br /&gt;
* CSTM Partition&lt;br /&gt;
* INFO Partition&lt;br /&gt;
* SEEK Partition&lt;br /&gt;
* DATA Partition&lt;br /&gt;
&lt;br /&gt;
By default this means that 0x24-0x2B in the CSTM Partition is the SEEK position and length respectively, and DATA position and length follows it. (in a CWAV 0x24-0x2B is usually the DATA position and length)&lt;br /&gt;
&lt;br /&gt;
=== SEEK ===&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
! OFFSET !! SIZE !!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
| 0x000 || 4 || Magic (SEEK)&lt;br /&gt;
|-&lt;br /&gt;
| 0x004 || 4 || Length&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=3DS_System_Flaws&amp;diff=4757</id>
		<title>3DS System Flaws</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=3DS_System_Flaws&amp;diff=4757"/>
		<updated>2013-01-26T03:26:13Z</updated>

		<summary type="html">&lt;p&gt;Xcution: Vanish, troll.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Exploits are used to execute unofficial code (homebrew) on the Nintendo 3DS. This page is a list of known 3DS-mode exploits.&lt;br /&gt;
&lt;br /&gt;
==List of 3DS exploits==&lt;br /&gt;
There are currently no known 3DS-mode exploits.&lt;br /&gt;
&lt;br /&gt;
==Failed attempts==&lt;br /&gt;
Here are listed all attempts at exploiting 3DS software that have failed so far.&lt;br /&gt;
&lt;br /&gt;
* Pushmo (3DSWare), QR codes: level name is properly limited to 16 characters, game doesn&#039;t crash with a longer name. Only possible crashes are from out-of-bounds values and are not exploitable.&lt;br /&gt;
* Pyramids (3DSWare), QR codes: no strings. The LZ10 compression can&#039;t be exploited either. Only crashes are from out-of-bounds values (like background ID) and are not exploitable.&lt;br /&gt;
* 3DS browser, 2^32 characters long string: The behavior of this crash is not well understood. The crash may or may not be done on purpose (Webkit contains code that triggers &#039;crashes&#039; on purpose). Anyway any attempt at exploiting this has failed so far.&lt;br /&gt;
&lt;br /&gt;
==Current efforts==&lt;br /&gt;
There are people working on finding exploits and documenting the 3DS. Here&#039;s a list of some current efforts being made to make homebrew on the 3DS possible:&lt;br /&gt;
&lt;br /&gt;
* Neimod has been working on a RAM dumping setup for a little while now. He&#039;s desoldered the 3DS&#039;s RAM chip and hooked it and the RAM pinouts on the 3DS&#039;s PCB up to a custom RAM dumping setup. Recent photos show that the setup is working quite well, with the 3DS successfully booting up. Pictures of neimod&#039;s work can be found on [http://www.flickr.com/photos/neimod/ his Flickr stream].&lt;br /&gt;
&lt;br /&gt;
* to long or corrupted strings (01Ah  2   Nickname length in characters     050h  2   Message length in characters) in the NVRAM DS user settings cause (System Settings/Other Settings/Profile/Nintendo DS Profile to crush) (this is still 3DS mode)&lt;br /&gt;
&lt;br /&gt;
==Tips and info==&lt;br /&gt;
Information on the 3DS&#039;s internals is scarce. There is little information on programming the 3DS available, other than basic information found by taking the 3DS apart, leaks and reverse engineering.&lt;br /&gt;
&lt;br /&gt;
What this means is if any exploits are found, it would be very difficult to do anything useful with them. Work is currently being done to find out how the 3DS ticks and to aid in finding exploits. See the [[#Current efforts | current efforts]] section of this page for examples and more information.&lt;br /&gt;
&lt;br /&gt;
The 3DS uses the XN feature of the ARM processor, and only apps that have the necessary permissions in their headers can set memory to be executable. This means that although a usable buffer overflow exploit would still be useful, it would not go the entire way towards allowing code to be run in an easy/practical fashion (ie an actual homebrew launcher) - for that, an exploit in the kernel would probably need to be found. A buffer overflow exploit does, however, provide enough wriggle room through the use of return-oriented programming to potentially trigger a kernel exploit if and when a useful one is found.&lt;br /&gt;
&lt;br /&gt;
SD card [[extdata]] and SD savegames can be attacked, for consoles where the console-unique [[Nand/private/movable.sed|movable.sed]] was dumped.&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=File:CustomNotification.jpg&amp;diff=4654</id>
		<title>File:CustomNotification.jpg</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=File:CustomNotification.jpg&amp;diff=4654"/>
		<updated>2012-12-31T04:02:48Z</updated>

		<summary type="html">&lt;p&gt;Xcution: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I&#039;ve got images and text sending working with notifications.&lt;br /&gt;
&lt;br /&gt;
p.s.-&lt;br /&gt;
&lt;br /&gt;
* Subject can be up to 32 characters long&lt;br /&gt;
* Messages can be up to 3000 characters long&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=File:CustomNotification.jpg&amp;diff=4653</id>
		<title>File:CustomNotification.jpg</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=File:CustomNotification.jpg&amp;diff=4653"/>
		<updated>2012-12-31T03:55:42Z</updated>

		<summary type="html">&lt;p&gt;Xcution: uploaded a new version of &amp;amp;quot;File:CustomNotification.jpg&amp;amp;quot;: Even newer test!

I&amp;#039;ve learnt how to implement JPGs or MPOs into notifications!
The JPEG was loaded off the SD card and sent to the nofication box along with my message.

p.s.- I&amp;#039;ve go&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A little homebrew test I just compiled...and it succeeded!&lt;br /&gt;
&lt;br /&gt;
New test:&lt;br /&gt;
&lt;br /&gt;
Subject: The user name on the 3DS.&lt;br /&gt;
&lt;br /&gt;
Message: Whether or not the name uses the profanity flag.&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=File:ApplicationActivated.jpg&amp;diff=4647</id>
		<title>File:ApplicationActivated.jpg</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=File:ApplicationActivated.jpg&amp;diff=4647"/>
		<updated>2012-12-30T04:52:24Z</updated>

		<summary type="html">&lt;p&gt;Xcution: I got my application activated! This allows the application to be detected in the Friends applet and it allows other things as well.

p.s.- I&amp;#039;m sorry, but I&amp;#039;m not sharing my friend code for this unit so I blacked it out.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;I got my application activated! This allows the application to be detected in the Friends applet and it allows other things as well.&lt;br /&gt;
&lt;br /&gt;
p.s.- I&#039;m sorry, but I&#039;m not sharing my friend code for this unit so I blacked it out.&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=3DS_Development_Unit_Software&amp;diff=4641</id>
		<title>3DS Development Unit Software</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=3DS_Development_Unit_Software&amp;diff=4641"/>
		<updated>2012-12-30T01:55:44Z</updated>

		<summary type="html">&lt;p&gt;Xcution: /* SaveDataFiler */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The following is a description of the functions what is possible with the applications unique to 3DS Development Units.&lt;br /&gt;
&lt;br /&gt;
Descriptions Derived from SDK revision 37904 except where notified otherwise. For information on 3DS Development Hardware see [http://gbatemp.net/topic/327858-3ds-development-hardware/]&lt;br /&gt;
[[File:CTR_HMN_DEV.png|300px|thumb|right|Beautifully clear picture of the Dev Apps + Home Menu. Click to view in great quality. - Xcution]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Dev Menu == &lt;br /&gt;
[[File:Devmenuicon.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:Devmenscnsht.jpg|250px|thumb|right|Dev Menu Screenshots]]&lt;br /&gt;
[[File:Old_Dev_Menu.png|200px|thumb|left|Old Dev Menu Screenshot]]&lt;br /&gt;
This application on the top screen displays the firmware and revision of the Dev Menu, the free space available on the [[Flash Filesystem#TWL partition|TWL(DSi) NAND partition]] and [[SD Filesystem|SD card]] if present. It also provides information on the current file or device selected, as well as navigation instructions for the bottom screen.The bottom screen has three different windows, which are:&lt;br /&gt;
&lt;br /&gt;
*Programs- From this window, applications can be loaded from the [[Flash Filesystem|NAND]], the [[SD Filesystem|SD card]] and the slot 1 card (only a select scope of applications, see below for Dev Menu revisions and their corresponding scope of applications) . This is shown in the format of &amp;quot;Unique Id&#039;   &#039;[[Serials#Product Code|Product Code]]&#039;&amp;quot;. Installed titles can be deleted from this menu.&lt;br /&gt;
&lt;br /&gt;
*Import- From this window, titles compiled in the format of a .[[CIA]] file, can be installed from the SD card. In later revisions this was renamed to &#039;&#039;SDMC&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
*HIO- A tab available in later revisions of the Dev Menu. Prints &#039;Not found DEVMENU_ROOT&#039;. This &#039;DEVMENU_ROOT&#039; is not supposed to be on the 3DS&#039; SDMC. (presumably a folder has to be on the NAND or loaded from a CTR Debugger&#039;s SDMC slot?)&lt;br /&gt;
&lt;br /&gt;
*ExtData- From this window, the 3DS&#039;s [[Extdata|ExtData]](this includes all ExtData) can be deleted&lt;br /&gt;
&lt;br /&gt;
(Note that retail 3ds games are not recognised by Developer 3DSs and the Dev Menu prints &amp;quot;Unknown Card&amp;quot; in the &#039;Programs&#039; window and shows no details on top screen)&lt;br /&gt;
&lt;br /&gt;
(Also note that if a 3ds executable cannot be launched from the Dev Menu due to restrictive flags in the executable, such as restrictive memory, the product ID will be coloured red as opposed to black)&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  Dev Menu Revision&lt;br /&gt;
!  Title Types Accessible&lt;br /&gt;
|-&lt;br /&gt;
|  ?- 32640 - 33437&lt;br /&gt;
|  0000(NAND Only),0010,8004,8005,8011&lt;br /&gt;
|- &lt;br /&gt;
|  35887&lt;br /&gt;
|  0000(NAND Only),8004&lt;br /&gt;
|-&lt;br /&gt;
|  37785 - 40909 -?&lt;br /&gt;
|  0000(NAND and SDMC),8004&lt;br /&gt;
|-&lt;br /&gt;
|  ?- 47586 -?&lt;br /&gt;
|  0000(NAND and SDMC),0002, 8004&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Config == &lt;br /&gt;
[[File:Configicon.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:3DS_dev_configmenu.JPG|250px|thumb|right|Config Menu Screenshot]]&lt;br /&gt;
This application is a configuration menu for the 3DS, which has the following options:&lt;br /&gt;
&lt;br /&gt;
*Reset Settings - Resets all settings to default.&lt;br /&gt;
&lt;br /&gt;
*Hid Setting - (human interface device) Calibrates Touch-Pad and Analog stick.&lt;br /&gt;
&lt;br /&gt;
*Rtc Setting - (real time clock) Sets system time.&lt;br /&gt;
&lt;br /&gt;
*Lcd Setting - Sets display settings as found in the home menu as well as Flicker settings.&lt;br /&gt;
&lt;br /&gt;
*User Info Setting - Allows username change and &amp;quot;NG NAME FLAG&amp;quot; to be set to true or false.&lt;br /&gt;
&lt;br /&gt;
:In later versions of Config, &amp;quot;User Info Setting&amp;quot; also has :&lt;br /&gt;
::*CountryId - Changes 3DS between installed countries.&lt;br /&gt;
::*RegionId - Changes between the location in the selected country.&lt;br /&gt;
&lt;br /&gt;
*Other Setting(branches off into other settings) - &lt;br /&gt;
:*Sound Mode - mono/stereo/surround&lt;br /&gt;
&lt;br /&gt;
:*System Mode - Changes Memory Allowance.&lt;br /&gt;
::*Prod - 64MB Memory mode ([[Home Menu]] can usually only run in this mode and &#039;&#039;most&#039;&#039; retail-looking units cannot switch out of this mode)&lt;br /&gt;
::*Dev1 - 96MB Memory mode&lt;br /&gt;
::*Dev2 - 80MB Memory mode&lt;br /&gt;
::*Dev3 - 72MB Memory mode&lt;br /&gt;
::*Dev4 - 32MB Memory mode&lt;br /&gt;
::All CTR Debuggers/Prototype units can change memory allowance. For Developer Test Units, the ability to change Memory Allowance, appears to be dependent on an option when buying the Test Unit. (similar to having a choice to purchase IS_Nitro&#039;s Wireless/USG options when buying an IS_Nitro from Nintendo)&lt;br /&gt;
::On some Test Units, it&#039;s possible to run the [[Home Menu]] outside of Prod. However, software with limited memory (such as the web browser) cannot be launched from the home menu if the home menu is outside of Prod.&lt;br /&gt;
&lt;br /&gt;
:*Exception handler - Selects whether to enable or disable the application&#039;s handling of exceptions that arise in the non-debug environment - enable/disable &lt;br /&gt;
&lt;br /&gt;
:*Break Stop - (enable/disable) - Selects whether to enable or disable stopping the application when a break is encountered in the non-debug environment. If the application is not made to stop, it quits on a break.&lt;br /&gt;
&lt;br /&gt;
:*Menu - (Home Menu/Test Menu) This function edits the [[Config Info Blocks|configuration]] field containing the menu TID for dev units, allowing the user to choose between the [[Home Menu]] or the [[3DS Development Unit GUI#Test Menu|Test Menu]], as the menu loaded by the [[NS]] module.&lt;br /&gt;
&lt;br /&gt;
:*Language - same options found in the Language section of [[System Settings]] but also has an &amp;quot;invalid&amp;quot; option&lt;br /&gt;
&lt;br /&gt;
:*Dlp Force Child Import - (enable/disable) - normally the 3ds caches downloaded &amp;quot;Download Play (Dlp)&amp;quot; applications on the nand and only re-downloads, overwriting the cached copy if the version application being requested to downloaded is higher than what is currently present on the nand. Enabling this option forces the 3ds to download and overwrite the cached copy on the nand, regardless of the version of the application being downloaded. This is of course for testing purposes.&lt;br /&gt;
&lt;br /&gt;
:*Debug Mode - (enable/disable) - Toggles Debug environment?&lt;br /&gt;
&lt;br /&gt;
:In later versions of Config, &amp;quot;Other Setting&amp;quot; also has :&lt;br /&gt;
::*FS Latency Emulation - Filesystem Latency, in milliseconds (0ms-2550ms). Selection is in increments of 10. (ie 0ms-&amp;gt;10ms-&amp;gt;20ms...)&lt;br /&gt;
::*Coppacs Setting - Unknown (stuck on &#039;not restricted&#039;)&lt;br /&gt;
&lt;br /&gt;
*Test Setting - Test calibration of touch pad and joystick&lt;br /&gt;
       &lt;br /&gt;
*Eula Setting - Allows user to change &amp;quot;Agree Version&amp;quot; namely:&amp;quot;ff.ff&amp;quot; the two symbol sets are interchangeable with combination variations from aa to 99 (default is 00.00 where the Eula is not accepted yet).&lt;br /&gt;
       &lt;br /&gt;
*Stereo Camera Cal for Check - Camera test (?) as options to &amp;quot;write strange data(excess Z-rot) and &amp;quot;reset to factory default&amp;quot;.&lt;br /&gt;
       &lt;br /&gt;
*Gyro / Accel Cal for Check - Allows Gyro and Accelerometer to be calibrated.&lt;br /&gt;
       &lt;br /&gt;
*Ctr Info Setting - Changes settings to that found on the ctrsetting.txt on an SD .&lt;br /&gt;
&lt;br /&gt;
== Downloadplay Client ==&lt;br /&gt;
[[File:Dlpcliscnsht.jpg|250px|thumb|right|Downloadplay Client Screenshots]]&lt;br /&gt;
[[File:Dlpcliicon.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Even though a Developer 3DS has a &amp;quot;Download Play&amp;quot; application visually identical to the retail 3DS [[Download Play|application]], the &amp;quot;Downloadplay Client&amp;quot; application can be installed as an alternative to the regular Download Play application. (Note: a Developer 3DS&#039; and Retail 3DS&#039; cannot receive download play &#039;children&#039; from each-other.) This Developer application is a stripped down version of &#039;Download Play&#039; which has the following options and limitations:&lt;br /&gt;
&lt;br /&gt;
*It can only download 3ds download play titles&lt;br /&gt;
&lt;br /&gt;
*Scraps the GUI found in the normal Download Play application(see screenshot)&lt;br /&gt;
&lt;br /&gt;
*Can select from a maximum of 16 Download play &#039;servers&#039;&lt;br /&gt;
&lt;br /&gt;
This application is clearly used for easy testing of download play &#039;child&#039; apps, without the hassle of constantly re-navigating the normal Download Play interface&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Network Settings ==&lt;br /&gt;
[[File:Netsetscnsht.jpg|250px|thumb|right|Network Settings Screenshots]]&lt;br /&gt;
[[File:Netseticon.png]]&lt;br /&gt;
&lt;br /&gt;
This Developer application allows the users to directly modify the following from any of the three possible network setting &#039;slots&#039;&lt;br /&gt;
&lt;br /&gt;
*Security Mode :(the wireless encryption the network is using) OPEN/WEP 40bit/WEP 104bit/128bit/WPA TKIP/WPA2 TKIP/WPA AES/WPA2 AES&lt;br /&gt;
&lt;br /&gt;
*SSID :(self-explanitory) maximum 32 characters&lt;br /&gt;
&lt;br /&gt;
*KEY :(the key for the encrytion is here in plain text) the maximum length depends on encryption type&lt;br /&gt;
&lt;br /&gt;
*AutoDNS :(whether the 3DS obtains the DNS automatically or not) |True-3DS obtains the DNS automatically|False-3DS uses the DNS server address provided by the user(it is possible to edit this here)|&lt;br /&gt;
&lt;br /&gt;
At the bottom of the setting options there are two choices:&lt;br /&gt;
&lt;br /&gt;
*Write Setting &amp;amp; Connect Test To AP - Applies the settings above and performs a connection test(note any settings made in system settings for this connection, which are not present in the above settings will be nullified, for example any proxy server settings)&lt;br /&gt;
&lt;br /&gt;
*Remove Setting - removes all settings for this &#039;slot&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== SaveDataFiler ==&lt;br /&gt;
[[File:Saveflscnsht.jpg|250px|thumb|right|SaveDataFiler Screenshots]]&lt;br /&gt;
[[File:Saveflicon.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This 3DS Developer application allows save files and extdata to be exported and imported from an SD Card. The window has three tabs:&lt;br /&gt;
&lt;br /&gt;
*User - This is where saves for 3DS applications and saves on 3DS Game Cards(not DS Game Cards) can be exported to the SD Card. Saves cannot be deleted here.&lt;br /&gt;
&lt;br /&gt;
*ExtData - This is where application extdata can be deleted or exported to the SD Card for later use&lt;br /&gt;
&lt;br /&gt;
*SD - This is where extdata and application saves on the SD Card can be imported to the 3DS or 3DS Game Card. Also extdata and application saves can be deleted from the SD Card&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
User save data is exported to sdmc:/filer/UserSaveData/YYYYMMDD(Hour)(Minute)(Second)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
It creates a folder in that path and 3 files. The 2 files exported to the above path are &amp;lt;uniqueID&amp;gt;.dat and &amp;lt;uniqueID&amp;gt;_.dat while a folder named /&amp;lt;uniqueID&amp;gt;/ in that path contains &amp;lt;ExHeader Name&amp;gt;.dat&lt;br /&gt;
&lt;br /&gt;
== CTR MenuSelector ==&lt;br /&gt;
[[File:Menuselector.jpg|100px|thumb|right|Menu Selector Screenshot]]&lt;br /&gt;
[[File:Menuselectoricon.jpg]]&lt;br /&gt;
&lt;br /&gt;
This application when loaded can change the current &#039;Active Menu&#039;(being used at the moment) by editing the menu TID [[Config Info Blocks|configuration]] field, allowing the user to choose between the [[Home Menu]] or the [[3DS Development Unit GUI#Test Menu|Test Menu]], as the menu loaded by the [[NS]] module. This application was superseded by the introduction of the &amp;quot;Menu&amp;quot; choice in the [[3DS Development Unit Software#Config|Config Menu]] and consequently removed as a standard application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== CecLotcheckTool ==&lt;br /&gt;
[[File:Ceclotscnsht.jpg|250px|thumb|right|CecLotcheckTool Screenshot]]&lt;br /&gt;
[[File:Cecloticon.png]]&lt;br /&gt;
&lt;br /&gt;
This application is used to manage CECs (Chance Encounter Communications, AKA StreetPass hits) for any of the twelve possible applications used on the 3DS, if there are any. The application has twelve possible slots which can be filled by BOXes . The BOXes are individual applications which are permitted by the user to use CECs, such as StreetPass Mii Plaza or Nintendo 3DS Sound. And as such, the boxes in this application correspond to the applications in &#039;StreetPass Management&#039;, in &#039;System Settings&#039; (StreetPass Management is accessible from retail 3DSs). The functions of this application:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;Y&amp;gt; BOX Options - this opens up a sub menu with the following options(when hovering over Nintendo 3DS Sounds BOX - the only one I can test the app with):&lt;br /&gt;
&lt;br /&gt;
*Box Info - Gives the Out-Box parameters [[File:Boxinf.jpg|250px|]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Message Info (OUT-BOX) - Gives the Message Parameters For the current BOX [[File:Mesinf.jpg|250px|]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Dummy Message Settings - Not quite sure what the options do here [[File:Dummesinf.jpg|250px|]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;A&amp;gt; Create Dummy BOXes - Creates dummy BOXes to fill any unused slots. (does not overwrite any present slots)&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;X&amp;gt; Delete BOXes - Deletes all of the BOXes from the slots.&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;START&amp;gt; CEC Filter Reset - I can only guess that it erases data collected by CEC enabled apps.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== BossLotCheckTool ==&lt;br /&gt;
[[File:Bosslcscnsht.png|100px|thumb|right|BossLotCheckTool Screenshot]]&lt;br /&gt;
[[File:Bosslcicon.png]]&lt;br /&gt;
&lt;br /&gt;
This application is used to manage BOSS (SpotPass) tasks/data for 3DS titles which utilise BOSS communications. &#039;Pokedex&#039; is an application which utilizes BOSS comunications. This application also displays the 3DS&#039;s friend code, although this code is not to be confused with the 3DS&#039;s Friend Card code found in &#039;Friends List&#039;. The user can browse by unique ID the 3DS titles(excluding system titles) registered to use BOSS. For each title you can view details about the downloaded &#039;NsData&#039; which accompanies BOSS downloads, view the BOSS task lists (implies applications can perform more than one BOSS task). You can also view various details about each BOSS task, including:&lt;br /&gt;
&lt;br /&gt;
 TaskStatus : DONE?&lt;br /&gt;
 TaskExecCount : How many times the BOSS task has been executed&lt;br /&gt;
 TaskExecInterval : Period of time (in seconds) in the task is to be executed, in intervals&lt;br /&gt;
 TaskPriority : Is a number value &lt;br /&gt;
 URL : The URL to the BOSS content&lt;br /&gt;
 AP Info : NONE?&lt;br /&gt;
 TaskResultCode : Success or not&lt;br /&gt;
 HTTP_StatusCode : Self explanatory &lt;br /&gt;
 DataSize : Size of Content (in bytes)&lt;br /&gt;
 Last_Modified : Last time the BOSS content (on server) was modified&lt;br /&gt;
 StartTime : when the BOSS task was registered&lt;br /&gt;
 OptOut : Whether the user can/has opted out of BOSS communication for this task&lt;br /&gt;
 &lt;br /&gt;
 It also possible to manually execute the BOSS task from here&lt;br /&gt;
&lt;br /&gt;
== Stereo Camera Calibrator ==&lt;br /&gt;
[[File:Stecamscnsht.png|100px|thumb|right|Stereo Camera Calibrator Screenshot]]&lt;br /&gt;
[[File:Stecamicon.png]]&lt;br /&gt;
&lt;br /&gt;
The Stereo Camera Calibrator (SCC), in a nutshell, allows the user to adjust the configuration of the outer cameras in relation to each other. It can be configured automatically by positioning the 3DS a set distance away from a special chart. It can also be configured manually, by setting the rotation of each camera image and the size of the right eye camera. The 3D effect can be perceived by superimposing the right eye camera image translucently with the left eye camera image or by viewing the 3D image directly by use of the parallax barrier in the 3DS Screen. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Model Viewer ==&lt;br /&gt;
[[File:ModelViewer.png|100px|thumb|right|3DS Model Viewer Screenshot]]&lt;br /&gt;
[[File:ModelViewericon.png]]&lt;br /&gt;
&lt;br /&gt;
As the name suggests this application allows the user to view models. It is supposed to be used with a CTR-Debugger, assumingly so models can be entered in the memory of the program. But the program can be used on Test Units, but the model is restricted to three coloured lines depicting the 3 dimensions (x,y,z). The model can be viewed from any angle or scale, the perspective is controlled by the circle pad and directional buttons. And of course the application utilises the 3D effect&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Friend Testing Partner ==&lt;br /&gt;
[[File:Ftestpscnsht.png|250px|thumb|right|Friend Testing Partner Screenshot]]&lt;br /&gt;
[[File:Ftestpicon.png]]&lt;br /&gt;
&lt;br /&gt;
The Friend Testing Partner application is used to test/monitor the 3DS&#039;s Friend List function. It allows the user to test various functions of the 3DS&#039;s out-going Friend Card, by giving the following options:&lt;br /&gt;
*Master Control - (RUN/STOP) (STOP is the default setting) when ‘STOP’ is selected the 3DS Friend Card uses the user’s settings/data. When ‘RUN’ is selected  the 3DS Friend Card uses the dummy settings/data chosen to test from the settings bellow.&lt;br /&gt;
&lt;br /&gt;
*Login/Logout - (ON/OFF) (ON is the default setting) What effect this has on the Friend Card is not known&lt;br /&gt;
&lt;br /&gt;
*Playing Title - (ON/OFF) (ON is the default setting) When ‘ON’ is selected the currently used title is ignored and a dummy applications are cycled through as the ‘Playing Title’ approximately every ten seconds in its place. The dummy applications used are the applications found in Firmware version 1.0.0-0 of a retail 3DS including the ‘Nintendo Zone viewer’ app. When ‘OFF’ is selected the currently used title (which is the Friend Testing Partner app) is used as the ‘Playing Title’&lt;br /&gt;
&lt;br /&gt;
*Mode Description - (ON/OFF) (ON is the default setting) When ‘ON’ is selected the Software in Use(Playing Title) is accompanied by the Date and Time found on that user’s 3DS. The Mode Description is refreshed every ten or so seconds. When ‘OFF’ is selected the date and time on the user’s 3DS is not displayed.&lt;br /&gt;
&lt;br /&gt;
*Message - (ON/OFF) (ON is the default setting) When ‘ON’ is selected the message made by the user is replaced(not overwritten as it reverts back to the user’s choice when this is ‘OFF’) by the current date and time in the format “YYYYMMDD HHMMSS”, this is refreshed every ten or so seconds.&lt;br /&gt;
&lt;br /&gt;
*Mii - (ON/OFF) (ON is the default setting) When &#039;ON&#039; the currently used Mii is replaced with one of 4 dummy Miis and cycles them through every ten seconds with a new dummy mii. This effect can only be seen from another 3DS not the host&lt;br /&gt;
&lt;br /&gt;
*Favorite Title (ON/OFF) (ON is the default setting) When &#039;ON&#039; is selected, the user’s favorite title is replaced with a dummy, which is replaced every 10 or so seconds. &lt;br /&gt;
Also this application allows the user to monitor the whether the 3DS is online or not and whether the 3DS’s Friend Presence is online or offline. Every time a dummy setting is refreshed it is displayed on the top screen with a time stamp.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Game Coin Setter* ==&lt;br /&gt;
[[File:Coinstscnsht.png|100px|thumb|right|Game Coin Setter Screenshot]]&lt;br /&gt;
[[File:Coinsticon.png]]  &lt;br /&gt;
&lt;br /&gt;
This application is used to set the Play Coin count on the 3DS. Obviously this was created so a developer can test parts of their game in which the player can exchange earned play coins for in-game content or similar. It has a very simple interface showing the current play coin count and the adjustable option, the target coin count. These are the controls with explanation of each:&lt;br /&gt;
&lt;br /&gt;
*LEFT/RIGHT - using the D-pad only to adjust the &#039;Target Count&#039; to a number between 0-300.&lt;br /&gt;
&lt;br /&gt;
*A - Sets the &#039;Current Count&#039; (amount of play coins the system has) to the user selected &#039;Target Count&#039; (the user specified amount of play coins)&lt;br /&gt;
&lt;br /&gt;
*L+R+X - &amp;quot;Preclude today&#039;s Increment&amp;quot; not sure how this affects the Play Coin count.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== TWL Development Tools ==&lt;br /&gt;
&lt;br /&gt;
These are DSi/DS mode development tools repackaged into a [[CIA]], for installing to the TWL NAND.&lt;br /&gt;
&lt;br /&gt;
=== NINTENDO DS - WMtest ===&lt;br /&gt;
[[File:Wmtestscnsht.jpg|300px|thumb|right|WMtest Screenshot]]&lt;br /&gt;
[[File:Wmtesttool.png‎]]&lt;br /&gt;
&lt;br /&gt;
This application is a TWL(DSi) application compiled for use on the 3DS. It is an wireless test tool with its uses explained below:&lt;br /&gt;
&lt;br /&gt;
*Scan Test - Scans Wireless channels 1-13(can be focused on one specific channel) for broadcasting stations. It can detect two types of broadcasting stations:&lt;br /&gt;
&lt;br /&gt;
Wifi Access Points - Giving the Mac Address, Broadcasting Channel, &#039;c&#039;, and the SSID&lt;br /&gt;
&lt;br /&gt;
DS Stations such as DS Download stations and Pokemon distributors - Giving the Mac Address, Brodcasting Channel, TGID and GGID&lt;br /&gt;
&lt;br /&gt;
*ScanEx Test - and has two Scan Types. Passive which lets you individually scan channels 1-13 (only one at at time) and the DS distribution channels (1,7,13 all at once). And Active which scans all 13 channels at once. when it finds a channel it prints on the bottom screen next to &#039;Found&#039; &#039;bssDescCount=&#039;&lt;br /&gt;
&lt;br /&gt;
*MeasureChannel Test - not quite sure what this does but it for a given channel it gives a ratio(in percentage form), which it finds in its allocated test time ranging from 10ms to 1000ms. And for every interval of time which is specified, it tests and gives a ratio.&lt;br /&gt;
&lt;br /&gt;
*Noise Mode - Seeks wireless channels in which to make wireless noise (This is not made very clear on the app). You can specify the:&lt;br /&gt;
&lt;br /&gt;
Channel where the scanner will seek to make noise&lt;br /&gt;
&lt;br /&gt;
Noise Rate, ranging from 0% to 100%&lt;br /&gt;
&lt;br /&gt;
Frequency, ranging from 10ms to 50ms&lt;br /&gt;
&lt;br /&gt;
Seek Mode, ranging from 1000ms to 1500ms&lt;br /&gt;
&lt;br /&gt;
When the settings are chosen the top screen has two counters which display &#039;Noise ON count&#039; and &#039;Noise OFF count&#039; the counters are affected by the noise rate. Starting at 0% the &#039;Noise ON count&#039; does not change but as the Noise rate gets closer to 100% the count moves and gets faster as Noise rate reaches 100%. For &#039;Noise OFF count&#039; it is the exact opposite to the &#039; Noise ON count&#039; in regards to counting.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt; A substitute icon is used here in place of a generic icon (which the application uses) to stop confusion with other applications. The original generic icon can be viewed in the icon&#039;s history.&lt;br /&gt;
[[Category:3DS Development Unit Related Pages]]&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=File:CustomNotification.jpg&amp;diff=4638</id>
		<title>File:CustomNotification.jpg</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=File:CustomNotification.jpg&amp;diff=4638"/>
		<updated>2012-12-29T07:04:01Z</updated>

		<summary type="html">&lt;p&gt;Xcution: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A little homebrew test I just compiled...and it succeeded!&lt;br /&gt;
&lt;br /&gt;
New test:&lt;br /&gt;
&lt;br /&gt;
Subject: The user name on the 3DS.&lt;br /&gt;
&lt;br /&gt;
Message: Whether or not the name uses the profanity flag.&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=File:CustomNotification.jpg&amp;diff=4637</id>
		<title>File:CustomNotification.jpg</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=File:CustomNotification.jpg&amp;diff=4637"/>
		<updated>2012-12-29T07:03:50Z</updated>

		<summary type="html">&lt;p&gt;Xcution: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A little homebrew test I just compiled...and it succeeded!&lt;br /&gt;
&lt;br /&gt;
New test:&lt;br /&gt;
&lt;br /&gt;
Subject: The user name on the 3DS.&lt;br /&gt;
Message: Whether or not the name uses the profanity flag.&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=File:CustomNotification.jpg&amp;diff=4635</id>
		<title>File:CustomNotification.jpg</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=File:CustomNotification.jpg&amp;diff=4635"/>
		<updated>2012-12-29T07:02:02Z</updated>

		<summary type="html">&lt;p&gt;Xcution: uploaded a new version of &amp;amp;quot;File:CustomNotification.jpg&amp;amp;quot;: A new test was added. This time I&amp;#039;m pulling my user name and profanity flag from the config service, and printing it into a notification.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A little homebrew test I just compiled...and it succeeded!&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=File:CustomNotification.jpg&amp;diff=4632</id>
		<title>File:CustomNotification.jpg</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=File:CustomNotification.jpg&amp;diff=4632"/>
		<updated>2012-12-29T03:03:40Z</updated>

		<summary type="html">&lt;p&gt;Xcution: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A little homebrew test I just compiled...and it succeeded!&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=File:CustomNotification.jpg&amp;diff=4631</id>
		<title>File:CustomNotification.jpg</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=File:CustomNotification.jpg&amp;diff=4631"/>
		<updated>2012-12-29T01:42:55Z</updated>

		<summary type="html">&lt;p&gt;Xcution: uploaded a new version of &amp;amp;quot;File:CustomNotification.jpg&amp;amp;quot;: UPD: Icon&amp;#039;s fixed.&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A little homebrew test I just compiled...and it succeeded!&lt;br /&gt;
&lt;br /&gt;
I&#039;m actually not sure why the icon (upper left of bottom screen) appeared like that. That&#039;s not my program&#039;s icon...but who cares because the message succeeded in delivery!&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=File:CustomNotification.jpg&amp;diff=4625</id>
		<title>File:CustomNotification.jpg</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=File:CustomNotification.jpg&amp;diff=4625"/>
		<updated>2012-12-28T09:17:45Z</updated>

		<summary type="html">&lt;p&gt;Xcution: A little homebrew test I just compiled...and it succeeded!

I&amp;#039;m actually not sure why the icon (upper left of bottom screen) appeared like that. That&amp;#039;s not my program&amp;#039;s icon...but who cares because the message succeeded in delivery!&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;A little homebrew test I just compiled...and it succeeded!&lt;br /&gt;
&lt;br /&gt;
I&#039;m actually not sure why the icon (upper left of bottom screen) appeared like that. That&#039;s not my program&#039;s icon...but who cares because the message succeeded in delivery!&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=3DS_Development_Unit_Software&amp;diff=4349</id>
		<title>3DS Development Unit Software</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=3DS_Development_Unit_Software&amp;diff=4349"/>
		<updated>2012-11-27T03:23:10Z</updated>

		<summary type="html">&lt;p&gt;Xcution: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The following is a description of the functions what is possible with the applications unique to 3DS Development Units.&lt;br /&gt;
&lt;br /&gt;
Descriptions Derived from SDK revision 37904 except where notified otherwise. For information on 3DS Development Hardware see [http://gbatemp.net/topic/327858-3ds-development-hardware/]&lt;br /&gt;
[[File:CTR_HMN_DEV.png|300px|thumb|right|Beautifully clear picture of the Dev Apps + Home Menu. Click to view in great quality. - Xcution]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Dev Menu == &lt;br /&gt;
[[File:Devmenuicon.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:Devmenscnsht.jpg|250px|thumb|right|Dev Menu Screenshots]]&lt;br /&gt;
[[File:Old_Dev_Menu.png|200px|thumb|left|Old Dev Menu Screenshot]]&lt;br /&gt;
This application on the top screen displays the firmware and revision of the Dev Menu, the free space available on the [[Flash Filesystem#TWL partition|TWL(DSi) NAND partition]] and [[SD Filesystem|SD card]] if present. It also provides information on the current file or device selected, as well as navigation instructions for the bottom screen.The bottom screen has three different windows, which are:&lt;br /&gt;
&lt;br /&gt;
*Programs- From this window, applications can be loaded from the [[Flash Filesystem|NAND]], the [[SD Filesystem|SD card]] and the slot 1 card (only a select scope of applications, see below for Dev Menu revisions and their corresponding scope of applications) . This is shown in the format of &amp;quot;Unique Id&#039;   &#039;[[Serials#Product Code|Product Code]]&#039;&amp;quot;. Installed titles can be deleted from this menu.&lt;br /&gt;
&lt;br /&gt;
*Import- From this window, titles compiled in the format of a .[[CIA]] file, can be installed from the SD card. In later revisions this was renamed to &#039;&#039;SDMC&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
*HIO- A tab available in later revisions of the Dev Menu. Prints &#039;Not found DEVMENU_ROOT&#039;. This &#039;DEVMENU_ROOT&#039; is not supposed to be on the 3DS&#039; SDMC. (presumably a folder has to be on the NAND or loaded from a CTR Debugger&#039;s SDMC slot?)&lt;br /&gt;
&lt;br /&gt;
*ExtData- From this window, the 3DS&#039;s [[Extdata|ExtData]](this includes all ExtData) can be deleted&lt;br /&gt;
&lt;br /&gt;
(Note that retail 3ds games are not recognised by Developer 3DSs and the Dev Menu prints &amp;quot;Unknown Card&amp;quot; in the &#039;Programs&#039; window and shows no details on top screen)&lt;br /&gt;
&lt;br /&gt;
(Also note that if a 3ds executable cannot be launched from the Dev Menu due to restrictive flags in the executable, such as restrictive memory, the product ID will be coloured red as opposed to black)&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  Dev Menu Revision&lt;br /&gt;
!  Title Types Accessible&lt;br /&gt;
|-&lt;br /&gt;
|  ?- 32640 - 33437&lt;br /&gt;
|  0000(NAND Only),0010,8004,8005,8011&lt;br /&gt;
|- &lt;br /&gt;
|  35887&lt;br /&gt;
|  0000(NAND Only),8004&lt;br /&gt;
|-&lt;br /&gt;
|  37785 - 40909 -?&lt;br /&gt;
|  0000(NAND and SDMC),8004&lt;br /&gt;
|-&lt;br /&gt;
|  ?- 47586 -?&lt;br /&gt;
|  0000(NAND and SDMC),0002, 8004&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Config == &lt;br /&gt;
[[File:Configicon.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:3DS_dev_configmenu.JPG|250px|thumb|right|Config Menu Screenshot]]&lt;br /&gt;
This application is a configuration menu for the 3DS, which has the following options:&lt;br /&gt;
&lt;br /&gt;
*Reset Settings - Resets all settings to default.&lt;br /&gt;
&lt;br /&gt;
*Hid Setting - (human interface device) Calibrates Touch-Pad and Analog stick.&lt;br /&gt;
&lt;br /&gt;
*Rtc Setting - (real time clock) Sets system time.&lt;br /&gt;
&lt;br /&gt;
*Lcd Setting - Sets display settings as found in the home menu as well as Flicker settings.&lt;br /&gt;
&lt;br /&gt;
*User Info Setting - Allows username change and &amp;quot;NG NAME FLAG&amp;quot; to be set to true or false.&lt;br /&gt;
&lt;br /&gt;
:In later versions of Config, &amp;quot;User Info Setting&amp;quot; also has :&lt;br /&gt;
::*CountryId - Changes 3DS between installed countries.&lt;br /&gt;
::*RegionId - Changes between the location in the selected country.&lt;br /&gt;
&lt;br /&gt;
*Other Setting(branches off into other settings) - &lt;br /&gt;
:*Sound Mode - mono/stereo/surround&lt;br /&gt;
&lt;br /&gt;
:*System Mode - Changes Memory Allowance.&lt;br /&gt;
::*Prod - 64MB Memory mode ([[Home Menu]] can usually only run in this mode and &#039;&#039;most&#039;&#039; retail-looking units cannot switch out of this mode)&lt;br /&gt;
::*Dev1 - 96MB Memory mode&lt;br /&gt;
::*Dev2 - 80MB Memory mode&lt;br /&gt;
::*Dev3 - 72MB Memory mode&lt;br /&gt;
::*Dev4 - 32MB Memory mode&lt;br /&gt;
::All CTR Debuggers/Prototype units can change memory allowance. For Developer Test Units, the ability to change Memory Allowance, appears to be dependent on an option when buying the Test Unit. (similar to having a choice to purchase IS_Nitro&#039;s Wireless/USG options when buying an IS_Nitro from Nintendo)&lt;br /&gt;
::On some Test Units, it&#039;s possible to run the [[Home Menu]] outside of Prod. However, software with limited memory (such as the web browser) cannot be launched from the home menu if the home menu is outside of Prod.&lt;br /&gt;
&lt;br /&gt;
:*Exception handler - Selects whether to enable or disable the application&#039;s handling of exceptions that arise in the non-debug environment - enable/disable &lt;br /&gt;
&lt;br /&gt;
:*Break Stop - (enable/disable) - Selects whether to enable or disable stopping the application when a break is encountered in the non-debug environment. If the application is not made to stop, it quits on a break.&lt;br /&gt;
&lt;br /&gt;
:*Menu - (Home Menu/Test Menu) This function edits the [[Config Info Blocks|configuration]] field containing the menu TID for dev units, allowing the user to choose between the [[Home Menu]] or the [[3DS Development Unit GUI#Test Menu|Test Menu]], as the menu loaded by the [[NS]] module.&lt;br /&gt;
&lt;br /&gt;
:*Language - same options found in the Language section of [[System Settings]] but also has an &amp;quot;invalid&amp;quot; option&lt;br /&gt;
&lt;br /&gt;
:*Dlp Force Child Import - (enable/disable) - normally the 3ds caches downloaded &amp;quot;Download Play (Dlp)&amp;quot; applications on the nand and only re-downloads, overwriting the cached copy if the version application being requested to downloaded is higher than what is currently present on the nand. Enabling this option forces the 3ds to download and overwrite the cached copy on the nand, regardless of the version of the application being downloaded. This is of course for testing purposes.&lt;br /&gt;
&lt;br /&gt;
:*Debug Mode - (enable/disable) - Toggles Debug environment?&lt;br /&gt;
&lt;br /&gt;
:In later versions of Config, &amp;quot;Other Setting&amp;quot; also has :&lt;br /&gt;
::*FS Latency Emulation - Filesystem Latency, in milliseconds (0ms-2550ms). Selection is in increments of 10. (ie 0ms-&amp;gt;10ms-&amp;gt;20ms...)&lt;br /&gt;
::*Coppacs Setting - Unknown (stuck on &#039;not restricted&#039;)&lt;br /&gt;
&lt;br /&gt;
*Test Setting - Test calibration of touch pad and joystick&lt;br /&gt;
       &lt;br /&gt;
*Eula Setting - Allows user to change &amp;quot;Agree Version&amp;quot; namely:&amp;quot;ff.ff&amp;quot; the two symbol sets are interchangeable with combination variations from aa to 99 (default is 00.00 where the Eula is not accepted yet).&lt;br /&gt;
       &lt;br /&gt;
*Stereo Camera Cal for Check - Camera test (?) as options to &amp;quot;write strange data(excess Z-rot) and &amp;quot;reset to factory default&amp;quot;.&lt;br /&gt;
       &lt;br /&gt;
*Gyro / Accel Cal for Check - Allows Gyro and Accelerometer to be calibrated.&lt;br /&gt;
       &lt;br /&gt;
*Ctr Info Setting - Changes settings to that found on the ctrsetting.txt on an SD .&lt;br /&gt;
&lt;br /&gt;
== Downloadplay Client ==&lt;br /&gt;
[[File:Dlpcliscnsht.jpg|250px|thumb|right|Downloadplay Client Screenshots]]&lt;br /&gt;
[[File:Dlpcliicon.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Even though a Developer 3DS has a &amp;quot;Download Play&amp;quot; application visually identical to the retail 3DS [[Download Play|application]], the &amp;quot;Downloadplay Client&amp;quot; application can be installed as an alternative to the regular Download Play application. (Note: a Developer 3DS&#039; and Retail 3DS&#039; cannot receive download play &#039;children&#039; from each-other.) This Developer application is a stripped down version of &#039;Download Play&#039; which has the following options and limitations:&lt;br /&gt;
&lt;br /&gt;
*It can only download 3ds download play titles&lt;br /&gt;
&lt;br /&gt;
*Scraps the GUI found in the normal Download Play application(see screenshot)&lt;br /&gt;
&lt;br /&gt;
*Can select from a maximum of 16 Download play &#039;servers&#039;&lt;br /&gt;
&lt;br /&gt;
This application is clearly used for easy testing of download play &#039;child&#039; apps, without the hassle of constantly re-navigating the normal Download Play interface&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Network Settings ==&lt;br /&gt;
[[File:Netsetscnsht.jpg|250px|thumb|right|Network Settings Screenshots]]&lt;br /&gt;
[[File:Netseticon.png]]&lt;br /&gt;
&lt;br /&gt;
This Developer application allows the users to directly modify the following from any of the three possible network setting &#039;slots&#039;&lt;br /&gt;
&lt;br /&gt;
*Security Mode :(the wireless encryption the network is using) OPEN/WEP 40bit/WEP 104bit/128bit/WPA TKIP/WPA2 TKIP/WPA AES/WPA2 AES&lt;br /&gt;
&lt;br /&gt;
*SSID :(self-explanitory) maximum 32 characters&lt;br /&gt;
&lt;br /&gt;
*KEY :(the key for the encrytion is here in plain text) the maximum length depends on encryption type&lt;br /&gt;
&lt;br /&gt;
*AutoDNS :(whether the 3DS obtains the DNS automatically or not) |True-3DS obtains the DNS automatically|False-3DS uses the DNS server address provided by the user(it is possible to edit this here)|&lt;br /&gt;
&lt;br /&gt;
At the bottom of the setting options there are two choices:&lt;br /&gt;
&lt;br /&gt;
*Write Setting &amp;amp; Connect Test To AP - Applies the settings above and performs a connection test(note any settings made in system settings for this connection, which are not present in the above settings will be nullified, for example any proxy server settings)&lt;br /&gt;
&lt;br /&gt;
*Remove Setting - removes all settings for this &#039;slot&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== SaveDataFiler ==&lt;br /&gt;
[[File:Saveflscnsht.jpg|250px|thumb|right|SaveDataFiler Screenshots]]&lt;br /&gt;
[[File:Saveflicon.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This 3DS Developer application allows save files and extdata to be exported and imported from an SD Card. The window has three tabs:&lt;br /&gt;
&lt;br /&gt;
*User - This is where saves for 3DS applications and saves on 3DS Game Cards(not DS Game Cards) can be exported to the SD Card. Saves cannot be deleted here.&lt;br /&gt;
&lt;br /&gt;
*ExtData - This is where application extdata can be deleted or exported to the SD Card for later use&lt;br /&gt;
&lt;br /&gt;
*SD - This is where extdata and application saves on the SD Card can be imported to the 3DS or 3DS Game Card. Also extdata and application saves can be deleted from the SD Card&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== CTR MenuSelector ==&lt;br /&gt;
[[File:Menuselector.jpg|100px|thumb|right|Menu Selector Screenshot]]&lt;br /&gt;
[[File:Menuselectoricon.jpg]]&lt;br /&gt;
&lt;br /&gt;
This application when loaded can change the current &#039;Active Menu&#039;(being used at the moment) by editing the menu TID [[Config Info Blocks|configuration]] field, allowing the user to choose between the [[Home Menu]] or the [[3DS Development Unit GUI#Test Menu|Test Menu]], as the menu loaded by the [[NS]] module. This application was superseded by the introduction of the &amp;quot;Menu&amp;quot; choice in the [[3DS Development Unit Software#Config|Config Menu]] and consequently removed as a standard application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== CecLotcheckTool ==&lt;br /&gt;
[[File:Ceclotscnsht.jpg|250px|thumb|right|CecLotcheckTool Screenshot]]&lt;br /&gt;
[[File:Cecloticon.png]]&lt;br /&gt;
&lt;br /&gt;
This application is used to manage CECs (Chance Encounter Communications, AKA StreetPass hits) for any of the twelve possible applications used on the 3DS, if there are any. The application has twelve possible slots which can be filled by BOXes . The BOXes are individual applications which are permitted by the user to use CECs, such as StreetPass Mii Plaza or Nintendo 3DS Sound. And as such, the boxes in this application correspond to the applications in &#039;StreetPass Management&#039;, in &#039;System Settings&#039; (StreetPass Management is accessible from retail 3DSs). The functions of this application:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;Y&amp;gt; BOX Options - this opens up a sub menu with the following options(when hovering over Nintendo 3DS Sounds BOX - the only one I can test the app with):&lt;br /&gt;
&lt;br /&gt;
*Box Info - Gives the Out-Box parameters [[File:Boxinf.jpg|250px|]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Message Info (OUT-BOX) - Gives the Message Parameters For the current BOX [[File:Mesinf.jpg|250px|]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Dummy Message Settings - Not quite sure what the options do here [[File:Dummesinf.jpg|250px|]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;A&amp;gt; Create Dummy BOXes - Creates dummy BOXes to fill any unused slots. (does not overwrite any present slots)&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;X&amp;gt; Delete BOXes - Deletes all of the BOXes from the slots.&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;START&amp;gt; CEC Filter Reset - I can only guess that it erases data collected by CEC enabled apps.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== BossLotCheckTool ==&lt;br /&gt;
[[File:Bosslcscnsht.png|100px|thumb|right|BossLotCheckTool Screenshot]]&lt;br /&gt;
[[File:Bosslcicon.png]]&lt;br /&gt;
&lt;br /&gt;
This application is used to manage BOSS (SpotPass) tasks/data for 3DS titles which utilise BOSS communications. &#039;Pokedex&#039; is an application which utilizes BOSS comunications. This application also displays the 3DS&#039;s friend code, although this code is not to be confused with the 3DS&#039;s Friend Card code found in &#039;Friends List&#039;. The user can browse by unique ID the 3DS titles(excluding system titles) registered to use BOSS. For each title you can view details about the downloaded &#039;NsData&#039; which accompanies BOSS downloads, view the BOSS task lists (implies applications can perform more than one BOSS task). You can also view various details about each BOSS task, including:&lt;br /&gt;
&lt;br /&gt;
 TaskStatus : DONE?&lt;br /&gt;
 TaskExecCount : How many times the BOSS task has been executed&lt;br /&gt;
 TaskExecInterval : Period of time (in seconds) in the task is to be executed, in intervals&lt;br /&gt;
 TaskPriority : Is a number value &lt;br /&gt;
 URL : The URL to the BOSS content&lt;br /&gt;
 AP Info : NONE?&lt;br /&gt;
 TaskResultCode : Success or not&lt;br /&gt;
 HTTP_StatusCode : Self explanatory &lt;br /&gt;
 DataSize : Size of Content (in bytes)&lt;br /&gt;
 Last_Modified : Last time the BOSS content (on server) was modified&lt;br /&gt;
 StartTime : when the BOSS task was registered&lt;br /&gt;
 OptOut : Whether the user can/has opted out of BOSS communication for this task&lt;br /&gt;
 &lt;br /&gt;
 It also possible to manually execute the BOSS task from here&lt;br /&gt;
&lt;br /&gt;
== Stereo Camera Calibrator ==&lt;br /&gt;
[[File:Stecamscnsht.png|100px|thumb|right|Stereo Camera Calibrator Screenshot]]&lt;br /&gt;
[[File:Stecamicon.png]]&lt;br /&gt;
&lt;br /&gt;
The Stereo Camera Calibrator (SCC), in a nutshell, allows the user to adjust the configuration of the outer cameras in relation to each other. It can be configured automatically by positioning the 3DS a set distance away from a special chart. It can also be configured manually, by setting the rotation of each camera image and the size of the right eye camera. The 3D effect can be perceived by superimposing the right eye camera image translucently with the left eye camera image or by viewing the 3D image directly by use of the parallax barrier in the 3DS Screen. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Model Viewer ==&lt;br /&gt;
[[File:ModelViewer.png|100px|thumb|right|3DS Model Viewer Screenshot]]&lt;br /&gt;
[[File:ModelViewericon.png]]&lt;br /&gt;
&lt;br /&gt;
As the name suggests this application allows the user to view models. It is supposed to be used with a CTR-Debugger, assumingly so models can be entered in the memory of the program. But the program can be used on Test Units, but the model is restricted to three coloured lines depicting the 3 dimensions (x,y,z). The model can be viewed from any angle or scale, the perspective is controlled by the circle pad and directional buttons. And of course the application utilises the 3D effect&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Friend Testing Partner ==&lt;br /&gt;
[[File:Ftestpscnsht.png|250px|thumb|right|Friend Testing Partner Screenshot]]&lt;br /&gt;
[[File:Ftestpicon.png]]&lt;br /&gt;
&lt;br /&gt;
The Friend Testing Partner application is used to test/monitor the 3DS&#039;s Friend List function. It allows the user to test various functions of the 3DS&#039;s out-going Friend Card, by giving the following options:&lt;br /&gt;
*Master Control - (RUN/STOP) (STOP is the default setting) when ‘STOP’ is selected the 3DS Friend Card uses the user’s settings/data. When ‘RUN’ is selected  the 3DS Friend Card uses the dummy settings/data chosen to test from the settings bellow.&lt;br /&gt;
&lt;br /&gt;
*Login/Logout - (ON/OFF) (ON is the default setting) What effect this has on the Friend Card is not known&lt;br /&gt;
&lt;br /&gt;
*Playing Title - (ON/OFF) (ON is the default setting) When ‘ON’ is selected the currently used title is ignored and a dummy applications are cycled through as the ‘Playing Title’ approximately every ten seconds in its place. The dummy applications used are the applications found in Firmware version 1.0.0-0 of a retail 3DS including the ‘Nintendo Zone viewer’ app. When ‘OFF’ is selected the currently used title (which is the Friend Testing Partner app) is used as the ‘Playing Title’&lt;br /&gt;
&lt;br /&gt;
*Mode Description - (ON/OFF) (ON is the default setting) When ‘ON’ is selected the Software in Use(Playing Title) is accompanied by the Date and Time found on that user’s 3DS. The Mode Description is refreshed every ten or so seconds. When ‘OFF’ is selected the date and time on the user’s 3DS is not displayed.&lt;br /&gt;
&lt;br /&gt;
*Message - (ON/OFF) (ON is the default setting) When ‘ON’ is selected the message made by the user is replaced(not overwritten as it reverts back to the user’s choice when this is ‘OFF’) by the current date and time in the format “YYYYMMDD HHMMSS”, this is refreshed every ten or so seconds.&lt;br /&gt;
&lt;br /&gt;
*Mii - (ON/OFF) (ON is the default setting) When &#039;ON&#039; the currently used Mii is replaced with one of 4 dummy Miis and cycles them through every ten seconds with a new dummy mii. This effect can only be seen from another 3DS not the host&lt;br /&gt;
&lt;br /&gt;
*Favorite Title (ON/OFF) (ON is the default setting) When &#039;ON&#039; is selected, the user’s favorite title is replaced with a dummy, which is replaced every 10 or so seconds. &lt;br /&gt;
Also this application allows the user to monitor the whether the 3DS is online or not and whether the 3DS’s Friend Presence is online or offline. Every time a dummy setting is refreshed it is displayed on the top screen with a time stamp.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Game Coin Setter* ==&lt;br /&gt;
[[File:Coinstscnsht.png|100px|thumb|right|Game Coin Setter Screenshot]]&lt;br /&gt;
[[File:Coinsticon.png]]  &lt;br /&gt;
&lt;br /&gt;
This application is used to set the Play Coin count on the 3DS. Obviously this was created so a developer can test parts of their game in which the player can exchange earned play coins for in-game content or similar. It has a very simple interface showing the current play coin count and the adjustable option, the target coin count. These are the controls with explanation of each:&lt;br /&gt;
&lt;br /&gt;
*LEFT/RIGHT - using the D-pad only to adjust the &#039;Target Count&#039; to a number between 0-300.&lt;br /&gt;
&lt;br /&gt;
*A - Sets the &#039;Current Count&#039; (amount of play coins the system has) to the user selected &#039;Target Count&#039; (the user specified amount of play coins)&lt;br /&gt;
&lt;br /&gt;
*L+R+X - &amp;quot;Preclude today&#039;s Increment&amp;quot; not sure how this affects the Play Coin count.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== TWL Development Tools ==&lt;br /&gt;
&lt;br /&gt;
These are DSi/DS mode development tools repackaged into a [[CIA]], for installing to the TWL NAND.&lt;br /&gt;
&lt;br /&gt;
=== NINTENDO DS - WMtest ===&lt;br /&gt;
[[File:Wmtestscnsht.jpg|300px|thumb|right|WMtest Screenshot]]&lt;br /&gt;
[[File:Wmtesttool.png‎]]&lt;br /&gt;
&lt;br /&gt;
This application is a TWL(DSi) application compiled for use on the 3DS. It is an wireless test tool with its uses explained below:&lt;br /&gt;
&lt;br /&gt;
*Scan Test - Scans Wireless channels 1-13(can be focused on one specific channel) for broadcasting stations. It can detect two types of broadcasting stations:&lt;br /&gt;
&lt;br /&gt;
Wifi Access Points - Giving the Mac Address, Broadcasting Channel, &#039;c&#039;, and the SSID&lt;br /&gt;
&lt;br /&gt;
DS Stations such as DS Download stations and Pokemon distributors - Giving the Mac Address, Brodcasting Channel, TGID and GGID&lt;br /&gt;
&lt;br /&gt;
*ScanEx Test - and has two Scan Types. Passive which lets you individually scan channels 1-13 (only one at at time) and the DS distribution channels (1,7,13 all at once). And Active which scans all 13 channels at once. when it finds a channel it prints on the bottom screen next to &#039;Found&#039; &#039;bssDescCount=&#039;&lt;br /&gt;
&lt;br /&gt;
*MeasureChannel Test - not quite sure what this does but it for a given channel it gives a ratio(in percentage form), which it finds in its allocated test time ranging from 10ms to 1000ms. And for every interval of time which is specified, it tests and gives a ratio.&lt;br /&gt;
&lt;br /&gt;
*Noise Mode - Seeks wireless channels in which to make wireless noise (This is not made very clear on the app). You can specify the:&lt;br /&gt;
&lt;br /&gt;
Channel where the scanner will seek to make noise&lt;br /&gt;
&lt;br /&gt;
Noise Rate, ranging from 0% to 100%&lt;br /&gt;
&lt;br /&gt;
Frequency, ranging from 10ms to 50ms&lt;br /&gt;
&lt;br /&gt;
Seek Mode, ranging from 1000ms to 1500ms&lt;br /&gt;
&lt;br /&gt;
When the settings are chosen the top screen has two counters which display &#039;Noise ON count&#039; and &#039;Noise OFF count&#039; the counters are affected by the noise rate. Starting at 0% the &#039;Noise ON count&#039; does not change but as the Noise rate gets closer to 100% the count moves and gets faster as Noise rate reaches 100%. For &#039;Noise OFF count&#039; it is the exact opposite to the &#039; Noise ON count&#039; in regards to counting.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt; A substitute icon is used here in place of a generic icon (which the application uses) to stop confusion with other applications. The original generic icon can be viewed in the icon&#039;s history.&lt;br /&gt;
[[Category:3DS Development Unit Related Pages]]&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=3DS_Development_Unit_Software&amp;diff=4348</id>
		<title>3DS Development Unit Software</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=3DS_Development_Unit_Software&amp;diff=4348"/>
		<updated>2012-11-27T03:12:48Z</updated>

		<summary type="html">&lt;p&gt;Xcution: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The following is a description of the functions where possible of the applications unique to 3DS Development Units. Descriptions Derived from SDK revision 37904 except where notified otherwise. For information on 3DS Development Hardware see [http://gbatemp.net/topic/327858-3ds-development-hardware/]&lt;br /&gt;
[[File:CTR_HMN_DEV.png|300px|thumb|right|Beautifully clear picture of the Dev Apps + Home Menu. Click to view in great quality. - Xcution]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Dev Menu == &lt;br /&gt;
[[File:Devmenuicon.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:Devmenscnsht.jpg|250px|thumb|right|Dev Menu Screenshots]]&lt;br /&gt;
[[File:Old_Dev_Menu.png|200px|thumb|left|Old Dev Menu Screenshot]]&lt;br /&gt;
This application on the top screen displays the firmware and revision of the Dev Menu, the free space available on the [[Flash Filesystem#TWL partition|TWL(DSi) NAND partition]] and [[SD Filesystem|SD card]] if present. It also provides information on the current file or device selected, as well as navigation instructions for the bottom screen.The bottom screen has three different windows, which are:&lt;br /&gt;
&lt;br /&gt;
*Programs- From this window, applications can be loaded from the [[Flash Filesystem|NAND]], the [[SD Filesystem|SD card]] and the slot 1 card (only a select scope of applications, see below for Dev Menu revisions and their corresponding scope of applications) . This is shown in the format of &amp;quot;Unique Id&#039;   &#039;[[Serials#Product Code|Product Code]]&#039;&amp;quot;. Installed titles can be deleted from this menu.&lt;br /&gt;
&lt;br /&gt;
*Import- From this window, titles compiled in the format of a .[[CIA]] file, can be installed from the SD card. In later revisions this was renamed to &#039;&#039;SDMC&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
*HIO- A tab available in later revisions of the Dev Menu. Prints &#039;Not found DEVMENU_ROOT&#039;. This &#039;DEVMENU_ROOT&#039; is not supposed to be on the 3DS&#039; SDMC. (presumably a folder has to be on the NAND or loaded from a CTR Debugger&#039;s SDMC slot?)&lt;br /&gt;
&lt;br /&gt;
*ExtData- From this window, the 3DS&#039;s [[Extdata|ExtData]](this includes all ExtData) can be deleted&lt;br /&gt;
&lt;br /&gt;
(Note that retail 3ds games are not recognised by Developer 3DSs and the Dev Menu prints &amp;quot;Unknown Card&amp;quot; in the &#039;Programs&#039; window and shows no details on top screen)&lt;br /&gt;
&lt;br /&gt;
(Also note that if a 3ds executable cannot be launched from the Dev Menu due to restrictive flags in the executable, such as restrictive memory, the product ID will be coloured red as opposed to black)&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  Dev Menu Revision&lt;br /&gt;
!  Title Types Accessible&lt;br /&gt;
|-&lt;br /&gt;
|  ?- 32640 - 33437&lt;br /&gt;
|  0000(NAND Only),0010,8004,8005,8011&lt;br /&gt;
|- &lt;br /&gt;
|  35887&lt;br /&gt;
|  0000(NAND Only),8004&lt;br /&gt;
|-&lt;br /&gt;
|  37785 - 40909 -?&lt;br /&gt;
|  0000(NAND and SDMC),8004&lt;br /&gt;
|-&lt;br /&gt;
|  ?- 47586 -?&lt;br /&gt;
|  0000(NAND and SDMC),0002, 8004&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Config == &lt;br /&gt;
[[File:Configicon.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:3DS_dev_configmenu.JPG|250px|thumb|right|Config Menu Screenshot]]&lt;br /&gt;
This application is a configuration menu for the 3DS, which has the following options:&lt;br /&gt;
&lt;br /&gt;
*Reset Settings - Resets all settings to default.&lt;br /&gt;
&lt;br /&gt;
*Hid Setting - (human interface device) Calibrates Touch-Pad and Analog stick.&lt;br /&gt;
&lt;br /&gt;
*Rtc Setting - (real time clock) Sets system time.&lt;br /&gt;
&lt;br /&gt;
*Lcd Setting - Sets display settings as found in the home menu as well as Flicker settings.&lt;br /&gt;
&lt;br /&gt;
*User Info Setting - Allows username change and &amp;quot;NG NAME FLAG&amp;quot; to be set to true or false.&lt;br /&gt;
&lt;br /&gt;
:In later versions of Config, &amp;quot;User Info Setting&amp;quot; also has :&lt;br /&gt;
::*CountryId - Changes 3DS between installed countries.&lt;br /&gt;
::*RegionId - Changes between the location in the selected country.&lt;br /&gt;
&lt;br /&gt;
*Other Setting(branches off into other settings) - &lt;br /&gt;
:*Sound Mode - mono/stereo/surround&lt;br /&gt;
&lt;br /&gt;
:*System Mode - Changes Memory Allowance.&lt;br /&gt;
::*Prod - 64MB Memory mode ([[Home Menu]] can usually only run in this mode and &#039;&#039;most&#039;&#039; retail-looking units cannot switch out of this mode)&lt;br /&gt;
::*Dev1 - 96MB Memory mode&lt;br /&gt;
::*Dev2 - 80MB Memory mode&lt;br /&gt;
::*Dev3 - 72MB Memory mode&lt;br /&gt;
::*Dev4 - 32MB Memory mode&lt;br /&gt;
::All CTR Debuggers/Prototype units can change memory allowance. For Developer Test Units, the ability to change Memory Allowance, appears to be dependent on an option when buying the Test Unit. (similar to having a choice to purchase IS_Nitro&#039;s Wireless/USG options when buying an IS_Nitro from Nintendo)&lt;br /&gt;
::On some Test Units, it&#039;s possible to run the [[Home Menu]] outside of Prod. However, software with limited memory (such as the web browser) cannot be launched from the home menu if the home menu is outside of Prod.&lt;br /&gt;
&lt;br /&gt;
:*Exception handler - Selects whether to enable or disable the application&#039;s handling of exceptions that arise in the non-debug environment - enable/disable &lt;br /&gt;
&lt;br /&gt;
:*Break Stop - (enable/disable) - Selects whether to enable or disable stopping the application when a break is encountered in the non-debug environment. If the application is not made to stop, it quits on a break.&lt;br /&gt;
&lt;br /&gt;
:*Menu - (Home Menu/Test Menu) This function edits the [[Config Info Blocks|configuration]] field containing the menu TID for dev units, allowing the user to choose between the [[Home Menu]] or the [[3DS Development Unit GUI#Test Menu|Test Menu]], as the menu loaded by the [[NS]] module.&lt;br /&gt;
&lt;br /&gt;
:*Language - same options found in the Language section of [[System Settings]] but also has an &amp;quot;invalid&amp;quot; option&lt;br /&gt;
&lt;br /&gt;
:*Dlp Force Child Import - (enable/disable) - normally the 3ds caches downloaded &amp;quot;Download Play (Dlp)&amp;quot; applications on the nand and only re-downloads, overwriting the cached copy if the version application being requested to downloaded is higher than what is currently present on the nand. Enabling this option forces the 3ds to download and overwrite the cached copy on the nand, regardless of the version of the application being downloaded. This is of course for testing purposes.&lt;br /&gt;
&lt;br /&gt;
:*Debug Mode - (enable/disable) - Toggles Debug environment?&lt;br /&gt;
&lt;br /&gt;
:In later versions of Config, &amp;quot;Other Setting&amp;quot; also has :&lt;br /&gt;
::*FS Latency Emulation - Filesystem Latency, in milliseconds (0ms-2550ms). Selection is in increments of 10. (ie 0ms-&amp;gt;10ms-&amp;gt;20ms...)&lt;br /&gt;
::*Coppacs Setting - Unknown (stuck on &#039;not restricted&#039;)&lt;br /&gt;
&lt;br /&gt;
*Test Setting - Test calibration of touch pad and joystick&lt;br /&gt;
       &lt;br /&gt;
*Eula Setting - Allows user to change &amp;quot;Agree Version&amp;quot; namely:&amp;quot;ff.ff&amp;quot; the two symbol sets are interchangeable with combination variations from aa to 99 (default is 00.00 where the Eula is not accepted yet).&lt;br /&gt;
       &lt;br /&gt;
*Stereo Camera Cal for Check - Camera test (?) as options to &amp;quot;write strange data(excess Z-rot) and &amp;quot;reset to factory default&amp;quot;.&lt;br /&gt;
       &lt;br /&gt;
*Gyro / Accel Cal for Check - Allows Gyro and Accelerometer to be calibrated.&lt;br /&gt;
       &lt;br /&gt;
*Ctr Info Setting - Changes settings to that found on the ctrsetting.txt on an SD .&lt;br /&gt;
&lt;br /&gt;
== Downloadplay Client ==&lt;br /&gt;
[[File:Dlpcliscnsht.jpg|250px|thumb|right|Downloadplay Client Screenshots]]&lt;br /&gt;
[[File:Dlpcliicon.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Even though a Developer 3DS has a &amp;quot;Download Play&amp;quot; application visually identical to the retail 3DS [[Download Play|application]], the &amp;quot;Downloadplay Client&amp;quot; application can be installed as an alternative to the regular Download Play application. (Note: a Developer 3DS&#039; and Retail 3DS&#039; cannot receive download play &#039;children&#039; from each-other.) This Developer application is a stripped down version of &#039;Download Play&#039; which has the following options and limitations:&lt;br /&gt;
&lt;br /&gt;
*It can only download 3ds download play titles&lt;br /&gt;
&lt;br /&gt;
*Scraps the GUI found in the normal Download Play application(see screenshot)&lt;br /&gt;
&lt;br /&gt;
*Can select from a maximum of 16 Download play &#039;servers&#039;&lt;br /&gt;
&lt;br /&gt;
This application is clearly used for easy testing of download play &#039;child&#039; apps, without the hassle of constantly re-navigating the normal Download Play interface&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Network Settings ==&lt;br /&gt;
[[File:Netsetscnsht.jpg|250px|thumb|right|Network Settings Screenshots]]&lt;br /&gt;
[[File:Netseticon.png]]&lt;br /&gt;
&lt;br /&gt;
This Developer application allows the users to directly modify the following from any of the three possible network setting &#039;slots&#039;&lt;br /&gt;
&lt;br /&gt;
*Security Mode :(the wireless encryption the network is using) OPEN/WEP 40bit/WEP 104bit/128bit/WPA TKIP/WPA2 TKIP/WPA AES/WPA2 AES&lt;br /&gt;
&lt;br /&gt;
*SSID :(self-explanitory) maximum 32 characters&lt;br /&gt;
&lt;br /&gt;
*KEY :(the key for the encrytion is here in plain text) the maximum length depends on encryption type&lt;br /&gt;
&lt;br /&gt;
*AutoDNS :(whether the 3DS obtains the DNS automatically or not) |True-3DS obtains the DNS automatically|False-3DS uses the DNS server address provided by the user(it is possible to edit this here)|&lt;br /&gt;
&lt;br /&gt;
At the bottom of the setting options there are two choices:&lt;br /&gt;
&lt;br /&gt;
*Write Setting &amp;amp; Connect Test To AP - Applies the settings above and performs a connection test(note any settings made in system settings for this connection, which are not present in the above settings will be nullified, for example any proxy server settings)&lt;br /&gt;
&lt;br /&gt;
*Remove Setting - removes all settings for this &#039;slot&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== SaveDataFiler ==&lt;br /&gt;
[[File:Saveflscnsht.jpg|250px|thumb|right|SaveDataFiler Screenshots]]&lt;br /&gt;
[[File:Saveflicon.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This 3DS Developer application allows save files and extdata to be exported and imported from an SD Card. The window has three tabs:&lt;br /&gt;
&lt;br /&gt;
*User - This is where saves for 3DS applications and saves on 3DS Game Cards(not DS Game Cards) can be exported to the SD Card. Saves cannot be deleted here.&lt;br /&gt;
&lt;br /&gt;
*ExtData - This is where application extdata can be deleted or exported to the SD Card for later use&lt;br /&gt;
&lt;br /&gt;
*SD - This is where extdata and application saves on the SD Card can be imported to the 3DS or 3DS Game Card. Also extdata and application saves can be deleted from the SD Card&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== CTR MenuSelector ==&lt;br /&gt;
[[File:Menuselector.jpg|100px|thumb|right|Menu Selector Screenshot]]&lt;br /&gt;
[[File:Menuselectoricon.jpg]]&lt;br /&gt;
&lt;br /&gt;
This application when loaded can change the current &#039;Active Menu&#039;(being used at the moment) by editing the menu TID [[Config Info Blocks|configuration]] field, allowing the user to choose between the [[Home Menu]] or the [[3DS Development Unit GUI#Test Menu|Test Menu]], as the menu loaded by the [[NS]] module. This application was superseded by the introduction of the &amp;quot;Menu&amp;quot; choice in the [[3DS Development Unit Software#Config|Config Menu]] and consequently removed as a standard application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== CecLotcheckTool ==&lt;br /&gt;
[[File:Ceclotscnsht.jpg|250px|thumb|right|CecLotcheckTool Screenshot]]&lt;br /&gt;
[[File:Cecloticon.png]]&lt;br /&gt;
&lt;br /&gt;
This application is used to manage CECs (Chance Encounter Communications, AKA StreetPass hits) for any of the twelve possible applications used on the 3DS, if there are any. The application has twelve possible slots which can be filled by BOXes . The BOXes are individual applications which are permitted by the user to use CECs, such as StreetPass Mii Plaza or Nintendo 3DS Sound. And as such, the boxes in this application correspond to the applications in &#039;StreetPass Management&#039;, in &#039;System Settings&#039; (StreetPass Management is accessible from retail 3DSs). The functions of this application:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;Y&amp;gt; BOX Options - this opens up a sub menu with the following options(when hovering over Nintendo 3DS Sounds BOX - the only one I can test the app with):&lt;br /&gt;
&lt;br /&gt;
*Box Info - Gives the Out-Box parameters [[File:Boxinf.jpg|250px|]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Message Info (OUT-BOX) - Gives the Message Parameters For the current BOX [[File:Mesinf.jpg|250px|]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Dummy Message Settings - Not quite sure what the options do here [[File:Dummesinf.jpg|250px|]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;A&amp;gt; Create Dummy BOXes - Creates dummy BOXes to fill any unused slots. (does not overwrite any present slots)&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;X&amp;gt; Delete BOXes - Deletes all of the BOXes from the slots.&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;START&amp;gt; CEC Filter Reset - I can only guess that it erases data collected by CEC enabled apps.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== BossLotCheckTool ==&lt;br /&gt;
[[File:Bosslcscnsht.png|100px|thumb|right|BossLotCheckTool Screenshot]]&lt;br /&gt;
[[File:Bosslcicon.png]]&lt;br /&gt;
&lt;br /&gt;
This application is used to manage BOSS (SpotPass) tasks/data for 3DS titles which utilise BOSS communications. &#039;Pokedex&#039; is an application which utilizes BOSS comunications. This application also displays the 3DS&#039;s friend code, although this code is not to be confused with the 3DS&#039;s Friend Card code found in &#039;Friends List&#039;. The user can browse by unique ID the 3DS titles(excluding system titles) registered to use BOSS. For each title you can view details about the downloaded &#039;NsData&#039; which accompanies BOSS downloads, view the BOSS task lists (implies applications can perform more than one BOSS task). You can also view various details about each BOSS task, including:&lt;br /&gt;
&lt;br /&gt;
 TaskStatus : DONE?&lt;br /&gt;
 TaskExecCount : How many times the BOSS task has been executed&lt;br /&gt;
 TaskExecInterval : Period of time (in seconds) in the task is to be executed, in intervals&lt;br /&gt;
 TaskPriority : Is a number value &lt;br /&gt;
 URL : The URL to the BOSS content&lt;br /&gt;
 AP Info : NONE?&lt;br /&gt;
 TaskResultCode : Success or not&lt;br /&gt;
 HTTP_StatusCode : Self explanatory &lt;br /&gt;
 DataSize : Size of Content (in bytes)&lt;br /&gt;
 Last_Modified : Last time the BOSS content (on server) was modified&lt;br /&gt;
 StartTime : when the BOSS task was registered&lt;br /&gt;
 OptOut : Whether the user can/has opted out of BOSS communication for this task&lt;br /&gt;
 &lt;br /&gt;
 It also possible to manually execute the BOSS task from here&lt;br /&gt;
&lt;br /&gt;
== Stereo Camera Calibrator ==&lt;br /&gt;
[[File:Stecamscnsht.png|100px|thumb|right|Stereo Camera Calibrator Screenshot]]&lt;br /&gt;
[[File:Stecamicon.png]]&lt;br /&gt;
&lt;br /&gt;
The Stereo Camera Calibrator (SCC), in a nutshell, allows the user to adjust the configuration of the outer cameras in relation to each other. It can be configured automatically by positioning the 3DS a set distance away from a special chart. It can also be configured manually, by setting the rotation of each camera image and the size of the right eye camera. The 3D effect can be perceived by superimposing the right eye camera image translucently with the left eye camera image or by viewing the 3D image directly by use of the parallax barrier in the 3DS Screen. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Model Viewer ==&lt;br /&gt;
[[File:ModelViewer.png|100px|thumb|right|3DS Model Viewer Screenshot]]&lt;br /&gt;
[[File:ModelViewericon.png]]&lt;br /&gt;
&lt;br /&gt;
As the name suggests this application allows the user to view models. It is supposed to be used with a CTR-Debugger, assumingly so models can be entered in the memory of the program. But the program can be used on Test Units, but the model is restricted to three coloured lines depicting the 3 dimensions (x,y,z). The model can be viewed from any angle or scale, the perspective is controlled by the circle pad and directional buttons. And of course the application utilises the 3D effect&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Friend Testing Partner ==&lt;br /&gt;
[[File:Ftestpscnsht.png|250px|thumb|right|Friend Testing Partner Screenshot]]&lt;br /&gt;
[[File:Ftestpicon.png]]&lt;br /&gt;
&lt;br /&gt;
The Friend Testing Partner application is used to test/monitor the 3DS&#039;s Friend List function. It allows the user to test various functions of the 3DS&#039;s out-going Friend Card, by giving the following options:&lt;br /&gt;
*Master Control - (RUN/STOP) (STOP is the default setting) when ‘STOP’ is selected the 3DS Friend Card uses the user’s settings/data. When ‘RUN’ is selected  the 3DS Friend Card uses the dummy settings/data chosen to test from the settings bellow.&lt;br /&gt;
&lt;br /&gt;
*Login/Logout - (ON/OFF) (ON is the default setting) What effect this has on the Friend Card is not known&lt;br /&gt;
&lt;br /&gt;
*Playing Title - (ON/OFF) (ON is the default setting) When ‘ON’ is selected the currently used title is ignored and a dummy applications are cycled through as the ‘Playing Title’ approximately every ten seconds in its place. The dummy applications used are the applications found in Firmware version 1.0.0-0 of a retail 3DS including the ‘Nintendo Zone viewer’ app. When ‘OFF’ is selected the currently used title (which is the Friend Testing Partner app) is used as the ‘Playing Title’&lt;br /&gt;
&lt;br /&gt;
*Mode Description - (ON/OFF) (ON is the default setting) When ‘ON’ is selected the Software in Use(Playing Title) is accompanied by the Date and Time found on that user’s 3DS. The Mode Description is refreshed every ten or so seconds. When ‘OFF’ is selected the date and time on the user’s 3DS is not displayed.&lt;br /&gt;
&lt;br /&gt;
*Message - (ON/OFF) (ON is the default setting) When ‘ON’ is selected the message made by the user is replaced(not overwritten as it reverts back to the user’s choice when this is ‘OFF’) by the current date and time in the format “YYYYMMDD HHMMSS”, this is refreshed every ten or so seconds.&lt;br /&gt;
&lt;br /&gt;
*Mii - (ON/OFF) (ON is the default setting) When &#039;ON&#039; the currently used Mii is replaced with one of 4 dummy Miis and cycles them through every ten seconds with a new dummy mii. This effect can only be seen from another 3DS not the host&lt;br /&gt;
&lt;br /&gt;
*Favorite Title (ON/OFF) (ON is the default setting) When &#039;ON&#039; is selected, the user’s favorite title is replaced with a dummy, which is replaced every 10 or so seconds. &lt;br /&gt;
Also this application allows the user to monitor the whether the 3DS is online or not and whether the 3DS’s Friend Presence is online or offline. Every time a dummy setting is refreshed it is displayed on the top screen with a time stamp.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Game Coin Setter* ==&lt;br /&gt;
[[File:Coinstscnsht.png|100px|thumb|right|Game Coin Setter Screenshot]]&lt;br /&gt;
[[File:Coinsticon.png]]  &lt;br /&gt;
&lt;br /&gt;
This application is used to set the Play Coin count on the 3DS. Obviously this was created so a developer can test parts of their game in which the player can exchange earned play coins for in-game content or similar. It has a very simple interface showing the current play coin count and the adjustable option, the target coin count. These are the controls with explanation of each:&lt;br /&gt;
&lt;br /&gt;
*LEFT/RIGHT - using the D-pad only to adjust the &#039;Target Count&#039; to a number between 0-300.&lt;br /&gt;
&lt;br /&gt;
*A - Sets the &#039;Current Count&#039; (amount of play coins the system has) to the user selected &#039;Target Count&#039; (the user specified amount of play coins)&lt;br /&gt;
&lt;br /&gt;
*L+R+X - &amp;quot;Preclude today&#039;s Increment&amp;quot; not sure how this affects the Play Coin count.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== TWL Development Tools ==&lt;br /&gt;
&lt;br /&gt;
These are DSi/DS mode development tools repackaged into a [[CIA]], for installing to the TWL NAND.&lt;br /&gt;
&lt;br /&gt;
=== NINTENDO DS - WMtest ===&lt;br /&gt;
[[File:Wmtestscnsht.jpg|300px|thumb|right|WMtest Screenshot]]&lt;br /&gt;
[[File:Wmtesttool.png‎]]&lt;br /&gt;
&lt;br /&gt;
This application is a TWL(DSi) application compiled for use on the 3DS. It is an wireless test tool with its uses explained below:&lt;br /&gt;
&lt;br /&gt;
*Scan Test - Scans Wireless channels 1-13(can be focused on one specific channel) for broadcasting stations. It can detect two types of broadcasting stations:&lt;br /&gt;
&lt;br /&gt;
Wifi Access Points - Giving the Mac Address, Broadcasting Channel, &#039;c&#039;, and the SSID&lt;br /&gt;
&lt;br /&gt;
DS Stations such as DS Download stations and Pokemon distributors - Giving the Mac Address, Brodcasting Channel, TGID and GGID&lt;br /&gt;
&lt;br /&gt;
*ScanEx Test - and has two Scan Types. Passive which lets you individually scan channels 1-13 (only one at at time) and the DS distribution channels (1,7,13 all at once). And Active which scans all 13 channels at once. when it finds a channel it prints on the bottom screen next to &#039;Found&#039; &#039;bssDescCount=&#039;&lt;br /&gt;
&lt;br /&gt;
*MeasureChannel Test - not quite sure what this does but it for a given channel it gives a ratio(in percentage form), which it finds in its allocated test time ranging from 10ms to 1000ms. And for every interval of time which is specified, it tests and gives a ratio.&lt;br /&gt;
&lt;br /&gt;
*Noise Mode - Seeks wireless channels in which to make wireless noise (This is not made very clear on the app). You can specify the:&lt;br /&gt;
&lt;br /&gt;
Channel where the scanner will seek to make noise&lt;br /&gt;
&lt;br /&gt;
Noise Rate, ranging from 0% to 100%&lt;br /&gt;
&lt;br /&gt;
Frequency, ranging from 10ms to 50ms&lt;br /&gt;
&lt;br /&gt;
Seek Mode, ranging from 1000ms to 1500ms&lt;br /&gt;
&lt;br /&gt;
When the settings are chosen the top screen has two counters which display &#039;Noise ON count&#039; and &#039;Noise OFF count&#039; the counters are affected by the noise rate. Starting at 0% the &#039;Noise ON count&#039; does not change but as the Noise rate gets closer to 100% the count moves and gets faster as Noise rate reaches 100%. For &#039;Noise OFF count&#039; it is the exact opposite to the &#039; Noise ON count&#039; in regards to counting.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt; A substitute icon is used here in place of a generic icon (which the application uses) to stop confusion with other applications. The original generic icon can be viewed in the icon&#039;s history.&lt;br /&gt;
[[Category:3DS Development Unit Related Pages]]&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=3DS_Development_Unit_Software&amp;diff=4347</id>
		<title>3DS Development Unit Software</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=3DS_Development_Unit_Software&amp;diff=4347"/>
		<updated>2012-11-27T02:44:50Z</updated>

		<summary type="html">&lt;p&gt;Xcution: /* Dev Menu */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The following is a description of the functions where possible of the applications unique to 3DS Development Units. Descriptions Derived from SDK revision 37904. For information on 3DS Development Hardware see [http://gbatemp.net/topic/327858-3ds-development-hardware/]&lt;br /&gt;
[[File:CTR_HMN_DEV.png|300px|thumb|right|Beautifully clear picture of the Dev Apps + Home Menu. Click to view in great quality. - Xcution]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Dev Menu == &lt;br /&gt;
[[File:Devmenuicon.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:Devmenscnsht.jpg|250px|thumb|right|Dev Menu Screenshots]]&lt;br /&gt;
[[File:Old_Dev_Menu.png|200px|thumb|left|Old Dev Menu Screenshot]]&lt;br /&gt;
This application on the top screen displays the firmware and revision of the Dev Menu, the free space available on the [[Flash Filesystem#TWL partition|TWL(DSi) NAND partition]] and [[SD Filesystem|SD card]] if present. It also provides information on the current file or device selected, as well as navigation instructions for the bottom screen.The bottom screen has three different windows, which are:&lt;br /&gt;
&lt;br /&gt;
*Programs- From this window, applications can be loaded from the [[Flash Filesystem|NAND]], the [[SD Filesystem|SD card]] and the slot 1 card (only a select scope of applications, see below for Dev Menu revisions and their corresponding scope of applications) . This is shown in the format of &amp;quot;Unique Id&#039;   &#039;[[Serials#Product Code|Product Code]]&#039;&amp;quot;. Installed titles can be deleted from this menu.&lt;br /&gt;
&lt;br /&gt;
*Import- From this window, titles compiled in the format of a .[[CIA]] file, can be installed from the SD card. In later revisions this was renamed to &#039;&#039;SDMC&#039;&#039;.&lt;br /&gt;
&lt;br /&gt;
*HIO- A tab available in later revisions of the Dev Menu. Prints &#039;Not found DEVMENU_ROOT&#039;. This &#039;DEVMENU_ROOT&#039; is not supposed to be on the 3DS&#039; SDMC. (presumably a folder has to be on the NAND or loaded from a CTR Debugger&#039;s SDMC slot?)&lt;br /&gt;
&lt;br /&gt;
*ExtData- From this window, the 3DS&#039;s [[Extdata|ExtData]](this includes all ExtData) can be deleted&lt;br /&gt;
&lt;br /&gt;
(Note that retail 3ds games are not recognised by Developer 3DSs and the Dev Menu prints &amp;quot;Unknown Card&amp;quot; in the &#039;Programs&#039; window and shows no details on top screen)&lt;br /&gt;
&lt;br /&gt;
(Also note that if a 3ds executable cannot be launched from the Dev Menu due to restrictive flags in the executable, such as restrictive memory, the product ID will be coloured red as opposed to black)&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  Dev Menu Revision&lt;br /&gt;
!  Title Types Accessible&lt;br /&gt;
|-&lt;br /&gt;
|  ?- 32640 - 33437&lt;br /&gt;
|  0000(NAND Only),0010,8004,8005,8011&lt;br /&gt;
|- &lt;br /&gt;
|  35887&lt;br /&gt;
|  0000(NAND Only),8004&lt;br /&gt;
|-&lt;br /&gt;
|  37785 - 40909 -?&lt;br /&gt;
|  0000(NAND and SDMC),8004&lt;br /&gt;
|-&lt;br /&gt;
|  ?- 47586 -?&lt;br /&gt;
|  0000(NAND and SDMC),0002, 8004&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Config == &lt;br /&gt;
[[File:Configicon.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:3DS_dev_configmenu.JPG|250px|thumb|right|Config Menu Screenshot]]&lt;br /&gt;
This application is a configuration menu for the 3DS, which has the following options:&lt;br /&gt;
&lt;br /&gt;
*Reset Settings - Resets all settings to default.&lt;br /&gt;
&lt;br /&gt;
*Hid Setting - (human interface device) Calibrates Touch-Pad and Analog stick.&lt;br /&gt;
&lt;br /&gt;
*Rtc Setting - (real time clock) Sets system time.&lt;br /&gt;
&lt;br /&gt;
*Lcd Setting - Sets display settings as found in the home menu as well as Flicker settings.&lt;br /&gt;
&lt;br /&gt;
*User Info Setting - Allows username change and &amp;quot;NG NAME FLAG&amp;quot; to be set to true or false.&lt;br /&gt;
&lt;br /&gt;
:In later versions of Config, &amp;quot;User Info Setting&amp;quot; also has :&lt;br /&gt;
::*CountryId - Changes 3DS between installed countries.&lt;br /&gt;
::*RegionId - Changes between the location in the selected country.&lt;br /&gt;
&lt;br /&gt;
*Other Setting(branches off into other settings) - &lt;br /&gt;
:*Sound Mode - mono/stereo/surround&lt;br /&gt;
&lt;br /&gt;
:*System Mode - Changes Memory Allowance.&lt;br /&gt;
::*Prod - 64MB Memory mode ([[Home Menu]] can usually only run in this mode and &#039;&#039;most&#039;&#039; retail-looking units cannot switch out of this mode)&lt;br /&gt;
::*Dev1 - 96MB Memory mode&lt;br /&gt;
::*Dev2 - 80MB Memory mode&lt;br /&gt;
::*Dev3 - 72MB Memory mode&lt;br /&gt;
::*Dev4 - 32MB Memory mode&lt;br /&gt;
::All CTR Debuggers/Prototype units can change memory allowance. For Developer Test Units, the ability to change Memory Allowance, appears to be dependent on an option when buying the Test Unit. (similar to having a choice to purchase IS_Nitro&#039;s Wireless/USG options when buying an IS_Nitro from Nintendo)&lt;br /&gt;
::On some Test Units, it&#039;s possible to run the [[Home Menu]] outside of Prod. However, software with limited memory (such as the web browser) cannot be launched from the home menu if the home menu is outside of Prod.&lt;br /&gt;
&lt;br /&gt;
:*Exception handler - Selects whether to enable or disable the application&#039;s handling of exceptions that arise in the non-debug environment - enable/disable &lt;br /&gt;
&lt;br /&gt;
:*Break Stop - (enable/disable) - Selects whether to enable or disable stopping the application when a break is encountered in the non-debug environment. If the application is not made to stop, it quits on a break.&lt;br /&gt;
&lt;br /&gt;
:*Menu - (Home Menu/Test Menu) This function edits the [[Config Info Blocks|configuration]] field containing the menu TID for dev units, allowing the user to choose between the [[Home Menu]] or the [[3DS Development Unit GUI#Test Menu|Test Menu]], as the menu loaded by the [[NS]] module.&lt;br /&gt;
&lt;br /&gt;
:*Language - same options found in the Language section of [[System Settings]] but also has an &amp;quot;invalid&amp;quot; option&lt;br /&gt;
&lt;br /&gt;
:*Dlp Force Child Import - (enable/disable) - normally the 3ds caches downloaded &amp;quot;Download Play (Dlp)&amp;quot; applications on the nand and only re-downloads, overwriting the cached copy if the version application being requested to downloaded is higher than what is currently present on the nand. Enabling this option forces the 3ds to download and overwrite the cached copy on the nand, regardless of the version of the application being downloaded. This is of course for testing purposes.&lt;br /&gt;
&lt;br /&gt;
:*Debug Mode - (enable/disable) - Toggles Debug environment?&lt;br /&gt;
&lt;br /&gt;
:In later versions of Config, &amp;quot;Other Setting&amp;quot; also has :&lt;br /&gt;
::*FS Latency Emulation - Filesystem Latency, in milliseconds (0ms-2550ms)&lt;br /&gt;
::*Coppacs Setting - Unknown (stuck on &#039;not restricted&#039;)&lt;br /&gt;
&lt;br /&gt;
*Test Setting - Test calibration of touch pad and joystick&lt;br /&gt;
       &lt;br /&gt;
*Eula Setting - Allows user to change &amp;quot;Agree Version&amp;quot; namely:&amp;quot;ff.ff&amp;quot; the two symbol sets are interchangeable with combination variations from aa to 99 (default is 00.00 where the Eula is not accepted yet).&lt;br /&gt;
       &lt;br /&gt;
*Stereo Camera Cal for Check - Camera test (?) as options to &amp;quot;write strange data(excess Z-rot) and &amp;quot;reset to factory default&amp;quot;.&lt;br /&gt;
       &lt;br /&gt;
*Gyro / Accel Cal for Check - Allows Gyro and Accelerometer to be calibrated.&lt;br /&gt;
       &lt;br /&gt;
*Ctr Info Setting - Changes settings to that found on the ctrsetting.txt on an SD .&lt;br /&gt;
&lt;br /&gt;
== Downloadplay Client ==&lt;br /&gt;
[[File:Dlpcliscnsht.jpg|250px|thumb|right|Downloadplay Client Screenshots]]&lt;br /&gt;
[[File:Dlpcliicon.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Even though a Developer 3DS has a &amp;quot;Download Play&amp;quot; application visually identical to the retail 3DS [[Download Play|application]], the &amp;quot;Downloadplay Client&amp;quot; application can be installed as an alternative to the regular Download Play application. (Note: a Developer 3DS&#039; and Retail 3DS&#039; cannot receive download play &#039;children&#039; from each-other.) This Developer application is a stripped down version of &#039;Download Play&#039; which has the following options and limitations:&lt;br /&gt;
&lt;br /&gt;
*It can only download 3ds download play titles&lt;br /&gt;
&lt;br /&gt;
*Scraps the GUI found in the normal Download Play application(see screenshot)&lt;br /&gt;
&lt;br /&gt;
*Can select from a maximum of 16 Download play &#039;servers&#039;&lt;br /&gt;
&lt;br /&gt;
This application is clearly used for easy testing of download play &#039;child&#039; apps, without the hassle of constantly re-navigating the normal Download Play interface&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Network Settings ==&lt;br /&gt;
[[File:Netsetscnsht.jpg|250px|thumb|right|Network Settings Screenshots]]&lt;br /&gt;
[[File:Netseticon.png]]&lt;br /&gt;
&lt;br /&gt;
This Developer application allows the users to directly modify the following from any of the three possible network setting &#039;slots&#039;&lt;br /&gt;
&lt;br /&gt;
*Security Mode :(the wireless encryption the network is using) OPEN/WEP 40bit/WEP 104bit/128bit/WPA TKIP/WPA2 TKIP/WPA AES/WPA2 AES&lt;br /&gt;
&lt;br /&gt;
*SSID :(self-explanitory) maximum 32 characters&lt;br /&gt;
&lt;br /&gt;
*KEY :(the key for the encrytion is here in plain text) the maximum length depends on encryption type&lt;br /&gt;
&lt;br /&gt;
*AutoDNS :(whether the 3DS obtains the DNS automatically or not) |True-3DS obtains the DNS automatically|False-3DS uses the DNS server address provided by the user(it is possible to edit this here)|&lt;br /&gt;
&lt;br /&gt;
At the bottom of the setting options there are two choices:&lt;br /&gt;
&lt;br /&gt;
*Write Setting &amp;amp; Connect Test To AP - Applies the settings above and performs a connection test(note any settings made in system settings for this connection, which are not present in the above settings will be nullified, for example any proxy server settings)&lt;br /&gt;
&lt;br /&gt;
*Remove Setting - removes all settings for this &#039;slot&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== SaveDataFiler ==&lt;br /&gt;
[[File:Saveflscnsht.jpg|250px|thumb|right|SaveDataFiler Screenshots]]&lt;br /&gt;
[[File:Saveflicon.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This 3DS Developer application allows save files and extdata to be exported and imported from an SD Card. The window has three tabs:&lt;br /&gt;
&lt;br /&gt;
*User - This is where saves for 3DS applications and saves on 3DS Game Cards(not DS Game Cards) can be exported to the SD Card. Saves cannot be deleted here.&lt;br /&gt;
&lt;br /&gt;
*ExtData - This is where application extdata can be deleted or exported to the SD Card for later use&lt;br /&gt;
&lt;br /&gt;
*SD - This is where extdata and application saves on the SD Card can be imported to the 3DS or 3DS Game Card. Also extdata and application saves can be deleted from the SD Card&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== CTR MenuSelector ==&lt;br /&gt;
[[File:Menuselector.jpg|100px|thumb|right|Menu Selector Screenshot]]&lt;br /&gt;
[[File:Menuselectoricon.jpg]]&lt;br /&gt;
&lt;br /&gt;
This application when loaded can change the current &#039;Active Menu&#039;(being used at the moment) by editing the menu TID [[Config Info Blocks|configuration]] field, allowing the user to choose between the [[Home Menu]] or the [[3DS Development Unit GUI#Test Menu|Test Menu]], as the menu loaded by the [[NS]] module. This application was superseded by the introduction of the &amp;quot;Menu&amp;quot; choice in the [[3DS Development Unit Software#Config|Config Menu]] and consequently removed as a standard application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== CecLotcheckTool ==&lt;br /&gt;
[[File:Ceclotscnsht.jpg|250px|thumb|right|CecLotcheckTool Screenshot]]&lt;br /&gt;
[[File:Cecloticon.png]]&lt;br /&gt;
&lt;br /&gt;
This application is used to manage CECs (Chance Encounter Communications, AKA StreetPass hits) for any of the twelve possible applications used on the 3DS, if there are any. The application has twelve possible slots which can be filled by BOXes . The BOXes are individual applications which are permitted by the user to use CECs, such as StreetPass Mii Plaza or Nintendo 3DS Sound. And as such, the boxes in this application correspond to the applications in &#039;StreetPass Management&#039;, in &#039;System Settings&#039; (StreetPass Management is accessible from retail 3DSs). The functions of this application:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;Y&amp;gt; BOX Options - this opens up a sub menu with the following options(when hovering over Nintendo 3DS Sounds BOX - the only one I can test the app with):&lt;br /&gt;
&lt;br /&gt;
*Box Info - Gives the Out-Box parameters [[File:Boxinf.jpg|250px|]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Message Info (OUT-BOX) - Gives the Message Parameters For the current BOX [[File:Mesinf.jpg|250px|]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Dummy Message Settings - Not quite sure what the options do here [[File:Dummesinf.jpg|250px|]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;A&amp;gt; Create Dummy BOXes - Creates dummy BOXes to fill any unused slots. (does not overwrite any present slots)&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;X&amp;gt; Delete BOXes - Deletes all of the BOXes from the slots.&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;START&amp;gt; CEC Filter Reset - I can only guess that it erases data collected by CEC enabled apps.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== BossLotCheckTool ==&lt;br /&gt;
[[File:Bosslcscnsht.png|100px|thumb|right|BossLotCheckTool Screenshot]]&lt;br /&gt;
[[File:Bosslcicon.png]]&lt;br /&gt;
&lt;br /&gt;
This application is used to manage BOSS (SpotPass) tasks/data for 3DS titles which utilise BOSS communications. &#039;Pokedex&#039; is an application which utilizes BOSS comunications. This application also displays the 3DS&#039;s friend code, although this code is not to be confused with the 3DS&#039;s Friend Card code found in &#039;Friends List&#039;. The user can browse by unique ID the 3DS titles(excluding system titles) registered to use BOSS. For each title you can view details about the downloaded &#039;NsData&#039; which accompanies BOSS downloads, view the BOSS task lists (implies applications can perform more than one BOSS task). You can also view various details about each BOSS task, including:&lt;br /&gt;
&lt;br /&gt;
 TaskStatus : DONE?&lt;br /&gt;
 TaskExecCount : How many times the BOSS task has been executed&lt;br /&gt;
 TaskExecInterval : Period of time (in seconds) in the task is to be executed, in intervals&lt;br /&gt;
 TaskPriority : Is a number value &lt;br /&gt;
 URL : The URL to the BOSS content&lt;br /&gt;
 AP Info : NONE?&lt;br /&gt;
 TaskResultCode : Success or not&lt;br /&gt;
 HTTP_StatusCode : Self explanatory &lt;br /&gt;
 DataSize : Size of Content (in bytes)&lt;br /&gt;
 Last_Modified : Last time the BOSS content (on server) was modified&lt;br /&gt;
 StartTime : when the BOSS task was registered&lt;br /&gt;
 OptOut : Whether the user can/has opted out of BOSS communication for this task&lt;br /&gt;
 &lt;br /&gt;
 It also possible to manually execute the BOSS task from here&lt;br /&gt;
&lt;br /&gt;
== Stereo Camera Calibrator ==&lt;br /&gt;
[[File:Stecamscnsht.png|100px|thumb|right|Stereo Camera Calibrator Screenshot]]&lt;br /&gt;
[[File:Stecamicon.png]]&lt;br /&gt;
&lt;br /&gt;
The Stereo Camera Calibrator (SCC), in a nutshell, allows the user to adjust the configuration of the outer cameras in relation to each other. It can be configured automatically by positioning the 3DS a set distance away from a special chart. It can also be configured manually, by setting the rotation of each camera image and the size of the right eye camera. The 3D effect can be perceived by superimposing the right eye camera image translucently with the left eye camera image or by viewing the 3D image directly by use of the parallax barrier in the 3DS Screen. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Model Viewer ==&lt;br /&gt;
[[File:ModelViewer.png|100px|thumb|right|3DS Model Viewer Screenshot]]&lt;br /&gt;
[[File:ModelViewericon.png]]&lt;br /&gt;
&lt;br /&gt;
As the name suggests this application allows the user to view models. It is supposed to be used with a CTR-Debugger, assumingly so models can be entered in the memory of the program. But the program can be used on Test Units, but the model is restricted to three coloured lines depicting the 3 dimensions (x,y,z). The model can be viewed from any angle or scale, the perspective is controlled by the circle pad and directional buttons. And of course the application utilises the 3D effect&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Friend Testing Partner ==&lt;br /&gt;
[[File:Ftestpscnsht.png|250px|thumb|right|Friend Testing Partner Screenshot]]&lt;br /&gt;
[[File:Ftestpicon.png]]&lt;br /&gt;
&lt;br /&gt;
The Friend Testing Partner application is used to test/monitor the 3DS&#039;s Friend List function. It allows the user to test various functions of the 3DS&#039;s out-going Friend Card, by giving the following options:&lt;br /&gt;
*Master Control - (RUN/STOP) (STOP is the default setting) when ‘STOP’ is selected the 3DS Friend Card uses the user’s settings/data. When ‘RUN’ is selected  the 3DS Friend Card uses the dummy settings/data chosen to test from the settings bellow.&lt;br /&gt;
&lt;br /&gt;
*Login/Logout - (ON/OFF) (ON is the default setting) What effect this has on the Friend Card is not known&lt;br /&gt;
&lt;br /&gt;
*Playing Title - (ON/OFF) (ON is the default setting) When ‘ON’ is selected the currently used title is ignored and a dummy applications are cycled through as the ‘Playing Title’ approximately every ten seconds in its place. The dummy applications used are the applications found in Firmware version 1.0.0-0 of a retail 3DS including the ‘Nintendo Zone viewer’ app. When ‘OFF’ is selected the currently used title (which is the Friend Testing Partner app) is used as the ‘Playing Title’&lt;br /&gt;
&lt;br /&gt;
*Mode Description - (ON/OFF) (ON is the default setting) When ‘ON’ is selected the Software in Use(Playing Title) is accompanied by the Date and Time found on that user’s 3DS. The Mode Description is refreshed every ten or so seconds. When ‘OFF’ is selected the date and time on the user’s 3DS is not displayed.&lt;br /&gt;
&lt;br /&gt;
*Message - (ON/OFF) (ON is the default setting) When ‘ON’ is selected the message made by the user is replaced(not overwritten as it reverts back to the user’s choice when this is ‘OFF’) by the current date and time in the format “YYYYMMDD HHMMSS”, this is refreshed every ten or so seconds.&lt;br /&gt;
&lt;br /&gt;
*Mii - (ON/OFF) (ON is the default setting) When &#039;ON&#039; the currently used Mii is replaced with one of 4 dummy Miis and cycles them through every ten seconds with a new dummy mii. This effect can only be seen from another 3DS not the host&lt;br /&gt;
&lt;br /&gt;
*Favorite Title (ON/OFF) (ON is the default setting) When &#039;ON&#039; is selected, the user’s favorite title is replaced with a dummy, which is replaced every 10 or so seconds. &lt;br /&gt;
Also this application allows the user to monitor the whether the 3DS is online or not and whether the 3DS’s Friend Presence is online or offline. Every time a dummy setting is refreshed it is displayed on the top screen with a time stamp.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Game Coin Setter* ==&lt;br /&gt;
[[File:Coinstscnsht.png|100px|thumb|right|Game Coin Setter Screenshot]]&lt;br /&gt;
[[File:Coinsticon.png]]  &lt;br /&gt;
&lt;br /&gt;
This application is used to set the Play Coin count on the 3DS. Obviously this was created so a developer can test parts of their game in which the player can exchange earned play coins for in-game content or similar. It has a very simple interface showing the current play coin count and the adjustable option, the target coin count. These are the controls with explanation of each:&lt;br /&gt;
&lt;br /&gt;
*LEFT/RIGHT - using the D-pad only to adjust the &#039;Target Count&#039; to a number between 0-300.&lt;br /&gt;
&lt;br /&gt;
*A - Sets the &#039;Current Count&#039; (amount of play coins the system has) to the user selected &#039;Target Count&#039; (the user specified amount of play coins)&lt;br /&gt;
&lt;br /&gt;
*L+R+X - &amp;quot;Preclude today&#039;s Increment&amp;quot; not sure how this affects the Play Coin count.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== TWL Development Tools ==&lt;br /&gt;
&lt;br /&gt;
These are DSi/DS mode development tools repackaged into a [[CIA]], for installing to the TWL NAND.&lt;br /&gt;
&lt;br /&gt;
=== NINTENDO DS - WMtest ===&lt;br /&gt;
[[File:Wmtestscnsht.jpg|300px|thumb|right|WMtest Screenshot]]&lt;br /&gt;
[[File:Wmtesttool.png‎]]&lt;br /&gt;
&lt;br /&gt;
This application is a TWL(DSi) application compiled for use on the 3DS. It is an wireless test tool with its uses explained below:&lt;br /&gt;
&lt;br /&gt;
*Scan Test - Scans Wireless channels 1-13(can be focused on one specific channel) for broadcasting stations. It can detect two types of broadcasting stations:&lt;br /&gt;
&lt;br /&gt;
Wifi Access Points - Giving the Mac Address, Broadcasting Channel, &#039;c&#039;, and the SSID&lt;br /&gt;
&lt;br /&gt;
DS Stations such as DS Download stations and Pokemon distributors - Giving the Mac Address, Brodcasting Channel, TGID and GGID&lt;br /&gt;
&lt;br /&gt;
*ScanEx Test - and has two Scan Types. Passive which lets you individually scan channels 1-13 (only one at at time) and the DS distribution channels (1,7,13 all at once). And Active which scans all 13 channels at once. when it finds a channel it prints on the bottom screen next to &#039;Found&#039; &#039;bssDescCount=&#039;&lt;br /&gt;
&lt;br /&gt;
*MeasureChannel Test - not quite sure what this does but it for a given channel it gives a ratio(in percentage form), which it finds in its allocated test time ranging from 10ms to 1000ms. And for every interval of time which is specified, it tests and gives a ratio.&lt;br /&gt;
&lt;br /&gt;
*Noise Mode - Seeks wireless channels in which to make wireless noise (This is not made very clear on the app). You can specify the:&lt;br /&gt;
&lt;br /&gt;
Channel where the scanner will seek to make noise&lt;br /&gt;
&lt;br /&gt;
Noise Rate, ranging from 0% to 100%&lt;br /&gt;
&lt;br /&gt;
Frequency, ranging from 10ms to 50ms&lt;br /&gt;
&lt;br /&gt;
Seek Mode, ranging from 1000ms to 1500ms&lt;br /&gt;
&lt;br /&gt;
When the settings are chosen the top screen has two counters which display &#039;Noise ON count&#039; and &#039;Noise OFF count&#039; the counters are affected by the noise rate. Starting at 0% the &#039;Noise ON count&#039; does not change but as the Noise rate gets closer to 100% the count moves and gets faster as Noise rate reaches 100%. For &#039;Noise OFF count&#039; it is the exact opposite to the &#039; Noise ON count&#039; in regards to counting.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt; A substitute icon is used here in place of a generic icon (which the application uses) to stop confusion with other applications. The original generic icon can be viewed in the icon&#039;s history.&lt;br /&gt;
[[Category:3DS Development Unit Related Pages]]&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=3DS_Development_Unit_Software&amp;diff=4346</id>
		<title>3DS Development Unit Software</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=3DS_Development_Unit_Software&amp;diff=4346"/>
		<updated>2012-11-27T02:33:37Z</updated>

		<summary type="html">&lt;p&gt;Xcution: /* Config */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The following is a description of the functions where possible of the applications unique to 3DS Development Units. Descriptions Derived from SDK revision 37904. For information on 3DS Development Hardware see [http://gbatemp.net/topic/327858-3ds-development-hardware/]&lt;br /&gt;
[[File:CTR_HMN_DEV.png|300px|thumb|right|Beautifully clear picture of the Dev Apps + Home Menu. Click to view in great quality. - Xcution]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Dev Menu == &lt;br /&gt;
[[File:Devmenuicon.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:Devmenscnsht.jpg|250px|thumb|right|Dev Menu Screenshots]]&lt;br /&gt;
[[File:Old_Dev_Menu.png|200px|thumb|left|Old Dev Menu Screenshot]]&lt;br /&gt;
This application on the top screen displays the firmware and revision of the Dev Menu, the free space available on the [[Flash Filesystem#TWL partition|TWL(DSi) NAND partition]] and [[SD Filesystem|SD card]] if present. It also provides information on the current file or device selected, as well as navigation instructions for the bottom screen.The bottom screen has three different windows, which are:&lt;br /&gt;
&lt;br /&gt;
*Programs- From this window, applications can be loaded from the [[Flash Filesystem|NAND]], the [[SD Filesystem|SD card]] and the slot 1 card (only a select scope of applications, see below for Dev Menu revisions and their corresponding scope of applications) . This is shown in the format of &amp;quot;Unique Id&#039;   &#039;[[Serials#Product Code|Product Code]]&#039;&amp;quot;. Installed titles can be deleted from this menu.&lt;br /&gt;
&lt;br /&gt;
*Import- From this window, titles compiled in the format of a .[[CIA]] file, can be installed from the SD card.&lt;br /&gt;
&lt;br /&gt;
*ExtData- From this window, the 3DS&#039;s [[Extdata|ExtData]](this includes all ExtData) can be deleted&lt;br /&gt;
&lt;br /&gt;
(Note that retail 3ds games are not recognised by Developer 3DSs and the Dev Menu prints &amp;quot;Unknown Card&amp;quot; in the &#039;Programs&#039; window and shows no details on top screen)&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  Dev Menu Revision&lt;br /&gt;
!  Title Types Accessible&lt;br /&gt;
|-&lt;br /&gt;
|  ?- 32640 - 33437&lt;br /&gt;
|  0000(NAND Only),0010,8004,8005,8011&lt;br /&gt;
|- &lt;br /&gt;
|  35887&lt;br /&gt;
|  0000(NAND Only),8004&lt;br /&gt;
|-&lt;br /&gt;
|  37785 - 40909 -?&lt;br /&gt;
|  0000(NAND and SDMC),8004&lt;br /&gt;
|-&lt;br /&gt;
|  ?- 47586 -?&lt;br /&gt;
|  0000(NAND and SDMC),0002, 8004&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Config == &lt;br /&gt;
[[File:Configicon.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:3DS_dev_configmenu.JPG|250px|thumb|right|Config Menu Screenshot]]&lt;br /&gt;
This application is a configuration menu for the 3DS, which has the following options:&lt;br /&gt;
&lt;br /&gt;
*Reset Settings - Resets all settings to default.&lt;br /&gt;
&lt;br /&gt;
*Hid Setting - (human interface device) Calibrates Touch-Pad and Analog stick.&lt;br /&gt;
&lt;br /&gt;
*Rtc Setting - (real time clock) Sets system time.&lt;br /&gt;
&lt;br /&gt;
*Lcd Setting - Sets display settings as found in the home menu as well as Flicker settings.&lt;br /&gt;
&lt;br /&gt;
*User Info Setting - Allows username change and &amp;quot;NG NAME FLAG&amp;quot; to be set to true or false.&lt;br /&gt;
&lt;br /&gt;
:In later versions of Config, &amp;quot;User Info Setting&amp;quot; also has :&lt;br /&gt;
::*CountryId - Changes 3DS between installed countries.&lt;br /&gt;
::*RegionId - Changes between the location in the selected country.&lt;br /&gt;
&lt;br /&gt;
*Other Setting(branches off into other settings) - &lt;br /&gt;
:*Sound Mode - mono/stereo/surround&lt;br /&gt;
&lt;br /&gt;
:*System Mode - Changes Memory Allowance.&lt;br /&gt;
::*Prod - 64MB Memory mode ([[Home Menu]] can usually only run in this mode and &#039;&#039;most&#039;&#039; retail-looking units cannot switch out of this mode)&lt;br /&gt;
::*Dev1 - 96MB Memory mode&lt;br /&gt;
::*Dev2 - 80MB Memory mode&lt;br /&gt;
::*Dev3 - 72MB Memory mode&lt;br /&gt;
::*Dev4 - 32MB Memory mode&lt;br /&gt;
::All CTR Debuggers/Prototype units can change memory allowance. For Developer Test Units, the ability to change Memory Allowance, appears to be dependent on an option when buying the Test Unit. (similar to having a choice to purchase IS_Nitro&#039;s Wireless/USG options when buying an IS_Nitro from Nintendo)&lt;br /&gt;
::On some Test Units, it&#039;s possible to run the [[Home Menu]] outside of Prod. However, software with limited memory (such as the web browser) cannot be launched from the home menu if the home menu is outside of Prod.&lt;br /&gt;
&lt;br /&gt;
:*Exception handler - Selects whether to enable or disable the application&#039;s handling of exceptions that arise in the non-debug environment - enable/disable &lt;br /&gt;
&lt;br /&gt;
:*Break Stop - (enable/disable) - Selects whether to enable or disable stopping the application when a break is encountered in the non-debug environment. If the application is not made to stop, it quits on a break.&lt;br /&gt;
&lt;br /&gt;
:*Menu - (Home Menu/Test Menu) This function edits the [[Config Info Blocks|configuration]] field containing the menu TID for dev units, allowing the user to choose between the [[Home Menu]] or the [[3DS Development Unit GUI#Test Menu|Test Menu]], as the menu loaded by the [[NS]] module.&lt;br /&gt;
&lt;br /&gt;
:*Language - same options found in the Language section of [[System Settings]] but also has an &amp;quot;invalid&amp;quot; option&lt;br /&gt;
&lt;br /&gt;
:*Dlp Force Child Import - (enable/disable) - normally the 3ds caches downloaded &amp;quot;Download Play (Dlp)&amp;quot; applications on the nand and only re-downloads, overwriting the cached copy if the version application being requested to downloaded is higher than what is currently present on the nand. Enabling this option forces the 3ds to download and overwrite the cached copy on the nand, regardless of the version of the application being downloaded. This is of course for testing purposes.&lt;br /&gt;
&lt;br /&gt;
:*Debug Mode - (enable/disable) - Toggles Debug environment?&lt;br /&gt;
&lt;br /&gt;
:In later versions of Config, &amp;quot;Other Setting&amp;quot; also has :&lt;br /&gt;
::*FS Latency Emulation - Filesystem Latency, in milliseconds (0ms-2550ms)&lt;br /&gt;
::*Coppacs Setting - Unknown (stuck on &#039;not restricted&#039;)&lt;br /&gt;
&lt;br /&gt;
*Test Setting - Test calibration of touch pad and joystick&lt;br /&gt;
       &lt;br /&gt;
*Eula Setting - Allows user to change &amp;quot;Agree Version&amp;quot; namely:&amp;quot;ff.ff&amp;quot; the two symbol sets are interchangeable with combination variations from aa to 99 (default is 00.00 where the Eula is not accepted yet).&lt;br /&gt;
       &lt;br /&gt;
*Stereo Camera Cal for Check - Camera test (?) as options to &amp;quot;write strange data(excess Z-rot) and &amp;quot;reset to factory default&amp;quot;.&lt;br /&gt;
       &lt;br /&gt;
*Gyro / Accel Cal for Check - Allows Gyro and Accelerometer to be calibrated.&lt;br /&gt;
       &lt;br /&gt;
*Ctr Info Setting - Changes settings to that found on the ctrsetting.txt on an SD .&lt;br /&gt;
&lt;br /&gt;
== Downloadplay Client ==&lt;br /&gt;
[[File:Dlpcliscnsht.jpg|250px|thumb|right|Downloadplay Client Screenshots]]&lt;br /&gt;
[[File:Dlpcliicon.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Even though a Developer 3DS has a &amp;quot;Download Play&amp;quot; application visually identical to the retail 3DS [[Download Play|application]], the &amp;quot;Downloadplay Client&amp;quot; application can be installed as an alternative to the regular Download Play application. (Note: a Developer 3DS&#039; and Retail 3DS&#039; cannot receive download play &#039;children&#039; from each-other.) This Developer application is a stripped down version of &#039;Download Play&#039; which has the following options and limitations:&lt;br /&gt;
&lt;br /&gt;
*It can only download 3ds download play titles&lt;br /&gt;
&lt;br /&gt;
*Scraps the GUI found in the normal Download Play application(see screenshot)&lt;br /&gt;
&lt;br /&gt;
*Can select from a maximum of 16 Download play &#039;servers&#039;&lt;br /&gt;
&lt;br /&gt;
This application is clearly used for easy testing of download play &#039;child&#039; apps, without the hassle of constantly re-navigating the normal Download Play interface&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Network Settings ==&lt;br /&gt;
[[File:Netsetscnsht.jpg|250px|thumb|right|Network Settings Screenshots]]&lt;br /&gt;
[[File:Netseticon.png]]&lt;br /&gt;
&lt;br /&gt;
This Developer application allows the users to directly modify the following from any of the three possible network setting &#039;slots&#039;&lt;br /&gt;
&lt;br /&gt;
*Security Mode :(the wireless encryption the network is using) OPEN/WEP 40bit/WEP 104bit/128bit/WPA TKIP/WPA2 TKIP/WPA AES/WPA2 AES&lt;br /&gt;
&lt;br /&gt;
*SSID :(self-explanitory) maximum 32 characters&lt;br /&gt;
&lt;br /&gt;
*KEY :(the key for the encrytion is here in plain text) the maximum length depends on encryption type&lt;br /&gt;
&lt;br /&gt;
*AutoDNS :(whether the 3DS obtains the DNS automatically or not) |True-3DS obtains the DNS automatically|False-3DS uses the DNS server address provided by the user(it is possible to edit this here)|&lt;br /&gt;
&lt;br /&gt;
At the bottom of the setting options there are two choices:&lt;br /&gt;
&lt;br /&gt;
*Write Setting &amp;amp; Connect Test To AP - Applies the settings above and performs a connection test(note any settings made in system settings for this connection, which are not present in the above settings will be nullified, for example any proxy server settings)&lt;br /&gt;
&lt;br /&gt;
*Remove Setting - removes all settings for this &#039;slot&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== SaveDataFiler ==&lt;br /&gt;
[[File:Saveflscnsht.jpg|250px|thumb|right|SaveDataFiler Screenshots]]&lt;br /&gt;
[[File:Saveflicon.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This 3DS Developer application allows save files and extdata to be exported and imported from an SD Card. The window has three tabs:&lt;br /&gt;
&lt;br /&gt;
*User - This is where saves for 3DS applications and saves on 3DS Game Cards(not DS Game Cards) can be exported to the SD Card. Saves cannot be deleted here.&lt;br /&gt;
&lt;br /&gt;
*ExtData - This is where application extdata can be deleted or exported to the SD Card for later use&lt;br /&gt;
&lt;br /&gt;
*SD - This is where extdata and application saves on the SD Card can be imported to the 3DS or 3DS Game Card. Also extdata and application saves can be deleted from the SD Card&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== CTR MenuSelector ==&lt;br /&gt;
[[File:Menuselector.jpg|100px|thumb|right|Menu Selector Screenshot]]&lt;br /&gt;
[[File:Menuselectoricon.jpg]]&lt;br /&gt;
&lt;br /&gt;
This application when loaded can change the current &#039;Active Menu&#039;(being used at the moment) by editing the menu TID [[Config Info Blocks|configuration]] field, allowing the user to choose between the [[Home Menu]] or the [[3DS Development Unit GUI#Test Menu|Test Menu]], as the menu loaded by the [[NS]] module. This application was superseded by the introduction of the &amp;quot;Menu&amp;quot; choice in the [[3DS Development Unit Software#Config|Config Menu]] and consequently removed as a standard application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== CecLotcheckTool ==&lt;br /&gt;
[[File:Ceclotscnsht.jpg|250px|thumb|right|CecLotcheckTool Screenshot]]&lt;br /&gt;
[[File:Cecloticon.png]]&lt;br /&gt;
&lt;br /&gt;
This application is used to manage CECs (Chance Encounter Communications, AKA StreetPass hits) for any of the twelve possible applications used on the 3DS, if there are any. The application has twelve possible slots which can be filled by BOXes . The BOXes are individual applications which are permitted by the user to use CECs, such as StreetPass Mii Plaza or Nintendo 3DS Sound. And as such, the boxes in this application correspond to the applications in &#039;StreetPass Management&#039;, in &#039;System Settings&#039; (StreetPass Management is accessible from retail 3DSs). The functions of this application:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;Y&amp;gt; BOX Options - this opens up a sub menu with the following options(when hovering over Nintendo 3DS Sounds BOX - the only one I can test the app with):&lt;br /&gt;
&lt;br /&gt;
*Box Info - Gives the Out-Box parameters [[File:Boxinf.jpg|250px|]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Message Info (OUT-BOX) - Gives the Message Parameters For the current BOX [[File:Mesinf.jpg|250px|]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Dummy Message Settings - Not quite sure what the options do here [[File:Dummesinf.jpg|250px|]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;A&amp;gt; Create Dummy BOXes - Creates dummy BOXes to fill any unused slots. (does not overwrite any present slots)&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;X&amp;gt; Delete BOXes - Deletes all of the BOXes from the slots.&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;START&amp;gt; CEC Filter Reset - I can only guess that it erases data collected by CEC enabled apps.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== BossLotCheckTool ==&lt;br /&gt;
[[File:Bosslcscnsht.png|100px|thumb|right|BossLotCheckTool Screenshot]]&lt;br /&gt;
[[File:Bosslcicon.png]]&lt;br /&gt;
&lt;br /&gt;
This application is used to manage BOSS (SpotPass) tasks/data for 3DS titles which utilise BOSS communications. &#039;Pokedex&#039; is an application which utilizes BOSS comunications. This application also displays the 3DS&#039;s friend code, although this code is not to be confused with the 3DS&#039;s Friend Card code found in &#039;Friends List&#039;. The user can browse by unique ID the 3DS titles(excluding system titles) registered to use BOSS. For each title you can view details about the downloaded &#039;NsData&#039; which accompanies BOSS downloads, view the BOSS task lists (implies applications can perform more than one BOSS task). You can also view various details about each BOSS task, including:&lt;br /&gt;
&lt;br /&gt;
 TaskStatus : DONE?&lt;br /&gt;
 TaskExecCount : How many times the BOSS task has been executed&lt;br /&gt;
 TaskExecInterval : Period of time (in seconds) in the task is to be executed, in intervals&lt;br /&gt;
 TaskPriority : Is a number value &lt;br /&gt;
 URL : The URL to the BOSS content&lt;br /&gt;
 AP Info : NONE?&lt;br /&gt;
 TaskResultCode : Success or not&lt;br /&gt;
 HTTP_StatusCode : Self explanatory &lt;br /&gt;
 DataSize : Size of Content (in bytes)&lt;br /&gt;
 Last_Modified : Last time the BOSS content (on server) was modified&lt;br /&gt;
 StartTime : when the BOSS task was registered&lt;br /&gt;
 OptOut : Whether the user can/has opted out of BOSS communication for this task&lt;br /&gt;
 &lt;br /&gt;
 It also possible to manually execute the BOSS task from here&lt;br /&gt;
&lt;br /&gt;
== Stereo Camera Calibrator ==&lt;br /&gt;
[[File:Stecamscnsht.png|100px|thumb|right|Stereo Camera Calibrator Screenshot]]&lt;br /&gt;
[[File:Stecamicon.png]]&lt;br /&gt;
&lt;br /&gt;
The Stereo Camera Calibrator (SCC), in a nutshell, allows the user to adjust the configuration of the outer cameras in relation to each other. It can be configured automatically by positioning the 3DS a set distance away from a special chart. It can also be configured manually, by setting the rotation of each camera image and the size of the right eye camera. The 3D effect can be perceived by superimposing the right eye camera image translucently with the left eye camera image or by viewing the 3D image directly by use of the parallax barrier in the 3DS Screen. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Model Viewer ==&lt;br /&gt;
[[File:ModelViewer.png|100px|thumb|right|3DS Model Viewer Screenshot]]&lt;br /&gt;
[[File:ModelViewericon.png]]&lt;br /&gt;
&lt;br /&gt;
As the name suggests this application allows the user to view models. It is supposed to be used with a CTR-Debugger, assumingly so models can be entered in the memory of the program. But the program can be used on Test Units, but the model is restricted to three coloured lines depicting the 3 dimensions (x,y,z). The model can be viewed from any angle or scale, the perspective is controlled by the circle pad and directional buttons. And of course the application utilises the 3D effect&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Friend Testing Partner ==&lt;br /&gt;
[[File:Ftestpscnsht.png|250px|thumb|right|Friend Testing Partner Screenshot]]&lt;br /&gt;
[[File:Ftestpicon.png]]&lt;br /&gt;
&lt;br /&gt;
The Friend Testing Partner application is used to test/monitor the 3DS&#039;s Friend List function. It allows the user to test various functions of the 3DS&#039;s out-going Friend Card, by giving the following options:&lt;br /&gt;
*Master Control - (RUN/STOP) (STOP is the default setting) when ‘STOP’ is selected the 3DS Friend Card uses the user’s settings/data. When ‘RUN’ is selected  the 3DS Friend Card uses the dummy settings/data chosen to test from the settings bellow.&lt;br /&gt;
&lt;br /&gt;
*Login/Logout - (ON/OFF) (ON is the default setting) What effect this has on the Friend Card is not known&lt;br /&gt;
&lt;br /&gt;
*Playing Title - (ON/OFF) (ON is the default setting) When ‘ON’ is selected the currently used title is ignored and a dummy applications are cycled through as the ‘Playing Title’ approximately every ten seconds in its place. The dummy applications used are the applications found in Firmware version 1.0.0-0 of a retail 3DS including the ‘Nintendo Zone viewer’ app. When ‘OFF’ is selected the currently used title (which is the Friend Testing Partner app) is used as the ‘Playing Title’&lt;br /&gt;
&lt;br /&gt;
*Mode Description - (ON/OFF) (ON is the default setting) When ‘ON’ is selected the Software in Use(Playing Title) is accompanied by the Date and Time found on that user’s 3DS. The Mode Description is refreshed every ten or so seconds. When ‘OFF’ is selected the date and time on the user’s 3DS is not displayed.&lt;br /&gt;
&lt;br /&gt;
*Message - (ON/OFF) (ON is the default setting) When ‘ON’ is selected the message made by the user is replaced(not overwritten as it reverts back to the user’s choice when this is ‘OFF’) by the current date and time in the format “YYYYMMDD HHMMSS”, this is refreshed every ten or so seconds.&lt;br /&gt;
&lt;br /&gt;
*Mii - (ON/OFF) (ON is the default setting) When &#039;ON&#039; the currently used Mii is replaced with one of 4 dummy Miis and cycles them through every ten seconds with a new dummy mii. This effect can only be seen from another 3DS not the host&lt;br /&gt;
&lt;br /&gt;
*Favorite Title (ON/OFF) (ON is the default setting) When &#039;ON&#039; is selected, the user’s favorite title is replaced with a dummy, which is replaced every 10 or so seconds. &lt;br /&gt;
Also this application allows the user to monitor the whether the 3DS is online or not and whether the 3DS’s Friend Presence is online or offline. Every time a dummy setting is refreshed it is displayed on the top screen with a time stamp.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Game Coin Setter* ==&lt;br /&gt;
[[File:Coinstscnsht.png|100px|thumb|right|Game Coin Setter Screenshot]]&lt;br /&gt;
[[File:Coinsticon.png]]  &lt;br /&gt;
&lt;br /&gt;
This application is used to set the Play Coin count on the 3DS. Obviously this was created so a developer can test parts of their game in which the player can exchange earned play coins for in-game content or similar. It has a very simple interface showing the current play coin count and the adjustable option, the target coin count. These are the controls with explanation of each:&lt;br /&gt;
&lt;br /&gt;
*LEFT/RIGHT - using the D-pad only to adjust the &#039;Target Count&#039; to a number between 0-300.&lt;br /&gt;
&lt;br /&gt;
*A - Sets the &#039;Current Count&#039; (amount of play coins the system has) to the user selected &#039;Target Count&#039; (the user specified amount of play coins)&lt;br /&gt;
&lt;br /&gt;
*L+R+X - &amp;quot;Preclude today&#039;s Increment&amp;quot; not sure how this affects the Play Coin count.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== TWL Development Tools ==&lt;br /&gt;
&lt;br /&gt;
These are DSi/DS mode development tools repackaged into a [[CIA]], for installing to the TWL NAND.&lt;br /&gt;
&lt;br /&gt;
=== NINTENDO DS - WMtest ===&lt;br /&gt;
[[File:Wmtestscnsht.jpg|300px|thumb|right|WMtest Screenshot]]&lt;br /&gt;
[[File:Wmtesttool.png‎]]&lt;br /&gt;
&lt;br /&gt;
This application is a TWL(DSi) application compiled for use on the 3DS. It is an wireless test tool with its uses explained below:&lt;br /&gt;
&lt;br /&gt;
*Scan Test - Scans Wireless channels 1-13(can be focused on one specific channel) for broadcasting stations. It can detect two types of broadcasting stations:&lt;br /&gt;
&lt;br /&gt;
Wifi Access Points - Giving the Mac Address, Broadcasting Channel, &#039;c&#039;, and the SSID&lt;br /&gt;
&lt;br /&gt;
DS Stations such as DS Download stations and Pokemon distributors - Giving the Mac Address, Brodcasting Channel, TGID and GGID&lt;br /&gt;
&lt;br /&gt;
*ScanEx Test - and has two Scan Types. Passive which lets you individually scan channels 1-13 (only one at at time) and the DS distribution channels (1,7,13 all at once). And Active which scans all 13 channels at once. when it finds a channel it prints on the bottom screen next to &#039;Found&#039; &#039;bssDescCount=&#039;&lt;br /&gt;
&lt;br /&gt;
*MeasureChannel Test - not quite sure what this does but it for a given channel it gives a ratio(in percentage form), which it finds in its allocated test time ranging from 10ms to 1000ms. And for every interval of time which is specified, it tests and gives a ratio.&lt;br /&gt;
&lt;br /&gt;
*Noise Mode - Seeks wireless channels in which to make wireless noise (This is not made very clear on the app). You can specify the:&lt;br /&gt;
&lt;br /&gt;
Channel where the scanner will seek to make noise&lt;br /&gt;
&lt;br /&gt;
Noise Rate, ranging from 0% to 100%&lt;br /&gt;
&lt;br /&gt;
Frequency, ranging from 10ms to 50ms&lt;br /&gt;
&lt;br /&gt;
Seek Mode, ranging from 1000ms to 1500ms&lt;br /&gt;
&lt;br /&gt;
When the settings are chosen the top screen has two counters which display &#039;Noise ON count&#039; and &#039;Noise OFF count&#039; the counters are affected by the noise rate. Starting at 0% the &#039;Noise ON count&#039; does not change but as the Noise rate gets closer to 100% the count moves and gets faster as Noise rate reaches 100%. For &#039;Noise OFF count&#039; it is the exact opposite to the &#039; Noise ON count&#039; in regards to counting.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt; A substitute icon is used here in place of a generic icon (which the application uses) to stop confusion with other applications. The original generic icon can be viewed in the icon&#039;s history.&lt;br /&gt;
[[Category:3DS Development Unit Related Pages]]&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=File:ACToR.png&amp;diff=4269</id>
		<title>File:ACToR.png</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=File:ACToR.png&amp;diff=4269"/>
		<updated>2012-11-06T06:05:25Z</updated>

		<summary type="html">&lt;p&gt;Xcution: Showing off BCSAR reading/extraction program, ACToR (Audio CTR).
The program itself isn&amp;#039;t released but I thought I&amp;#039;d show it off a little since I&amp;#039;ve been adding a lot of information to the BCSAR page here.
I can still think of quite a few more things I co&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Showing off BCSAR reading/extraction program, ACToR (Audio CTR).&lt;br /&gt;
The program itself isn&#039;t released but I thought I&#039;d show it off a little since I&#039;ve been adding a lot of information to the BCSAR page here.&lt;br /&gt;
I can still think of quite a few more things I could do with it, so it&#039;s a beta yet.&lt;br /&gt;
&lt;br /&gt;
In case you&#039;re curious as to why the partition names are coloured, it&#039;s a validity check. (green = valid, red = invalid)&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4259</id>
		<title>BCSAR</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4259"/>
		<updated>2012-11-06T00:54:45Z</updated>

		<summary type="html">&lt;p&gt;Xcution: Audio name count proved valid when I scanned names more carefully&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:File formats]]&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
The BCSAR (CTR Sound ARchive) format is the 3DS&#039;s equivalent of the Wii&#039;s BRSAR  format. They&#039;re not the same structures, though, but they do have the same purpose.&lt;br /&gt;
&lt;br /&gt;
BCSAR are located in the RomFS, this is usually stored under &amp;quot;romfs:/sound/&amp;lt;name&amp;gt;.bcsar&amp;quot;. This contains various audio formats, such as CSTM, CWSD, and CWAV.&lt;br /&gt;
&lt;br /&gt;
== BCSAR Header ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;CSAR&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x2&lt;br /&gt;
|  Byte order mark (0xFEFF = Big Endian, 0xFFFE = Little Endian)&lt;br /&gt;
|-&lt;br /&gt;
|  0x6&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Length of BCSAR header&lt;br /&gt;
|-&lt;br /&gt;
|  0xA&lt;br /&gt;
|  0x2&lt;br /&gt;
|  Version&lt;br /&gt;
|-&lt;br /&gt;
|  0xC&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of the entire BCSAR (starting from 0x0)&lt;br /&gt;
|-&lt;br /&gt;
|  0x10&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Amount of main partitions in the BCSAR [STRG + INFO + FILE = 0x03 (= 3)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x15&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Partition header length [same for each partition? (ie STRG,INFO,and FILE header lengths)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x18&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x1C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x20&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Unknown (always 0x01200000?)&lt;br /&gt;
|-&lt;br /&gt;
|  0x24&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x28&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x30&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of main FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x34&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of main FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x38&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th main partition location?&lt;br /&gt;
|-&lt;br /&gt;
|  0x3C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th main partition length?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Partitions ==&lt;br /&gt;
&lt;br /&gt;
=== STRG ===&lt;br /&gt;
&lt;br /&gt;
STRG contains the names of the audio files in the BCSAR.&lt;br /&gt;
&lt;br /&gt;
For now I only know some information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;STRG&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|  0x18&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Count of audio names (since each file should have a name you could also say this is essentially a file count)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== INFO ===&lt;br /&gt;
&lt;br /&gt;
INFO presumably contains information on the audio files? Possibly used to connect names from STRG to data from FILE?&lt;br /&gt;
&lt;br /&gt;
For now I only know some information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;INFO&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== FILE ===&lt;br /&gt;
&lt;br /&gt;
FILE contains all of the audio data in the BCSAR.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;FILE&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of FILE partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
There isn&#039;t a whole lot else I can document about the FILE partition, since the data in it will most definitely vary depending on the game. (since audio is more than likely to change in each game)&lt;br /&gt;
&lt;br /&gt;
There is no table in FILE so a different partition (presumably INFO) must be used to connect the data in FILE with the names from STRG.&lt;br /&gt;
&lt;br /&gt;
After some more research, there are multiple FILE partitions, but only 1 of them is the &#039;main&#039; FILE partition (it&#039;s the one you get from the BCSAR header). The &#039;main&#039; FILE partition contains all of the other sub FILE partitions.&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4251</id>
		<title>BCSAR</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4251"/>
		<updated>2012-11-05T21:21:52Z</updated>

		<summary type="html">&lt;p&gt;Xcution: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:File formats]]&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
The BCSAR (CTR Sound ARchive) format is the 3DS&#039;s equivalent of the Wii&#039;s BRSAR  format. They&#039;re not the same structures, though, but they do have the same purpose.&lt;br /&gt;
&lt;br /&gt;
BCSAR are located in the RomFS, this is usually stored under &amp;quot;romfs:/sound/&amp;lt;name&amp;gt;.bcsar&amp;quot;. This contains various audio formats, such as CSTM, CWSD, and CWAV.&lt;br /&gt;
&lt;br /&gt;
== BCSAR Header ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;CSAR&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x2&lt;br /&gt;
|  Byte order mark (0xFEFF = Big Endian, 0xFFFE = Little Endian)&lt;br /&gt;
|-&lt;br /&gt;
|  0x6&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Length of BCSAR header&lt;br /&gt;
|-&lt;br /&gt;
|  0xA&lt;br /&gt;
|  0x2&lt;br /&gt;
|  Version&lt;br /&gt;
|-&lt;br /&gt;
|  0xC&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of the entire BCSAR (starting from 0x0)&lt;br /&gt;
|-&lt;br /&gt;
|  0x10&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Amount of main partitions in the BCSAR [STRG + INFO + FILE = 0x03 (= 3)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x15&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Partition header length [same for each partition? (ie STRG,INFO,and FILE header lengths)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x18&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x1C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x20&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Unknown (always 0x01200000?)&lt;br /&gt;
|-&lt;br /&gt;
|  0x24&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x28&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x30&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of main FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x34&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of main FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x38&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th main partition location?&lt;br /&gt;
|-&lt;br /&gt;
|  0x3C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th main partition length?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Partitions ==&lt;br /&gt;
&lt;br /&gt;
=== STRG ===&lt;br /&gt;
&lt;br /&gt;
STRG contains the names of the audio files in the BCSAR.&lt;br /&gt;
&lt;br /&gt;
For now I only know some information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;STRG&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== INFO ===&lt;br /&gt;
&lt;br /&gt;
INFO presumably contains information on the audio files? Possibly used to connect names from STRG to data from FILE?&lt;br /&gt;
&lt;br /&gt;
For now I only know some information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;INFO&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== FILE ===&lt;br /&gt;
&lt;br /&gt;
FILE contains all of the audio data in the BCSAR.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;FILE&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of FILE partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
There isn&#039;t a whole lot else I can document about the FILE partition, since the data in it will most definitely vary depending on the game. (since audio is more than likely to change in each game)&lt;br /&gt;
&lt;br /&gt;
There is no table in FILE so a different partition (presumably INFO) must be used to connect the data in FILE with the names from STRG.&lt;br /&gt;
&lt;br /&gt;
After some more research, there are multiple FILE partitions, but only 1 of them is the &#039;main&#039; FILE partition (it&#039;s the one you get from the BCSAR header). The &#039;main&#039; FILE partition contains all of the other sub FILE partitions.&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4249</id>
		<title>BCSAR</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4249"/>
		<updated>2012-11-05T06:13:41Z</updated>

		<summary type="html">&lt;p&gt;Xcution: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:File formats]]&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
The BCSAR (CTR Sound ARchive) format is the 3DS&#039;s equivalent of the Wii&#039;s BRSAR  format. They&#039;re not the same structures, though, but they do have the same purpose.&lt;br /&gt;
&lt;br /&gt;
BCSAR are located in the RomFS, this is usually stored under &amp;quot;romfs:/sound/&amp;lt;name&amp;gt;.bcsar&amp;quot;. This contains various audio formats, such as CSTM, CWSD, and CWAV.&lt;br /&gt;
&lt;br /&gt;
== BCSAR Header ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;CSAR&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x2&lt;br /&gt;
|  Byte order mark (0xFEFF = Big Endian, 0xFFFE = Little Endian)&lt;br /&gt;
|-&lt;br /&gt;
|  0x6&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Length of BCSAR header&lt;br /&gt;
|-&lt;br /&gt;
|  0xA&lt;br /&gt;
|  0x2&lt;br /&gt;
|  Version&lt;br /&gt;
|-&lt;br /&gt;
|  0xC&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of the entire BCSAR (starting from 0x0)&lt;br /&gt;
|-&lt;br /&gt;
|  0x10&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Amount of main partitions in the BCSAR [STRG + INFO + FILE = 0x03 (= 3)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x15&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Partition header length [same for each partition? (ie STRG,INFO,and FILE header lengths)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x18&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x1C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x20&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Unknown (always 0x01200000?)&lt;br /&gt;
|-&lt;br /&gt;
|  0x24&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x28&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x30&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of main FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x34&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of main FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x38&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th main partition location?&lt;br /&gt;
|-&lt;br /&gt;
|  0x3C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th main partition length?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Partitions ==&lt;br /&gt;
&lt;br /&gt;
=== STRG ===&lt;br /&gt;
&lt;br /&gt;
STRG contains the names of the audio files in the BCSAR.&lt;br /&gt;
&lt;br /&gt;
For now I only know some information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;STRG&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|  0x18&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Count of audio names (since each file should have a name you could also say this is essentially a file count)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== INFO ===&lt;br /&gt;
&lt;br /&gt;
INFO presumably contains information on the audio files? Possibly used to connect names from STRG to data from FILE?&lt;br /&gt;
&lt;br /&gt;
For now I only know some information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;INFO&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== FILE ===&lt;br /&gt;
&lt;br /&gt;
FILE contains all of the audio data in the BCSAR.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;FILE&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of FILE partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
There isn&#039;t a whole lot else I can document about the FILE partition, since the data in it will most definitely vary depending on the game. (since audio is more than likely to change in each game)&lt;br /&gt;
&lt;br /&gt;
There is no table in FILE so a different partition (presumably INFO) must be used to connect the data in FILE with the names from STRG.&lt;br /&gt;
&lt;br /&gt;
After some more research, there are multiple FILE partitions, but only 1 of them is the &#039;main&#039; FILE partition (it&#039;s the one you get from the BCSAR header). The &#039;main&#039; FILE partition contains all of the other sub FILE partitions.&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4247</id>
		<title>BCSAR</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4247"/>
		<updated>2012-11-05T01:48:50Z</updated>

		<summary type="html">&lt;p&gt;Xcution: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:File formats]]&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
The BCSAR (CTR Sound ARchive) format is the 3DS&#039;s equivalent of the Wii&#039;s BRSAR  format. They&#039;re not the same structures, though, but they do have the same purpose.&lt;br /&gt;
&lt;br /&gt;
BCSAR are located in the RomFS and store various audio formats, such as CSTM, CWSD, and CWAV.&lt;br /&gt;
&lt;br /&gt;
== BCSAR Header ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;CSAR&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x2&lt;br /&gt;
|  Byte order mark (0xFEFF = Big Endian, 0xFFFE = Little Endian)&lt;br /&gt;
|-&lt;br /&gt;
|  0x6&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Length of BCSAR header&lt;br /&gt;
|-&lt;br /&gt;
|  0xB&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Version&lt;br /&gt;
|-&lt;br /&gt;
|  0xC&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of the entire BCSAR (starting from 0x0)&lt;br /&gt;
|-&lt;br /&gt;
|  0x10&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Amount of main partitions in the BCSAR [STRG + INFO + FILE = 0x03 (= 3)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x15&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Partition header length [same for each partition? (ie STRG,INFO,and FILE header lengths)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x18&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x1C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x20&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Unknown (always 0x01200000?)&lt;br /&gt;
|-&lt;br /&gt;
|  0x24&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x28&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x30&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of main FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x34&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of main FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x38&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th main partition location?&lt;br /&gt;
|-&lt;br /&gt;
|  0x3C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th main partition length?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Partitions ==&lt;br /&gt;
&lt;br /&gt;
=== STRG ===&lt;br /&gt;
&lt;br /&gt;
STRG contains the names of the audio files in the BCSAR.&lt;br /&gt;
&lt;br /&gt;
For now I only know some information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;STRG&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|  0x18&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Count of audio names (since each file should have a name you could also say this is essentially a file count)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== INFO ===&lt;br /&gt;
&lt;br /&gt;
INFO presumably contains information on the audio files? Possibly used to connect names from STRG to data from FILE?&lt;br /&gt;
&lt;br /&gt;
For now I only know some information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;INFO&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== FILE ===&lt;br /&gt;
&lt;br /&gt;
FILE contains all of the audio data in the BCSAR.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;FILE&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of FILE partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
There isn&#039;t a whole lot else I can document about the FILE partition, since the data in it will most definitely vary depending on the game. (since audio is more than likely to change in each game)&lt;br /&gt;
&lt;br /&gt;
There is no table in FILE so a different partition (presumably INFO) must be used to connect the data in FILE with the names from STRG.&lt;br /&gt;
&lt;br /&gt;
After some more research, there are multiple FILE partitions, but only 1 of them is the &#039;main&#039; FILE partition (it&#039;s the one you get from the BCSAR header). The &#039;main&#039; FILE partition contains all of the other sub FILE partitions.&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4244</id>
		<title>BCSAR</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4244"/>
		<updated>2012-11-04T20:39:34Z</updated>

		<summary type="html">&lt;p&gt;Xcution: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:File formats]]&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
The BCSAR (CTR Sound ARchive) format is the 3DS&#039;s equivalent of the Wii&#039;s BRSAR  format. They&#039;re not the same structures, though, but they do have the same purpose.&lt;br /&gt;
&lt;br /&gt;
BCSAR are located in the RomFS and store various audio formats, such as CSTM, CWSD, and CWAV.&lt;br /&gt;
&lt;br /&gt;
== BCSAR Header ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;CSAR&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x2&lt;br /&gt;
|  Byte order mark?&lt;br /&gt;
|-&lt;br /&gt;
|  0x6&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Length of BCSAR header&lt;br /&gt;
|-&lt;br /&gt;
|  0xB&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Version?&lt;br /&gt;
|-&lt;br /&gt;
|  0xC&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of the entire BCSAR (starting from 0x0)&lt;br /&gt;
|-&lt;br /&gt;
|  0x10&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Amount of main partitions in the BCSAR? [STRG + INFO + FILE = 0x03 (= 3)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x15&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Partition header length? [same for each partition? (ie STRG,INFO,and FILE header lengths)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x18&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x1C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x20&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Unknown (always 0x01200000?)&lt;br /&gt;
|-&lt;br /&gt;
|  0x24&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x28&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x30&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of main FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x34&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of main FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x38&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th main partition location?&lt;br /&gt;
|-&lt;br /&gt;
|  0x3C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th main partition length?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Partitions ==&lt;br /&gt;
&lt;br /&gt;
=== STRG ===&lt;br /&gt;
&lt;br /&gt;
STRG contains the names of the audio files in the BCSAR.&lt;br /&gt;
&lt;br /&gt;
For now I only know some information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;STRG&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|  0x18&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Count of audio names (since each file should have a name you could also say this is essentially a file count)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== INFO ===&lt;br /&gt;
&lt;br /&gt;
INFO presumably contains information on the audio files? Possibly used to connect names from STRG to data from FILE?&lt;br /&gt;
&lt;br /&gt;
For now I only know some information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;INFO&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== FILE ===&lt;br /&gt;
&lt;br /&gt;
FILE contains all of the audio data in the BCSAR.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;FILE&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of FILE partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
There isn&#039;t a whole lot else I can document about the FILE partition, since the data in it will most definitely vary depending on the game. (since audio is more than likely to change in each game)&lt;br /&gt;
&lt;br /&gt;
There is no table in FILE so a different partition (presumably INFO) must be used to connect the data in FILE with the names from STRG.&lt;br /&gt;
&lt;br /&gt;
After some more research, there are multiple FILE partitions, but only 1 of them is the &#039;main&#039; FILE partition (it&#039;s the one you get from the BCSAR header). The &#039;main&#039; FILE partition contains all of the other sub FILE partitions.&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4243</id>
		<title>BCSAR</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4243"/>
		<updated>2012-11-04T20:11:23Z</updated>

		<summary type="html">&lt;p&gt;Xcution: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:File formats]]&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
The BCSAR (CTR Sound ARchive) format is the 3DS&#039;s equivalent of the Wii&#039;s BRSAR  format. They&#039;re not the same structures, though, but they do have the same purpose.&lt;br /&gt;
&lt;br /&gt;
BCSAR are located in the RomFS and store various audio formats, such as CSTM, CWSD, and CWAV.&lt;br /&gt;
&lt;br /&gt;
== BCSAR Header ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;CSAR&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x2&lt;br /&gt;
|  Byte order mark?&lt;br /&gt;
|-&lt;br /&gt;
|  0x6&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Length of BCSAR header&lt;br /&gt;
|-&lt;br /&gt;
|  0xB&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Version?&lt;br /&gt;
|-&lt;br /&gt;
|  0xC&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of the entire BCSAR (starting from 0x0)&lt;br /&gt;
|-&lt;br /&gt;
|  0x10&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Amount of main partitions in the BCSAR? [STRG + INFO + FILE = 0x03 (= 3)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x15&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Partition header length? [same for each partition? (ie STRG,INFO,and FILE header lengths)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x18&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x1C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x20&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Unknown (always 0x01200000?)&lt;br /&gt;
|-&lt;br /&gt;
|  0x24&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x28&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x30&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of main FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x34&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of main FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x38&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th main partition location?&lt;br /&gt;
|-&lt;br /&gt;
|  0x3C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th main partition length?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Partitions ==&lt;br /&gt;
&lt;br /&gt;
=== STRG ===&lt;br /&gt;
&lt;br /&gt;
STRG contains the names of the audio files in the BCSAR.&lt;br /&gt;
&lt;br /&gt;
For now I only know some information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;STRG&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|  0x10&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Count of Players?&lt;br /&gt;
|-&lt;br /&gt;
|  0x18&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Count of audio names (since each file should have a name you could also say this is essentially a file count)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== INFO ===&lt;br /&gt;
&lt;br /&gt;
INFO presumably contains information on the audio files? Possibly used to connect names from STRG to data from FILE?&lt;br /&gt;
&lt;br /&gt;
For now I only know some information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;INFO&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== FILE ===&lt;br /&gt;
&lt;br /&gt;
FILE contains all of the audio data in the BCSAR.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;FILE&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of FILE partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
There isn&#039;t a whole lot else I can document about the FILE partition, since the data in it will most definitely vary depending on the game. (since audio is more than likely to change in each game)&lt;br /&gt;
&lt;br /&gt;
There is no table in FILE so a different partition (presumably INFO) must be used to connect the data in FILE with the names from STRG.&lt;br /&gt;
&lt;br /&gt;
After some more research, there are multiple FILE partitions, but only 1 of them is the &#039;main&#039; FILE partition (it&#039;s the one you get from the BCSAR header). The &#039;main&#039; FILE partition contains all of the other sub FILE partitions.&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4242</id>
		<title>BCSAR</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4242"/>
		<updated>2012-11-04T07:34:14Z</updated>

		<summary type="html">&lt;p&gt;Xcution: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:File formats]]&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
The BCSAR (CTR Sound ARchive) format is the 3DS&#039;s equivalent of the Wii&#039;s BRSAR  format. They&#039;re not the same structures, though, but they do have the same purpose.&lt;br /&gt;
&lt;br /&gt;
BCSAR are located in the RomFS and store various audio formats, such as CSTM, CWSD, and CWAV.&lt;br /&gt;
&lt;br /&gt;
== BCSAR Header ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;CSAR&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x2&lt;br /&gt;
|  Byte order mark?&lt;br /&gt;
|-&lt;br /&gt;
|  0x6&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Length of BCSAR header&lt;br /&gt;
|-&lt;br /&gt;
|  0xB&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Version?&lt;br /&gt;
|-&lt;br /&gt;
|  0xC&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of the entire BCSAR (starting from 0x0)&lt;br /&gt;
|-&lt;br /&gt;
|  0x10&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Amount of main partitions in the BCSAR? [STRG + INFO + FILE = 0x03 (= 3)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x15&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Partition header length? [same for each partition? (ie STRG,INFO,and FILE header lengths)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x18&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x1C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x20&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Unknown (always 0x01200000?)&lt;br /&gt;
|-&lt;br /&gt;
|  0x24&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x28&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x30&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of main FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x34&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of main FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x38&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th main partition location?&lt;br /&gt;
|-&lt;br /&gt;
|  0x3C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th main partition length?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Partitions ==&lt;br /&gt;
&lt;br /&gt;
=== STRG ===&lt;br /&gt;
&lt;br /&gt;
STRG contains the names of the audio files in the BCSAR.&lt;br /&gt;
&lt;br /&gt;
For now I only know some information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;STRG&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|  0x18&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Count of audio names (since each file should have a name you could also say this is essentially a file count)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== INFO ===&lt;br /&gt;
&lt;br /&gt;
INFO presumably contains information on the audio files? Possibly used to connect names from STRG to data from FILE?&lt;br /&gt;
&lt;br /&gt;
For now I only know some information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;INFO&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== FILE ===&lt;br /&gt;
&lt;br /&gt;
FILE contains all of the audio data in the BCSAR.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;FILE&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of FILE partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
There isn&#039;t a whole lot else I can document about the FILE partition, since the data in it will most definitely vary depending on the game. (since audio is more than likely to change in each game)&lt;br /&gt;
&lt;br /&gt;
There is no table in FILE so a different partition (presumably INFO) must be used to connect the data in FILE with the names from STRG.&lt;br /&gt;
&lt;br /&gt;
After some more research, there are multiple FILE partitions, but only 1 of them is the &#039;main&#039; FILE partition (it&#039;s the one you get from the BCSAR header). The &#039;main&#039; FILE partition contains all of the other sub FILE partitions.&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4241</id>
		<title>BCSAR</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4241"/>
		<updated>2012-11-04T07:26:30Z</updated>

		<summary type="html">&lt;p&gt;Xcution: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:File formats]]&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
The BCSAR (CTR Sound ARchive) format is the 3DS&#039;s equivalent of the Wii&#039;s BRSAR  format. They&#039;re not the same structures, though, but they do have the same purpose.&lt;br /&gt;
&lt;br /&gt;
BCSAR are located in the RomFS and store various audio formats, such as CSTM, CWSD, and CWAV.&lt;br /&gt;
&lt;br /&gt;
== BCSAR Header ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;CSAR&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x2&lt;br /&gt;
|  Byte order mark?&lt;br /&gt;
|-&lt;br /&gt;
|  0x6&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Length of BCSAR header&lt;br /&gt;
|-&lt;br /&gt;
|  0xB&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Version?&lt;br /&gt;
|-&lt;br /&gt;
|  0xC&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of the entire BCSAR (starting from 0x0)&lt;br /&gt;
|-&lt;br /&gt;
|  0x10&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Amount of main partitions in the BCSAR? [STRG + INFO + FILE = 0x03 (= 3)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x15&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Partition header length? [same for each partition? (ie STRG,INFO,and FILE header lengths)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x18&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x1C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x20&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Unknown (always 0x01200000?)&lt;br /&gt;
|-&lt;br /&gt;
|  0x24&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x28&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x30&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x34&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x38&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th main partition location?&lt;br /&gt;
|-&lt;br /&gt;
|  0x3C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th main partition length?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Partitions ==&lt;br /&gt;
&lt;br /&gt;
=== STRG ===&lt;br /&gt;
&lt;br /&gt;
STRG contains the names of the audio files in the BCSAR.&lt;br /&gt;
&lt;br /&gt;
For now I only know some information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;STRG&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|  0x18&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Count of audio names (since each file should have a name you could also say this is essentially a file count)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== INFO ===&lt;br /&gt;
&lt;br /&gt;
INFO presumably contains information on the audio files? Possibly used to connect names from STRG to data from FILE?&lt;br /&gt;
&lt;br /&gt;
For now I only know some information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;INFO&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== FILE ===&lt;br /&gt;
&lt;br /&gt;
FILE contains all of the audio data in the BCSAR.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;FILE&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of FILE partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
There isn&#039;t a whole lot else I can document about the FILE partition, since the data in it will most definitely vary depending on the game. (since audio is more than likely to change in each game)&lt;br /&gt;
&lt;br /&gt;
There is no table in FILE so a different partition (presumably INFO) must be used to connect the data in FILE with the names from STRG.&lt;br /&gt;
&lt;br /&gt;
After some more research, there are multiple FILE partitions, but only 1 of them is the &#039;main&#039; FILE partition (it&#039;s the one you get from the BCSAR header). The &#039;main&#039; FILE partition contains all of the other sub FILE partitions.&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4240</id>
		<title>BCSAR</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4240"/>
		<updated>2012-11-04T07:25:46Z</updated>

		<summary type="html">&lt;p&gt;Xcution: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:File formats]]&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
The BCSAR (CTR Sound ARchive) format is the 3DS&#039;s equivalent of the Wii&#039;s BRSAR  format. They&#039;re not the same structures, though, but they do have the same purpose.&lt;br /&gt;
&lt;br /&gt;
BCSAR are located in the RomFS and store various audio formats, such as CSTM, CWSD, and CWAV.&lt;br /&gt;
&lt;br /&gt;
== BCSAR Header ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;CSAR&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x2&lt;br /&gt;
|  Byte order mark?&lt;br /&gt;
|-&lt;br /&gt;
|  0x6&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Length of BCSAR header&lt;br /&gt;
|-&lt;br /&gt;
|  0xB&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Version?&lt;br /&gt;
|-&lt;br /&gt;
|  0xC&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of the entire BCSAR (starting from 0x0)&lt;br /&gt;
|-&lt;br /&gt;
|  0x10&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Amount of main partitions in the BCSAR? [STRG + INFO + FILE = 0x03 (= 3)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x15&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Partition header length? [same for each partition? (ie STRG,INFO,and FILE header lengths)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x18&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x1C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x20&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Unknown (always 0x01200000?)&lt;br /&gt;
|-&lt;br /&gt;
|  0x24&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x28&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x30&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x34&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x38&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th partition location?&lt;br /&gt;
|-&lt;br /&gt;
|  0x3C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th partition length?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Partitions ==&lt;br /&gt;
&lt;br /&gt;
=== STRG ===&lt;br /&gt;
&lt;br /&gt;
STRG contains the names of the audio files in the BCSAR.&lt;br /&gt;
&lt;br /&gt;
For now I only know some information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;STRG&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|  0x18&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Count of audio names (since each file should have a name you could also say this is essentially a file count)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== INFO ===&lt;br /&gt;
&lt;br /&gt;
INFO presumably contains information on the audio files? Possibly used to connect names from STRG to data from FILE?&lt;br /&gt;
&lt;br /&gt;
For now I only know some information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;INFO&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== FILE ===&lt;br /&gt;
&lt;br /&gt;
FILE contains all of the audio data in the BCSAR.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;FILE&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of FILE partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
There isn&#039;t a whole lot else I can document about the FILE partition, since the data in it will most definitely vary depending on the game. (since audio is more than likely to change in each game)&lt;br /&gt;
&lt;br /&gt;
There is no table in FILE so a different partition (presumably INFO) must be used to connect the data in FILE with the names from STRG.&lt;br /&gt;
&lt;br /&gt;
After some more research, there are multiple FILE partitions, but only 1 of them is the &#039;main&#039; FILE partition (it&#039;s the one you get from the BCSAR header). The &#039;main&#039; FILE partition contains all of the other sub FILE partitions.&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4239</id>
		<title>BCSAR</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4239"/>
		<updated>2012-11-04T07:21:35Z</updated>

		<summary type="html">&lt;p&gt;Xcution: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:File formats]]&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
The BCSAR (CTR Sound ARchive) format is the 3DS&#039;s equivalent of the Wii&#039;s BRSAR  format. They&#039;re not the same structures, though, but they do have the same purpose.&lt;br /&gt;
&lt;br /&gt;
BCSAR are located in the RomFS and store various audio formats, such as CSTM, CWSD, and CWAV.&lt;br /&gt;
&lt;br /&gt;
== BCSAR Header ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;CSAR&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x2&lt;br /&gt;
|  Byte order mark?&lt;br /&gt;
|-&lt;br /&gt;
|  0x6&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Length of BCSAR header&lt;br /&gt;
|-&lt;br /&gt;
|  0xB&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Version?&lt;br /&gt;
|-&lt;br /&gt;
|  0xC&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of the entire BCSAR (starting from 0x0)&lt;br /&gt;
|-&lt;br /&gt;
|  0x10&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Amount of main partitions in the BCSAR? [STRG + INFO + FILE = 0x03 (= 3)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x15&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Partition header length? [same for each partition? (ie STRG,INFO,and FILE header lengths)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x18&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x1C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x20&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Unknown (always 0x01200000?)&lt;br /&gt;
|-&lt;br /&gt;
|  0x24&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x28&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x30&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x34&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x38&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th partition location?&lt;br /&gt;
|-&lt;br /&gt;
|  0x3C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th partition length?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Partitions ==&lt;br /&gt;
&lt;br /&gt;
=== STRG ===&lt;br /&gt;
&lt;br /&gt;
STRG contains the names of the audio files in the BCSAR.&lt;br /&gt;
&lt;br /&gt;
For now I only know information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;STRG&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|  0x18&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Count of audio names (since each file should have a name you could also say this is essentially a file count)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== INFO ===&lt;br /&gt;
&lt;br /&gt;
INFO presumably contains information on the audio files? Possibly used to connect names from STRG to data from FILE?&lt;br /&gt;
&lt;br /&gt;
For now I only know information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;INFO&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== FILE ===&lt;br /&gt;
&lt;br /&gt;
FILE contains all of the audio data in the BCSAR.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;FILE&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of FILE partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
There isn&#039;t a whole lot else I can document about the FILE partition, since the data in it will most definitely vary depending on the game. (since audio is more than likely to change in each game)&lt;br /&gt;
&lt;br /&gt;
There is no table in FILE so a different partition (presumably INFO) must be used to connect the data in FILE with the names from STRG.&lt;br /&gt;
&lt;br /&gt;
After some more research, there are multiple FILE partitions, but only 1 of them is the &#039;main&#039; FILE partition (it&#039;s the one you get from the BCSAR header). The &#039;main&#039; FILE partition contains all of the other sub FILE partitions.&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4238</id>
		<title>BCSAR</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4238"/>
		<updated>2012-11-04T07:18:27Z</updated>

		<summary type="html">&lt;p&gt;Xcution: /* FILE */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:File formats]]&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
The BCSAR (CTR Sound ARchive) format is the 3DS&#039;s equivalent of the Wii&#039;s BRSAR  format. They&#039;re not the same structures, though, but they do have the same purpose.&lt;br /&gt;
&lt;br /&gt;
BCSAR are located in the RomFS and store various audio formats, such as CSTM, CWSD, and CWAV.&lt;br /&gt;
&lt;br /&gt;
== BCSAR Header ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;CSAR&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x2&lt;br /&gt;
|  Byte order mark?&lt;br /&gt;
|-&lt;br /&gt;
|  0x6&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Length of BCSAR header&lt;br /&gt;
|-&lt;br /&gt;
|  0xB&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Version?&lt;br /&gt;
|-&lt;br /&gt;
|  0xC&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of the entire BCSAR (starting from 0x0)&lt;br /&gt;
|-&lt;br /&gt;
|  0x10&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Amount of main partitions in the BCSAR? [STRG + INFO + FILE = 0x03 (= 3)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x15&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Partition header length? [same for each partition? (ie STRG,INFO,and FILE header lengths)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x18&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x1C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x20&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Unknown (always 0x01200000?)&lt;br /&gt;
|-&lt;br /&gt;
|  0x24&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x28&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x30&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x34&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x38&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th partition location?&lt;br /&gt;
|-&lt;br /&gt;
|  0x3C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th partition length?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Partitions ==&lt;br /&gt;
&lt;br /&gt;
=== STRG ===&lt;br /&gt;
&lt;br /&gt;
STRG contains the names of the audio files in the BCSAR.&lt;br /&gt;
&lt;br /&gt;
For now I only know information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;STRG&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|  0x18&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Count of audio names (since each file should have a name you could also say this is essentially a file count)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== INFO ===&lt;br /&gt;
&lt;br /&gt;
INFO presumably contains information on the audio files? Possibly used to connect names from STRG to data from FILE?&lt;br /&gt;
&lt;br /&gt;
For now I only know information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;INFO&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== FILE ===&lt;br /&gt;
&lt;br /&gt;
FILE contains all of the audio data in the BCSAR.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;FILE&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of FILE partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
There isn&#039;t a whole lot else I can document about the FILE partition, since the data in it will most definitely vary depending on the game. (since audio is more than likely to change in each game)&lt;br /&gt;
&lt;br /&gt;
There is no table in FILE so a different partition (presumably INFO) must be used to connect the data in FILE with the names from STRG.&lt;br /&gt;
&lt;br /&gt;
After some more research, there are multiple FILE partitions, but only 1 of them is the &#039;main&#039; FILE partition (it&#039;s the one you get from the BCSAR header)&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4237</id>
		<title>BCSAR</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4237"/>
		<updated>2012-11-04T07:16:15Z</updated>

		<summary type="html">&lt;p&gt;Xcution: /* BCSAR Header */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:File formats]]&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
The BCSAR (CTR Sound ARchive) format is the 3DS&#039;s equivalent of the Wii&#039;s BRSAR  format. They&#039;re not the same structures, though, but they do have the same purpose.&lt;br /&gt;
&lt;br /&gt;
BCSAR are located in the RomFS and store various audio formats, such as CSTM, CWSD, and CWAV.&lt;br /&gt;
&lt;br /&gt;
== BCSAR Header ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;CSAR&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x2&lt;br /&gt;
|  Byte order mark?&lt;br /&gt;
|-&lt;br /&gt;
|  0x6&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Length of BCSAR header&lt;br /&gt;
|-&lt;br /&gt;
|  0xB&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Version?&lt;br /&gt;
|-&lt;br /&gt;
|  0xC&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of the entire BCSAR (starting from 0x0)&lt;br /&gt;
|-&lt;br /&gt;
|  0x10&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Amount of main partitions in the BCSAR? [STRG + INFO + FILE = 0x03 (= 3)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x15&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Partition header length? [same for each partition? (ie STRG,INFO,and FILE header lengths)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x18&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x1C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x20&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Unknown (always 0x01200000?)&lt;br /&gt;
|-&lt;br /&gt;
|  0x24&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x28&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x30&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x34&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x38&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th partition location?&lt;br /&gt;
|-&lt;br /&gt;
|  0x3C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th partition length?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Partitions ==&lt;br /&gt;
&lt;br /&gt;
=== STRG ===&lt;br /&gt;
&lt;br /&gt;
STRG contains the names of the audio files in the BCSAR.&lt;br /&gt;
&lt;br /&gt;
For now I only know information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;STRG&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|  0x18&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Count of audio names (since each file should have a name you could also say this is essentially a file count)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== INFO ===&lt;br /&gt;
&lt;br /&gt;
INFO presumably contains information on the audio files? Possibly used to connect names from STRG to data from FILE?&lt;br /&gt;
&lt;br /&gt;
For now I only know information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;INFO&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== FILE ===&lt;br /&gt;
&lt;br /&gt;
FILE contains all of the audio data in the BCSAR.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;FILE&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of FILE partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
There isn&#039;t a whole lot else I can document about the FILE partition, since the data in it will most definitely vary depending on the game. (since audio is more than likely to change in each game)&lt;br /&gt;
&lt;br /&gt;
There is no table in FILE so a different partition (presumably INFO) must be used to connect the data in FILE with the names from STRG.&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4236</id>
		<title>BCSAR</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4236"/>
		<updated>2012-11-04T07:13:52Z</updated>

		<summary type="html">&lt;p&gt;Xcution: /* STRG */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:File formats]]&lt;br /&gt;
== Overview ==&lt;br /&gt;
&lt;br /&gt;
The BCSAR (CTR Sound ARchive) format is the 3DS&#039;s equivalent of the Wii&#039;s BRSAR  format. They&#039;re not the same structures, though, but they do have the same purpose.&lt;br /&gt;
&lt;br /&gt;
BCSAR are located in the RomFS and store various audio formats, such as CSTM, CWSD, and CWAV.&lt;br /&gt;
&lt;br /&gt;
== BCSAR Header ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;CSAR&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x2&lt;br /&gt;
|  Byte order mark?&lt;br /&gt;
|-&lt;br /&gt;
|  0x6&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Length of BCSAR header&lt;br /&gt;
|-&lt;br /&gt;
|  0xB&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Version?&lt;br /&gt;
|-&lt;br /&gt;
|  0xC&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of the entire BCSAR (starting from 0x0)&lt;br /&gt;
|-&lt;br /&gt;
|  0x10&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Amount of partitions in the BCSAR? [STRG + INFO + FILE = 0x03 (= 3)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x15&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Partition header length? [same for each partition? (ie STRG,INFO,and FILE header lengths)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x18&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x1C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x20&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Unknown (always 0x01200000?)&lt;br /&gt;
|-&lt;br /&gt;
|  0x24&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x28&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x30&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x34&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x38&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th partition location?&lt;br /&gt;
|-&lt;br /&gt;
|  0x3C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th partition length?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Partitions ==&lt;br /&gt;
&lt;br /&gt;
=== STRG ===&lt;br /&gt;
&lt;br /&gt;
STRG contains the names of the audio files in the BCSAR.&lt;br /&gt;
&lt;br /&gt;
For now I only know information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;STRG&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|  0x18&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Count of audio names (since each file should have a name you could also say this is essentially a file count)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== INFO ===&lt;br /&gt;
&lt;br /&gt;
INFO presumably contains information on the audio files? Possibly used to connect names from STRG to data from FILE?&lt;br /&gt;
&lt;br /&gt;
For now I only know information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;INFO&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== FILE ===&lt;br /&gt;
&lt;br /&gt;
FILE contains all of the audio data in the BCSAR.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;FILE&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of FILE partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
There isn&#039;t a whole lot else I can document about the FILE partition, since the data in it will most definitely vary depending on the game. (since audio is more than likely to change in each game)&lt;br /&gt;
&lt;br /&gt;
There is no table in FILE so a different partition (presumably INFO) must be used to connect the data in FILE with the names from STRG.&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4234</id>
		<title>BCSAR</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4234"/>
		<updated>2012-11-04T05:17:17Z</updated>

		<summary type="html">&lt;p&gt;Xcution: /* STRG */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Overview ==&lt;br /&gt;
&lt;br /&gt;
The BCSAR (CTR Sound ARchive) format is the 3DS&#039;s equivalent of the Wii&#039;s BRSAR  format. They&#039;re not the same structures, though, but they do have the same purpose.&lt;br /&gt;
&lt;br /&gt;
BCSAR are located in the RomFS and store various audio formats, such as CSTM, CWSD, and CWAV.&lt;br /&gt;
&lt;br /&gt;
== BCSAR Header ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;CSAR&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x2&lt;br /&gt;
|  Byte order mark?&lt;br /&gt;
|-&lt;br /&gt;
|  0x6&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Length of BCSAR header&lt;br /&gt;
|-&lt;br /&gt;
|  0xB&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Version?&lt;br /&gt;
|-&lt;br /&gt;
|  0xC&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of the entire BCSAR (starting from 0x0)&lt;br /&gt;
|-&lt;br /&gt;
|  0x10&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Amount of partitions in the BCSAR? [STRG + INFO + FILE = 0x03 (= 3)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x15&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Partition header length? [same for each partition? (ie STRG,INFO,and FILE header lengths)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x18&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x1C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x20&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Unknown (always 0x01200000?)&lt;br /&gt;
|-&lt;br /&gt;
|  0x24&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x28&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x30&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x34&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x38&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th partition location?&lt;br /&gt;
|-&lt;br /&gt;
|  0x3C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th partition length?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Partitions ==&lt;br /&gt;
&lt;br /&gt;
=== STRG ===&lt;br /&gt;
&lt;br /&gt;
STRG contains the names of the audio files in the BCSAR.&lt;br /&gt;
&lt;br /&gt;
For now I only know information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;STRG&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== INFO ===&lt;br /&gt;
&lt;br /&gt;
INFO presumably contains information on the audio files? Possibly used to connect names from STRG to data from FILE?&lt;br /&gt;
&lt;br /&gt;
For now I only know information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;INFO&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== FILE ===&lt;br /&gt;
&lt;br /&gt;
FILE contains all of the audio data in the BCSAR.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;FILE&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of FILE partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
There isn&#039;t a whole lot else I can document about the FILE partition, since the data in it will most definitely vary depending on the game. (since audio is more than likely to change in each game)&lt;br /&gt;
&lt;br /&gt;
There is no table in FILE so a different partition (presumably INFO) must be used to connect the data in FILE with the names from STRG.&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4233</id>
		<title>BCSAR</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4233"/>
		<updated>2012-11-04T05:04:47Z</updated>

		<summary type="html">&lt;p&gt;Xcution: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Overview ==&lt;br /&gt;
&lt;br /&gt;
The BCSAR (CTR Sound ARchive) format is the 3DS&#039;s equivalent of the Wii&#039;s BRSAR  format. They&#039;re not the same structures, though, but they do have the same purpose.&lt;br /&gt;
&lt;br /&gt;
BCSAR are located in the RomFS and store various audio formats, such as CSTM, CWSD, and CWAV.&lt;br /&gt;
&lt;br /&gt;
== BCSAR Header ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;CSAR&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x2&lt;br /&gt;
|  Byte order mark?&lt;br /&gt;
|-&lt;br /&gt;
|  0x6&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Length of BCSAR header&lt;br /&gt;
|-&lt;br /&gt;
|  0xB&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Version?&lt;br /&gt;
|-&lt;br /&gt;
|  0xC&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of the entire BCSAR (starting from 0x0)&lt;br /&gt;
|-&lt;br /&gt;
|  0x10&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Amount of partitions in the BCSAR? [STRG + INFO + FILE = 0x03 (= 3)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x15&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Partition header length? [same for each partition? (ie STRG,INFO,and FILE header lengths)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x18&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x1C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x20&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Unknown (always 0x01200000?)&lt;br /&gt;
|-&lt;br /&gt;
|  0x24&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x28&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x30&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x34&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x38&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th partition location?&lt;br /&gt;
|-&lt;br /&gt;
|  0x3C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th partition length?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Partitions ==&lt;br /&gt;
&lt;br /&gt;
=== STRG ===&lt;br /&gt;
&lt;br /&gt;
STRG contains the names of the audio files in the BCWAV.&lt;br /&gt;
&lt;br /&gt;
For now I only know information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;STRG&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== INFO ===&lt;br /&gt;
&lt;br /&gt;
INFO presumably contains information on the audio files? Possibly used to connect names from STRG to data from FILE?&lt;br /&gt;
&lt;br /&gt;
For now I only know information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;INFO&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== FILE ===&lt;br /&gt;
&lt;br /&gt;
FILE contains all of the audio data in the BCSAR.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;FILE&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of FILE partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
There isn&#039;t a whole lot else I can document about the FILE partition, since the data in it will most definitely vary depending on the game. (since audio is more than likely to change in each game)&lt;br /&gt;
&lt;br /&gt;
There is no table in FILE so a different partition (presumably INFO) must be used to connect the data in FILE with the names from STRG.&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4231</id>
		<title>BCSAR</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4231"/>
		<updated>2012-11-04T03:34:36Z</updated>

		<summary type="html">&lt;p&gt;Xcution: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Overview ==&lt;br /&gt;
&lt;br /&gt;
The BCSAR (CTR Sound ARchive) format is the 3DS&#039;s equivalent of the Wii&#039;s BRSAR  format. They&#039;re not the same structures, though, but they do have the same purpose.&lt;br /&gt;
&lt;br /&gt;
BCSAR are located in the RomFS and store various audio formats, such as CSTM, CWSD, and CWAV.&lt;br /&gt;
&lt;br /&gt;
== BCSAR Header ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;CSAR&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x2&lt;br /&gt;
|  Byte order mark?&lt;br /&gt;
|-&lt;br /&gt;
|  0x6&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Length of BCSAR header&lt;br /&gt;
|-&lt;br /&gt;
|  0xB&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Version?&lt;br /&gt;
|-&lt;br /&gt;
|  0xC&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of the entire BCSAR (starting from 0x0)&lt;br /&gt;
|-&lt;br /&gt;
|  0x10&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Amount of partitions in the BCSAR? [STRG + INFO + FILE = 0x03 (= 3)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x15&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Partition header length? [same for each partition? (ie STRG,INFO,and FILE header lengths)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x18&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x1C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x24&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x28&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x30&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x34&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x38&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th partition location?&lt;br /&gt;
|-&lt;br /&gt;
|  0x3C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th partition length?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Partitions ==&lt;br /&gt;
&lt;br /&gt;
=== STRG ===&lt;br /&gt;
&lt;br /&gt;
STRG contains the names of the audio files in the BCWAV.&lt;br /&gt;
&lt;br /&gt;
For now I only know information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;STRG&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== INFO ===&lt;br /&gt;
&lt;br /&gt;
INFO presumably contains information on the audio files? Possibly used to connect names from STRG to data from FILE?&lt;br /&gt;
&lt;br /&gt;
For now I only know information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;INFO&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== FILE ===&lt;br /&gt;
&lt;br /&gt;
FILE contains all of the audio data in the BCSAR.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;FILE&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of FILE partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
There isn&#039;t a whole lot else I can document about the FILE partition, since the data in it will most definitely vary depending on the game. (since audio is more than likely to change in each game)&lt;br /&gt;
&lt;br /&gt;
There is no table in FILE so a different partition (presumably INFO) must be used to connect the data in FILE with the names from STRG.&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4230</id>
		<title>BCSAR</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4230"/>
		<updated>2012-11-04T02:58:15Z</updated>

		<summary type="html">&lt;p&gt;Xcution: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Overview ==&lt;br /&gt;
&lt;br /&gt;
The BCSAR (CTR Sound ARchive) format is the 3DS&#039;s equivalent of the Wii&#039;s BRSAR  format. They&#039;re not the same structures, though, but they do have the same purpose.&lt;br /&gt;
&lt;br /&gt;
BCSAR are located in the RomFS and store various audio formats, such as CSTM, CWSD, and CWAV.&lt;br /&gt;
&lt;br /&gt;
== BCSAR Header ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;CSAR&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x2&lt;br /&gt;
|  Byte order mark?&lt;br /&gt;
|-&lt;br /&gt;
|  0x6&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Length of BCSAR header&lt;br /&gt;
|-&lt;br /&gt;
|  0xB&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Version?&lt;br /&gt;
|-&lt;br /&gt;
|  0xC&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of the entire BCSAR (starting from 0x0)&lt;br /&gt;
|-&lt;br /&gt;
|  0x10&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Amount of partitions in the BCSAR? [STRG + INFO + FILE = 0x03 (= 3)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x15&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Partition header length? [same for each partition? (ie STRG,INFO,and FILE header lengths)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x18&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x1C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x24&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x28&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x30&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x34&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x38&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th partition location?&lt;br /&gt;
|-&lt;br /&gt;
|  0x3C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th partition length?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Partitions ==&lt;br /&gt;
&lt;br /&gt;
=== STRG ===&lt;br /&gt;
&lt;br /&gt;
STRG contains the names of the audio files in the BCWAV.&lt;br /&gt;
&lt;br /&gt;
For now I only know information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;STRG&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== INFO ===&lt;br /&gt;
&lt;br /&gt;
INFO presumably contains information on the audio files? Possibly used to connect names from STRG to data from FILE?&lt;br /&gt;
&lt;br /&gt;
For now I only know information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;INFO&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== FILE ===&lt;br /&gt;
&lt;br /&gt;
FILE contains all of the audio data in the BCSAR.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;FILE&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of FILE partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
There isn&#039;t a whole lot else I can document about the FILE partition, since the data in it will most definitely vary depending on the game. (since audio is more than likely to change in each game) There is no table in FILE so a different partition (presumably INFO) must be used to connect the data in FILE with the names from STRG.&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4229</id>
		<title>BCSAR</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4229"/>
		<updated>2012-11-04T02:53:51Z</updated>

		<summary type="html">&lt;p&gt;Xcution: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Overview ==&lt;br /&gt;
&lt;br /&gt;
The BCSAR (CTR Sound ARchive) format is the 3DS&#039;s equivalent of the Wii&#039;s BRSAR  format. They&#039;re not the same structures, though, but they do have the same purpose.&lt;br /&gt;
&lt;br /&gt;
BCSAR are located in the RomFS and store various audio formats, such as CSTM, CWSD, and CWAV.&lt;br /&gt;
&lt;br /&gt;
== Format ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;CSAR&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x2&lt;br /&gt;
|  Byte order mark?&lt;br /&gt;
|-&lt;br /&gt;
|  0x6&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Length of BCSAR header&lt;br /&gt;
|-&lt;br /&gt;
|  0xB&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Version?&lt;br /&gt;
|-&lt;br /&gt;
|  0xC&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of the entire BCSAR (starting from 0x0)&lt;br /&gt;
|-&lt;br /&gt;
|  0x10&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Amount of partitions in the BCSAR? [STRG + INFO + FILE = 0x03 (= 3)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x15&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Partition header length? [same for each partition? (ie STRG,INFO,and FILE header lengths)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x18&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x1C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x24&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x28&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x30&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x34&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x38&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th partition location?&lt;br /&gt;
|-&lt;br /&gt;
|  0x3C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th partition length?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Partitions ==&lt;br /&gt;
&lt;br /&gt;
=== STRG ===&lt;br /&gt;
&lt;br /&gt;
STRG contains the names of the audio files in the BCWAV.&lt;br /&gt;
&lt;br /&gt;
For now I only know information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;STRG&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== INFO ===&lt;br /&gt;
&lt;br /&gt;
INFO presumably contains information on the audio files? Possibly used to connect names from STRG to data from FILE?&lt;br /&gt;
&lt;br /&gt;
For now I only know information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;INFO&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== FILE ===&lt;br /&gt;
&lt;br /&gt;
FILE contains all of the audio data in the BCSAR.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;FILE&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of FILE partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
There isn&#039;t a whole lot else I can document about the FILE partition, since the data in it will most definitely vary depending on the game. (since audio is more than likely to change in each game) There is no table in FILE so a different partition (presumably INFO) must be used to connect the data in FILE with the names from STRG.&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4228</id>
		<title>BCSAR</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=BCSAR&amp;diff=4228"/>
		<updated>2012-11-04T02:48:37Z</updated>

		<summary type="html">&lt;p&gt;Xcution: Created page with &amp;quot;== Overview ==  The BCSAR (CTR Sound ARchive) format is the 3DS&amp;#039;s equivalent of the Wii&amp;#039;s BRSAR  format. They&amp;#039;re not the same structures, though, but they do have the same purpos...&amp;quot;&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;== Overview ==&lt;br /&gt;
&lt;br /&gt;
The BCSAR (CTR Sound ARchive) format is the 3DS&#039;s equivalent of the Wii&#039;s BRSAR  format. They&#039;re not the same structures, though, but they do have the same purpose.&lt;br /&gt;
&lt;br /&gt;
BCSAR are located in the RomFS and store various audio formats, such as CSTM, CWSD, and CWAV.&lt;br /&gt;
&lt;br /&gt;
== Format ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;CSAR&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x2&lt;br /&gt;
|  Byte order mark?&lt;br /&gt;
|-&lt;br /&gt;
|  0x6&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Length of BRSAR header&lt;br /&gt;
|-&lt;br /&gt;
|  0xB&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Version?&lt;br /&gt;
|-&lt;br /&gt;
|  0xC&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of the entire BCSAR (starting from 0x0)&lt;br /&gt;
|-&lt;br /&gt;
|  0x10&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Amount of partitions in the BCSAR? [STRG + INFO + FILE = 0x03 (= 3)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x15&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Partition header length? [same for each partition? (ie STRG,INFO,and FILE header lengths)]&lt;br /&gt;
|-&lt;br /&gt;
|  0x18&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x1C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x24&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x28&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x30&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Location of FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x34&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of FILE partition&lt;br /&gt;
|-&lt;br /&gt;
|  0x38&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th partition location?&lt;br /&gt;
|-&lt;br /&gt;
|  0x3C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Reserved for 4th partition length?&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Partitions ==&lt;br /&gt;
&lt;br /&gt;
=== STRG ===&lt;br /&gt;
&lt;br /&gt;
STRG contains the names of the audio files in the BCWAV.&lt;br /&gt;
&lt;br /&gt;
For now I only know information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;STRG&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of STRG partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== INFO ===&lt;br /&gt;
&lt;br /&gt;
INFO presumably contains information on the audio files? Possibly used to connect names from STRG to data from FILE?&lt;br /&gt;
&lt;br /&gt;
For now I only know information in the header for this partition, but I&#039;m working on figuring the rest out.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;INFO&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of INFO partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== FILE ===&lt;br /&gt;
&lt;br /&gt;
FILE contains all of the audio data in the BCSAR.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x0&lt;br /&gt;
|  0x4&lt;br /&gt;
|  MAGIC &amp;quot;FILE&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
|  0x4&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Length of FILE partition (also in CSAR header)&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
There isn&#039;t a whole lot else I can document about the FILE partition, since the data in it will most definitely vary depending on the game. (since audio is more than likely to change in each game) There is no table in FILE so a different partition (presumably INFO) must be used to connect the data in FILE with the names from STRG.&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=3DS_Development_Unit_Software&amp;diff=4151</id>
		<title>3DS Development Unit Software</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=3DS_Development_Unit_Software&amp;diff=4151"/>
		<updated>2012-10-17T16:52:46Z</updated>

		<summary type="html">&lt;p&gt;Xcution: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The following is a description of the functions where possible of the applications unique to 3DS Development Units. Descriptions Derived from SDK revision 37904. For information on 3DS Development Hardware see [http://gbatemp.net/topic/327858-3ds-development-hardware/]&lt;br /&gt;
[[File:CTR_HMN_DEV.png|300px|thumb|right|Beautifully clear picture of the Dev Apps + Home Menu. Click to view in great quality. - Xcution]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Dev Menu == &lt;br /&gt;
[[File:Devmenuicon.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:Devmenscnsht.jpg|250px|thumb|right|Dev Menu Screenshots]]&lt;br /&gt;
[[File:Old_Dev_Menu.png|200px|thumb|left|Old Dev Menu Screenshot]]&lt;br /&gt;
This application on the top screen displays the firmware and revision of the Dev Menu, the free space available on the [[Flash Filesystem#TWL partition|TWL(DSi) NAND partition]] and [[SD Filesystem|SD card]] if present. It also provides information on the current file or device selected, as well as navigation instructions for the bottom screen.The bottom screen has three different windows, which are:&lt;br /&gt;
&lt;br /&gt;
*Programs- From this window, applications can be loaded from the [[Flash Filesystem|NAND]], the [[SD Filesystem|SD card]] and the slot 1 card (only a select scope of applications, see below for Dev Menu revisions and their corresponding scope of applications) . This is shown in the format of &amp;quot;Unique Id&#039;   &#039;[[Serials#Product Code|Product Code]]&#039;&amp;quot;. Installed titles can be deleted from this menu.&lt;br /&gt;
&lt;br /&gt;
*Import- From this window, titles compiled in the format of a .[[CIA]] file, can be installed from the SD card.&lt;br /&gt;
&lt;br /&gt;
*ExtData- From this window, the 3DS&#039;s [[Extdata|ExtData]](this includes all ExtData) can be deleted&lt;br /&gt;
&lt;br /&gt;
(Note that retail 3ds games are not recognised by Developer 3DSs and the Dev Menu prints &amp;quot;Unknown Card&amp;quot; in the &#039;Programs&#039; window and shows no details on top screen)&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  Dev Menu Revision&lt;br /&gt;
!  Title Types Accessible&lt;br /&gt;
|-&lt;br /&gt;
|  ?- 32640 - 33437&lt;br /&gt;
|  0000(NAND Only),0010,8004,8005,8011&lt;br /&gt;
|- &lt;br /&gt;
|  35887&lt;br /&gt;
|  0000(NAND Only),8004&lt;br /&gt;
|-&lt;br /&gt;
|  37785 - 40909 -?&lt;br /&gt;
|  0000(NAND and SDMC),8004&lt;br /&gt;
|-&lt;br /&gt;
|  ?- 47586 -?&lt;br /&gt;
|  0000(NAND and SDMC),0002, 8004&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Config == &lt;br /&gt;
[[File:Configicon.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:3DS_dev_configmenu.JPG|250px|thumb|right|Config Menu Screenshot]]&lt;br /&gt;
This application is a configuration menu for the 3DS, which has the following options:&lt;br /&gt;
&lt;br /&gt;
*Reset Settings - Resets all settings to default.&lt;br /&gt;
&lt;br /&gt;
*Hid Setting - (human interface device) Calibrates Touch-Pad and Analog stick.&lt;br /&gt;
&lt;br /&gt;
*Rtc Setting - (real time clock) Sets system time.&lt;br /&gt;
&lt;br /&gt;
*Lcd Setting - Sets display settings as found in the home menu as well as Flicker settings.&lt;br /&gt;
&lt;br /&gt;
*User Info Setting - Allows username change and &amp;quot;NG NAME FLAG&amp;quot; to be set to true or false.&lt;br /&gt;
&lt;br /&gt;
*Other Setting(branches off into other settings) - &lt;br /&gt;
:*Sound Mode - mono/stereo/surround&lt;br /&gt;
&lt;br /&gt;
:*System Mode - Changes Memory Allowance.&lt;br /&gt;
::*Prod - 64MB Memory mode ([[Home Menu]] can usually only run in this mode)&lt;br /&gt;
::*Dev1 - 96MB Memory mode&lt;br /&gt;
::*Dev2 - 80MB Memory mode&lt;br /&gt;
::*Dev3 - 72MB Memory mode&lt;br /&gt;
::*Dev4 - 32MB Memory mode&lt;br /&gt;
::All CTR Debuggers/Prototype units can change memory allowance. For Developer Test Units, the ability to change Memory Allowance, appears to be dependent on an option when buying the Test Unit. (similar to having a choice to purchase IS_Nitro&#039;s Wireless/USG options when buying an IS_Nitro from Nintendo)&lt;br /&gt;
::On some Test Units, it&#039;s possible to run the [[Home Menu]] outside of Prod. However, software with limited memory (such as the web browser) cannot be launched from the home menu if the home menu is outside of Prod.&lt;br /&gt;
&lt;br /&gt;
:*Exception handler - Selects whether to enable or disable the application&#039;s handling of exceptions that arise in the non-debug environment - enable/disable &lt;br /&gt;
&lt;br /&gt;
:*Break Stop - (enable/disable) - Selects whether to enable or disable stopping the application when a break is encountered in the non-debug environment. If the application is not made to stop, it quits on a break.&lt;br /&gt;
&lt;br /&gt;
:*Menu - (Home Menu/Test Menu) This function edits the [[Config Info Blocks|configuration]] field containing the menu TID for dev units, allowing the user to choose between the [[Home Menu]] or the [[3DS Development Unit GUI#Test Menu|Test Menu]], as the menu loaded by the [[NS]] module.&lt;br /&gt;
&lt;br /&gt;
:*Language - same options found in the Language section of [[System Settings]] but also has an &amp;quot;invalid&amp;quot; option&lt;br /&gt;
&lt;br /&gt;
:*Dlp Force Child Import - (enable/disable) - normally the 3ds caches downloaded &amp;quot;Download Play (Dlp)&amp;quot; applications on the nand and only re-downloads, overwriting the cached copy if the version application being requested to downloaded is higher than what is currently present on the nand. Enabling this option forces the 3ds to download and overwrite the cached copy on the nand, regardless of the version of the application being downloaded. This is of course for testing purposes.&lt;br /&gt;
&lt;br /&gt;
:*Debug Mode - (enable/disable) - Toggles Debug environment?&lt;br /&gt;
       &lt;br /&gt;
*Test Setting - Test calibration of touch pad and joystick&lt;br /&gt;
       &lt;br /&gt;
*Eula Setting - Allows user to change &amp;quot;Agree Version&amp;quot; namely:&amp;quot;ff.ff&amp;quot; the two symbol sets are interchangeable with combination variations from aa to 99 (default is 00.00 where the Eula is not accepted yet).&lt;br /&gt;
       &lt;br /&gt;
*Stereo Camera Cal for Check - Camera test (?) as options to &amp;quot;write strange data(excess Z-rot) and &amp;quot;reset to factory default&amp;quot;.&lt;br /&gt;
       &lt;br /&gt;
*Gyro / Accel Cal for Check - Allows Gyro and Accelerometer to be calibrated.&lt;br /&gt;
       &lt;br /&gt;
*Ctr Info Setting - Changes settings to that found on the ctrsetting.txt on an SD .&lt;br /&gt;
&lt;br /&gt;
== Downloadplay Client ==&lt;br /&gt;
[[File:Dlpcliscnsht.jpg|250px|thumb|right|Downloadplay Client Screenshots]]&lt;br /&gt;
[[File:Dlpcliicon.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Even though a Developer 3DS has a &amp;quot;Download Play&amp;quot; application visually identical to the retail 3DS [[Download Play|application]], the &amp;quot;Downloadplay Client&amp;quot; application can be installed as an alternative to the regular Download Play application. (Note: a Developer 3DS&#039; and Retail 3DS&#039; cannot receive download play &#039;children&#039; from each-other.) This Developer application is a stripped down version of &#039;Download Play&#039; which has the following options and limitations:&lt;br /&gt;
&lt;br /&gt;
*It can only download 3ds download play titles&lt;br /&gt;
&lt;br /&gt;
*Scraps the GUI found in the normal Download Play application(see screenshot)&lt;br /&gt;
&lt;br /&gt;
*Can select from a maximum of 16 Download play &#039;servers&#039;&lt;br /&gt;
&lt;br /&gt;
This application is clearly used for easy testing of download play &#039;child&#039; apps, without the hassle of constantly re-navigating the normal Download Play interface&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Network Settings ==&lt;br /&gt;
[[File:Netsetscnsht.jpg|250px|thumb|right|Network Settings Screenshots]]&lt;br /&gt;
[[File:Netseticon.png]]&lt;br /&gt;
&lt;br /&gt;
This Developer application allows the users to directly modify the following from any of the three possible network setting &#039;slots&#039;&lt;br /&gt;
&lt;br /&gt;
*Security Mode :(the wireless encryption the network is using) OPEN/WEP 40bit/WEP 104bit/128bit/WPA TKIP/WPA2 TKIP/WPA AES/WPA2 AES&lt;br /&gt;
&lt;br /&gt;
*SSID :(self-explanitory) maximum 32 characters&lt;br /&gt;
&lt;br /&gt;
*KEY :(the key for the encrytion is here in plain text) the maximum length depends on encryption type&lt;br /&gt;
&lt;br /&gt;
*AutoDNS :(whether the 3DS obtains the DNS automatically or not) |True-3DS obtains the DNS automatically|False-3DS uses the DNS server address provided by the user(it is possible to edit this here)|&lt;br /&gt;
&lt;br /&gt;
At the bottom of the setting options there are two choices:&lt;br /&gt;
&lt;br /&gt;
*Write Setting &amp;amp; Connect Test To AP - Applies the settings above and performs a connection test(note any settings made in system settings for this connection, which are not present in the above settings will be nullified, for example any proxy server settings)&lt;br /&gt;
&lt;br /&gt;
*Remove Setting - removes all settings for this &#039;slot&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== SaveDataFiler ==&lt;br /&gt;
[[File:Saveflscnsht.jpg|250px|thumb|right|SaveDataFiler Screenshots]]&lt;br /&gt;
[[File:Saveflicon.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This 3DS Developer application allows save files and extdata to be exported and imported from an SD Card. The window has three tabs:&lt;br /&gt;
&lt;br /&gt;
*User - This is where saves for 3DS applications and saves on 3DS Game Cards(not DS Game Cards) can be exported to the SD Card. Saves cannot be deleted here.&lt;br /&gt;
&lt;br /&gt;
*ExtData - This is where application extdata can be deleted or exported to the SD Card for later use&lt;br /&gt;
&lt;br /&gt;
*SD - This is where extdata and application saves on the SD Card can be imported to the 3DS or 3DS Game Card. Also extdata and application saves can be deleted from the SD Card&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== CTR MenuSelector ==&lt;br /&gt;
[[File:Menuselector.jpg|100px|thumb|right|Menu Selector Screenshot]]&lt;br /&gt;
[[File:Menuselectoricon.jpg]]&lt;br /&gt;
&lt;br /&gt;
This application when loaded can change the current &#039;Active Menu&#039;(being used at the moment) by editing the menu TID [[Config Info Blocks|configuration]] field, allowing the user to choose between the [[Home Menu]] or the [[3DS Development Unit GUI#Test Menu|Test Menu]], as the menu loaded by the [[NS]] module. This application was superseded by the introduction of the &amp;quot;Menu&amp;quot; choice in the [[3DS Development Unit Software#Config|Config Menu]] and consequently removed as a standard application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== CecLotcheckTool ==&lt;br /&gt;
[[File:Ceclotscnsht.jpg|250px|thumb|right|CecLotcheckTool Screenshot]]&lt;br /&gt;
[[File:Cecloticon.png]]&lt;br /&gt;
&lt;br /&gt;
This application is used to manage CECs (Chance Encounter Communications, AKA StreetPass hits) for any of the twelve possible applications used on the 3DS, if there are any. The application has twelve possible slots which can be filled by BOXes . The BOXes are individual applications which are permitted by the user to use CECs, such as StreetPass Mii Plaza or Nintendo 3DS Sound. And as such, the boxes in this application correspond to the applications in &#039;StreetPass Management&#039;, in &#039;System Settings&#039; (StreetPass Management is accessible from retail 3DSs). The functions of this application:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;Y&amp;gt; BOX Options - this opens up a sub menu with the following options(when hovering over Nintendo 3DS Sounds BOX - the only one I can test the app with):&lt;br /&gt;
&lt;br /&gt;
*Box Info - Gives the Out-Box parameters [[File:Boxinf.jpg|250px|]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Message Info (OUT-BOX) - Gives the Message Parameters For the current BOX [[File:Mesinf.jpg|250px|]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Dummy Message Settings - Not quite sure what the options do here [[File:Dummesinf.jpg|250px|]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;A&amp;gt; Create Dummy BOXes - Creates dummy BOXes to fill any unused slots. (does not overwrite any present slots)&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;X&amp;gt; Delete BOXes - Deletes all of the BOXes from the slots.&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;START&amp;gt; CEC Filter Reset - I can only guess that it erases data collected by CEC enabled apps.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== BossLotCheckTool ==&lt;br /&gt;
[[File:Bosslcscnsht.png|100px|thumb|right|BossLotCheckTool Screenshot]]&lt;br /&gt;
[[File:Bosslcicon.png]]&lt;br /&gt;
&lt;br /&gt;
This application is used to manage BOSS (SpotPass) tasks/data for 3DS titles which utilise BOSS communications. &#039;Pokedex&#039; is an application which utilizes BOSS comunications. This application also displays the 3DS&#039;s friend code, although this code is not to be confused with the 3DS&#039;s Friend Card code found in &#039;Friends List&#039;. The user can browse by unique ID the 3DS titles(excluding system titles) registered to use BOSS. For each title you can view details about the downloaded &#039;NsData&#039; which accompanies BOSS downloads, view the BOSS task lists (implies applications can perform more than one BOSS task). You can also view various details about each BOSS task, including:&lt;br /&gt;
&lt;br /&gt;
 TaskStatus : DONE?&lt;br /&gt;
 TaskExecCount : How many times the BOSS task has been executed&lt;br /&gt;
 TaskExecInterval : Period of time (in seconds) in the task is to be executed, in intervals&lt;br /&gt;
 TaskPriority : Is a number value &lt;br /&gt;
 URL : The URL to the BOSS content&lt;br /&gt;
 AP Info : NONE?&lt;br /&gt;
 TaskResultCode : Success or not&lt;br /&gt;
 HTTP_StatusCode : Self explanatory &lt;br /&gt;
 DataSize : Size of Content (in bytes)&lt;br /&gt;
 Last_Modified : Last time the BOSS content (on server) was modified&lt;br /&gt;
 StartTime : when the BOSS task was registered&lt;br /&gt;
 OptOut : Whether the user can/has opted out of BOSS communication for this task&lt;br /&gt;
 &lt;br /&gt;
 It also possible to manually execute the BOSS task from here&lt;br /&gt;
&lt;br /&gt;
== Stereo Camera Calibrator ==&lt;br /&gt;
[[File:Stecamscnsht.png|100px|thumb|right|Stereo Camera Calibrator Screenshot]]&lt;br /&gt;
[[File:Stecamicon.png]]&lt;br /&gt;
&lt;br /&gt;
The Stereo Camera Calibrator (SCC), in a nutshell, allows the user to adjust the configuration of the outer cameras in relation to each other. It can be configured automatically by positioning the 3DS a set distance away from a special chart. It can also be configured manually, by setting the rotation of each camera image and the size of the right eye camera. The 3D effect can be perceived by superimposing the right eye camera image translucently with the left eye camera image or by viewing the 3D image directly by use of the parallax barrier in the 3DS Screen. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Model Viewer ==&lt;br /&gt;
[[File:ModelViewer.png|100px|thumb|right|3DS Model Viewer Screenshot]]&lt;br /&gt;
[[File:ModelViewericon.png]]&lt;br /&gt;
&lt;br /&gt;
As the name suggests this application allows the user to view models. It is supposed to be used with a CTR-Debugger, assumingly so models can be entered in the memory of the program. But the program can be used on Test Units, but the model is restricted to three coloured lines depicting the 3 dimensions (x,y,z). The model can be viewed from any angle or scale, the perspective is controlled by the circle pad and directional buttons. And of course the application utilises the 3D effect&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Friend Testing Partner ==&lt;br /&gt;
[[File:Ftestpscnsht.png|250px|thumb|right|Friend Testing Partner Screenshot]]&lt;br /&gt;
[[File:Ftestpicon.png]]&lt;br /&gt;
&lt;br /&gt;
The Friend Testing Partner application is used to test/monitor the 3DS&#039;s Friend List function. It allows the user to test various functions of the 3DS&#039;s out-going Friend Card, by giving the following options:&lt;br /&gt;
*Master Control - (RUN/STOP) (STOP is the default setting) when ‘STOP’ is selected the 3DS Friend Card uses the user’s settings/data. When ‘RUN’ is selected  the 3DS Friend Card uses the dummy settings/data chosen to test from the settings bellow.&lt;br /&gt;
&lt;br /&gt;
*Login/Logout - (ON/OFF) (ON is the default setting) What effect this has on the Friend Card is not known&lt;br /&gt;
&lt;br /&gt;
*Playing Title - (ON/OFF) (ON is the default setting) When ‘ON’ is selected the currently used title is ignored and a dummy applications are cycled through as the ‘Playing Title’ approximately every ten seconds in its place. The dummy applications used are the applications found in Firmware version 1.0.0-0 of a retail 3DS including the ‘Nintendo Zone viewer’ app. When ‘OFF’ is selected the currently used title (which is the Friend Testing Partner app) is used as the ‘Playing Title’&lt;br /&gt;
&lt;br /&gt;
*Mode Description - (ON/OFF) (ON is the default setting) When ‘ON’ is selected the Software in Use(Playing Title) is accompanied by the Date and Time found on that user’s 3DS. The Mode Description is refreshed every ten or so seconds. When ‘OFF’ is selected the date and time on the user’s 3DS is not displayed.&lt;br /&gt;
&lt;br /&gt;
*Message - (ON/OFF) (ON is the default setting) When ‘ON’ is selected the message made by the user is replaced(not overwritten as it reverts back to the user’s choice when this is ‘OFF’) by the current date and time in the format “YYYYMMDD HHMMSS”, this is refreshed every ten or so seconds.&lt;br /&gt;
&lt;br /&gt;
*Mii - (ON/OFF) (ON is the default setting) When &#039;ON&#039; the currently used Mii is replaced with one of 4 dummy Miis and cycles them through every ten seconds with a new dummy mii. This effect can only be seen from another 3DS not the host&lt;br /&gt;
&lt;br /&gt;
*Favorite Title (ON/OFF) (ON is the default setting) When &#039;ON&#039; is selected, the user’s favorite title is replaced with a dummy, which is replaced every 10 or so seconds. &lt;br /&gt;
Also this application allows the user to monitor the whether the 3DS is online or not and whether the 3DS’s Friend Presence is online or offline. Every time a dummy setting is refreshed it is displayed on the top screen with a time stamp.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Game Coin Setter* ==&lt;br /&gt;
[[File:Coinstscnsht.png|100px|thumb|right|Game Coin Setter Screenshot]]&lt;br /&gt;
[[File:Coinsticon.png]]  &lt;br /&gt;
&lt;br /&gt;
This application is used to set the Play Coin count on the 3DS. Obviously this was created so a developer can test parts of their game in which the player can exchange earned play coins for in-game content or similar. It has a very simple interface showing the current play coin count and the adjustable option, the target coin count. These are the controls with explanation of each:&lt;br /&gt;
&lt;br /&gt;
*LEFT/RIGHT - using the D-pad only to adjust the &#039;Target Count&#039; to a number between 0-300.&lt;br /&gt;
&lt;br /&gt;
*A - Sets the &#039;Current Count&#039; (amount of play coins the system has) to the user selected &#039;Target Count&#039; (the user specified amount of play coins)&lt;br /&gt;
&lt;br /&gt;
*L+R+X - &amp;quot;Preclude today&#039;s Increment&amp;quot; not sure how this affects the Play Coin count.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== TWL Development Tools ==&lt;br /&gt;
&lt;br /&gt;
These are DSi/DS mode development tools repackaged into a [[CIA]], for installing to the TWL NAND.&lt;br /&gt;
&lt;br /&gt;
=== NINTENDO DS - WMtest ===&lt;br /&gt;
[[File:Wmtestscnsht.jpg|300px|thumb|right|WMtest Screenshot]]&lt;br /&gt;
[[File:Wmtesttool.png‎]]&lt;br /&gt;
&lt;br /&gt;
This application is a TWL(DSi) application compiled for use on the 3DS. It is an wireless test tool with its uses explained below:&lt;br /&gt;
&lt;br /&gt;
*Scan Test - Scans Wireless channels 1-13(can be focused on one specific channel) for broadcasting stations. It can detect two types of broadcasting stations:&lt;br /&gt;
&lt;br /&gt;
Wifi Access Points - Giving the Mac Address, Broadcasting Channel, &#039;c&#039;, and the SSID&lt;br /&gt;
&lt;br /&gt;
DS Stations such as DS Download stations and Pokemon distributors - Giving the Mac Address, Brodcasting Channel, TGID and GGID&lt;br /&gt;
&lt;br /&gt;
*ScanEx Test - and has two Scan Types. Passive which lets you individually scan channels 1-13 (only one at at time) and the DS distribution channels (1,7,13 all at once). And Active which scans all 13 channels at once. when it finds a channel it prints on the bottom screen next to &#039;Found&#039; &#039;bssDescCount=&#039;&lt;br /&gt;
&lt;br /&gt;
*MeasureChannel Test - not quite sure what this does but it for a given channel it gives a ratio(in percentage form), which it finds in its allocated test time ranging from 10ms to 1000ms. And for every interval of time which is specified, it tests and gives a ratio.&lt;br /&gt;
&lt;br /&gt;
*Noise Mode - Seeks wireless channels in which to make wireless noise (This is not made very clear on the app). You can specify the:&lt;br /&gt;
&lt;br /&gt;
Channel where the scanner will seek to make noise&lt;br /&gt;
&lt;br /&gt;
Noise Rate, ranging from 0% to 100%&lt;br /&gt;
&lt;br /&gt;
Frequency, ranging from 10ms to 50ms&lt;br /&gt;
&lt;br /&gt;
Seek Mode, ranging from 1000ms to 1500ms&lt;br /&gt;
&lt;br /&gt;
When the settings are chosen the top screen has two counters which display &#039;Noise ON count&#039; and &#039;Noise OFF count&#039; the counters are affected by the noise rate. Starting at 0% the &#039;Noise ON count&#039; does not change but as the Noise rate gets closer to 100% the count moves and gets faster as Noise rate reaches 100%. For &#039;Noise OFF count&#039; it is the exact opposite to the &#039; Noise ON count&#039; in regards to counting.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt; A substitute icon is used here in place of a generic icon (which the application uses) to stop confusion with other applications. The original generic icon can be viewed in the icon&#039;s history.&lt;br /&gt;
[[Category:3DS Development Unit Related Pages]]&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=3DS_Development_Unit_Software&amp;diff=4150</id>
		<title>3DS Development Unit Software</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=3DS_Development_Unit_Software&amp;diff=4150"/>
		<updated>2012-10-17T16:51:32Z</updated>

		<summary type="html">&lt;p&gt;Xcution: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;The following is a description of the functions where possible of the applications unique to 3DS Development Units. Descriptions Derived from SDK revision 37904. For information on 3DS Development Hardware see [http://gbatemp.net/topic/327858-3ds-development-hardware/]&lt;br /&gt;
[[File:CTR_HMN_DEV.png|300px|thumb|right|Beautifully clear picture of the Dev Apps + Home Menu. Click to view in great quality. - Xcution]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Dev Menu == &lt;br /&gt;
[[File:Devmenuicon.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:Devmenscnsht.jpg|250px|thumb|right|Dev Menu Screenshots]]&lt;br /&gt;
[[File:Old_Dev_Menu.png|200px|thumb|left|Old Dev Menu Screenshot]]&lt;br /&gt;
This application on the top screen displays the firmware and revision of the Dev Menu, the free space available on the [[Flash Filesystem#TWL partition|TWL(DSi) NAND partition]] and [[SD Filesystem|SD card]] if present. It also provides information on the current file or device selected, as well as navigation instructions for the bottom screen.The bottom screen has three different windows, which are:&lt;br /&gt;
&lt;br /&gt;
*Programs- From this window, applications can be loaded from the [[Flash Filesystem|NAND]], the [[SD Filesystem|SD card]] and the slot 1 card (only a select scope of applications, see below for Dev Menu revisions and their corresponding scope of applications) . This is shown in the format of &amp;quot;Unique Id&#039;   &#039;[[Serials#Product Code|Product Code]]&#039;&amp;quot;. Installed titles can be deleted from this menu.&lt;br /&gt;
&lt;br /&gt;
*Import- From this window, titles compiled in the format of a .[[CIA]] file, can be installed from the SD card.&lt;br /&gt;
&lt;br /&gt;
*ExtData- From this window, the 3DS&#039;s [[Extdata|ExtData]](this includes all ExtData) can be deleted&lt;br /&gt;
&lt;br /&gt;
(Note that retail 3ds games are not recognised by Developer 3DSs and the Dev Menu prints &amp;quot;Unknown Card&amp;quot; in the &#039;Programs&#039; window and shows no details on top screen)&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  Dev Menu Revision&lt;br /&gt;
!  Title Types Accessible&lt;br /&gt;
|-&lt;br /&gt;
|  ?- 32640 - 33437&lt;br /&gt;
|  0000(NAND Only),0010,8004,8005,8011&lt;br /&gt;
|- &lt;br /&gt;
|  35887&lt;br /&gt;
|  0000(NAND Only),8004&lt;br /&gt;
|-&lt;br /&gt;
|  37785 - 40909 -?&lt;br /&gt;
|  0000(NAND and SDMC),8004&lt;br /&gt;
|-&lt;br /&gt;
|  ?- 47586 -?&lt;br /&gt;
|  0000(NAND and SDMC),0002, 8004&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Config == &lt;br /&gt;
[[File:Configicon.png]]&lt;br /&gt;
&lt;br /&gt;
[[File:3DS_dev_configmenu.JPG|250px|thumb|right|Config Menu Screenshot]]&lt;br /&gt;
This application is a configuration menu for the 3DS, which has the following options:&lt;br /&gt;
&lt;br /&gt;
*Reset Settings - Resets all settings to default.&lt;br /&gt;
&lt;br /&gt;
*Hid Setting - (human interface device) Calibrates Touch-Pad and Analog stick.&lt;br /&gt;
&lt;br /&gt;
*Rtc Setting - (real time clock) Sets system time.&lt;br /&gt;
&lt;br /&gt;
*Lcd Setting - Sets display settings as found in the home menu as well as Flicker settings.&lt;br /&gt;
&lt;br /&gt;
*User Info Setting - Allows username change and &amp;quot;NG NAME FLAG&amp;quot; to be set to true or false.&lt;br /&gt;
&lt;br /&gt;
*Other Setting(branches off into other settings) - &lt;br /&gt;
:*Sound Mode - mono/stereo/surround&lt;br /&gt;
&lt;br /&gt;
:*System Mode - Changes Memory Allowance.&lt;br /&gt;
::*Prod - 64MB Memory mode ([[Home Menu]] can usually only run in this mode)&lt;br /&gt;
::*Dev1 - 96MB Memory mode&lt;br /&gt;
::*Dev2 - 80MB Memory mode&lt;br /&gt;
::*Dev3 - 72MB Memory mode&lt;br /&gt;
::*Dev4 - 32MB Memory mode&lt;br /&gt;
::All CTR Debuggers/Prototype units can change memory allowance. For Developer Test Units, the ability to change Memory Allowance, appears to be dependent on an option when buying the Test Unit. (similar to having a choice to purchase IS_Nitro&#039;s Wireless/USG options when buying an IS_Nitro from Nintendo)&lt;br /&gt;
On some Test Units, it&#039;s possible to run the [[Home Menu]] outside of Prod. However, software with limited memory (such as the web browser) cannot be launched from the home menu if the home menu is outside of Prod.&lt;br /&gt;
&lt;br /&gt;
:*Exception handler - Selects whether to enable or disable the application&#039;s handling of exceptions that arise in the non-debug environment - enable/disable &lt;br /&gt;
&lt;br /&gt;
:*Break Stop - (enable/disable) - Selects whether to enable or disable stopping the application when a break is encountered in the non-debug environment. If the application is not made to stop, it quits on a break.&lt;br /&gt;
&lt;br /&gt;
:*Menu - (Home Menu/Test Menu) This function edits the [[Config Info Blocks|configuration]] field containing the menu TID for dev units, allowing the user to choose between the [[Home Menu]] or the [[3DS Development Unit GUI#Test Menu|Test Menu]], as the menu loaded by the [[NS]] module.&lt;br /&gt;
&lt;br /&gt;
:*Language - same options found in the Language section of [[System Settings]] but also has an &amp;quot;invalid&amp;quot; option&lt;br /&gt;
&lt;br /&gt;
:*Dlp Force Child Import - (enable/disable) - normally the 3ds caches downloaded &amp;quot;Download Play (Dlp)&amp;quot; applications on the nand and only re-downloads, overwriting the cached copy if the version application being requested to downloaded is higher than what is currently present on the nand. Enabling this option forces the 3ds to download and overwrite the cached copy on the nand, regardless of the version of the application being downloaded. This is of course for testing purposes.&lt;br /&gt;
&lt;br /&gt;
:*Debug Mode - (enable/disable) - Toggles Debug environment?&lt;br /&gt;
       &lt;br /&gt;
*Test Setting - Test calibration of touch pad and joystick&lt;br /&gt;
       &lt;br /&gt;
*Eula Setting - Allows user to change &amp;quot;Agree Version&amp;quot; namely:&amp;quot;ff.ff&amp;quot; the two symbol sets are interchangeable with combination variations from aa to 99 (default is 00.00 where the Eula is not accepted yet).&lt;br /&gt;
       &lt;br /&gt;
*Stereo Camera Cal for Check - Camera test (?) as options to &amp;quot;write strange data(excess Z-rot) and &amp;quot;reset to factory default&amp;quot;.&lt;br /&gt;
       &lt;br /&gt;
*Gyro / Accel Cal for Check - Allows Gyro and Accelerometer to be calibrated.&lt;br /&gt;
       &lt;br /&gt;
*Ctr Info Setting - Changes settings to that found on the ctrsetting.txt on an SD .&lt;br /&gt;
&lt;br /&gt;
== Downloadplay Client ==&lt;br /&gt;
[[File:Dlpcliscnsht.jpg|250px|thumb|right|Downloadplay Client Screenshots]]&lt;br /&gt;
[[File:Dlpcliicon.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Even though a Developer 3DS has a &amp;quot;Download Play&amp;quot; application visually identical to the retail 3DS [[Download Play|application]], the &amp;quot;Downloadplay Client&amp;quot; application can be installed as an alternative to the regular Download Play application. (Note: a Developer 3DS&#039; and Retail 3DS&#039; cannot receive download play &#039;children&#039; from each-other.) This Developer application is a stripped down version of &#039;Download Play&#039; which has the following options and limitations:&lt;br /&gt;
&lt;br /&gt;
*It can only download 3ds download play titles&lt;br /&gt;
&lt;br /&gt;
*Scraps the GUI found in the normal Download Play application(see screenshot)&lt;br /&gt;
&lt;br /&gt;
*Can select from a maximum of 16 Download play &#039;servers&#039;&lt;br /&gt;
&lt;br /&gt;
This application is clearly used for easy testing of download play &#039;child&#039; apps, without the hassle of constantly re-navigating the normal Download Play interface&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Network Settings ==&lt;br /&gt;
[[File:Netsetscnsht.jpg|250px|thumb|right|Network Settings Screenshots]]&lt;br /&gt;
[[File:Netseticon.png]]&lt;br /&gt;
&lt;br /&gt;
This Developer application allows the users to directly modify the following from any of the three possible network setting &#039;slots&#039;&lt;br /&gt;
&lt;br /&gt;
*Security Mode :(the wireless encryption the network is using) OPEN/WEP 40bit/WEP 104bit/128bit/WPA TKIP/WPA2 TKIP/WPA AES/WPA2 AES&lt;br /&gt;
&lt;br /&gt;
*SSID :(self-explanitory) maximum 32 characters&lt;br /&gt;
&lt;br /&gt;
*KEY :(the key for the encrytion is here in plain text) the maximum length depends on encryption type&lt;br /&gt;
&lt;br /&gt;
*AutoDNS :(whether the 3DS obtains the DNS automatically or not) |True-3DS obtains the DNS automatically|False-3DS uses the DNS server address provided by the user(it is possible to edit this here)|&lt;br /&gt;
&lt;br /&gt;
At the bottom of the setting options there are two choices:&lt;br /&gt;
&lt;br /&gt;
*Write Setting &amp;amp; Connect Test To AP - Applies the settings above and performs a connection test(note any settings made in system settings for this connection, which are not present in the above settings will be nullified, for example any proxy server settings)&lt;br /&gt;
&lt;br /&gt;
*Remove Setting - removes all settings for this &#039;slot&#039;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== SaveDataFiler ==&lt;br /&gt;
[[File:Saveflscnsht.jpg|250px|thumb|right|SaveDataFiler Screenshots]]&lt;br /&gt;
[[File:Saveflicon.png]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
This 3DS Developer application allows save files and extdata to be exported and imported from an SD Card. The window has three tabs:&lt;br /&gt;
&lt;br /&gt;
*User - This is where saves for 3DS applications and saves on 3DS Game Cards(not DS Game Cards) can be exported to the SD Card. Saves cannot be deleted here.&lt;br /&gt;
&lt;br /&gt;
*ExtData - This is where application extdata can be deleted or exported to the SD Card for later use&lt;br /&gt;
&lt;br /&gt;
*SD - This is where extdata and application saves on the SD Card can be imported to the 3DS or 3DS Game Card. Also extdata and application saves can be deleted from the SD Card&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== CTR MenuSelector ==&lt;br /&gt;
[[File:Menuselector.jpg|100px|thumb|right|Menu Selector Screenshot]]&lt;br /&gt;
[[File:Menuselectoricon.jpg]]&lt;br /&gt;
&lt;br /&gt;
This application when loaded can change the current &#039;Active Menu&#039;(being used at the moment) by editing the menu TID [[Config Info Blocks|configuration]] field, allowing the user to choose between the [[Home Menu]] or the [[3DS Development Unit GUI#Test Menu|Test Menu]], as the menu loaded by the [[NS]] module. This application was superseded by the introduction of the &amp;quot;Menu&amp;quot; choice in the [[3DS Development Unit Software#Config|Config Menu]] and consequently removed as a standard application.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== CecLotcheckTool ==&lt;br /&gt;
[[File:Ceclotscnsht.jpg|250px|thumb|right|CecLotcheckTool Screenshot]]&lt;br /&gt;
[[File:Cecloticon.png]]&lt;br /&gt;
&lt;br /&gt;
This application is used to manage CECs (Chance Encounter Communications, AKA StreetPass hits) for any of the twelve possible applications used on the 3DS, if there are any. The application has twelve possible slots which can be filled by BOXes . The BOXes are individual applications which are permitted by the user to use CECs, such as StreetPass Mii Plaza or Nintendo 3DS Sound. And as such, the boxes in this application correspond to the applications in &#039;StreetPass Management&#039;, in &#039;System Settings&#039; (StreetPass Management is accessible from retail 3DSs). The functions of this application:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;Y&amp;gt; BOX Options - this opens up a sub menu with the following options(when hovering over Nintendo 3DS Sounds BOX - the only one I can test the app with):&lt;br /&gt;
&lt;br /&gt;
*Box Info - Gives the Out-Box parameters [[File:Boxinf.jpg|250px|]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Message Info (OUT-BOX) - Gives the Message Parameters For the current BOX [[File:Mesinf.jpg|250px|]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*Dummy Message Settings - Not quite sure what the options do here [[File:Dummesinf.jpg|250px|]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;A&amp;gt; Create Dummy BOXes - Creates dummy BOXes to fill any unused slots. (does not overwrite any present slots)&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;X&amp;gt; Delete BOXes - Deletes all of the BOXes from the slots.&lt;br /&gt;
&lt;br /&gt;
*&amp;lt;START&amp;gt; CEC Filter Reset - I can only guess that it erases data collected by CEC enabled apps.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== BossLotCheckTool ==&lt;br /&gt;
[[File:Bosslcscnsht.png|100px|thumb|right|BossLotCheckTool Screenshot]]&lt;br /&gt;
[[File:Bosslcicon.png]]&lt;br /&gt;
&lt;br /&gt;
This application is used to manage BOSS (SpotPass) tasks/data for 3DS titles which utilise BOSS communications. &#039;Pokedex&#039; is an application which utilizes BOSS comunications. This application also displays the 3DS&#039;s friend code, although this code is not to be confused with the 3DS&#039;s Friend Card code found in &#039;Friends List&#039;. The user can browse by unique ID the 3DS titles(excluding system titles) registered to use BOSS. For each title you can view details about the downloaded &#039;NsData&#039; which accompanies BOSS downloads, view the BOSS task lists (implies applications can perform more than one BOSS task). You can also view various details about each BOSS task, including:&lt;br /&gt;
&lt;br /&gt;
 TaskStatus : DONE?&lt;br /&gt;
 TaskExecCount : How many times the BOSS task has been executed&lt;br /&gt;
 TaskExecInterval : Period of time (in seconds) in the task is to be executed, in intervals&lt;br /&gt;
 TaskPriority : Is a number value &lt;br /&gt;
 URL : The URL to the BOSS content&lt;br /&gt;
 AP Info : NONE?&lt;br /&gt;
 TaskResultCode : Success or not&lt;br /&gt;
 HTTP_StatusCode : Self explanatory &lt;br /&gt;
 DataSize : Size of Content (in bytes)&lt;br /&gt;
 Last_Modified : Last time the BOSS content (on server) was modified&lt;br /&gt;
 StartTime : when the BOSS task was registered&lt;br /&gt;
 OptOut : Whether the user can/has opted out of BOSS communication for this task&lt;br /&gt;
 &lt;br /&gt;
 It also possible to manually execute the BOSS task from here&lt;br /&gt;
&lt;br /&gt;
== Stereo Camera Calibrator ==&lt;br /&gt;
[[File:Stecamscnsht.png|100px|thumb|right|Stereo Camera Calibrator Screenshot]]&lt;br /&gt;
[[File:Stecamicon.png]]&lt;br /&gt;
&lt;br /&gt;
The Stereo Camera Calibrator (SCC), in a nutshell, allows the user to adjust the configuration of the outer cameras in relation to each other. It can be configured automatically by positioning the 3DS a set distance away from a special chart. It can also be configured manually, by setting the rotation of each camera image and the size of the right eye camera. The 3D effect can be perceived by superimposing the right eye camera image translucently with the left eye camera image or by viewing the 3D image directly by use of the parallax barrier in the 3DS Screen. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Model Viewer ==&lt;br /&gt;
[[File:ModelViewer.png|100px|thumb|right|3DS Model Viewer Screenshot]]&lt;br /&gt;
[[File:ModelViewericon.png]]&lt;br /&gt;
&lt;br /&gt;
As the name suggests this application allows the user to view models. It is supposed to be used with a CTR-Debugger, assumingly so models can be entered in the memory of the program. But the program can be used on Test Units, but the model is restricted to three coloured lines depicting the 3 dimensions (x,y,z). The model can be viewed from any angle or scale, the perspective is controlled by the circle pad and directional buttons. And of course the application utilises the 3D effect&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Friend Testing Partner ==&lt;br /&gt;
[[File:Ftestpscnsht.png|250px|thumb|right|Friend Testing Partner Screenshot]]&lt;br /&gt;
[[File:Ftestpicon.png]]&lt;br /&gt;
&lt;br /&gt;
The Friend Testing Partner application is used to test/monitor the 3DS&#039;s Friend List function. It allows the user to test various functions of the 3DS&#039;s out-going Friend Card, by giving the following options:&lt;br /&gt;
*Master Control - (RUN/STOP) (STOP is the default setting) when ‘STOP’ is selected the 3DS Friend Card uses the user’s settings/data. When ‘RUN’ is selected  the 3DS Friend Card uses the dummy settings/data chosen to test from the settings bellow.&lt;br /&gt;
&lt;br /&gt;
*Login/Logout - (ON/OFF) (ON is the default setting) What effect this has on the Friend Card is not known&lt;br /&gt;
&lt;br /&gt;
*Playing Title - (ON/OFF) (ON is the default setting) When ‘ON’ is selected the currently used title is ignored and a dummy applications are cycled through as the ‘Playing Title’ approximately every ten seconds in its place. The dummy applications used are the applications found in Firmware version 1.0.0-0 of a retail 3DS including the ‘Nintendo Zone viewer’ app. When ‘OFF’ is selected the currently used title (which is the Friend Testing Partner app) is used as the ‘Playing Title’&lt;br /&gt;
&lt;br /&gt;
*Mode Description - (ON/OFF) (ON is the default setting) When ‘ON’ is selected the Software in Use(Playing Title) is accompanied by the Date and Time found on that user’s 3DS. The Mode Description is refreshed every ten or so seconds. When ‘OFF’ is selected the date and time on the user’s 3DS is not displayed.&lt;br /&gt;
&lt;br /&gt;
*Message - (ON/OFF) (ON is the default setting) When ‘ON’ is selected the message made by the user is replaced(not overwritten as it reverts back to the user’s choice when this is ‘OFF’) by the current date and time in the format “YYYYMMDD HHMMSS”, this is refreshed every ten or so seconds.&lt;br /&gt;
&lt;br /&gt;
*Mii - (ON/OFF) (ON is the default setting) When &#039;ON&#039; the currently used Mii is replaced with one of 4 dummy Miis and cycles them through every ten seconds with a new dummy mii. This effect can only be seen from another 3DS not the host&lt;br /&gt;
&lt;br /&gt;
*Favorite Title (ON/OFF) (ON is the default setting) When &#039;ON&#039; is selected, the user’s favorite title is replaced with a dummy, which is replaced every 10 or so seconds. &lt;br /&gt;
Also this application allows the user to monitor the whether the 3DS is online or not and whether the 3DS’s Friend Presence is online or offline. Every time a dummy setting is refreshed it is displayed on the top screen with a time stamp.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Game Coin Setter* ==&lt;br /&gt;
[[File:Coinstscnsht.png|100px|thumb|right|Game Coin Setter Screenshot]]&lt;br /&gt;
[[File:Coinsticon.png]]  &lt;br /&gt;
&lt;br /&gt;
This application is used to set the Play Coin count on the 3DS. Obviously this was created so a developer can test parts of their game in which the player can exchange earned play coins for in-game content or similar. It has a very simple interface showing the current play coin count and the adjustable option, the target coin count. These are the controls with explanation of each:&lt;br /&gt;
&lt;br /&gt;
*LEFT/RIGHT - using the D-pad only to adjust the &#039;Target Count&#039; to a number between 0-300.&lt;br /&gt;
&lt;br /&gt;
*A - Sets the &#039;Current Count&#039; (amount of play coins the system has) to the user selected &#039;Target Count&#039; (the user specified amount of play coins)&lt;br /&gt;
&lt;br /&gt;
*L+R+X - &amp;quot;Preclude today&#039;s Increment&amp;quot; not sure how this affects the Play Coin count.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== TWL Development Tools ==&lt;br /&gt;
&lt;br /&gt;
These are DSi/DS mode development tools repackaged into a [[CIA]], for installing to the TWL NAND.&lt;br /&gt;
&lt;br /&gt;
=== NINTENDO DS - WMtest ===&lt;br /&gt;
[[File:Wmtestscnsht.jpg|300px|thumb|right|WMtest Screenshot]]&lt;br /&gt;
[[File:Wmtesttool.png‎]]&lt;br /&gt;
&lt;br /&gt;
This application is a TWL(DSi) application compiled for use on the 3DS. It is an wireless test tool with its uses explained below:&lt;br /&gt;
&lt;br /&gt;
*Scan Test - Scans Wireless channels 1-13(can be focused on one specific channel) for broadcasting stations. It can detect two types of broadcasting stations:&lt;br /&gt;
&lt;br /&gt;
Wifi Access Points - Giving the Mac Address, Broadcasting Channel, &#039;c&#039;, and the SSID&lt;br /&gt;
&lt;br /&gt;
DS Stations such as DS Download stations and Pokemon distributors - Giving the Mac Address, Brodcasting Channel, TGID and GGID&lt;br /&gt;
&lt;br /&gt;
*ScanEx Test - and has two Scan Types. Passive which lets you individually scan channels 1-13 (only one at at time) and the DS distribution channels (1,7,13 all at once). And Active which scans all 13 channels at once. when it finds a channel it prints on the bottom screen next to &#039;Found&#039; &#039;bssDescCount=&#039;&lt;br /&gt;
&lt;br /&gt;
*MeasureChannel Test - not quite sure what this does but it for a given channel it gives a ratio(in percentage form), which it finds in its allocated test time ranging from 10ms to 1000ms. And for every interval of time which is specified, it tests and gives a ratio.&lt;br /&gt;
&lt;br /&gt;
*Noise Mode - Seeks wireless channels in which to make wireless noise (This is not made very clear on the app). You can specify the:&lt;br /&gt;
&lt;br /&gt;
Channel where the scanner will seek to make noise&lt;br /&gt;
&lt;br /&gt;
Noise Rate, ranging from 0% to 100%&lt;br /&gt;
&lt;br /&gt;
Frequency, ranging from 10ms to 50ms&lt;br /&gt;
&lt;br /&gt;
Seek Mode, ranging from 1000ms to 1500ms&lt;br /&gt;
&lt;br /&gt;
When the settings are chosen the top screen has two counters which display &#039;Noise ON count&#039; and &#039;Noise OFF count&#039; the counters are affected by the noise rate. Starting at 0% the &#039;Noise ON count&#039; does not change but as the Noise rate gets closer to 100% the count moves and gets faster as Noise rate reaches 100%. For &#039;Noise OFF count&#039; it is the exact opposite to the &#039; Noise ON count&#039; in regards to counting.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
----&lt;br /&gt;
&lt;br /&gt;
&amp;lt;nowiki&amp;gt;*&amp;lt;/nowiki&amp;gt; A substitute icon is used here in place of a generic icon (which the application uses) to stop confusion with other applications. The original generic icon can be viewed in the icon&#039;s history.&lt;br /&gt;
[[Category:3DS Development Unit Related Pages]]&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=SMDH&amp;diff=4132</id>
		<title>SMDH</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=SMDH&amp;diff=4132"/>
		<updated>2012-10-15T04:26:55Z</updated>

		<summary type="html">&lt;p&gt;Xcution: /* Bit Flags */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;This page describes the format of the icon stored at [[NCCH#CXI|CXI]] ExeFS:/icon and [[CIA]] icons.&lt;br /&gt;
The size of icons is 0x36c0 bytes. The CXI icon is displayed by [[Home Menu]] and [[System Settings]](3DS Software Management), while CIA icons are dummies and not yet utilised by Dev 3DS&#039; (at rev 40909).&lt;br /&gt;
&lt;br /&gt;
== Format ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x00&lt;br /&gt;
|  0x04 &lt;br /&gt;
|  Magic &#039;SMDH&#039;&lt;br /&gt;
|- &lt;br /&gt;
|  0x04&lt;br /&gt;
|  0x04 &lt;br /&gt;
|  Reserved&lt;br /&gt;
|-&lt;br /&gt;
|  0x8&lt;br /&gt;
|  0x1600&lt;br /&gt;
|  11 application titles structs, each 0x200 bytes&lt;br /&gt;
|-&lt;br /&gt;
| 0x1608&lt;br /&gt;
| 0xA00&lt;br /&gt;
| Reserved &lt;br /&gt;
|-&lt;br /&gt;
| 0x2008&lt;br /&gt;
| 0x30&lt;br /&gt;
| Flags&lt;br /&gt;
|-&lt;br /&gt;
| 0x2038&lt;br /&gt;
| 0x8&lt;br /&gt;
| Reserved &lt;br /&gt;
|-&lt;br /&gt;
| 0x2040&lt;br /&gt;
| 0x1680&lt;br /&gt;
| Icon graphics&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Application Titles ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  START&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x00&lt;br /&gt;
|  0x80&lt;br /&gt;
|  Short Description&lt;br /&gt;
|- &lt;br /&gt;
|  0x80&lt;br /&gt;
|  0x100 &lt;br /&gt;
|  Long Description&lt;br /&gt;
|- &lt;br /&gt;
|  0x180&lt;br /&gt;
|  0x80 &lt;br /&gt;
|  Publisher&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
All encoded in UTF-16.&lt;br /&gt;
There are 11 app title structs, each one for separate languages.&lt;br /&gt;
&lt;br /&gt;
The languages by order of appearance:&lt;br /&gt;
&lt;br /&gt;
* 1st: Japanese title name&lt;br /&gt;
* 2nd: English title name&lt;br /&gt;
* 3rd: French title name&lt;br /&gt;
* 4th: German title name&lt;br /&gt;
* 5th: Italian title name&lt;br /&gt;
* 6th: Spanish title name&lt;br /&gt;
* 7th: Chinese title name&lt;br /&gt;
* 8th: Korean title name&lt;br /&gt;
* 9th: Dutch title name&lt;br /&gt;
* 10th: Portuguese title name&lt;br /&gt;
* 11th: Russian title name&lt;br /&gt;
&lt;br /&gt;
== Flags ==&lt;br /&gt;
&lt;br /&gt;
This is where the application [[Home Menu]] flags exist. It is important to note, only the Home Menu uses these flags&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  START&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x2008&lt;br /&gt;
|  0xA&lt;br /&gt;
|  Region Specific Game Ratings (For use with Parental Controls)&lt;br /&gt;
|-&lt;br /&gt;
|  0x2018&lt;br /&gt;
|  0x4&lt;br /&gt;
|  BNR Region (Used For Region Locking)&lt;br /&gt;
|-  &lt;br /&gt;
|  0x201C&lt;br /&gt;
|  0xC &lt;br /&gt;
|  Match Maker IDs (Online Play)&lt;br /&gt;
|-    &lt;br /&gt;
|  0x2028&lt;br /&gt;
|  0x1 &lt;br /&gt;
|  Combined Flag (Various Flags)&lt;br /&gt;
|-  &lt;br /&gt;
|  0x2032&lt;br /&gt;
|  0x2 &lt;br /&gt;
|  &#039;Optimal Animation Default Frame&#039; (for BNR)&lt;br /&gt;
|-    &lt;br /&gt;
|  0x2034&lt;br /&gt;
|  0x4 &lt;br /&gt;
|  CEC (StreetPass) ID (So the Home Menu knows which application icon to show the &#039;Green&#039; CEC notification for)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Region Specific Game Age Ratings ===&lt;br /&gt;
&lt;br /&gt;
These flags tell the 3DS the &#039;Age Rating&#039; of the software for the below regions:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  START&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x2008&lt;br /&gt;
|  0x1&lt;br /&gt;
|  CERO (Japan)&lt;br /&gt;
|-&lt;br /&gt;
|  0x2009&lt;br /&gt;
|  0x1&lt;br /&gt;
|  ESRB (USA)&lt;br /&gt;
|-&lt;br /&gt;
|  0x200B&lt;br /&gt;
|  0x1&lt;br /&gt;
|  USK (German)&lt;br /&gt;
|-&lt;br /&gt;
|  0x200C&lt;br /&gt;
|  0x1&lt;br /&gt;
|  PEGI GEN (Europe)&lt;br /&gt;
|-&lt;br /&gt;
|  0x200E&lt;br /&gt;
|  0x1&lt;br /&gt;
|  PEGI PRT (Portugal)&lt;br /&gt;
|-&lt;br /&gt;
|  0x200F&lt;br /&gt;
|  0x1&lt;br /&gt;
|  PEGI BBFC (England)&lt;br /&gt;
|-&lt;br /&gt;
|  0x2010&lt;br /&gt;
|  0x1&lt;br /&gt;
|  COB (Australia)&lt;br /&gt;
|-&lt;br /&gt;
|  0x2011&lt;br /&gt;
|  0x1&lt;br /&gt;
|  Unknown/Unused&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
These flags are generated by converting the age rating to a hex value and then adding it to &#039;80&#039;. For example if &#039;7 years&#039; was the rating, then the flag would be &#039;87&#039;(this is a hex value). The unknown/unused rating is only has a value when the BNR is for &#039;All Regions&#039;. Also if Game Ratings are not used, when selecting a region for the BNR, it generates random Game Age Ratings for all regions.&lt;br /&gt;
&lt;br /&gt;
=== BNR Region ===&lt;br /&gt;
&lt;br /&gt;
This flag is what the Home Menu uses in order to determine the [[Home Menu#Region Lockout|Region Lockout]] of a title.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  REGION&lt;br /&gt;
!  VALUE&lt;br /&gt;
|-&lt;br /&gt;
|  All Regions (No region restrictions)&lt;br /&gt;
|  7F FF FF FF &lt;br /&gt;
|-&lt;br /&gt;
|  Japan&lt;br /&gt;
|  00 00 00 01&lt;br /&gt;
|-&lt;br /&gt;
|  North America&lt;br /&gt;
|  00 00 00 02 &lt;br /&gt;
|-&lt;br /&gt;
|  Europe&lt;br /&gt;
|  00 00 00 0C &lt;br /&gt;
|-&lt;br /&gt;
|  Korea&lt;br /&gt;
|  00 00 00 20 &lt;br /&gt;
|-&lt;br /&gt;
|  Taiwan &lt;br /&gt;
|  00 00 00 40 &lt;br /&gt;
|-&lt;br /&gt;
|  China&lt;br /&gt;
|  00 00 00 50 &lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== Match Maker IDs ===&lt;br /&gt;
&lt;br /&gt;
These IDs are an application&#039;s online gaming IDs.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  START&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x201C&lt;br /&gt;
|  0x4&lt;br /&gt;
|  Match Maker ID&lt;br /&gt;
|- &lt;br /&gt;
|  0x2020&lt;br /&gt;
|  0x8&lt;br /&gt;
|  Match Maker BIT ID&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
For example, if the Match Maker ID was &#039;12345678&#039; and the Match Maker BIT ID was &#039;1234567891234567&#039;, the flags would be &#039;78 56 34 12&#039; and &#039;67 45 23 91 78 56 34 12&#039; respectively&lt;br /&gt;
&lt;br /&gt;
=== Bit Flags ===&lt;br /&gt;
&lt;br /&gt;
This flag has multiple flags, packed into one byte. By use of addition the flags are combined:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  FLAG&lt;br /&gt;
!  VALUE&lt;br /&gt;
|-&lt;br /&gt;
|  Visibility Flag (always present)&lt;br /&gt;
|  01&lt;br /&gt;
|-&lt;br /&gt;
|  Allow use of 3D? (For use with parental Controls, it does not the affect whether the application uses 3D or not. An application can use the 3D affect, even when this flag isn&#039;t set)&lt;br /&gt;
|  04&lt;br /&gt;
|-&lt;br /&gt;
|  Require accepting CTR EULA?&lt;br /&gt;
|  08&lt;br /&gt;
|-&lt;br /&gt;
|  Autoboot?&lt;br /&gt;
|  02&lt;br /&gt;
|-&lt;br /&gt;
|  Autosave on exit?&lt;br /&gt;
|  10&lt;br /&gt;
|-&lt;br /&gt;
|  Uses an extended Banner?&lt;br /&gt;
|  20&lt;br /&gt;
|-&lt;br /&gt;
|  Region game rating required?&lt;br /&gt;
|  40&lt;br /&gt;
|-&lt;br /&gt;
|  Uses save data?&lt;br /&gt;
|  80&lt;br /&gt;
|}&lt;br /&gt;
 &lt;br /&gt;
For example, if we wanted an application to use the 3D effect, autosave on exit and use save data. The combined flag would be &#039;95&#039; (01+04+10+80) (This is a hex value)&lt;br /&gt;
&lt;br /&gt;
=== &#039;Optimal Animation Default Frame&#039; (for BNR) ===&lt;br /&gt;
&lt;br /&gt;
Purpose of this flag: If using an animated BNR, it&#039;s the most representative frame for the animation.&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OPTIMAL ANIMATION DEFAULT FRAME&lt;br /&gt;
!  VALUE&lt;br /&gt;
|-&lt;br /&gt;
|  0&lt;br /&gt;
|  00 00&lt;br /&gt;
|-&lt;br /&gt;
|  1&lt;br /&gt;
|  3F 80 &lt;br /&gt;
|-&lt;br /&gt;
|  2&lt;br /&gt;
|  40 00 &lt;br /&gt;
|-&lt;br /&gt;
|  3&lt;br /&gt;
|  40 40&lt;br /&gt;
|-&lt;br /&gt;
|  4&lt;br /&gt;
|  40 80&lt;br /&gt;
|-&lt;br /&gt;
|  5&lt;br /&gt;
|  40 A0&lt;br /&gt;
|-&lt;br /&gt;
|  6&lt;br /&gt;
|  40 C0&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Flag Pattern: ???&lt;br /&gt;
&lt;br /&gt;
=== CEC (StreetPass) ID ===&lt;br /&gt;
&lt;br /&gt;
With a size of 4 bytes this represents the applications CEC ID. For example if the ID was &#039;12345678&#039; the flag would be &#039;78 56 34 12&#039;&lt;br /&gt;
&lt;br /&gt;
== Icon graphics ==&lt;br /&gt;
&lt;br /&gt;
At offset 0x2040, there are two icons:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  START&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x2040&lt;br /&gt;
|  0x480&lt;br /&gt;
|  Small - 24x24 (shown on top screen when pausing the app)&lt;br /&gt;
|- &lt;br /&gt;
|  0x24C0&lt;br /&gt;
|  0x1200 &lt;br /&gt;
|  Large - 48x48 icon (the general icon)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Both of the icons are encoded in RGB565 meaning 16bpp. Although both icons are known to be RGB565, developers have the option of encoding icons (and banners) with the following encodings :&lt;br /&gt;
&lt;br /&gt;
* RGBA8&lt;br /&gt;
* RGB8&lt;br /&gt;
* RGBA5551&lt;br /&gt;
* RGB565&lt;br /&gt;
* RGBA4&lt;br /&gt;
* LA8&lt;br /&gt;
* HILO8&lt;br /&gt;
* L8&lt;br /&gt;
* A8&lt;br /&gt;
* LA4&lt;br /&gt;
* L4&lt;br /&gt;
* ETC1&lt;br /&gt;
* ETC1A4&lt;br /&gt;
&lt;br /&gt;
This does not necessarily mean the other encodings will be used, it is just that those are the options when compiling. Like we&#039;ve seen with Super Mario 3D Land Nintendo has changed save file encryption, and likewise they can encode icons and banners differently &#039;&#039;should they choose to&#039;&#039;. Currently we&#039;ve seen just RGB565 so don&#039;t be fooled if an icon doesn&#039;t show up right! It is probably one of these formats above. Although we will probably not see other formats used for a while it&#039;s nice to know they have an opportunity to change.&lt;br /&gt;
&lt;br /&gt;
There&#039;s a header of 0x40 bytes and then comes the raw data.&lt;br /&gt;
&lt;br /&gt;
The data is encoded in tiles (starting from size 8x8, continuing recursively).&lt;br /&gt;
&lt;br /&gt;
If the buffer is like this:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  0&lt;br /&gt;
!  1&lt;br /&gt;
!  2&lt;br /&gt;
!  3&lt;br /&gt;
!  4&lt;br /&gt;
!  5&lt;br /&gt;
!  6&lt;br /&gt;
!  7&lt;br /&gt;
!  8&lt;br /&gt;
!  9&lt;br /&gt;
!  10&lt;br /&gt;
!  11&lt;br /&gt;
!  12&lt;br /&gt;
!  13&lt;br /&gt;
!  14&lt;br /&gt;
!  15&lt;br /&gt;
!  16&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Then the image would look like this:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  x=0&lt;br /&gt;
!  x=1&lt;br /&gt;
!  x=2&lt;br /&gt;
!  x=3&lt;br /&gt;
!  x=4&lt;br /&gt;
|-&lt;br /&gt;
| 0&lt;br /&gt;
| 1&lt;br /&gt;
| 4&lt;br /&gt;
| 5&lt;br /&gt;
| 16&lt;br /&gt;
|-&lt;br /&gt;
| 2&lt;br /&gt;
| 3&lt;br /&gt;
| 6&lt;br /&gt;
| 7&lt;br /&gt;
| ...&lt;br /&gt;
|-&lt;br /&gt;
| 8&lt;br /&gt;
| 9&lt;br /&gt;
| 12&lt;br /&gt;
| 13&lt;br /&gt;
|-&lt;br /&gt;
| 10&lt;br /&gt;
| 11&lt;br /&gt;
| 14&lt;br /&gt;
| 15&lt;br /&gt;
|-&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=NCCH&amp;diff=4131</id>
		<title>NCCH</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=NCCH&amp;diff=4131"/>
		<updated>2012-10-15T04:14:30Z</updated>

		<summary type="html">&lt;p&gt;Xcution: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:File formats]]&lt;br /&gt;
The following text tries to document the structure of the NCCH container format.&lt;br /&gt;
&lt;br /&gt;
== Overview ==&lt;br /&gt;
There are two known NCCH container specialisations used on the 3DS, &amp;quot;executable&amp;quot; and &amp;quot;non-executable&amp;quot;, officially known as CXI and CFA respectively.&lt;br /&gt;
&lt;br /&gt;
== CXI == &lt;br /&gt;
&lt;br /&gt;
The CXI (CTR Executable Image) specialisation of the NCCH container, contains executable code, which runs on a single ARM11 core. It can communicate through SVC calls with the other ARM11 core running the &#039;system&#039; program code. For reasons of clarity, the ARM11 cores will sometimes be called the &#039;appcore&#039; and &#039;syscore&#039; respectively.&lt;br /&gt;
&lt;br /&gt;
The CXI format is structured in the following order:&lt;br /&gt;
* first a NCCH header,&lt;br /&gt;
* followed by an extended header,&lt;br /&gt;
* followed by an access descriptor,&lt;br /&gt;
* followed by a plain binary region,&lt;br /&gt;
* followed by an embedded executable filesystem ([[ExeFS]]) - (contains ARM11 code, Home menu [[SMDH|icn]]/bnr and [[Logo|logo]]),&lt;br /&gt;
* and finally followed by a read-only filesystem ([[RomFS]]) - (Used for external file storage).&lt;br /&gt;
&lt;br /&gt;
The extended header contains additional information regarding access control. &lt;br /&gt;
The plain binary region is an area specifically stored in plaintext, mostly containing SDK library strings for identification.&lt;br /&gt;
&lt;br /&gt;
== CFA ==&lt;br /&gt;
&lt;br /&gt;
The CFA (CTR File Archive) specialisation of the NCCH container, is not executable, but are used in conjunction with CXI files. For instance the DLP Child Container and the Electronic Manual. (There is a system update NCCH which follows this format, but is used by the 3DS rather than the Application NCCH, and only works when embedded in the [[CCI]] format because the nVer is kept in the header of retail [[CCI]] files instead of the application NCCH). There are CFA files which exist alone in a title, but these are just [[Title list|System Data Archive]] titles and are found only on the NAND.&lt;br /&gt;
&lt;br /&gt;
CFA files are structured in the following order:&lt;br /&gt;
* first a NCCH header,&lt;br /&gt;
* followed by a read-only filesystem ([[RomFS]])&lt;br /&gt;
&lt;br /&gt;
Non-Executable NCCH file examples(Includes Decrypted [[RomFS]]):&lt;br /&gt;
&lt;br /&gt;
[http://depositfiles.com/files/n476if4gj DLPChild Container]&lt;br /&gt;
[http://depositfiles.com/files/gnrihkeec Electronic Manual]&lt;br /&gt;
&lt;br /&gt;
== NCCH Specs ==&lt;br /&gt;
&lt;br /&gt;
The extended header, the [[ExeFS]] and the [[RomFS]] are encrypted using 128-bit AES CTR. &lt;br /&gt;
&lt;br /&gt;
By default encrypted regions are compressed with an LZ77 variant, then encrypted. The spec allows for both unencrypted and uncompressed regions to exist. Retail SD card CXIs must have the [[ExeFS|ExeFS:/.code]] compressed. Development units use a fixed system key for system titles. On retail part of the input [[AES]] engine key is unique per NCCH, the AES engine internally generates the final-normal key.&lt;br /&gt;
&lt;br /&gt;
Retail CFAs use NCCH product code &amp;quot;CTR-P-CTAP&amp;quot;, while retail title/gamecard CXIs use NCCH product code &amp;quot;CTR-P-XXXX&amp;quot;. This product code is the NCCH [[Serials|serial code]]. The region-locking info checked by home menu is stored in the [[SMDH#BNR Region|icon]].&lt;br /&gt;
&lt;br /&gt;
All of the hashes stored in this NCCH header are over the cleartext data. The ExeFS/RomFS superblock starts at offset 0x0 in the ExeFS/RomFS, and the size is specified by the hash region fields.&lt;br /&gt;
&lt;br /&gt;
=== NCCH Header ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x000&lt;br /&gt;
|  0x100&lt;br /&gt;
|  RSA-2048 signature of the NCCH header, using SHA-256.&lt;br /&gt;
|-&lt;br /&gt;
|  0x100&lt;br /&gt;
|  4&lt;br /&gt;
|  Magic ID, always &#039;NCCH&#039;&lt;br /&gt;
|-&lt;br /&gt;
|  0x104&lt;br /&gt;
|  4&lt;br /&gt;
|  Content size, in media units (1 media unit = 0x200 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|  0x108&lt;br /&gt;
|  8&lt;br /&gt;
|  Partition ID&lt;br /&gt;
|-&lt;br /&gt;
|  0x110&lt;br /&gt;
|  2&lt;br /&gt;
|  Maker code&lt;br /&gt;
|-&lt;br /&gt;
|  0x112&lt;br /&gt;
|  2&lt;br /&gt;
|  Version&lt;br /&gt;
|-&lt;br /&gt;
|  0x114&lt;br /&gt;
|  4&lt;br /&gt;
|  Reserved&lt;br /&gt;
|-&lt;br /&gt;
|  0x118&lt;br /&gt;
|  8&lt;br /&gt;
|  Program ID&lt;br /&gt;
|-&lt;br /&gt;
|  0x120&lt;br /&gt;
|  1&lt;br /&gt;
|  Temp flag&lt;br /&gt;
|-&lt;br /&gt;
|  0x121&lt;br /&gt;
|  0x2F&lt;br /&gt;
|  Reserved&lt;br /&gt;
|-&lt;br /&gt;
|  0x150&lt;br /&gt;
|  0x10&lt;br /&gt;
|  Product code&lt;br /&gt;
|-&lt;br /&gt;
|  0x160&lt;br /&gt;
|  0x20&lt;br /&gt;
|  Extended header SHA-256 hash (SHA256 of 2x Alignment Size, beginning at 0x0 of ExHeader)&lt;br /&gt;
|-&lt;br /&gt;
|  0x180&lt;br /&gt;
|  4&lt;br /&gt;
|  Extended header size&lt;br /&gt;
|-&lt;br /&gt;
|  0x184&lt;br /&gt;
|  4&lt;br /&gt;
|  Reserved&lt;br /&gt;
|-&lt;br /&gt;
|  0x188&lt;br /&gt;
|  8&lt;br /&gt;
|  Flags: byte[5]-byte[7] indicate content type ( system update, application, manual, ... ) size of media unit ( 512*2^byte[6] ) and encryption.&lt;br /&gt;
|-&lt;br /&gt;
|  0x190&lt;br /&gt;
|  4&lt;br /&gt;
|  Plain region offset, in media units&lt;br /&gt;
|-&lt;br /&gt;
|  0x194&lt;br /&gt;
|  4&lt;br /&gt;
|  Plain region size, in media units&lt;br /&gt;
|-&lt;br /&gt;
|  0x198&lt;br /&gt;
|  8&lt;br /&gt;
|  Reserved&lt;br /&gt;
|-&lt;br /&gt;
|  0x1A0&lt;br /&gt;
|  4&lt;br /&gt;
|  ExeFS offset, in media units&lt;br /&gt;
|-&lt;br /&gt;
|  0x1A4&lt;br /&gt;
|  4&lt;br /&gt;
|  ExeFS size, in media units&lt;br /&gt;
|-&lt;br /&gt;
|  0x1A8&lt;br /&gt;
|  4&lt;br /&gt;
|  ExeFS hash region size, in media units&lt;br /&gt;
|-&lt;br /&gt;
|  0x1AC&lt;br /&gt;
|  4&lt;br /&gt;
|  Reserved&lt;br /&gt;
|-&lt;br /&gt;
|  0x1B0&lt;br /&gt;
|  4&lt;br /&gt;
|  RomFS offset, in media units&lt;br /&gt;
|-&lt;br /&gt;
|  0x1B4&lt;br /&gt;
|  4&lt;br /&gt;
|  RomFS size, in media units&lt;br /&gt;
|-&lt;br /&gt;
|  0x1B8&lt;br /&gt;
|  4&lt;br /&gt;
|  RomFS hash region size, in media units&lt;br /&gt;
|-&lt;br /&gt;
|  0x1BC&lt;br /&gt;
|  4&lt;br /&gt;
|  Reserved&lt;br /&gt;
|-&lt;br /&gt;
|  0x1C0&lt;br /&gt;
|  0x20&lt;br /&gt;
|  ExeFS superblock SHA-256 hash - (SHA-256 hash, starting at 0x0 of the ExeFS over the number of media units specified in the ExeFS hash region size)&lt;br /&gt;
|-&lt;br /&gt;
|  0x1E0&lt;br /&gt;
|  0x20&lt;br /&gt;
|  RomFS superblock SHA-256 hash - (SHA-256 hash, starting at 0x0 of the RomFS over the number of media units specified in the RomFS hash region size)&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NCCH Flags ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  INDEX&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  5&lt;br /&gt;
|  When the low 2-bits are 0x1, the NCCH is a CFA. Otherwise, it&#039;s a CXI.&lt;br /&gt;
|}&lt;br /&gt;
CXIs NCCH header signature is verified using the RSA public key stored in the accessdesc,(which follows the exheader) while CFAs NCCH header is verified with a fixed RSA public key.&lt;br /&gt;
&lt;br /&gt;
==== NCCH header example for Lego Starwars III ====&lt;br /&gt;
 Signature:              720FF8F83F2A1E998322A026D1434165&lt;br /&gt;
                         ED19642ABC1CB2722135AA202BEAD60A&lt;br /&gt;
                         80BCD21C768C597B8268FEF2C64EA710&lt;br /&gt;
                         4C9BA5E12CFFBD1D0C619F4EF7B42CA7&lt;br /&gt;
                         DD8482CB4EB26720AD66CDA57ABCBCFB&lt;br /&gt;
                         D63268A6E2896A59B3B744E39E45B88A&lt;br /&gt;
                         ABB4C0980ACC6210818DCE6DAC838A10&lt;br /&gt;
                         95D0F66B352474D4B3DA4B333F49912D&lt;br /&gt;
                         29AF7EA58BC8C890B18C70B7D540A9FB&lt;br /&gt;
                         EBE24A5312055617D3353B28C3EB1D17&lt;br /&gt;
                         61021BEFF6AD22C384835B40BD44DFAD&lt;br /&gt;
                         981F6350F9458B17BCB5F768C92ABC93&lt;br /&gt;
                         2BCE9888855A8998F4CDE40C9543514A&lt;br /&gt;
                         C57B84EB75A680E7C742632614620D1D&lt;br /&gt;
                         A253284DF3DC01091EB3800C36FD62EE&lt;br /&gt;
                         BA15340F1FD498FAB67C0302E9CDA397&lt;br /&gt;
 Magic:                  NCCH&lt;br /&gt;
 Content size:           0x1cfef400&lt;br /&gt;
 Partition id:           0004000000038c00&lt;br /&gt;
 Maker code:             3436 (&amp;quot;46&amp;quot;)&lt;br /&gt;
 Version:                0002&lt;br /&gt;
 Program id:             0004000000038c00&lt;br /&gt;
 Temp flag:              00&lt;br /&gt;
 Product code:           CTR-P-ALGP&lt;br /&gt;
 Extended header hash:   0C27E3C1DE7B2AE2D3114F32A4EEBF46&lt;br /&gt;
                         9AFD0CF352C11D4984C2A9F1D2144C63&lt;br /&gt;
 Extended header size:   00000400&lt;br /&gt;
 Flags:                  0000030100000000&lt;br /&gt;
 Plain region offset:    0x00004a00&lt;br /&gt;
 Plain region size:      0x00000200&lt;br /&gt;
 ExeFS offset:           0x00004c00&lt;br /&gt;
 ExeFS size:             0x00143800&lt;br /&gt;
 ExeFS hash region size: 0x00000200&lt;br /&gt;
 RomFS offset:           0x00148400&lt;br /&gt;
 RomFS size:             0x1ceab000&lt;br /&gt;
 RomFS hash region size: 0x00000200&lt;br /&gt;
 ExeFS Superblock Hash:  130C042615F647C4C63225EA9E67F8A2&lt;br /&gt;
                         7B15246B88FBC7A927257B84977B787B&lt;br /&gt;
 RomFS Superblock Hash:  A65BEE1060BB6A6821BBCEC600035B7E&lt;br /&gt;
                         64FB6EACA7F0960CFB1F5A37087728F7&lt;br /&gt;
 Note: Offsets and sizes in media units have been converted to byte sizes.&lt;br /&gt;
&lt;br /&gt;
==== Plain region example for Lego Starwars III ====&lt;br /&gt;
 0004a00: 5b 53 44 4b 2b 4e 49 4e 54 45 4e 44 4f 3a 43 54  [SDK+NINTENDO:CT    [SDK+NINTENDO:CTR_SDK-0_14_23_200_none]&lt;br /&gt;
 0004a10: 52 5f 53 44 4b 2d 30 5f 31 34 5f 32 33 5f 32 30  R_SDK-0_14_23_20&lt;br /&gt;
 0004a20: 30 5f 6e 6f 6e 65 5d 00 5b 53 44 4b 2b 4e 49 4e  0_none].[SDK+NIN    [SDK+NINTENDO:Firmware-02_27]&lt;br /&gt;
 0004a30: 54 45 4e 44 4f 3a 46 69 72 6d 77 61 72 65 2d 30  TENDO:Firmware-0&lt;br /&gt;
 0004a40: 32 5f 32 37 5d 00 5b 53 44 4b 2b 4d 6f 62 69 63  2_27].[SDK+Mobic    [SDK+Mobiclip:Deblocker_1_0_2]&lt;br /&gt;
 0004a50: 6c 69 70 3a 44 65 62 6c 6f 63 6b 65 72 5f 31 5f  lip:Deblocker_1_&lt;br /&gt;
 0004a60: 30 5f 32 5d 00 5b 53 44 4b 2b 4d 6f 62 69 63 6c  0_2].[SDK+Mobicl    [SDK+Mobiclip:ImaAdpcmDec_1_0_0]&lt;br /&gt;
 0004a70: 69 70 3a 49 6d 61 41 64 70 63 6d 44 65 63 5f 31  ip:ImaAdpcmDec_1&lt;br /&gt;
 0004a80: 5f 30 5f 30 5d 00 5b 53 44 4b 2b 4d 6f 62 69 63  _0_0].[SDK+Mobic    [SDK+Mobiclip:MobiclipDec_1_0_1]&lt;br /&gt;
 0004a90: 6c 69 70 3a 4d 6f 62 69 63 6c 69 70 44 65 63 5f  lip:MobiclipDec_&lt;br /&gt;
 0004aa0: 31 5f 30 5f 31 5d 00 5b 53 44 4b 2b 4d 6f 62 69  1_0_1].[SDK+Mobi    [SDK+Mobiclip:MoflexDemuxer_1_0_2]&lt;br /&gt;
 0004ab0: 63 6c 69 70 3a 4d 6f 66 6c 65 78 44 65 6d 75 78  clip:MoflexDemux&lt;br /&gt;
 0004ac0: 65 72 5f 31 5f 30 5f 32 5d 00 00 00 00 00 00 00  er_1_0_2].......&lt;br /&gt;
 0004ad0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................&lt;br /&gt;
 0004ae0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................&lt;br /&gt;
&lt;br /&gt;
A tool for parsing this format is available [http://github.com/3dshax/ctr/tree/master/ctrtool here].&lt;br /&gt;
&lt;br /&gt;
==== Example dependency list from the extended header ====&lt;br /&gt;
 00850 41 50 54 3A 55 00 00 00 24 68 69 6F 46 49 4F 00 APT:U...$hioFIO.&lt;br /&gt;
 00860 24 68 6F 73 74 69 6F 30 24 68 6F 73 74 69 6F 31 $hostio0$hostio1&lt;br /&gt;
 00870 61 63 3A 75 00 00 00 00 62 6F 73 73 3A 55 00 00 ac:u....boss:U..&lt;br /&gt;
 00880 63 61 6D 3A 75 00 00 00 63 65 63 64 3A 75 00 00 cam:u...cecd:u..&lt;br /&gt;
 00890 63 66 67 3A 75 00 00 00 64 6C 70 3A 46 4B 43 4C cfg:u...dlp:FKCL&lt;br /&gt;
 008A0 64 6C 70 3A 53 52 56 52 64 73 70 3A 3A 44 53 50 dlp:SRVRdsp::DSP&lt;br /&gt;
 008B0 66 72 64 3A 75 00 00 00 66 73 3A 55 53 45 52 00 frd:u...fs:USER.&lt;br /&gt;
 008C0 67 73 70 3A 3A 47 70 75 68 69 64 3A 55 53 45 52 gsp::Gpuhid:USER&lt;br /&gt;
 008D0 68 74 74 70 3A 43 00 00 6D 69 63 3A 75 00 00 00 http:C..mic:u...&lt;br /&gt;
 008E0 6E 64 6D 3A 75 00 00 00 6E 65 77 73 3A 75 00 00 ndm:u...&amp;lt;nowiki&amp;gt;news:u..&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 008F0 6E 77 6D 3A 3A 55 44 53 70 74 6D 3A 75 00 00 00 nwm::UDSptm:u...&lt;br /&gt;
 00900 70 78 69 3A 64 65 76 00 73 6F 63 3A 55 00 00 00 pxi:dev.soc:U...&lt;br /&gt;
 00910 73 73 6C 3A 43 00 00 00 79 32 72 3A 75 00 00 00 ssl:C...y2r:u...&lt;br /&gt;
 00920 69 72 3A 55 53 45 52 00 6C 64 72 3A 72 6F 00 00 ir:USER.ldr:ro..&lt;br /&gt;
 00930 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................&lt;br /&gt;
 00940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................&lt;br /&gt;
 00950 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................&lt;br /&gt;
 00960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................&lt;br /&gt;
 ... ...&lt;br /&gt;
 009D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF                 &lt;br /&gt;
 009E0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................&lt;br /&gt;
 009F0 00 03 00 00 00 00 00 00 00 00 00 00 00 00 00 02 . .............&lt;br /&gt;
&lt;br /&gt;
=== Extended Header ===&lt;br /&gt;
See also: [https://github.com/3dshax/ctr/blob/master/ctrtool/exheader.h]&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x399&lt;br /&gt;
|  1&lt;br /&gt;
|  Memory type (00 = Base, 01 = Application, 02 = System)&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=NCCH&amp;diff=4125</id>
		<title>NCCH</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=NCCH&amp;diff=4125"/>
		<updated>2012-10-15T01:14:57Z</updated>

		<summary type="html">&lt;p&gt;Xcution: /* NCCH Header */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:File formats]]&lt;br /&gt;
The following text tries to document the structure of the NCCH container format.&lt;br /&gt;
&lt;br /&gt;
== Overview ==&lt;br /&gt;
There are two known NCCH container specialisations used on the 3DS, &amp;quot;executable&amp;quot; and &amp;quot;non-executable&amp;quot;, officially known as CXI and CFA respectively.&lt;br /&gt;
&lt;br /&gt;
== CXI == &lt;br /&gt;
&lt;br /&gt;
The CXI (CTR Executable Image) specialisation of the NCCH container, contains executable code, which runs on a single ARM11 core. It can communicate through SVC calls with the other ARM11 core running the &#039;system&#039; program code. For reasons of clarity, the ARM11 cores will sometimes be called the &#039;appcore&#039; and &#039;syscore&#039; respectively.&lt;br /&gt;
&lt;br /&gt;
The CXI format is structured in the following order:&lt;br /&gt;
* first a NCCH header,&lt;br /&gt;
* followed by an extended header,&lt;br /&gt;
* followed by an access descriptor,&lt;br /&gt;
* followed by a plain binary region,&lt;br /&gt;
* followed by an embedded executable filesystem ([[ExeFS]]) - (contains ARM11 code, Home menu [[SMDH|icn]]/bnr and [[Logo|logo]]),&lt;br /&gt;
* and finally followed by a read-only filesystem ([[RomFS]]) - (Used for external file storage).&lt;br /&gt;
&lt;br /&gt;
The extended header contains additional information regarding access control. &lt;br /&gt;
The plain binary region is an area specifically stored in plaintext, mostly containing SDK library strings for identification.&lt;br /&gt;
&lt;br /&gt;
== CFA ==&lt;br /&gt;
&lt;br /&gt;
The CFA (CTR File Archive) specialisation of the NCCH container, is not executable, but are used in conjunction with CXI files. For instance the DLP Child Container and the Electronic Manual. (There is a system update NCCH which follows this format, but is used by the 3DS rather than the Application NCCH, and only works when embedded in the [[CCI]] format because the nVer is kept in the header of retail [[CCI]] files instead of the application NCCH). There are CFA files which exist alone in a title, but these are just [[Title list|System Data Archive]] titles and are found only on the NAND.&lt;br /&gt;
&lt;br /&gt;
CFA files are structured in the following order:&lt;br /&gt;
* first a NCCH header,&lt;br /&gt;
* followed by a read-only filesystem ([[RomFS]])&lt;br /&gt;
&lt;br /&gt;
Non-Executable NCCH file examples(Includes Decrypted [[RomFS]]):&lt;br /&gt;
&lt;br /&gt;
[http://depositfiles.com/files/n476if4gj DLPChild Container]&lt;br /&gt;
[http://depositfiles.com/files/gnrihkeec Electronic Manual]&lt;br /&gt;
&lt;br /&gt;
== NCCH Specs ==&lt;br /&gt;
&lt;br /&gt;
The extended header, the [[ExeFS]] and the [[RomFS]] are encrypted using 128-bit AES CTR. &lt;br /&gt;
&lt;br /&gt;
By default encrypted regions are compressed with an LZ77 variant, then encrypted. The spec allows for both unencrypted and uncompressed regions to exist. Retail SD card CXIs must have the [[ExeFS|ExeFS:/.code]] compressed. Development units use a fixed system key for system titles. On retail part of the input [[AES]] engine key is unique per NCCH, the AES engine internally generates the final-normal key.&lt;br /&gt;
&lt;br /&gt;
Retail CFAs use NCCH product code &amp;quot;CTR-P-CTAP&amp;quot;, while retail title/gamecard CXIs use NCCH product code &amp;quot;CTR-P-XXXX&amp;quot;. This product code is the NCCH [[Serials|serial code]]. The region-locking info checked by home menu is stored in the [[SMDH#Flags|icon]].&lt;br /&gt;
&lt;br /&gt;
All of the hashes stored in this NCCH header are over the cleartext data. The ExeFS/RomFS superblock starts at offset 0x0 in the ExeFS/RomFS, and the size is specified by the hash region fields.&lt;br /&gt;
&lt;br /&gt;
=== NCCH Header ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x000&lt;br /&gt;
|  0x100&lt;br /&gt;
|  RSA-2048 signature of the NCCH header, using SHA-256.&lt;br /&gt;
|-&lt;br /&gt;
|  0x100&lt;br /&gt;
|  4&lt;br /&gt;
|  Magic ID, always &#039;NCCH&#039;&lt;br /&gt;
|-&lt;br /&gt;
|  0x104&lt;br /&gt;
|  4&lt;br /&gt;
|  Content size, in media units (1 media unit = 0x200 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|  0x108&lt;br /&gt;
|  8&lt;br /&gt;
|  Partition ID&lt;br /&gt;
|-&lt;br /&gt;
|  0x110&lt;br /&gt;
|  2&lt;br /&gt;
|  Maker code&lt;br /&gt;
|-&lt;br /&gt;
|  0x112&lt;br /&gt;
|  2&lt;br /&gt;
|  Version&lt;br /&gt;
|-&lt;br /&gt;
|  0x114&lt;br /&gt;
|  4&lt;br /&gt;
|  Reserved&lt;br /&gt;
|-&lt;br /&gt;
|  0x118&lt;br /&gt;
|  8&lt;br /&gt;
|  Program ID&lt;br /&gt;
|-&lt;br /&gt;
|  0x120&lt;br /&gt;
|  1&lt;br /&gt;
|  Temp flag&lt;br /&gt;
|-&lt;br /&gt;
|  0x121&lt;br /&gt;
|  0x2F&lt;br /&gt;
|  Reserved&lt;br /&gt;
|-&lt;br /&gt;
|  0x150&lt;br /&gt;
|  0x10&lt;br /&gt;
|  Product code&lt;br /&gt;
|-&lt;br /&gt;
|  0x160&lt;br /&gt;
|  0x20&lt;br /&gt;
|  Extended header SHA-256 hash, over 0x400 bytes of the ExHeader&lt;br /&gt;
|-&lt;br /&gt;
|  0x180&lt;br /&gt;
|  4&lt;br /&gt;
|  Extended header size&lt;br /&gt;
|-&lt;br /&gt;
|  0x184&lt;br /&gt;
|  4&lt;br /&gt;
|  Reserved&lt;br /&gt;
|-&lt;br /&gt;
|  0x188&lt;br /&gt;
|  8&lt;br /&gt;
|  Flags: byte[5]-byte[7] indicate content type ( system update, application, manual, ... ) size of media unit ( 512*2^byte[6] ) and encryption.&lt;br /&gt;
|-&lt;br /&gt;
|  0x190&lt;br /&gt;
|  4&lt;br /&gt;
|  Plain region offset, in media units&lt;br /&gt;
|-&lt;br /&gt;
|  0x194&lt;br /&gt;
|  4&lt;br /&gt;
|  Plain region size, in media units&lt;br /&gt;
|-&lt;br /&gt;
|  0x198&lt;br /&gt;
|  8&lt;br /&gt;
|  Reserved&lt;br /&gt;
|-&lt;br /&gt;
|  0x1A0&lt;br /&gt;
|  4&lt;br /&gt;
|  ExeFS offset, in media units&lt;br /&gt;
|-&lt;br /&gt;
|  0x1A4&lt;br /&gt;
|  4&lt;br /&gt;
|  ExeFS size, in media units&lt;br /&gt;
|-&lt;br /&gt;
|  0x1A8&lt;br /&gt;
|  4&lt;br /&gt;
|  ExeFS hash region size, in media units&lt;br /&gt;
|-&lt;br /&gt;
|  0x1AC&lt;br /&gt;
|  4&lt;br /&gt;
|  Reserved&lt;br /&gt;
|-&lt;br /&gt;
|  0x1B0&lt;br /&gt;
|  4&lt;br /&gt;
|  RomFS offset, in media units&lt;br /&gt;
|-&lt;br /&gt;
|  0x1B4&lt;br /&gt;
|  4&lt;br /&gt;
|  RomFS size, in media units&lt;br /&gt;
|-&lt;br /&gt;
|  0x1B8&lt;br /&gt;
|  4&lt;br /&gt;
|  RomFS hash region size, in media units&lt;br /&gt;
|-&lt;br /&gt;
|  0x1BC&lt;br /&gt;
|  4&lt;br /&gt;
|  Reserved&lt;br /&gt;
|-&lt;br /&gt;
|  0x1C0&lt;br /&gt;
|  0x20&lt;br /&gt;
|  ExeFS superblock SHA-256 hash, over first 0x200 bytes of the ExeFS&lt;br /&gt;
|-&lt;br /&gt;
|  0x1E0&lt;br /&gt;
|  0x20&lt;br /&gt;
|  RomFS superblock SHA-256 hash, over first 0x200 bytes of the RomFS&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NCCH Flags ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  INDEX&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  5&lt;br /&gt;
|  When the low 2-bits are 0x1, the NCCH is a CFA. Otherwise, it&#039;s a CXI.&lt;br /&gt;
|}&lt;br /&gt;
CXIs NCCH header signature is verified using the RSA public key stored in the accessdesc,(which follows the exheader) while CFAs NCCH header is verified with a fixed RSA public key.&lt;br /&gt;
&lt;br /&gt;
==== NCCH header example for Lego Starwars III ====&lt;br /&gt;
 Signature:              720FF8F83F2A1E998322A026D1434165&lt;br /&gt;
                         ED19642ABC1CB2722135AA202BEAD60A&lt;br /&gt;
                         80BCD21C768C597B8268FEF2C64EA710&lt;br /&gt;
                         4C9BA5E12CFFBD1D0C619F4EF7B42CA7&lt;br /&gt;
                         DD8482CB4EB26720AD66CDA57ABCBCFB&lt;br /&gt;
                         D63268A6E2896A59B3B744E39E45B88A&lt;br /&gt;
                         ABB4C0980ACC6210818DCE6DAC838A10&lt;br /&gt;
                         95D0F66B352474D4B3DA4B333F49912D&lt;br /&gt;
                         29AF7EA58BC8C890B18C70B7D540A9FB&lt;br /&gt;
                         EBE24A5312055617D3353B28C3EB1D17&lt;br /&gt;
                         61021BEFF6AD22C384835B40BD44DFAD&lt;br /&gt;
                         981F6350F9458B17BCB5F768C92ABC93&lt;br /&gt;
                         2BCE9888855A8998F4CDE40C9543514A&lt;br /&gt;
                         C57B84EB75A680E7C742632614620D1D&lt;br /&gt;
                         A253284DF3DC01091EB3800C36FD62EE&lt;br /&gt;
                         BA15340F1FD498FAB67C0302E9CDA397&lt;br /&gt;
 Magic:                  NCCH&lt;br /&gt;
 Content size:           0x1cfef400&lt;br /&gt;
 Partition id:           0004000000038c00&lt;br /&gt;
 Maker code:             3436 (&amp;quot;46&amp;quot;)&lt;br /&gt;
 Version:                0002&lt;br /&gt;
 Program id:             0004000000038c00&lt;br /&gt;
 Temp flag:              00&lt;br /&gt;
 Product code:           CTR-P-ALGP&lt;br /&gt;
 Extended header hash:   0C27E3C1DE7B2AE2D3114F32A4EEBF46&lt;br /&gt;
                         9AFD0CF352C11D4984C2A9F1D2144C63&lt;br /&gt;
 Extended header size:   00000400&lt;br /&gt;
 Flags:                  0000030100000000&lt;br /&gt;
 Plain region offset:    0x00004a00&lt;br /&gt;
 Plain region size:      0x00000200&lt;br /&gt;
 ExeFS offset:           0x00004c00&lt;br /&gt;
 ExeFS size:             0x00143800&lt;br /&gt;
 ExeFS hash region size: 0x00000200&lt;br /&gt;
 RomFS offset:           0x00148400&lt;br /&gt;
 RomFS size:             0x1ceab000&lt;br /&gt;
 RomFS hash region size: 0x00000200&lt;br /&gt;
 ExeFS Superblock Hash:  130C042615F647C4C63225EA9E67F8A2&lt;br /&gt;
                         7B15246B88FBC7A927257B84977B787B&lt;br /&gt;
 RomFS Superblock Hash:  A65BEE1060BB6A6821BBCEC600035B7E&lt;br /&gt;
                         64FB6EACA7F0960CFB1F5A37087728F7&lt;br /&gt;
 Note: Offsets and sizes in media units have been converted to byte sizes.&lt;br /&gt;
&lt;br /&gt;
==== Plain region example for Lego Starwars III ====&lt;br /&gt;
 0004a00: 5b 53 44 4b 2b 4e 49 4e 54 45 4e 44 4f 3a 43 54  [SDK+NINTENDO:CT    [SDK+NINTENDO:CTR_SDK-0_14_23_200_none]&lt;br /&gt;
 0004a10: 52 5f 53 44 4b 2d 30 5f 31 34 5f 32 33 5f 32 30  R_SDK-0_14_23_20&lt;br /&gt;
 0004a20: 30 5f 6e 6f 6e 65 5d 00 5b 53 44 4b 2b 4e 49 4e  0_none].[SDK+NIN    [SDK+NINTENDO:Firmware-02_27]&lt;br /&gt;
 0004a30: 54 45 4e 44 4f 3a 46 69 72 6d 77 61 72 65 2d 30  TENDO:Firmware-0&lt;br /&gt;
 0004a40: 32 5f 32 37 5d 00 5b 53 44 4b 2b 4d 6f 62 69 63  2_27].[SDK+Mobic    [SDK+Mobiclip:Deblocker_1_0_2]&lt;br /&gt;
 0004a50: 6c 69 70 3a 44 65 62 6c 6f 63 6b 65 72 5f 31 5f  lip:Deblocker_1_&lt;br /&gt;
 0004a60: 30 5f 32 5d 00 5b 53 44 4b 2b 4d 6f 62 69 63 6c  0_2].[SDK+Mobicl    [SDK+Mobiclip:ImaAdpcmDec_1_0_0]&lt;br /&gt;
 0004a70: 69 70 3a 49 6d 61 41 64 70 63 6d 44 65 63 5f 31  ip:ImaAdpcmDec_1&lt;br /&gt;
 0004a80: 5f 30 5f 30 5d 00 5b 53 44 4b 2b 4d 6f 62 69 63  _0_0].[SDK+Mobic    [SDK+Mobiclip:MobiclipDec_1_0_1]&lt;br /&gt;
 0004a90: 6c 69 70 3a 4d 6f 62 69 63 6c 69 70 44 65 63 5f  lip:MobiclipDec_&lt;br /&gt;
 0004aa0: 31 5f 30 5f 31 5d 00 5b 53 44 4b 2b 4d 6f 62 69  1_0_1].[SDK+Mobi    [SDK+Mobiclip:MoflexDemuxer_1_0_2]&lt;br /&gt;
 0004ab0: 63 6c 69 70 3a 4d 6f 66 6c 65 78 44 65 6d 75 78  clip:MoflexDemux&lt;br /&gt;
 0004ac0: 65 72 5f 31 5f 30 5f 32 5d 00 00 00 00 00 00 00  er_1_0_2].......&lt;br /&gt;
 0004ad0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................&lt;br /&gt;
 0004ae0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................&lt;br /&gt;
&lt;br /&gt;
A tool for parsing this format is available [http://github.com/3dshax/ctr/tree/master/ctrtool here].&lt;br /&gt;
&lt;br /&gt;
==== Example dependency list from the extended header ====&lt;br /&gt;
 00850 41 50 54 3A 55 00 00 00 24 68 69 6F 46 49 4F 00 APT:U...$hioFIO.&lt;br /&gt;
 00860 24 68 6F 73 74 69 6F 30 24 68 6F 73 74 69 6F 31 $hostio0$hostio1&lt;br /&gt;
 00870 61 63 3A 75 00 00 00 00 62 6F 73 73 3A 55 00 00 ac:u....boss:U..&lt;br /&gt;
 00880 63 61 6D 3A 75 00 00 00 63 65 63 64 3A 75 00 00 cam:u...cecd:u..&lt;br /&gt;
 00890 63 66 67 3A 75 00 00 00 64 6C 70 3A 46 4B 43 4C cfg:u...dlp:FKCL&lt;br /&gt;
 008A0 64 6C 70 3A 53 52 56 52 64 73 70 3A 3A 44 53 50 dlp:SRVRdsp::DSP&lt;br /&gt;
 008B0 66 72 64 3A 75 00 00 00 66 73 3A 55 53 45 52 00 frd:u...fs:USER.&lt;br /&gt;
 008C0 67 73 70 3A 3A 47 70 75 68 69 64 3A 55 53 45 52 gsp::Gpuhid:USER&lt;br /&gt;
 008D0 68 74 74 70 3A 43 00 00 6D 69 63 3A 75 00 00 00 http:C..mic:u...&lt;br /&gt;
 008E0 6E 64 6D 3A 75 00 00 00 6E 65 77 73 3A 75 00 00 ndm:u...&amp;lt;nowiki&amp;gt;news:u..&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 008F0 6E 77 6D 3A 3A 55 44 53 70 74 6D 3A 75 00 00 00 nwm::UDSptm:u...&lt;br /&gt;
 00900 70 78 69 3A 64 65 76 00 73 6F 63 3A 55 00 00 00 pxi:dev.soc:U...&lt;br /&gt;
 00910 73 73 6C 3A 43 00 00 00 79 32 72 3A 75 00 00 00 ssl:C...y2r:u...&lt;br /&gt;
 00920 69 72 3A 55 53 45 52 00 6C 64 72 3A 72 6F 00 00 ir:USER.ldr:ro..&lt;br /&gt;
 00930 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................&lt;br /&gt;
 00940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................&lt;br /&gt;
 00950 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................&lt;br /&gt;
 00960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................&lt;br /&gt;
 ... ...&lt;br /&gt;
 009D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF                 &lt;br /&gt;
 009E0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................&lt;br /&gt;
 009F0 00 03 00 00 00 00 00 00 00 00 00 00 00 00 00 02 . .............&lt;br /&gt;
&lt;br /&gt;
=== Extended Header ===&lt;br /&gt;
See also: [https://github.com/3dshax/ctr/blob/master/ctrtool/exheader.h]&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x399&lt;br /&gt;
|  1&lt;br /&gt;
|  Memory type (00 = Base, 01 = Application, 02 = System)&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=NCCH&amp;diff=4120</id>
		<title>NCCH</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=NCCH&amp;diff=4120"/>
		<updated>2012-10-14T22:42:14Z</updated>

		<summary type="html">&lt;p&gt;Xcution: /* NCCH Header */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:File formats]]&lt;br /&gt;
The following text tries to document the structure of the NCCH container format.&lt;br /&gt;
&lt;br /&gt;
== Overview ==&lt;br /&gt;
There are two known NCCH container specialisations used on the 3DS, &amp;quot;executable&amp;quot; and &amp;quot;non-executable&amp;quot;, officially known as CXI and CFA respectively.&lt;br /&gt;
&lt;br /&gt;
== CXI == &lt;br /&gt;
&lt;br /&gt;
The CXI (CTR Executable Image) specialisation of the NCCH container, contains executable code, which runs on a single ARM11 core. It can communicate through SVC calls with the other ARM11 core running the &#039;system&#039; program code. For reasons of clarity, the ARM11 cores will sometimes be called the &#039;appcore&#039; and &#039;syscore&#039; respectively.&lt;br /&gt;
&lt;br /&gt;
The CXI format is structured in the following order:&lt;br /&gt;
* first a NCCH header,&lt;br /&gt;
* followed by an extended header, &lt;br /&gt;
* followed by a plain binary region,&lt;br /&gt;
* followed by an embedded executable filesystem ([[ExeFS]]) - (contains ARM11 code, Home menu [[SMDH|icn]]/bnr and [[Logo|logo]]),&lt;br /&gt;
* and finally followed by a read-only filesystem ([[RomFS]]) - (Used for external file storage).&lt;br /&gt;
&lt;br /&gt;
The extended header contains additional information regarding access control. &lt;br /&gt;
The plain binary region is an area specifically stored in plaintext, mostly containing SDK library strings for identification.&lt;br /&gt;
&lt;br /&gt;
== CFA ==&lt;br /&gt;
&lt;br /&gt;
The CFA (CTR File Archive) specialisation of the NCCH container, is not executable, but are used in conjunction with CXI files. For instance the DLP Child Container and the Electronic Manual. (There is a system update NCCH which follows this format, but is used by the 3DS rather than the Application NCCH, and only works when embedded in the [[CCI]] format because the nVer is kept in the header of retail [[CCI]] files instead of the application NCCH). There are CFA files which exist alone in a title, but these are just [[Title list|System Data Archive]] titles and are found only on the NAND.&lt;br /&gt;
&lt;br /&gt;
CFA files are structured in the following order:&lt;br /&gt;
* first a NCCH header,&lt;br /&gt;
* followed by a read-only filesystem ([[RomFS]])&lt;br /&gt;
&lt;br /&gt;
Non-Executable NCCH file examples(Includes Decrypted [[RomFS]]):&lt;br /&gt;
&lt;br /&gt;
[http://depositfiles.com/files/n476if4gj DLPChild Container]&lt;br /&gt;
[http://depositfiles.com/files/gnrihkeec Electronic Manual]&lt;br /&gt;
&lt;br /&gt;
== NCCH Specs ==&lt;br /&gt;
&lt;br /&gt;
The extended header, the [[ExeFS]] and the RomFS are encrypted using 128-bit AES CTR. &lt;br /&gt;
&lt;br /&gt;
By default encrypted regions are compressed with an LZ77 variant, then encrypted. The spec allows for both unencrypted and uncompressed regions to exist. Retail SD card CXIs must have the [[ExeFS|ExeFS:/.code]] compressed. Development units use a fixed system key for system titles. On retail part of the input [[AES]] engine key is unique per NCCH, the AES engine internally generates the final-normal key.&lt;br /&gt;
&lt;br /&gt;
Retail CFAs use NCCH product code &amp;quot;CTR-P-CTAP&amp;quot;, while retail title/gamecard CXIs use NCCH product code &amp;quot;CTR-P-XXXX&amp;quot;. This product code is the NCCH [[Serials|serial code]]. &amp;lt;del&amp;gt;This CXI product code is likely used for region-locking.&amp;lt;/del&amp;gt; There is a value set in the banner used for region-locking.&lt;br /&gt;
&lt;br /&gt;
=== NCCH Header ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x000&lt;br /&gt;
|  0x100&lt;br /&gt;
|  RSA-2048 signature of the NCCH header, using SHA-256.&lt;br /&gt;
|-&lt;br /&gt;
|  0x100&lt;br /&gt;
|  4&lt;br /&gt;
|  Magic ID, always &#039;NCCH&#039;&lt;br /&gt;
|-&lt;br /&gt;
|  0x104&lt;br /&gt;
|  4&lt;br /&gt;
|  Content size, in media units (1 media unit = 0x200 bytes)&lt;br /&gt;
|-&lt;br /&gt;
|  0x108&lt;br /&gt;
|  8&lt;br /&gt;
|  Partition ID&lt;br /&gt;
|-&lt;br /&gt;
|  0x110&lt;br /&gt;
|  2&lt;br /&gt;
|  Maker code&lt;br /&gt;
|-&lt;br /&gt;
|  0x112&lt;br /&gt;
|  2&lt;br /&gt;
|  Version&lt;br /&gt;
|-&lt;br /&gt;
|  0x114&lt;br /&gt;
|  4&lt;br /&gt;
|  Reserved&lt;br /&gt;
|-&lt;br /&gt;
|  0x118&lt;br /&gt;
|  8&lt;br /&gt;
|  Program ID&lt;br /&gt;
|-&lt;br /&gt;
|  0x120&lt;br /&gt;
|  1&lt;br /&gt;
|  Temp flag&lt;br /&gt;
|-&lt;br /&gt;
|  0x121&lt;br /&gt;
|  0x2F&lt;br /&gt;
|  Reserved&lt;br /&gt;
|-&lt;br /&gt;
|  0x150&lt;br /&gt;
|  0x10&lt;br /&gt;
|  Product code&lt;br /&gt;
|-&lt;br /&gt;
|  0x160&lt;br /&gt;
|  0x20&lt;br /&gt;
|  Extended header hash. SHA256Managed() over first 0x400 bytes of UNENCRYPTED ExHeader.&lt;br /&gt;
|-&lt;br /&gt;
|  0x180&lt;br /&gt;
|  4&lt;br /&gt;
|  Extended header size&lt;br /&gt;
|-&lt;br /&gt;
|  0x184&lt;br /&gt;
|  4&lt;br /&gt;
|  Reserved&lt;br /&gt;
|-&lt;br /&gt;
|  0x188&lt;br /&gt;
|  8&lt;br /&gt;
|  Flags: byte[5]-byte[7] indicate content type ( system update, application, manual, ... ) size of media unit ( 512*2^byte[6] ) and encryption.&lt;br /&gt;
|-&lt;br /&gt;
|  0x190&lt;br /&gt;
|  4&lt;br /&gt;
|  Plain region offset, in media units&lt;br /&gt;
|-&lt;br /&gt;
|  0x194&lt;br /&gt;
|  4&lt;br /&gt;
|  Plain region size, in media units&lt;br /&gt;
|-&lt;br /&gt;
|  0x198&lt;br /&gt;
|  8&lt;br /&gt;
|  Reserved&lt;br /&gt;
|-&lt;br /&gt;
|  0x1A0&lt;br /&gt;
|  4&lt;br /&gt;
|  ExeFS offset, in media units&lt;br /&gt;
|-&lt;br /&gt;
|  0x1A4&lt;br /&gt;
|  4&lt;br /&gt;
|  ExeFS size, in media units&lt;br /&gt;
|-&lt;br /&gt;
|  0x1A8&lt;br /&gt;
|  4&lt;br /&gt;
|  ExeFS hash region size, in media units&lt;br /&gt;
|-&lt;br /&gt;
|  0x1AC&lt;br /&gt;
|  4&lt;br /&gt;
|  Reserved&lt;br /&gt;
|-&lt;br /&gt;
|  0x1B0&lt;br /&gt;
|  4&lt;br /&gt;
|  RomFS offset, in media units&lt;br /&gt;
|-&lt;br /&gt;
|  0x1B4&lt;br /&gt;
|  4&lt;br /&gt;
|  RomFS size, in media units&lt;br /&gt;
|-&lt;br /&gt;
|  0x1B8&lt;br /&gt;
|  4&lt;br /&gt;
|  RomFS hash region size, in media units&lt;br /&gt;
|-&lt;br /&gt;
|  0x1BC&lt;br /&gt;
|  4&lt;br /&gt;
|  Reserved&lt;br /&gt;
|-&lt;br /&gt;
|  0x1C0&lt;br /&gt;
|  0x20&lt;br /&gt;
|  ExeFS superblock hash. SHA256Managed() over first 0x200 bytes of UNENCRYPTED ExeFS.&lt;br /&gt;
|-&lt;br /&gt;
|  0x1E0&lt;br /&gt;
|  0x20&lt;br /&gt;
|  RomFS superblock hash. SHA256Managed() over first 0x200 bytes of UNENCRYPTED RomFS.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
=== NCCH Flags ===&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  INDEX&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  5&lt;br /&gt;
|  When the low 2-bits are 0x1, the NCCH is a CFA. Otherwise, it&#039;s a CXI.&lt;br /&gt;
|}&lt;br /&gt;
CXIs NCCH header signature is verified using the RSA public key stored in the accessdesc,(which follows the exheader) while CFAs NCCH header is verified with a fixed RSA public key.&lt;br /&gt;
&lt;br /&gt;
==== NCCH header example for Lego Starwars III ====&lt;br /&gt;
 Signature:              720FF8F83F2A1E998322A026D1434165&lt;br /&gt;
                         ED19642ABC1CB2722135AA202BEAD60A&lt;br /&gt;
                         80BCD21C768C597B8268FEF2C64EA710&lt;br /&gt;
                         4C9BA5E12CFFBD1D0C619F4EF7B42CA7&lt;br /&gt;
                         DD8482CB4EB26720AD66CDA57ABCBCFB&lt;br /&gt;
                         D63268A6E2896A59B3B744E39E45B88A&lt;br /&gt;
                         ABB4C0980ACC6210818DCE6DAC838A10&lt;br /&gt;
                         95D0F66B352474D4B3DA4B333F49912D&lt;br /&gt;
                         29AF7EA58BC8C890B18C70B7D540A9FB&lt;br /&gt;
                         EBE24A5312055617D3353B28C3EB1D17&lt;br /&gt;
                         61021BEFF6AD22C384835B40BD44DFAD&lt;br /&gt;
                         981F6350F9458B17BCB5F768C92ABC93&lt;br /&gt;
                         2BCE9888855A8998F4CDE40C9543514A&lt;br /&gt;
                         C57B84EB75A680E7C742632614620D1D&lt;br /&gt;
                         A253284DF3DC01091EB3800C36FD62EE&lt;br /&gt;
                         BA15340F1FD498FAB67C0302E9CDA397&lt;br /&gt;
 Magic:                  NCCH&lt;br /&gt;
 Content size:           0x1cfef400&lt;br /&gt;
 Partition id:           0004000000038c00&lt;br /&gt;
 Maker code:             3436 (&amp;quot;46&amp;quot;)&lt;br /&gt;
 Version:                0002&lt;br /&gt;
 Program id:             0004000000038c00&lt;br /&gt;
 Temp flag:              00&lt;br /&gt;
 Product code:           CTR-P-ALGP&lt;br /&gt;
 Extended header hash:   0C27E3C1DE7B2AE2D3114F32A4EEBF46&lt;br /&gt;
                         9AFD0CF352C11D4984C2A9F1D2144C63&lt;br /&gt;
 Extended header size:   00000400&lt;br /&gt;
 Flags:                  0000030100000000&lt;br /&gt;
 Plain region offset:    0x00004a00&lt;br /&gt;
 Plain region size:      0x00000200&lt;br /&gt;
 ExeFS offset:           0x00004c00&lt;br /&gt;
 ExeFS size:             0x00143800&lt;br /&gt;
 ExeFS hash region size: 0x00000200&lt;br /&gt;
 RomFS offset:           0x00148400&lt;br /&gt;
 RomFS size:             0x1ceab000&lt;br /&gt;
 RomFS hash region size: 0x00000200&lt;br /&gt;
 ExeFS Superblock Hash:  130C042615F647C4C63225EA9E67F8A2&lt;br /&gt;
                         7B15246B88FBC7A927257B84977B787B&lt;br /&gt;
 RomFS Superblock Hash:  A65BEE1060BB6A6821BBCEC600035B7E&lt;br /&gt;
                         64FB6EACA7F0960CFB1F5A37087728F7&lt;br /&gt;
 Note: Offsets and sizes in media units have been converted to byte sizes.&lt;br /&gt;
&lt;br /&gt;
==== Plain region example for Lego Starwars III ====&lt;br /&gt;
 0004a00: 5b 53 44 4b 2b 4e 49 4e 54 45 4e 44 4f 3a 43 54  [SDK+NINTENDO:CT    [SDK+NINTENDO:CTR_SDK-0_14_23_200_none]&lt;br /&gt;
 0004a10: 52 5f 53 44 4b 2d 30 5f 31 34 5f 32 33 5f 32 30  R_SDK-0_14_23_20&lt;br /&gt;
 0004a20: 30 5f 6e 6f 6e 65 5d 00 5b 53 44 4b 2b 4e 49 4e  0_none].[SDK+NIN    [SDK+NINTENDO:Firmware-02_27]&lt;br /&gt;
 0004a30: 54 45 4e 44 4f 3a 46 69 72 6d 77 61 72 65 2d 30  TENDO:Firmware-0&lt;br /&gt;
 0004a40: 32 5f 32 37 5d 00 5b 53 44 4b 2b 4d 6f 62 69 63  2_27].[SDK+Mobic    [SDK+Mobiclip:Deblocker_1_0_2]&lt;br /&gt;
 0004a50: 6c 69 70 3a 44 65 62 6c 6f 63 6b 65 72 5f 31 5f  lip:Deblocker_1_&lt;br /&gt;
 0004a60: 30 5f 32 5d 00 5b 53 44 4b 2b 4d 6f 62 69 63 6c  0_2].[SDK+Mobicl    [SDK+Mobiclip:ImaAdpcmDec_1_0_0]&lt;br /&gt;
 0004a70: 69 70 3a 49 6d 61 41 64 70 63 6d 44 65 63 5f 31  ip:ImaAdpcmDec_1&lt;br /&gt;
 0004a80: 5f 30 5f 30 5d 00 5b 53 44 4b 2b 4d 6f 62 69 63  _0_0].[SDK+Mobic    [SDK+Mobiclip:MobiclipDec_1_0_1]&lt;br /&gt;
 0004a90: 6c 69 70 3a 4d 6f 62 69 63 6c 69 70 44 65 63 5f  lip:MobiclipDec_&lt;br /&gt;
 0004aa0: 31 5f 30 5f 31 5d 00 5b 53 44 4b 2b 4d 6f 62 69  1_0_1].[SDK+Mobi    [SDK+Mobiclip:MoflexDemuxer_1_0_2]&lt;br /&gt;
 0004ab0: 63 6c 69 70 3a 4d 6f 66 6c 65 78 44 65 6d 75 78  clip:MoflexDemux&lt;br /&gt;
 0004ac0: 65 72 5f 31 5f 30 5f 32 5d 00 00 00 00 00 00 00  er_1_0_2].......&lt;br /&gt;
 0004ad0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................&lt;br /&gt;
 0004ae0: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  ................&lt;br /&gt;
&lt;br /&gt;
A tool for parsing this format is available [http://github.com/3dshax/ctr/tree/master/ctrtool here]&lt;br /&gt;
&lt;br /&gt;
==== Example dependency list from the extended header ====&lt;br /&gt;
 00850 41 50 54 3A 55 00 00 00 24 68 69 6F 46 49 4F 00 APT:U...$hioFIO.&lt;br /&gt;
 00860 24 68 6F 73 74 69 6F 30 24 68 6F 73 74 69 6F 31 $hostio0$hostio1&lt;br /&gt;
 00870 61 63 3A 75 00 00 00 00 62 6F 73 73 3A 55 00 00 ac:u....boss:U..&lt;br /&gt;
 00880 63 61 6D 3A 75 00 00 00 63 65 63 64 3A 75 00 00 cam:u...cecd:u..&lt;br /&gt;
 00890 63 66 67 3A 75 00 00 00 64 6C 70 3A 46 4B 43 4C cfg:u...dlp:FKCL&lt;br /&gt;
 008A0 64 6C 70 3A 53 52 56 52 64 73 70 3A 3A 44 53 50 dlp:SRVRdsp::DSP&lt;br /&gt;
 008B0 66 72 64 3A 75 00 00 00 66 73 3A 55 53 45 52 00 frd:u...fs:USER.&lt;br /&gt;
 008C0 67 73 70 3A 3A 47 70 75 68 69 64 3A 55 53 45 52 gsp::Gpuhid:USER&lt;br /&gt;
 008D0 68 74 74 70 3A 43 00 00 6D 69 63 3A 75 00 00 00 http:C..mic:u...&lt;br /&gt;
 008E0 6E 64 6D 3A 75 00 00 00 6E 65 77 73 3A 75 00 00 ndm:u...&amp;lt;nowiki&amp;gt;news:u..&amp;lt;/nowiki&amp;gt;&lt;br /&gt;
 008F0 6E 77 6D 3A 3A 55 44 53 70 74 6D 3A 75 00 00 00 nwm::UDSptm:u...&lt;br /&gt;
 00900 70 78 69 3A 64 65 76 00 73 6F 63 3A 55 00 00 00 pxi:dev.soc:U...&lt;br /&gt;
 00910 73 73 6C 3A 43 00 00 00 79 32 72 3A 75 00 00 00 ssl:C...y2r:u...&lt;br /&gt;
 00920 69 72 3A 55 53 45 52 00 6C 64 72 3A 72 6F 00 00 ir:USER.ldr:ro..&lt;br /&gt;
 00930 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................&lt;br /&gt;
 00940 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................&lt;br /&gt;
 00950 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................&lt;br /&gt;
 00960 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................&lt;br /&gt;
 ... ...&lt;br /&gt;
 009D0 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF                 &lt;br /&gt;
 009E0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................&lt;br /&gt;
 009F0 00 03 00 00 00 00 00 00 00 00 00 00 00 00 00 02 . .............&lt;br /&gt;
&lt;br /&gt;
=== Extended Header ===&lt;br /&gt;
&lt;br /&gt;
&#039;&#039;&#039;NOTE: AFTER DECRYPTION&#039;&#039;&#039;&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  OFFSET&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x399&lt;br /&gt;
|  1&lt;br /&gt;
|  Memory type (00 = Base, 01 = Application, 02 = System)&lt;br /&gt;
|}&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
	<entry>
		<id>https://www.3dbrew.org/w/index.php?title=CIA&amp;diff=4099</id>
		<title>CIA</title>
		<link rel="alternate" type="text/html" href="https://www.3dbrew.org/w/index.php?title=CIA&amp;diff=4099"/>
		<updated>2012-10-06T23:40:36Z</updated>

		<summary type="html">&lt;p&gt;Xcution: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;[[Category:File formats]]&lt;br /&gt;
=== Overview ===&lt;br /&gt;
CIA stands for &#039;&#039;&#039;C&#039;&#039;&#039;TR &#039;&#039;&#039;I&#039;&#039;&#039;mportable &#039;&#039;&#039;A&#039;&#039;&#039;rchive. This format allows the installation titles to the 3DS. CIA files can compile [[NCCH]] files for installation to either the SDMC or CTR NAND. CIA files can also compile .SRL files (format for DS(i) executable images) for installation to the TWL NAND of the 3DS. &lt;br /&gt;
&lt;br /&gt;
An example .CIA can be downloaded [http://depositfiles.com/files/t93cpkb2g here] Credit: [[User:Jl12|Jl12]]. It includes a .cia file, the result of installation, some screenshots. Also I&#039;ve decrypted/extracted everything, for those people who can&#039;t be bothered using ctrtool ;)&lt;br /&gt;
&lt;br /&gt;
[[Download Play]] utilises the CIA format when transferring titles.(This is also the only known retail implementation of the CIA format)&lt;br /&gt;
&lt;br /&gt;
Development Units, are capable of manually installing CIA files via the [[3DS Development Unit Software#Dev Menu|Dev Menu]]&lt;br /&gt;
&lt;br /&gt;
=== Format ===&lt;br /&gt;
The CIA format has a similar structure to the [http://wiibrew.org/wiki/Wad WAD format].&lt;br /&gt;
&lt;br /&gt;
The file is represented in little-endian.&lt;br /&gt;
&lt;br /&gt;
The data is aligned in 64 byte blocks (if a content ends at the middle of the block, the next content will begin from a new block).&lt;br /&gt;
&lt;br /&gt;
The CIA format is capable of containing more then one NCCH in the APP data, the TMD specifies the size of each NCCH contained in the APP data. Generally it will only contain additional NCCH files (.[[NCCH#CFA|CFA]] format, such as the Manual and DLP Child) related to the main executable NCCH (.[[NCCH#CXI|CXI]] format). The CIA format could be interpreted as an installable variant of the [[NCSD|CCI]] format.&lt;br /&gt;
&lt;br /&gt;
== CIA Header ==&lt;br /&gt;
&lt;br /&gt;
This is a 32 bytes long header (8 x uint32).&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  START&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x00&lt;br /&gt;
|  0x04 &lt;br /&gt;
|  Archive Header Size (=0x2020 bytes) (Starts with 0x80 @ offset 0x0020)&lt;br /&gt;
|-&lt;br /&gt;
|  0x04&lt;br /&gt;
|  0x02&lt;br /&gt;
|  Type&lt;br /&gt;
|-&lt;br /&gt;
|  0x06&lt;br /&gt;
|  0x02&lt;br /&gt;
|  Version&lt;br /&gt;
|- &lt;br /&gt;
|  0x08     &lt;br /&gt;
|  0x04&lt;br /&gt;
|  Certificate chain size  &lt;br /&gt;
|-&lt;br /&gt;
|  0x0C      &lt;br /&gt;
|  0x04&lt;br /&gt;
|  Ticket size&lt;br /&gt;
|-&lt;br /&gt;
|  0x10     &lt;br /&gt;
|  0x04&lt;br /&gt;
|  [[TMD]] file size&lt;br /&gt;
|-&lt;br /&gt;
|  0x14     &lt;br /&gt;
|  0x04&lt;br /&gt;
|  Meta size (0 if no Meta data is present)&lt;br /&gt;
|-&lt;br /&gt;
|  0x18     &lt;br /&gt;
|  0x04&lt;br /&gt;
|  APP file size&lt;br /&gt;
|-&lt;br /&gt;
|  0x1C&lt;br /&gt;
|  0x04&lt;br /&gt;
|  0x80000000&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
The order of the sections in the CIA file:&lt;br /&gt;
* certificate chain&lt;br /&gt;
* Ticket&lt;br /&gt;
* TMD file data&lt;br /&gt;
* APP file data&lt;br /&gt;
* Meta file data&lt;br /&gt;
&lt;br /&gt;
The APP data (NCCH/SRL) is encrypted, using 128-bit AES-CBC. The encryption uses the decrypted titlekey of the ticket, and the titleid padded with zeros as the IV. To get the decrypted titlekey, the titlekey stored in the ticket must be decrypted using 128-bit AES-CBC with the 3DS common key, and the same IV as mentioned previously. &lt;br /&gt;
&lt;br /&gt;
== Meta ==&lt;br /&gt;
&lt;br /&gt;
The structure of this data is as follows:&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot; border=&amp;quot;1&amp;quot;&lt;br /&gt;
|-&lt;br /&gt;
!  START&lt;br /&gt;
!  SIZE&lt;br /&gt;
!  DESCRIPTION&lt;br /&gt;
|-&lt;br /&gt;
|  0x00&lt;br /&gt;
|  0x180&lt;br /&gt;
|  Title ID dependency list - From the application&#039;s ExHeader&lt;br /&gt;
|-&lt;br /&gt;
|  0x180&lt;br /&gt;
|  0x280&lt;br /&gt;
|  Reserved/Unused&lt;br /&gt;
|-&lt;br /&gt;
|  0x400&lt;br /&gt;
|  0x36C0&lt;br /&gt;
|  [[SMDH|Icon Data]](.ICN) - From the application&#039;s [[ExeFS]]&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
Obviously this section is not present in TWL CIA files.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Title Key Encryption ==&lt;br /&gt;
&lt;br /&gt;
The unencrypted Title Key is used to encrypt the data in a CIA. The encrypted Title Key of a CIA can be found at offset 0x1BF in a CIA&#039;s Ticket.&lt;br /&gt;
Each Title Key is encrypted with AES-CBC to get the encrypted Title Key.&lt;br /&gt;
&lt;br /&gt;
To encrypt an unencrypted title key, you need:&lt;br /&gt;
&lt;br /&gt;
* Common key (as byte array)&lt;br /&gt;
* Title ID (as ulong)&lt;br /&gt;
* (and of course the unencrypted title key you want to encrypt) (as byte array)&lt;br /&gt;
&lt;br /&gt;
The title key encryption process starts by converting the ulong (Title ID) into a byte array using by retrieving the bytes of the Title ID using BitConverter.GetBytes().&lt;br /&gt;
If the converted bytes (title ID) are in Little Endian, reverse those bytes. (in C# it would be Array.Reverse(byte_array_from_bitconverter))&lt;br /&gt;
This process makes the Title Key encryption IV.&lt;br /&gt;
&lt;br /&gt;
Next, after you&#039;ve gotten your Title Key&#039;s IV, you can start your cryptography transformation. Using AESManaged, where:&lt;br /&gt;
&lt;br /&gt;
Key  = Common Key&lt;br /&gt;
&lt;br /&gt;
IV   = the byte array found in the conversion process above&lt;br /&gt;
&lt;br /&gt;
Mode = CipherMode.CBC&lt;br /&gt;
&lt;br /&gt;
Create the encryptor (AesManaged.CreateEncryptor(key, iv)) where the key and IV are both the same as above.&lt;br /&gt;
&lt;br /&gt;
Then, create a CryptoStream and a MemoryStream. The Crypto stream should start with the arguments (memorystream, aes_transform_from_above, CryptoStreamMode.Write).&lt;br /&gt;
&lt;br /&gt;
Write to the CryptoStream where buffer=unencrypted_titlekey, offset=0, and count=the length of the unencrypted title key.&lt;br /&gt;
&lt;br /&gt;
Use FlushFinalBlock() on the CryptoStream.&lt;br /&gt;
&lt;br /&gt;
Finally, then, the encrypted title key will be available from your memory &lt;br /&gt;
stream. (to output the calculated encrypted title key as a byte array, you can use memorystream.ToArray(), for example)&lt;br /&gt;
&lt;br /&gt;
Example function: (C#)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
        public static byte[] EncryptMyTitleKey(byte[] commonKey, byte[] titleKey, ulong titleId)&lt;br /&gt;
        {&lt;br /&gt;
            // Make encryption IV&lt;br /&gt;
            byte[] titleidasbytes = new byte[0x10];&lt;br /&gt;
            for (int i = 0; i &amp;lt; 0x10; i++)&lt;br /&gt;
            {&lt;br /&gt;
                titleidasbytes[i] = 0;&lt;br /&gt;
            }&lt;br /&gt;
            byte[] bitBytes = BitConverter.GetBytes(titleId);&lt;br /&gt;
            if (BitConverter.IsLittleEndian)&lt;br /&gt;
            {&lt;br /&gt;
                Array.Reverse(bitBytes);&lt;br /&gt;
            }&lt;br /&gt;
            bitBytes.CopyTo(titleidasbytes, 0);&lt;br /&gt;
            // Encrypt&lt;br /&gt;
            ICryptoTransform transform = new AesManaged { Key = commonKey, IV = titleidasbytes, Mode = CipherMode.CBC }.CreateEncryptor(commonKey, titleidasbytes);&lt;br /&gt;
            MemoryStream memstream = new MemoryStream();&lt;br /&gt;
            CryptoStream cryptostream = new CryptoStream(memstream, transform, CryptoStreamMode.Write);&lt;br /&gt;
            cryptostream.Write(titleKey, 0, titleKey.Length);&lt;br /&gt;
            cryptostream.FlushFinalBlock();&lt;br /&gt;
            return memstream.ToArray();&lt;br /&gt;
        }&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Xcution</name></author>
	</entry>
</feed>