mirror of
https://github.com/DarkStore-3DS/Project_CTR.git
synced 2026-07-04 08:49:03 +00:00
makerom v0.1
This commit is contained in:
@@ -0,0 +1,68 @@
|
||||
#ifndef _TMD_H_
|
||||
#define _TMD_H_
|
||||
|
||||
typedef enum
|
||||
{
|
||||
TYPE_CTR = 0x40,
|
||||
TYPE_DATA = 0x8
|
||||
} title_type;
|
||||
|
||||
typedef enum
|
||||
{
|
||||
Encrypted = 0x0001,
|
||||
Optional = 0x4000,
|
||||
Shared = 0x8000
|
||||
} content_types;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
u8 content_id[4];
|
||||
u8 content_index[2];
|
||||
u8 content_type[2];
|
||||
u8 content_size[8];
|
||||
u8 sha_256_hash[0x20];
|
||||
} TMD_CONTENT_CHUNK_STRUCT;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
u8 content_index_offset[2];
|
||||
u8 content_command_count[2];
|
||||
u8 sha_256_hash[0x20];
|
||||
} TMD_CONTENT_INFO_RECORD;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
u8 sig_type[4];
|
||||
u8 data[0x100];
|
||||
u8 padding[0x3C];
|
||||
} TMD_SignatureStruct;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
u8 Issuer[0x40];
|
||||
u8 TMDFormatVersion;
|
||||
u8 ca_crl_version;
|
||||
u8 signer_crl_version;
|
||||
u8 padding_1;
|
||||
u8 SystemVersion[8];
|
||||
u8 TitleID[8];
|
||||
u8 TitleType[4];
|
||||
u8 GroupID[2];
|
||||
u8 SaveDataSize[4];
|
||||
u8 PrivSaveDataSize[4]; // Zero for CXI Content0
|
||||
u8 Reserved_0[4];
|
||||
u8 TWL_Flag; // Zero for CXI Content0
|
||||
u8 Reserved_1[0x31];
|
||||
u8 AccessRights[4];
|
||||
u8 TitleVersion[2];
|
||||
u8 ContentCount[2];
|
||||
u8 BootContent[2];
|
||||
u8 Padding[2];
|
||||
u8 sha_256_hash[0x20];
|
||||
} TMD_Struct;
|
||||
|
||||
#endif
|
||||
|
||||
// Prototypes
|
||||
u32 PredictTMDSize(u16 ContentCount);
|
||||
int BuildTMD(cia_settings *ciaset);
|
||||
Reference in New Issue
Block a user