Difference between revisions of "/title/00000001/00000002/data/tmds.sys"
Jump to navigation
Jump to search
m (removed redundant text) |
|||
Line 1: | Line 1: | ||
− | + | Each channel/save/vc-game you have on your Wii has its own entry in this file. For more information about the TMD-format, and documentation on some offsets found here (I kept the same names), see [[Tmd_file_structure|TMD File Structure]]. Each entry has the following syntax: (in C-structs, because they're easy to handle) | |
typedef struct { | typedef struct { | ||
u32 unknown; // Always 0x0100 | u32 unknown; // Always 0x0100 |
Revision as of 22:07, 19 June 2009
Each channel/save/vc-game you have on your Wii has its own entry in this file. For more information about the TMD-format, and documentation on some offsets found here (I kept the same names), see TMD File Structure. Each entry has the following syntax: (in C-structs, because they're easy to handle)
typedef struct { u32 unknown; // Always 0x0100 u32 title_id; // Content ID, output as: char [4] u32 unknown2; // Unknown, seen values: 0x0208 (index?) u32 padding [32]; u32 sig_type; // Unknown, seen values: 0x010001 (sig_type maybe) u8 sig [256]; // Signature u32 padding2 [15]; u8 issuer[26]; // Syntax: Root-CA%08x-CP%08x u32 padding3 [10]; u32 unknown3; // Always 0x04000100 u32 title_id2; // Content ID, again u32 title_type; // 0x01 when cid2[0] == 'R' or when cid[0] == '.\0'. It's 0x00 if cid[0] == '1'. u16 group_id; // 0x200 or 0x300 if cid2[0] == '.\0', 0x400 when cid2[0] == '1'. //If cid[0] == 'R', this is usally a number (in ASCII), but it can contain letters, I have seen one 'D'. u32 unknown [6]; // Really wierd, includes "Egg" quite often. u32 final_padding [6]; } tmds-entry;
The issuer is always Root-CA1-CP4 here.
Please feel free to improve the contents of this page. I could use your thoughts.