Difference between revisions of "DARC"
Jump to navigation
Jump to search
(resolved...) |
(→File table: not true) |
||
Line 37: | Line 37: | ||
! Offset !! Size !! Type !! Description | ! Offset !! Size !! Type !! Description | ||
|- | |- | ||
− | | 0x00C || 4 || uint32 || File name offset (from the end of the table | + | | 0x00C || 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' & '.') | if (offset & 0x01000000) then this is a folder (i.e. first two nodes 'null' & '.') |
Revision as of 12:44, 30 November 2012
This page documents the format of DARC.
Overview
DARC files are archives. Containers of files.
This is very similiar to NARC (the DS archives).
ARC header
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 | Unknown (= 0x01000000 ?) |
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
The file table starts at 0x01C.
Each file struct consists of 3 uint32:
Offset | Size | Type | Description |
---|---|---|---|
0x00C | 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 the file count.