Difference between revisions of "CNMT"

From Nintendo Switch Brew
Jump to navigation Jump to search
(2 intermediate revisions by 2 users not shown)
Line 2: Line 2:
 
This is the file that ends in <code>".cnmt.nca"</code> or <code>"meta0.ncd"</code>.
 
This is the file that ends in <code>".cnmt.nca"</code> or <code>"meta0.ncd"</code>.
  
It starts with an header:
+
It starts with a header:
 
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
|-
 
|-
Line 11: Line 11:
 
| 0x0
 
| 0x0
 
| 8
 
| 8
| Title id?
+
| Title ID
 
|-
 
|-
 
| 0x8
 
| 0x8
Line 32: Line 32:
 
| 2
 
| 2
 
| Number of entries
 
| Number of entries
 +
|-
 +
| 0x12
 +
| 14
 +
|
 +
|}
 +
 +
An optional header can follow, depending on the title type.
 +
 +
== Application header ==
 +
{| class="wikitable" border="1"
 +
|-
 +
! Offset
 +
! Size
 +
! Description
 +
|-
 +
| 0x20
 +
| 8
 +
| Patch title ID
 +
|-
 +
| 0x28
 +
| 8
 +
|
 
|}
 
|}
 +
 +
== Patch header ==
 +
{| class="wikitable" border="1"
 +
|-
 +
! Offset
 +
! Size
 +
! Description
 +
|-
 +
| 0x20
 +
| 8
 +
| Original title ID
 +
|-
 +
| 0x28
 +
| 8
 +
|
 +
|}
 +
 +
== Add-on content header ==
 +
{| class="wikitable" border="1"
 +
|-
 +
! Offset
 +
! Size
 +
! Description
 +
|-
 +
| 0x20
 +
| 8
 +
| Application title ID
 +
|-
 +
| 0x28
 +
| 8
 +
|
 +
|}
 +
 +
== Content records ==
  
 
Each entry is 0x38 bytes:
 
Each entry is 0x38 bytes:
Line 48: Line 104:
 
| 0x20
 
| 0x20
 
| 16
 
| 16
| NcaId
+
| NcaId [same as first 16-bytes of hash]
 
|-
 
|-
 
| 0x30
 
| 0x30
Line 56: Line 112:
 
| 0x36
 
| 0x36
 
| 1
 
| 1
| Type (0=meta, 1=program, 2=data, 3=control, 4=html, 5=legal)
+
| Type (0=meta, 1=program, 2=data, 3=control, 4=offline-manual [[Internet_Browser|html]], 5=legal [[Internet_Browser|html]])
 
|-
 
|-
 
| 0x37
 
| 0x37

Revision as of 00:08, 24 June 2017

Metadata file

This is the file that ends in ".cnmt.nca" or "meta0.ncd".

It starts with a header:

Offset Size Description
0x0 8 Title ID
0x8 4
0xC 1 Type (see Title Types)
0xD 1
0xE 2 Offset to table
0x10 2 Number of entries
0x12 14

An optional header can follow, depending on the title type.

Application header

Offset Size Description
0x20 8 Patch title ID
0x28 8

Patch header

Offset Size Description
0x20 8 Original title ID
0x28 8

Add-on content header

Offset Size Description
0x20 8 Application title ID
0x28 8

Content records

Each entry is 0x38 bytes:

Offset Size Description
0x0 32 Hash
0x20 16 NcaId [same as first 16-bytes of hash]
0x30 6 Size
0x36 1 Type (0=meta, 1=program, 2=data, 3=control, 4=offline-manual html, 5=legal html)
0x37 1