Difference between revisions of "SD Filesystem"

From 3dbrew
Jump to navigation Jump to search
Line 16: Line 16:
  
 
== import.db and title.db ==
 
== import.db and title.db ==
With the introduction of the June update the folder structure changed slightly. You will now find "dbs" and "title" folders located in  /Nintendo 3DS/<SomeID>/<SomeID>/ along with the extdata folder. "dbs" contains two files, import.db and title.db - usage currently unknown. import.db seems to contain data from DSiWare SRLs.
+
With the introduction of the June update the folder structure changed slightly. You will now find "dbs" and "title" folders located in  /Nintendo 3DS/<SomeID>/<SomeID>/ along with the extdata folder. "dbs" contains two files, import.db and title.db. The purpose of the files in the "dbs" is to archive the list of titles installed on the SD card. And perhaps has some SRL data
  
 
The data at the beginning of the file is encrypted, but the rest is cleartext. This file is always 3.1MB, thus this doesn't contain the whole SRL for most DSiWare. The data stored here is not ordered the same way as the src SRL: ARM7 code, ARM9 code, and data are mixed together. The file can contain data from DSiWare that wasn't installed, only listed on the src DSi for DSiWare transfer. (This file is likely some temporary data storage used for DSiWare install etc).
 
The data at the beginning of the file is encrypted, but the rest is cleartext. This file is always 3.1MB, thus this doesn't contain the whole SRL for most DSiWare. The data stored here is not ordered the same way as the src SRL: ARM7 code, ARM9 code, and data are mixed together. The file can contain data from DSiWare that wasn't installed, only listed on the src DSi for DSiWare transfer. (This file is likely some temporary data storage used for DSiWare install etc).
Line 32: Line 32:
 
  00054300 - 3D Classics Excitebike - USA
 
  00054300 - 3D Classics Excitebike - USA
 
  00054e00 - 3D Classics Excitebike - EUR (verified)
 
  00054e00 - 3D Classics Excitebike - EUR (verified)
00054300 - 3D Classics Excitebike - USA
 
 
  00045C00 - 3D Classics Excitebike - JPN
 
  00045C00 - 3D Classics Excitebike - JPN
 
  For more IDs, see the 00040000 titles on the [[Title_list]].
 
  For more IDs, see the 00040000 titles on the [[Title_list]].
Line 39: Line 38:
  
 
When renaming ''any'' of these files/dir under content, the icon in home-menu is still displayed. Modifying any of these files has same result as renaming them. When renaming the cmd dir/cmd file, or 00000000.app, the 3D banner isn't displayed. When renaming the cmd dir or the file contained in that dir, home-menu will refuse to run the title, and the manual will not work.(will display the black screen saying sdcard isn't inserted) Manual won't load when 00000001.app is renamed, so that .app might be the manual? When the main 00000000.app binary is renamed, the title will not launch and in the manual placeholder text is used for the title name/icon. Home-menu doesn't care at all when tmd is renamed.
 
When renaming ''any'' of these files/dir under content, the icon in home-menu is still displayed. Modifying any of these files has same result as renaming them. When renaming the cmd dir/cmd file, or 00000000.app, the 3D banner isn't displayed. When renaming the cmd dir or the file contained in that dir, home-menu will refuse to run the title, and the manual will not work.(will display the black screen saying sdcard isn't inserted) Manual won't load when 00000001.app is renamed, so that .app might be the manual? When the main 00000000.app binary is renamed, the title will not launch and in the manual placeholder text is used for the title name/icon. Home-menu doesn't care at all when tmd is renamed.
 +
 +
The ".app" files are encrypted [[CXI]] files. The only way to be certain of the function of the encrypted CXI(s), is the view the application's TMD on Nintendo's CDN server at http://nus.cdn.c.shop.nintendowifi.net/ccs/download/TitleIDhere/tmd (for title IDs see the [[Title list]]. In the 'Content Chunk Records' look for the 'Content Index':
 +
 +
{| class="wikitable" border="1"
 +
|-
 +
!  Content Index
 +
!  CXI Type
 +
|-
 +
|  0000
 +
|  Main CXI (Executable)
 +
|-
 +
|  0001
 +
|  Manual
 +
|-
 +
|  0002
 +
|  DLP Child
 +
|}
 +
 +
For examples of Manual/DLP Child CXI files see the [[CXI]] page.
  
 
== Private ==
 
== Private ==

Revision as of 08:07, 22 June 2012

The 3DS uses an SD Card for general storage of additional game data, music and photos taken with the 3DS.

/DCIM - Photos and images downloaded with the Internet Browser.
/Music - Music Files
/Nintendo 3DS - Game Data

/DCIM with 3.0.0-5 also stores .avi 3D videos from the camera title, video frames use MJPG.

Extdata

Additional game data is stored here:

/Nintendo 3DS/<SomeID>/<SomeID>/extdata/00000000

See the extdata page for more extdata info and the extdataIDs list.

All "extra data" under extdata is encrypted. Extdata can't be decrypted with the xorpad fail used for old FLASH saves. All "extra data" files can't be copied to other 3DS SD cards, they are locked to the console.

import.db and title.db

With the introduction of the June update the folder structure changed slightly. You will now find "dbs" and "title" folders located in /Nintendo 3DS/<SomeID>/<SomeID>/ along with the extdata folder. "dbs" contains two files, import.db and title.db. The purpose of the files in the "dbs" is to archive the list of titles installed on the SD card. And perhaps has some SRL data

The data at the beginning of the file is encrypted, but the rest is cleartext. This file is always 3.1MB, thus this doesn't contain the whole SRL for most DSiWare. The data stored here is not ordered the same way as the src SRL: ARM7 code, ARM9 code, and data are mixed together. The file can contain data from DSiWare that wasn't installed, only listed on the src DSi for DSiWare transfer. (This file is likely some temporary data storage used for DSiWare install etc).

title.db seems to be encrypted.

title

/title/00040000/ Contains eshop downloads (can someone verify these and add for different regions?):
00032600 - Pokedex 3D - EUR (verified)
00042a00 - Legend of Zelda - Link's Awakening - EUR
0004ab00 - Nintendo Video - EUR
00052000 - Let's Golf 3D - EUR
00054300 - 3D Classics Excitebike - USA
00054e00 - 3D Classics Excitebike - EUR (verified)
00045C00 - 3D Classics Excitebike - JPN
For more IDs, see the 00040000 titles on the Title_list.

The above title directories contain two dirs: content and data. content contains 00000000.tmd, .app files, and some cmd dir containing 00000001.cmd, all of which are encrypted with a console-unique key. The data dir contains 00000001.sav, this is the title's encrypted savegame. Although these saves look similar to FLASH savegames, these savegames use proper unique CTR for each AES block in the file, and the CTR properly changes for each savegame write. Renaming these savegames causes home-menu to hang while launching titles, modifying saves throws the usual checksum/hash corruption like gamecard flash saves.

When renaming any of these files/dir under content, the icon in home-menu is still displayed. Modifying any of these files has same result as renaming them. When renaming the cmd dir/cmd file, or 00000000.app, the 3D banner isn't displayed. When renaming the cmd dir or the file contained in that dir, home-menu will refuse to run the title, and the manual will not work.(will display the black screen saying sdcard isn't inserted) Manual won't load when 00000001.app is renamed, so that .app might be the manual? When the main 00000000.app binary is renamed, the title will not launch and in the manual placeholder text is used for the title name/icon. Home-menu doesn't care at all when tmd is renamed.

The ".app" files are encrypted CXI files. The only way to be certain of the function of the encrypted CXI(s), is the view the application's TMD on Nintendo's CDN server at http://nus.cdn.c.shop.nintendowifi.net/ccs/download/TitleIDhere/tmd (for title IDs see the Title list. In the 'Content Chunk Records' look for the 'Content Index':

Content Index CXI Type
0000 Main CXI (Executable)
0001 Manual
0002 DLP Child

For examples of Manual/DLP Child CXI files see the CXI page.

Private

"Private" data is stored here:

/Nintendo 3DS/Private/<Title ID Low>/
00020400 - Nintendo 3DS Camera 
00020500 - Nintendo 3DS Sound


"Private" data for 3DS Sound/Camera are cleartext. Under the camera priv dir is phtcache.bin, this seems to list the pictures on SD card? When you want to install and see pictures with 3DS,rename to 8 numbers.mpo and save it on /DCIM . Under the sound priv dir is: voice/XX/*.m4a. Where XX is 01-10, with sound saved as .m4a.