Line 204: |
Line 204: |
| </source> | | </source> |
| | | |
− | There is also a structure called a TmdView which is select sections of the Tmd. It has a length of 0x60+0x10*number_of_contents. The structure is somewhat like this: | + | There is also a structure called a TmdView which is select sections of the Tmd. It has a length of 0x60+0x10*number_of_contents. The structure is somewhat like this [as returned by ES_GetTmdView] : |
| <source lang="c"> | | <source lang="c"> |
| struct tmd_view_content_t | | struct tmd_view_content_t |
Line 218: |
Line 218: |
| uint8_t version; // 0x0000; | | uint8_t version; // 0x0000; |
| uint8_t filler[3]; | | uint8_t filler[3]; |
− | uint32_t unknown // 0x0004
| + | uint64_t ios_title_id; //0x0004 |
− | uint64_t ios_title_id; //0x0008 | + | uint64_t title_id; // 0x00c |
− | uint64_t title_id; // 0x0010 | + | uint32_t title_type; //0x0014 |
− | uint32_t title_type; //0x0018 | + | uint16_t group_id; //0x0018 |
− | uint16_t group_id; //0x001c | + | uint8_t reserved[0x3e]; //0x001a this is the same reserved 0x3e bytes from the tmd |
− | uint8_t reserved[0x3e]; //0x001e this is the same reserved 0x3e bytes from the tmd | + | uint16_t title_version; //0x0058 |
− | uint16_t title_version; //0x005c | + | uint16_t number_contents; //0x005a |
− | uint16_t number_contents; //0x005e | + | tmd_view_content_t contents[]; //0x005c |
− | tmd_view_content_t contents[]; //0x0060 | |
| }; | | }; |
| </source> | | </source> |