In memory of Ben “bushing” Byer, who passed away on Monday, February 8th, 2016.

Data containers: Difference between revisions

From WiiBrew
Jump to navigation Jump to search
Adan0s (talk | contribs)
mNo edit summary
Adan0s (talk | contribs)
added more information about the PAC/PCS-Files. thanks to dasda
Line 67: Line 67:
=== PAC/PCS Files ===
=== PAC/PCS Files ===


Seems to be compressed files. I think those files are also some kind of (R)ARC-compressed, but they can't be extracted with common tools. <br />
==== PAC-Files: ====
PAC-Files start with "ARC" (in ASCII) in the fileheader. <br />
PCS-Files start to have something common at 0x04 and end at 0x11.


<pre>
Seems to be an archive format.
41 52 43 00 01 01 00 03 20 00 00 30 01
 
</pre>
These informations are taken by investigating some .pac-files of the fighters of ssbb (the currently only known game that uses those archives).
 
* first 3 bytes -> ARC
* starting at 0x10 -> Filename without extension
* starting at 0x60 -> propably the file-extension
* starting at 0x70 -> propably the folder in which the file(s) are (so far no other thing as root has been seen)
* starting at 0xE0 -> propably the start of the archived file
 
[[Image:Pacexample.png|thumb|100px|none|An Example of a .pac-archive]]
 
As you can see in that image of a file (FitLink00.pac) of the SSBB-Disc, the file which is stored in the .pac is called FitLink00.bres and residents in the /-folder
 
==== PCS-Files: ====
 
Seems to be an compressed version of the the PAC-Archive
[[Category:Data containers|*]] [[Category:File formats]]
[[Category:Data containers|*]] [[Category:File formats]]

Revision as of 20:45, 10 April 2008

The Nintendo Wii code and data is stored using several data structures present in different types of media.

This page is an overview of said containers and structures.

(Feel free to fix any missed information or misinformation in this page).

Logical Containers

Disc Partitions

The discs used on the Nintendo Wii are structured in one or more self-contained subdivisions called "partitions". Partitions contain encrypted data blocks (0x8000 bytes per block, or 32k) protected by encrypted SHA-1 hashes signed by a RSA signature. The encryption and hashing is carried at the block layer, independent of the file system used (FST).

Each partition is encrypted using a 'title key' that can be derived from a common key and the ticket in the partition.

The structure of a partition is described in the Wiidisc page.

Title MetaData (TMD)

The TMDs are structures used in several places (disc partitions, etc.) to describe a set of signed content.

The structure of a TMD is described in the Tmd file structure page.


Files

WAD Files

These files are encrypted file containers. They are used for example within gamesaves and firmware updates.

The process to decrypt WAD files is similar to the one used for the discs.

The format of a WAD file is described in the WAD Files page.

Savegames

These files are used by games to preserve the state of game play.

The format, which is a special header followed by a WAD file, is described in the Savegame Files page.

Channels saved to SD (content.bin)

These files are generated when a channel (Wii or VC) is saved to an SD card.

This format is described in Content.bin_file_structure.

U8 archives

This is an archive format (no compression) which is used in several places.

The format is described on the U8 archive page.

DVD game banner (opening.bnr)

This is the file that describes the banner shown in the channel selector when a game disc is inserted.

The format is described on the opening.bnr page.

RARC Files

These files are compressed file containers. The compression seems to be the same as in the GameCube RARC format.

The format of a RARC file is described in Yet Another GameCube Documentation by Groepaz/Hitmen.

Yaz0 Files

These files are compressed files. The compression seems to be the same as the one used in the GameCube Yaz0 format.

The format of a Yaz0 file is described in Yet Another GameCube Documentation by Groepaz/Hitmen.

PAC/PCS Files

PAC-Files:

Seems to be an archive format.

These informations are taken by investigating some .pac-files of the fighters of ssbb (the currently only known game that uses those archives).

  • first 3 bytes -> ARC
  • starting at 0x10 -> Filename without extension
  • starting at 0x60 -> propably the file-extension
  • starting at 0x70 -> propably the folder in which the file(s) are (so far no other thing as root has been seen)
  • starting at 0xE0 -> propably the start of the archived file
An Example of a .pac-archive

As you can see in that image of a file (FitLink00.pac) of the SSBB-Disc, the file which is stored in the .pac is called FitLink00.bres and residents in the /-folder

PCS-Files:

Seems to be an compressed version of the the PAC-Archive