Changes

→‎Basic File Structure: added basic info on NDHX and NDHI
Line 1: Line 1:  
The '''Nintendo DS Cart Whitelist''' is a system title (HNHA / 0003000f484e4841) on DSi and 3DS TWL_MODE that contains a list of whitelisted DS carts. Other carts can be loaded if they have a valid RSA signature, which is how newer DS games load on DSi systems.
 
The '''Nintendo DS Cart Whitelist''' is a system title (HNHA / 0003000f484e4841) on DSi and 3DS TWL_MODE that contains a list of whitelisted DS carts. Other carts can be loaded if they have a valid RSA signature, which is how newer DS games load on DSi systems.
   −
== Basic File Structure ==
+
== Format ==
The file consists in one header, a list of titles and a footer. Note: this page only covers the initial versions of the whitelist. Later versions also have NDHX and NDHI sections and have footer differences.
+
Newer versions of the file contain 3 sections: NDHT, NDHX, and NDHI. Older versions only contain NDHT.
   −
=== Header Structure ===
+
=== Header ===
 
The header is 136 bytes.
 
The header is 136 bytes.
 
{| class="wikitable"
 
{| class="wikitable"
Line 14: Line 14:  
| 0x00
 
| 0x00
 
| 4
 
| 4
| An ID (NDHT)
+
| Section type (NDHT, NDHX, NDHI)
 
|-
 
|-
 
| 0x04
 
| 0x04
 
| 0x80
 
| 0x80
| RSA signature of the entire NDHT section below this point.
+
| RSA signature of the entire section below this point.
 
|-
 
|-
 
| 0x84
 
| 0x84
 
| 4
 
| 4
| Number of titles in NDHT section
+
| Number of entries
 
|}
 
|}
   −
=== Title Structure ===
+
=== NDHT entry ===
A title is 48 bytes.
+
NDHT entries correspond to titles and are 48 bytes. The NDHT section is always first.
 +
 
 
{| class="wikitable"
 
{| class="wikitable"
 
|- style="background-color: #ddd;"
 
|- style="background-color: #ddd;"
Line 50: Line 51:  
|}
 
|}
   −
=== Footer Structure ===
+
=== NDHT footer ===
The footer is 24 bytes.
+
The NDHT footer is 24 bytes.
 
{| class="wikitable"
 
{| class="wikitable"
 
|- style="background-color: #ddd;"
 
|- style="background-color: #ddd;"
Line 60: Line 61:  
| 0x00
 
| 0x00
 
| 24
 
| 24
 +
| Unknown
 +
|}
 +
 +
=== NDHX entry ===
 +
{| class="wikitable"
 +
|- style="background-color: #ddd;"
 +
! Start
 +
! Length
 +
! Description
 +
|-
 +
| 0x00
 +
| 0x1c
 +
| Unknown
 +
|}
 +
 +
=== NDHI entry ===
 +
{| class="wikitable"
 +
|- style="background-color: #ddd;"
 +
! Start
 +
! Length
 +
! Description
 +
|-
 +
| 0x00
 +
| 0x5c
 
| Unknown
 
| Unknown
 
|}
 
|}
322

edits