Difference between revisions of "Talk:U8 archive"

From WiiBrew
Jump to navigation Jump to search
 
(4 intermediate revisions by 4 users not shown)
Line 8: Line 8:
 
: As for me, it doesn't really matter. I haven't been into GC development so I didn't know about the format. For me though, "arc" is an old archive format from the early childhood of the PC, but maybe I'm just an old-timer. :-) The only thing I really think is important is that we're clear about what we're discussing.
 
: As for me, it doesn't really matter. I haven't been into GC development so I didn't know about the format. For me though, "arc" is an old archive format from the early childhood of the PC, but maybe I'm just an old-timer. :-) The only thing I really think is important is that we're clear about what we're discussing.
  
: However, I've still failed to see find any documentation on the GC Arc format on the net. I'd be really great if someone could post a link to anything like it. [[User:Magicus|Magicus]] 10:30, 27 March 2008 (PDT)
+
: However, I've still failed to find any documentation on the GC Arc format on the net. I'd be really great if someone could post a link to anything like it. [[User:Magicus|Magicus]] 10:30, 27 March 2008 (PDT)
 +
 
 +
http://hitmen.c02.at/files/yagcd/yagcd/chap15.html#sec15.3 ;) [[User:Adan0s|Adan0s]] 12:19, 27 March 2008 (PDT)
 +
 
 +
== String Table? ==
 +
Would you mind elaborating on this "string table" that file's data location is relative to?
 +
 
 +
Maybe a struct, or even a simple description would be nice. Just wondering ;) --[[User:SquidMan|SquidMan]] 06:01, 3 September 2008 (UTC)
 +
 
 +
:This is my understanding of it: the four bytes starting at 0x4 indicate where the Root File Node is. The next four bytes indicate the total length of the header, which includes this header itself, all of the file nodes, and the string table. The Root Node, as it's "Size", lists in hex the number of total File Nodes. Each file node is 12 bytes. Thus, if the Root node says there are 200 nodes, then the File Nodes, starting at 0x20 and including the root node, take up (200*12) 2400 bytes (0x960). Then the String Table comes up which is the ascii for the folder/filenames separated by '00'. The position of the first byte of each filename is indicated from within each file node (as an offset from the beginning of the string table.) The data portion, which starts after the string table, has its contents indexed by each file node. E.g, if a filenode says 00-000133-00C15480-00800000; the data chunk is 8MB at offset 0xC15480; all the data in the u8 will be defined by the filenodes. [[User:Nago|Nago]] 00:45, 25 August 2009 (UTC)

Latest revision as of 02:45, 25 August 2009

Arc vs U8?

Not sure if this should be classed under "does it really matter?", but it may cause some confusion for some people. Magicus named them U8 Archives due to the magic word in the file, however historically they've been called arc files, because for the GC they were in files with the extension .arc. As a whole on Wiibrew, I think we probably need some consistency on whether we refer to them as U8 or arc files.

What do you think? Atacama 06:02, 22 March 2008 (PDT)

As for me, it doesn't really matter. I haven't been into GC development so I didn't know about the format. For me though, "arc" is an old archive format from the early childhood of the PC, but maybe I'm just an old-timer. :-) The only thing I really think is important is that we're clear about what we're discussing.
However, I've still failed to find any documentation on the GC Arc format on the net. I'd be really great if someone could post a link to anything like it. Magicus 10:30, 27 March 2008 (PDT)

http://hitmen.c02.at/files/yagcd/yagcd/chap15.html#sec15.3 ;) Adan0s 12:19, 27 March 2008 (PDT)

String Table?

Would you mind elaborating on this "string table" that file's data location is relative to?

Maybe a struct, or even a simple description would be nice. Just wondering ;) --SquidMan 06:01, 3 September 2008 (UTC)

This is my understanding of it: the four bytes starting at 0x4 indicate where the Root File Node is. The next four bytes indicate the total length of the header, which includes this header itself, all of the file nodes, and the string table. The Root Node, as it's "Size", lists in hex the number of total File Nodes. Each file node is 12 bytes. Thus, if the Root node says there are 200 nodes, then the File Nodes, starting at 0x20 and including the root node, take up (200*12) 2400 bytes (0x960). Then the String Table comes up which is the ascii for the folder/filenames separated by '00'. The position of the first byte of each filename is indicated from within each file node (as an offset from the beginning of the string table.) The data portion, which starts after the string table, has its contents indexed by each file node. E.g, if a filenode says 00-000133-00C15480-00800000; the data chunk is 8MB at offset 0xC15480; all the data in the u8 will be defined by the filenodes. Nago 00:45, 25 August 2009 (UTC)