DARC

From 3dbrew
Revision as of 12:44, 30 November 2012 by Elisherer (talk | contribs) (File table: not true)
Jump to: navigation, search

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.