Difference between revisions of "Category:File formats"

From 3dbrew
Jump to navigation Jump to search
m
(35 intermediate revisions by 9 users not shown)
Line 1: Line 1:
 
The following is a list of known file formats used by the 3DS.
 
The following is a list of known file formats used by the 3DS.
  
== NCCH ==
+
== [[NCCH]] ==
  
  
.[[CXI]] - Executable image. Are either packaged into a CCI/CSU for running off a cartridge, or packaged into a CIA for installing to the SDMC or NAND.
+
.[[NCCH#CXI|CXI]] - CTR Executable image - Are either packaged into a CCI/CSU for running off a cartridge, or packaged into a CIA for installing to the SDMC or NAND.
  
.CFA - CTR File Archive - Externalized Rom-FS. This is non-executable specialisation of the NCCH container format. Generally used in conjunction with an executable specialisation of the NCCH container format (CXI).
+
.[[NCCH#CFA|CFA]] - CTR File Archive - Externalized Rom-FS. This is non-executable specialisation of the NCCH container format. Generally used in conjunction with an executable specialisation of the NCCH container format (CXI).
  
== NCSD ==
+
.[[SD Filesystem#title|APP]] - The per-console encrypted form of a NCCH file, used with installed titles, like eShop and CDN downloads.
  
 +
.CAA - A CXI which uses a raw ELF for the [[ExeFS]] .code section. Also has no plain region.
  
.[[CCI]] - Cart image. Burned into a ROM (or loaded by official debugging hardware). These are also the actual format of ROM dumps, and the response of read requests between a 3DS and a cartridge. This is simply a NCCH container, with a maximum of 8 NCCHs.
+
== [[NCSD]] ==
  
.[[CCI|CSU]] - System Update. Format varies slightly with revisions.
+
 
 +
.[[NCSD|CCI]] - CTR Cart image - Burned into a ROM (or loaded by official debugging hardware). These are also the actual format of ROM dumps, and the response of read requests between a 3DS and a cartridge. This is simply a NCCH container, with a maximum of 8 NCCHs.
 +
 
 +
.[[NCSD|CSU]] - CTR System Update - Format varies slightly with revisions.
  
 
== Descriptor File Formats ==
 
== Descriptor File Formats ==
Line 22: Line 26:
 
.RSF - Descriptive data used when outputting a CCI/CXI file. Specifies options such as: title, save type, and so on.  
 
.RSF - Descriptive data used when outputting a CCI/CXI file. Specifies options such as: title, save type, and so on.  
  
.DESC - Descriptive data used when outputting a CCI/CXI file. Like the .RSF format, but more complex (more complex in the options which it can specify).
+
.DESC - Descriptive data used when outputting a CCI/CXI file. Like the .RSF format, but more complex (more complex in the options which it can specify). The signed NCCH RSA-2048 key pair is taken from this file.
 +
 
 +
== [[ExeFS]] Related File Formats ==
 +
 
 +
 
 +
.AXF - Pre-assembled ARM code. Before being linked into the [[ExeFS]] '.code' format. These are ARM specific ELF files. The Plain Region found in the CXI is also obtain from this file.
 +
 
 +
.BNR - Simply contains a .[[CBMD]] and a .[[BCWAV]]. The .[[CBMD]] has added padding, to make sure the .[[BCWAV]] is aligned to 0x10 bytes. It contains nothing else.(The .[[CBMD]] file's header is edited to reflect it's new size)
 +
 
 +
.[[SMDH|ICN]] - Contains icons, names and flags for an application
 +
 
 +
== [[RomFS]] Related File Formats ==
 +
 
 +
.[[ARC]] - Archive. A container of files, all compressed with LZ-10.
  
== ExeFS Related File Formats ==
+
.[[ARC|BCMA]] - CTR Manual (an ARC file).
  
 +
.[[SARC]] - Simple(?) Archive. A container of uncompressed files.
  
.AXF - Pre-assembled ARM code. Before being linked into the [[ExeFS]] '.code' format. They're practically ARM specific ELF files. The Plain Region found in the CXI is also obtain from this file.
+
.[[BCFNT]] - CTR Font File (version 3).
  
.BNR - Simply contains a .[[CBMD]] and a .[[BCWAV]], in that order with padding in between the two files to make sure the .[[BCWAV]] is aligned to 0x10 bytes. It contains nothing else.
+
.[[BCFNT|BFFNT]] - CTR Font File (version 4).
  
*.[[BCWAV]] - CTR waveform file format
+
== [[Title Data Structure|Title Installation Related File Formats]] ==
  
*.[[CBMD]] - CTR binary banner model. Archive file before being made into a CTR banner for games or other applications.
+
.[[CIA]] - CTR Importable Archive - This format allows the installation titles to the 3DS. CIA files can contain [[NCCH]] files for installation to either the [[SD Filesystem|SDMC]] or CTR NAND. CIA files can also contain .SRL files (format for DS(i) executable images) for installation to the TWL NAND of the 3DS. Anything distributed over Download Play (including card software) are created with this format as well.
  
.[[SMDH|ICN]] - Contains icons, names and flags for an application
+
.[[TMD]] - Title Meta Data - The format is used with installed/installable titles. Notably they are found in .[[CIA]] files (plain text), on the [[SD Filesystem#title|SD card]] (encrypted), NAND (encrypted) and on Nintendo's CDN (plain text).
 +
 
 +
.[[Title Data Structure|CMD]] - Content Meta Data - The format is used to index installed .app files for installed titles. It is encrypted with a console unique [[AES|keyslot]].
 +
 
 +
.[[Title Data Structure|CTX]] - When beginning eShop app downloads, this file is created. Later this file is written with actual data. When the download is completed, the file is deleted from SD card.(This might then be moved to NAND) This is encrypted with a per-console key. It contains a signed cert followed by unknown data. It is only 1.50kbyte. Here is an example.[http://dl.dropbox.com/u/37418652/00000000.ctx]
 +
 
 +
== Audio File Formats ==
 +
 
 +
.[[BCWAV|(B)CWAV]] - CTR waveform file format
 +
 
 +
.[[BCSTM|(B)CSTM]] - CTR stream file format
 +
 
 +
.[[BCSAR|(B)CSAR]]- CTR adaptation of BRSAR.
 +
 
 +
== Graphics File Formats ==
 +
 
 +
.[[CBMD]] - CTR Basic Model Data - Archive file before being made into a CTR banner for games or other applications.
 +
 
 +
.[[CTPK]] - CTR Texture PacKage
 +
 
 +
.CMDL - CTR MoDeL data
 +
 
 +
.CTEX - CTR TEXture data
 +
 
 +
.CCAD - CTR Celluloid Animation Data
 +
 
 +
.CSKA / .CSKLA - CTR SKeLetal Animation data
 +
 
 +
.CMATA - CTR MATerial Animation data
 +
 
 +
.CMDLA - CTR MoDeL Animation data
 +
 
 +
.CLGT - CTR LiGhT data
 +
 
 +
.CPTL - CTR ParTicLe data
 +
 
 +
.CLTS - CTR LookupableSetdata
 +
 
 +
.CENV - CTR ENVironment data
 +
 
 +
.CCAM - CTR CAMera data
  
*.CTPK - CTR Texture Package
+
.CMAT - CTR MATerial
  
 
== Other File Formats ==
 
== Other File Formats ==
  
.[[CIA]] - (CTR Importable Archive) This format allows the installation titles to the 3DS. CIA files can compile a CXI 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.
+
.NSA - Archive used by several of the communication protocols in the 3DS.
  
.CDI - (CTR Development Image) CDI files are system processes which other types of applications depend on for access to various other lower level functions. CDI are normally the same titles as listed in a CXI header's dependency list, they are just compiled to a different format.  The difference is that CDI is used for a different (test) environment. They're loaded into hardware debugger's memory, along with the 2 cores in order to execute.  
+
.[[CRO0|CRO]] - This is a CTR "DLL".
  
.NSA - Archive used by several of the communication protocols in the 3DS.
+
.[[CRO0|CRS]] - This is a special CRO format file which contains symbols for .code (the "static module").
  
.CIP - (CTR Initial Process)
+
.[[CRR0|CRR]] - This contains data for verifying CRO files.
  
== Filesystem ==
+
.[[MPO]] - Multi-Picture Object Format - Document describing the file format used in mpo files: http://www.cipa.jp/english/hyoujunka/kikaku/pdf/DC-007_E.pdf
  
The 3DS filesystem requires absolute paths. It can handle either short (8.3) and long (255 char maximum) file names.
+
.CGRP - CTR GRouP - Used to package several formats like (CWAR, CWAV, CWSD, CBNK, CSEQ, ect...) sort of like the Wii's MRG format. (they aren't the same structures but both package together several formats)
  
== MPO (Multi-Picture Object Format) ==
+
== Filesystem ==
Document describing the file format used in mpo files:
 
http://www.cipa.jp/english/hyoujunka/kikaku/pdf/DC-007_E.pdf
 
  
[[MPO|Nintendo's MPO Specifications]]
+
The 3DS filesystem requires absolute paths. It can handle either short (8.3) and long (255 char maximum) file names.

Revision as of 20:28, 23 February 2018

The following is a list of known file formats used by the 3DS.

NCCH

.CXI - CTR Executable image - Are either packaged into a CCI/CSU for running off a cartridge, or packaged into a CIA for installing to the SDMC or NAND.

.CFA - CTR File Archive - Externalized Rom-FS. This is non-executable specialisation of the NCCH container format. Generally used in conjunction with an executable specialisation of the NCCH container format (CXI).

.APP - The per-console encrypted form of a NCCH file, used with installed titles, like eShop and CDN downloads.

.CAA - A CXI which uses a raw ELF for the ExeFS .code section. Also has no plain region.

NCSD

.CCI - CTR Cart image - Burned into a ROM (or loaded by official debugging hardware). These are also the actual format of ROM dumps, and the response of read requests between a 3DS and a cartridge. This is simply a NCCH container, with a maximum of 8 NCCHs.

.CSU - CTR System Update - Format varies slightly with revisions.

Descriptor File Formats

.BSF - Descriptive data used when outputting ICN/BNR files. The .XBSF format used by CiTRUS is based on the concept of .BSF.

.RSF - Descriptive data used when outputting a CCI/CXI file. Specifies options such as: title, save type, and so on.

.DESC - Descriptive data used when outputting a CCI/CXI file. Like the .RSF format, but more complex (more complex in the options which it can specify). The signed NCCH RSA-2048 key pair is taken from this file.

ExeFS Related File Formats

.AXF - Pre-assembled ARM code. Before being linked into the ExeFS '.code' format. These are ARM specific ELF files. The Plain Region found in the CXI is also obtain from this file.

.BNR - Simply contains a .CBMD and a .BCWAV. The .CBMD has added padding, to make sure the .BCWAV is aligned to 0x10 bytes. It contains nothing else.(The .CBMD file's header is edited to reflect it's new size)

.ICN - Contains icons, names and flags for an application

RomFS Related File Formats

.ARC - Archive. A container of files, all compressed with LZ-10.

.BCMA - CTR Manual (an ARC file).

.SARC - Simple(?) Archive. A container of uncompressed files.

.BCFNT - CTR Font File (version 3).

.BFFNT - CTR Font File (version 4).

Title Installation Related File Formats

.CIA - CTR Importable Archive - This format allows the installation titles to the 3DS. CIA files can contain NCCH files for installation to either the SDMC or CTR NAND. CIA files can also contain .SRL files (format for DS(i) executable images) for installation to the TWL NAND of the 3DS. Anything distributed over Download Play (including card software) are created with this format as well.

.TMD - Title Meta Data - The format is used with installed/installable titles. Notably they are found in .CIA files (plain text), on the SD card (encrypted), NAND (encrypted) and on Nintendo's CDN (plain text).

.CMD - Content Meta Data - The format is used to index installed .app files for installed titles. It is encrypted with a console unique keyslot.

.CTX - When beginning eShop app downloads, this file is created. Later this file is written with actual data. When the download is completed, the file is deleted from SD card.(This might then be moved to NAND) This is encrypted with a per-console key. It contains a signed cert followed by unknown data. It is only 1.50kbyte. Here is an example.[1]

Audio File Formats

.(B)CWAV - CTR waveform file format

.(B)CSTM - CTR stream file format

.(B)CSAR- CTR adaptation of BRSAR.

Graphics File Formats

.CBMD - CTR Basic Model Data - Archive file before being made into a CTR banner for games or other applications.

.CTPK - CTR Texture PacKage

.CMDL - CTR MoDeL data

.CTEX - CTR TEXture data

.CCAD - CTR Celluloid Animation Data

.CSKA / .CSKLA - CTR SKeLetal Animation data

.CMATA - CTR MATerial Animation data

.CMDLA - CTR MoDeL Animation data

.CLGT - CTR LiGhT data

.CPTL - CTR ParTicLe data

.CLTS - CTR LookupableSetdata

.CENV - CTR ENVironment data

.CCAM - CTR CAMera data

.CMAT - CTR MATerial

Other File Formats

.NSA - Archive used by several of the communication protocols in the 3DS.

.CRO - This is a CTR "DLL".

.CRS - This is a special CRO format file which contains symbols for .code (the "static module").

.CRR - This contains data for verifying CRO files.

.MPO - Multi-Picture Object Format - Document describing the file format used in mpo files: http://www.cipa.jp/english/hyoujunka/kikaku/pdf/DC-007_E.pdf

.CGRP - CTR GRouP - Used to package several formats like (CWAR, CWAV, CWSD, CBNK, CSEQ, ect...) sort of like the Wii's MRG format. (they aren't the same structures but both package together several formats)

Filesystem

The 3DS filesystem requires absolute paths. It can handle either short (8.3) and long (255 char maximum) file names.

Pages in category "File formats"

The following 30 pages are in this category, out of 30 total.