Difference between revisions of "DARC"

From 3dbrew
Jump to navigation Jump to search
 
(One intermediate revision by one other user not shown)
Line 46: Line 46:
 
|}
 
|}
  
  * Folder's length is the file count.
+
* Folder's length is end-index of the folder in the table.
 +
 
 +
=Tools=
 +
* [https://github.com/yellows8/darctool]

Latest revision as of 22:51, 21 November 2015

This page documents the format of DARC.

Overview[edit]

DARC files are archives. Containers of files.

This is very similiar to NARC (the DS archives).

ARC header[edit]

Offset Size Type Description
0x000 4 char[4] Magic Number 'darc'
0x004 2 uint16 Endianess (=0xFFFE: Little)
0x006 2 uint16 Header's length
0x008 4 uint32 Version
0x00C 4 uint32 File's length
0x010 4 uint32 File table offset (from the beginning of the file)
0x014 4 uint32 File table length
0x018 4 uint32 Files data offset

File table[edit]

The file table starts at 0x01C.

Each file struct consists of 3 uint32:

Offset Size Type Description
0x000 4 uint32 File name offset (from the end of the table)

if (offset & 0x01000000) then this is a folder (i.e. first two nodes 'null' & '.')

0x004 4 uint32 File offset
0x008 4 uint32 File length
  • Folder's length is end-index of the folder in the table.

Tools[edit]