DARC: Difference between revisions
		
		
		
		Jump to navigation
		Jump to search
		
 →File table:  not true  | 
				mNo edit summary  | 
				||
| Line 18: | Line 18: | ||
|  0x006 || 2 || uint16 || Header's length  | |  0x006 || 2 || uint16 || Header's length  | ||
|-  | |-  | ||
|  0x008 || 4 || uint32 ||   | |  0x008 || 4 || uint32 || Version  | ||
|-  | |-  | ||
|  0x00C || 4 || uint32 || File's length  | |  0x00C || 4 || uint32 || File's length  | ||
Revision as of 14:19, 23 January 2015
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 | 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
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.