DARC: Difference between revisions
Jump to navigation
Jump to search
might be worth mentioning |
|||
| Line 24: | Line 24: | ||
| 0x010 || 4 || uint32 || [[DARC#File_table|File table]] offset (from the beginning of the file) | | 0x010 || 4 || uint32 || [[DARC#File_table|File table]] offset (from the beginning of the file) | ||
|- | |- | ||
| 0x014 || 4 || uint32 || [[DARC#File_table|File table]] length | | 0x014 || 4 || uint32 || [[DARC#File_table|File table]] length (includes the names that come after the file structs) | ||
|- | |- | ||
| 0x018 || 4 || uint32 || [[DARC#Files_data|Files data]] offset | | 0x018 || 4 || uint32 || [[DARC#Files_data|Files data]] offset | ||
Latest revision as of 14:23, 6 May 2026
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 (=0xFEFF [FF FE]: 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 (includes the names that come after the file structs) |
| 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 |
|---|---|---|---|
| 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.