DARC: Difference between revisions

LIT (talk | contribs)
mNo edit summary
might be worth mentioning
 
(4 intermediate revisions by 4 users not shown)
Line 14: Line 14:
|  0x000 || 4 || char[4] || Magic Number 'darc'
|  0x000 || 4 || char[4] || Magic Number 'darc'
|-
|-
|  0x004 || 2 || uint16 || Endianess (=0xFFFE: Little)
|  0x004 || 2 || uint16 || Endianess (=0xFEFF [FF FE]: Little)
|-
|-
|  0x006 || 2 || uint16 || Header's length
|  0x006 || 2 || uint16 || Header's length
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
Line 37: Line 37:
!  Offset !!  Size !! Type !!  Description
!  Offset !!  Size !! Type !!  Description
|-
|-
0x00C || 4 || uint32 || File name offset (from the end of the table)  
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' & '.')
if (offset & 0x01000000) then this is a folder (i.e. first two nodes 'null' & '.')
Line 46: Line 46:
|}
|}


  * Folder's length is the file count.
* Folder's length is end-index of the folder in the table.
 
=Tools=
* [https://github.com/yellows8/darctool]