summaryrefslogtreecommitdiff
path: root/src/core/loader
diff options
context:
space:
mode:
authorGravatar bunnei2015-03-16 21:21:54 -0400
committerGravatar bunnei2015-03-16 21:21:54 -0400
commitef0c4aac863db37b1d8799f56c6ea9051fbafd99 (patch)
treeb2c4171c208a52fa54d78744f1f6588ab376e8fc /src/core/loader
parentMerge pull request #661 from linkmauve/cleanup (diff)
parentNCCH: Minor updates to the ncch header (diff)
downloadyuzu-ef0c4aac863db37b1d8799f56c6ea9051fbafd99.tar.gz
yuzu-ef0c4aac863db37b1d8799f56c6ea9051fbafd99.tar.xz
yuzu-ef0c4aac863db37b1d8799f56c6ea9051fbafd99.zip
Merge pull request #660 from purpasmart96/ncch_updates
NCCH: Minor updates to the ncch header
Diffstat (limited to 'src/core/loader')
-rw-r--r--src/core/loader/ncch.h25
1 files changed, 14 insertions, 11 deletions
diff --git a/src/core/loader/ncch.h b/src/core/loader/ncch.h
index 9ae2de99f..f6f670060 100644
--- a/src/core/loader/ncch.h
+++ b/src/core/loader/ncch.h
@@ -20,8 +20,8 @@ struct NCCH_Header {
20 u16 version; 20 u16 version;
21 u8 reserved_0[4]; 21 u8 reserved_0[4];
22 u8 program_id[8]; 22 u8 program_id[8];
23 u8 temp_flag; 23 u8 reserved_1[0x10];
24 u8 reserved_1[0x2f]; 24 u8 logo_region_hash[0x20];
25 u8 product_code[0x10]; 25 u8 product_code[0x10];
26 u8 extended_header_hash[0x20]; 26 u8 extended_header_hash[0x20];
27 u32 extended_header_size; 27 u32 extended_header_size;
@@ -29,15 +29,16 @@ struct NCCH_Header {
29 u8 flags[8]; 29 u8 flags[8];
30 u32 plain_region_offset; 30 u32 plain_region_offset;
31 u32 plain_region_size; 31 u32 plain_region_size;
32 u8 reserved_3[8]; 32 u32 logo_region_offset;
33 u32 logo_region_size;
33 u32 exefs_offset; 34 u32 exefs_offset;
34 u32 exefs_size; 35 u32 exefs_size;
35 u32 exefs_hash_region_size; 36 u32 exefs_hash_region_size;
36 u8 reserved_4[4]; 37 u8 reserved_3[4];
37 u32 romfs_offset; 38 u32 romfs_offset;
38 u32 romfs_size; 39 u32 romfs_size;
39 u32 romfs_hash_region_size; 40 u32 romfs_hash_region_size;
40 u8 reserved_5[4]; 41 u8 reserved_4[4];
41 u8 exefs_super_block_hash[0x20]; 42 u8 exefs_super_block_hash[0x20];
42 u8 romfs_super_block_hash[0x20]; 43 u8 romfs_super_block_hash[0x20];
43}; 44};
@@ -88,8 +89,7 @@ struct ExHeader_DependencyList{
88}; 89};
89 90
90struct ExHeader_SystemInfo{ 91struct ExHeader_SystemInfo{
91 u32 save_data_size; 92 u64 save_data_size;
92 u8 reserved[4];
93 u8 jump_id[8]; 93 u8 jump_id[8];
94 u8 reserved_2[0x30]; 94 u8 reserved_2[0x30];
95}; 95};
@@ -104,11 +104,14 @@ struct ExHeader_StorageInfo{
104 104
105struct ExHeader_ARM11_SystemLocalCaps{ 105struct ExHeader_ARM11_SystemLocalCaps{
106 u8 program_id[8]; 106 u8 program_id[8];
107 u8 flags[8]; 107 u32 core_version;
108 u8 resource_limit_descriptor[0x10][2]; 108 u8 flags[3];
109 u8 priority;
110 u8 resource_limit_descriptor[0x16][2];
109 ExHeader_StorageInfo storage_info; 111 ExHeader_StorageInfo storage_info;
110 u8 service_access_control[0x20][8]; 112 u8 service_access_control[0x32][8];
111 u8 reserved[0x1f]; 113 u8 ex_service_access_control[0x2][8];
114 u8 reserved[0xf];
112 u8 resource_limit_category; 115 u8 resource_limit_category;
113}; 116};
114 117