Changes

1,236 bytes added ,  22:15, 29 November 2012
resolved...
[[Category:File formats]]
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 ==
{| class="wikitable" border="1"
! 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 || [[DARC#File_table|File table]] offset (from the beginning of the file)
|-
| 0x014 || 4 || uint32 || [[DARC#File_table|File table]] length
|-
| 0x018 || 4 || uint32 || [[DARC#Files_data|Files data]] offset
|}

=== File table ===

The file table starts at 0x01C.

Each file struct consists of 3 uint32:
{| class="wikitable" border="1"
! Offset !! Size !! Type !! Description
|-
| 0x00C || 4 || uint32 || File name offset (from the end of the table, padded to 0x10)

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.
399

edits