mirror of
https://github.com/DarkStore-3DS/Project_CTR.git
synced 2026-07-05 00:39:04 +00:00
makerom: updated to latest SDK specs.
This commit is contained in:
@@ -44,12 +44,12 @@ int accessdesc_SignWithKey(exheader_settings *exhdrset)
|
|||||||
memcpy(&exhdrset->acexDesc->arm9AccessControlInfo,&exhdrset->exHdr->arm9AccessControlInfo,sizeof(exhdr_ARM9AccessControlInfo));
|
memcpy(&exhdrset->acexDesc->arm9AccessControlInfo,&exhdrset->exHdr->arm9AccessControlInfo,sizeof(exhdr_ARM9AccessControlInfo));
|
||||||
|
|
||||||
/* Adjust Data */
|
/* Adjust Data */
|
||||||
u8 *flag = &exhdrset->acexDesc->arm11SystemLocalCapabilities.flag;
|
u8 *flag = &exhdrset->acexDesc->arm11SystemLocalCapabilities.flag[2];
|
||||||
u8 SystemMode = (*flag>>4)&0xF;
|
u8 SystemMode = (*flag>>4)&0xF;
|
||||||
u8 AffinityMask = (*flag>>2)&0x3;
|
u8 AffinityMask = (*flag>>2)&0x3;
|
||||||
u8 IdealProcessor = 1<<((*flag>>0)&0x3);
|
u8 IdealProcessor = 1<<((*flag>>0)&0x3);
|
||||||
*flag = (u8)(SystemMode << 4 | AffinityMask << 2 | IdealProcessor);
|
*flag = (u8)(SystemMode << 4 | AffinityMask << 2 | IdealProcessor);
|
||||||
exhdrset->acexDesc->arm11SystemLocalCapabilities.priority /= 2;
|
exhdrset->acexDesc->arm11SystemLocalCapabilities.flag[3] /= 2;
|
||||||
|
|
||||||
/* Sign AccessDesc */
|
/* Sign AccessDesc */
|
||||||
return SignAccessDesc(exhdrset->acexDesc,exhdrset->keys);
|
return SignAccessDesc(exhdrset->acexDesc,exhdrset->keys);
|
||||||
|
|||||||
+44
-8
@@ -317,7 +317,34 @@ int SetARM11SystemLocalInfoFlags(exhdr_ARM11SystemLocalCapabilities *arm11, rsf_
|
|||||||
return EXHDR_BAD_RSF_OPT;
|
return EXHDR_BAD_RSF_OPT;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Flag */
|
/* Flag[0] */
|
||||||
|
arm11->flag[0] |= rsf->AccessControlInfo.EnableL2Cache;
|
||||||
|
|
||||||
|
if (rsf->AccessControlInfo.CpuSpeed) {
|
||||||
|
if(strcasecmp(rsf->AccessControlInfo.CpuSpeed, "256mhz") == 0)
|
||||||
|
arm11->flag[0] |= cpuspeed_268MHz << 1;
|
||||||
|
else if(strcasecmp(rsf->AccessControlInfo.CpuSpeed, "804mhz") == 0)
|
||||||
|
arm11->flag[0] |= cpuspeed_804MHz << 1;
|
||||||
|
else {
|
||||||
|
fprintf(stderr, "[EXHEADER ERROR] Invalid cpu speed: 0x%s\n", rsf->AccessControlInfo.CpuSpeed);
|
||||||
|
return EXHDR_BAD_RSF_OPT;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
arm11->flag[0] |= cpuspeed_268MHz << 1;
|
||||||
|
|
||||||
|
/* Flag[1] (SystemModeExt) */
|
||||||
|
u8 systemModeExt = 0;
|
||||||
|
if (rsf->AccessControlInfo.SystemModeExt) {
|
||||||
|
systemModeExt = strtol(rsf->AccessControlInfo.SystemModeExt, NULL, 0);
|
||||||
|
if (systemModeExt > 15) {
|
||||||
|
fprintf(stderr, "[EXHEADER ERROR] Unexpected SystemModeExt: 0x%x. Expected range: 0x0 - 0xf\n", systemModeExt);
|
||||||
|
return EXHDR_BAD_RSF_OPT;
|
||||||
|
}
|
||||||
|
arm11->flag[1] = systemModeExt & 0xf;
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Flag[2] */
|
||||||
u8 affinityMask = 0;
|
u8 affinityMask = 0;
|
||||||
u8 idealProcessor = 0;
|
u8 idealProcessor = 0;
|
||||||
u8 systemMode = 0;
|
u8 systemMode = 0;
|
||||||
@@ -343,9 +370,9 @@ int SetARM11SystemLocalInfoFlags(exhdr_ARM11SystemLocalCapabilities *arm11, rsf_
|
|||||||
return EXHDR_BAD_RSF_OPT;
|
return EXHDR_BAD_RSF_OPT;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
arm11->flag = (u8)(systemMode << 4 | affinityMask << 2 | idealProcessor);
|
arm11->flag[2] = (u8)(systemMode << 4 | affinityMask << 2 | idealProcessor);
|
||||||
|
|
||||||
/* Thread Priority */
|
/* flag[3] (Thread Priority) */
|
||||||
if(rsf->AccessControlInfo.Priority){
|
if(rsf->AccessControlInfo.Priority){
|
||||||
u8 priority = strtoul(rsf->AccessControlInfo.Priority,NULL,0);
|
u8 priority = strtoul(rsf->AccessControlInfo.Priority,NULL,0);
|
||||||
if(GetAppType(rsf) == processtype_APPLICATION)
|
if(GetAppType(rsf) == processtype_APPLICATION)
|
||||||
@@ -354,7 +381,7 @@ int SetARM11SystemLocalInfoFlags(exhdr_ARM11SystemLocalCapabilities *arm11, rsf_
|
|||||||
fprintf(stderr,"[EXHEADER ERROR] Invalid Priority: %d\n",priority);
|
fprintf(stderr,"[EXHEADER ERROR] Invalid Priority: %d\n",priority);
|
||||||
return EXHDR_BAD_RSF_OPT;
|
return EXHDR_BAD_RSF_OPT;
|
||||||
}
|
}
|
||||||
arm11->priority = priority;
|
arm11->flag[3] = priority;
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
ErrorParamNotFound("AccessControlInfo/Priority");
|
ErrorParamNotFound("AccessControlInfo/Priority");
|
||||||
@@ -479,8 +506,13 @@ void SetARM11StorageInfoSystemSaveDataId(exhdr_ARM11SystemLocalCapabilities *arm
|
|||||||
|
|
||||||
void SetARM11StorageInfoExtSaveDataId(exhdr_ARM11SystemLocalCapabilities *arm11, rsf_settings *rsf)
|
void SetARM11StorageInfoExtSaveDataId(exhdr_ARM11SystemLocalCapabilities *arm11, rsf_settings *rsf)
|
||||||
{
|
{
|
||||||
if(rsf->AccessControlInfo.ExtSaveDataId)
|
if (rsf->AccessControlInfo.UseExtSaveData || rsf->AccessControlInfo.ExtSaveDataId) {
|
||||||
u64_to_u8(arm11->storageInfo.extSavedataId, strtoull(rsf->AccessControlInfo.ExtSaveDataId,NULL,0), LE);
|
if (rsf->AccessControlInfo.ExtSaveDataId)
|
||||||
|
u64_to_u8(arm11->storageInfo.extSavedataId, strtoull(rsf->AccessControlInfo.ExtSaveDataId, NULL, 0), LE);
|
||||||
|
else
|
||||||
|
u32_to_u8(arm11->storageInfo.extSavedataId, GetTidUniqueId(u8_to_u64(arm11->programId,LE)), LE);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void SetARM11StorageInfoOtherUserSaveData(exhdr_ARM11SystemLocalCapabilities *arm11, rsf_settings *rsf)
|
void SetARM11StorageInfoOtherUserSaveData(exhdr_ARM11SystemLocalCapabilities *arm11, rsf_settings *rsf)
|
||||||
@@ -508,6 +540,10 @@ bool CheckCondiditionsForNewAccessibleSaveDataIds(rsf_settings *rsf)
|
|||||||
fprintf(stderr,"[EXHEADER ERROR] Too many UniqueId in \"AccessibleSaveDataIds\".\n");
|
fprintf(stderr,"[EXHEADER ERROR] Too many UniqueId in \"AccessibleSaveDataIds\".\n");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
if (rsf->AccessControlInfo.UseExtSaveData) {
|
||||||
|
fprintf(stderr, "[EXHEADER ERROR] UseExtSaveData must be false if AccessibleSaveDataIds is specified.\n");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
if (rsf->AccessControlInfo.ExtSaveDataId){
|
if (rsf->AccessControlInfo.ExtSaveDataId){
|
||||||
fprintf(stderr,"[EXHEADER ERROR] ExtSaveDataId is unavailable if AccessibleSaveDataIds is specified.\n");
|
fprintf(stderr,"[EXHEADER ERROR] ExtSaveDataId is unavailable if AccessibleSaveDataIds is specified.\n");
|
||||||
return false;
|
return false;
|
||||||
@@ -561,8 +597,8 @@ void SetARM11StorageInfoAccessibleSaveDataIds(exhdr_ARM11SystemLocalCapabilities
|
|||||||
int SetARM11ServiceAccessControl(exhdr_ARM11SystemLocalCapabilities *arm11, rsf_settings *rsf)
|
int SetARM11ServiceAccessControl(exhdr_ARM11SystemLocalCapabilities *arm11, rsf_settings *rsf)
|
||||||
{
|
{
|
||||||
if(rsf->AccessControlInfo.ServiceAccessControl){
|
if(rsf->AccessControlInfo.ServiceAccessControl){
|
||||||
if(rsf->AccessControlInfo.ServiceAccessControlNum > 32){
|
if(rsf->AccessControlInfo.ServiceAccessControlNum > 34){
|
||||||
fprintf(stderr,"[EXHEADER ERROR] Too Many Service Names, maximum is 32\n");
|
fprintf(stderr,"[EXHEADER ERROR] Too Many Service Names, maximum is 34\n");
|
||||||
return EXHDR_BAD_RSF_OPT;
|
return EXHDR_BAD_RSF_OPT;
|
||||||
}
|
}
|
||||||
for(int i = 0; i < rsf->AccessControlInfo.ServiceAccessControlNum; i++){
|
for(int i = 0; i < rsf->AccessControlInfo.ServiceAccessControlNum; i++){
|
||||||
|
|||||||
+9
-5
@@ -28,6 +28,12 @@ typedef enum
|
|||||||
resrc_limit_OTHER
|
resrc_limit_OTHER
|
||||||
} resource_limit_category;
|
} resource_limit_category;
|
||||||
|
|
||||||
|
typedef enum
|
||||||
|
{
|
||||||
|
cpuspeed_268MHz,
|
||||||
|
cpuspeed_804MHz
|
||||||
|
};
|
||||||
|
|
||||||
typedef enum
|
typedef enum
|
||||||
{
|
{
|
||||||
othcap_PERMIT_DEBUG = (1 << 0),
|
othcap_PERMIT_DEBUG = (1 << 0),
|
||||||
@@ -127,13 +133,11 @@ typedef struct
|
|||||||
{
|
{
|
||||||
u8 programId[8];
|
u8 programId[8];
|
||||||
u8 coreVersion[4];
|
u8 coreVersion[4];
|
||||||
u8 padding0[2];
|
u8 flag[4];
|
||||||
u8 flag;
|
|
||||||
u8 priority;
|
|
||||||
u8 resourceLimitDescriptor[16][2];
|
u8 resourceLimitDescriptor[16][2];
|
||||||
exhdr_StorageInfo storageInfo;
|
exhdr_StorageInfo storageInfo;
|
||||||
u8 serviceAccessControl[32][8]; // Those char[8] server names
|
u8 serviceAccessControl[34][8]; // Those char[8] server names
|
||||||
u8 padding1[0x1f];
|
u8 padding1[0xf];
|
||||||
u8 resourceLimitCategory;
|
u8 resourceLimitCategory;
|
||||||
} exhdr_ARM11SystemLocalCapabilities;
|
} exhdr_ARM11SystemLocalCapabilities;
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,272 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project DefaultTargets="Build" ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ItemGroup Label="ProjectConfigurations">
|
||||||
|
<ProjectConfiguration Include="Debug|Win32">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|Win32">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>Win32</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Debug|x64">
|
||||||
|
<Configuration>Debug</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
<ProjectConfiguration Include="Release|x64">
|
||||||
|
<Configuration>Release</Configuration>
|
||||||
|
<Platform>x64</Platform>
|
||||||
|
</ProjectConfiguration>
|
||||||
|
</ItemGroup>
|
||||||
|
<PropertyGroup Label="Globals">
|
||||||
|
<ProjectGuid>{21926330-F5A5-4643-AD32-D4F167CE226B}</ProjectGuid>
|
||||||
|
<Keyword>MakeFileProj</Keyword>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Makefile</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
|
||||||
|
<ConfigurationType>Makefile</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>true</UseDebugLibraries>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
|
||||||
|
<ConfigurationType>Application</ConfigurationType>
|
||||||
|
<UseDebugLibraries>false</UseDebugLibraries>
|
||||||
|
<PlatformToolset>v140</PlatformToolset>
|
||||||
|
</PropertyGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
|
||||||
|
<ImportGroup Label="ExtensionSettings">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="Shared">
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<ImportGroup Label="PropertySheets" Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
|
||||||
|
<Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
|
||||||
|
</ImportGroup>
|
||||||
|
<PropertyGroup Label="UserMacros" />
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
|
||||||
|
<NMakeBuildCommandLine>make</NMakeBuildCommandLine>
|
||||||
|
<NMakeOutput>makerom.exe</NMakeOutput>
|
||||||
|
<NMakeCleanCommandLine>make clean</NMakeCleanCommandLine>
|
||||||
|
<NMakeReBuildCommandLine>make rebuild</NMakeReBuildCommandLine>
|
||||||
|
<NMakePreprocessorDefinitions>WIN32;_DEBUG;$(NMakePreprocessorDefinitions)</NMakePreprocessorDefinitions>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
|
||||||
|
<NMakeBuildCommandLine>make</NMakeBuildCommandLine>
|
||||||
|
<NMakeOutput>makerom.exe</NMakeOutput>
|
||||||
|
<NMakeCleanCommandLine>make clean</NMakeCleanCommandLine>
|
||||||
|
<NMakeReBuildCommandLine>make rebuild</NMakeReBuildCommandLine>
|
||||||
|
<NMakePreprocessorDefinitions>WIN32;NDEBUG;$(NMakePreprocessorDefinitions)</NMakePreprocessorDefinitions>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemDefinitionGroup>
|
||||||
|
</ItemDefinitionGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<Text Include="readme.txt" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClInclude Include="accessdesc.h" />
|
||||||
|
<ClInclude Include="blz.h" />
|
||||||
|
<ClInclude Include="cardinfo.h" />
|
||||||
|
<ClInclude Include="certs.h" />
|
||||||
|
<ClInclude Include="cia.h" />
|
||||||
|
<ClInclude Include="cia_build.h" />
|
||||||
|
<ClInclude Include="cia_read.h" />
|
||||||
|
<ClInclude Include="crr.h" />
|
||||||
|
<ClInclude Include="crypto.h" />
|
||||||
|
<ClInclude Include="ctr_utils.h" />
|
||||||
|
<ClInclude Include="desc\dev_sigdata.h" />
|
||||||
|
<ClInclude Include="desc\presets.h" />
|
||||||
|
<ClInclude Include="desc\prod_sigdata.h" />
|
||||||
|
<ClInclude Include="dir.h" />
|
||||||
|
<ClInclude Include="elf.h" />
|
||||||
|
<ClInclude Include="elf_hdr.h" />
|
||||||
|
<ClInclude Include="exefs.h" />
|
||||||
|
<ClInclude Include="exefs_build.h" />
|
||||||
|
<ClInclude Include="exefs_read.h" />
|
||||||
|
<ClInclude Include="exheader.h" />
|
||||||
|
<ClInclude Include="exheader_build.h" />
|
||||||
|
<ClInclude Include="exheader_read.h" />
|
||||||
|
<ClInclude Include="keyset.h" />
|
||||||
|
<ClInclude Include="lib.h" />
|
||||||
|
<ClInclude Include="libyaml\yaml.h" />
|
||||||
|
<ClInclude Include="libyaml\yaml_private.h" />
|
||||||
|
<ClInclude Include="ncch.h" />
|
||||||
|
<ClInclude Include="ncch_build.h" />
|
||||||
|
<ClInclude Include="ncch_logo.h" />
|
||||||
|
<ClInclude Include="ncch_read.h" />
|
||||||
|
<ClInclude Include="ncsd.h" />
|
||||||
|
<ClInclude Include="ncsd_build.h" />
|
||||||
|
<ClInclude Include="ncsd_read.h" />
|
||||||
|
<ClInclude Include="pki\dev.h" />
|
||||||
|
<ClInclude Include="pki\dev_legacy.h" />
|
||||||
|
<ClInclude Include="pki\prod.h" />
|
||||||
|
<ClInclude Include="pki\prod_legacy.h" />
|
||||||
|
<ClInclude Include="pki\test.h" />
|
||||||
|
<ClInclude Include="polarssl\aes.h" />
|
||||||
|
<ClInclude Include="polarssl\arc4.h" />
|
||||||
|
<ClInclude Include="polarssl\asn1.h" />
|
||||||
|
<ClInclude Include="polarssl\asn1write.h" />
|
||||||
|
<ClInclude Include="polarssl\base64.h" />
|
||||||
|
<ClInclude Include="polarssl\bignum.h" />
|
||||||
|
<ClInclude Include="polarssl\blowfish.h" />
|
||||||
|
<ClInclude Include="polarssl\bn_mul.h" />
|
||||||
|
<ClInclude Include="polarssl\camellia.h" />
|
||||||
|
<ClInclude Include="polarssl\certs.h" />
|
||||||
|
<ClInclude Include="polarssl\cipher.h" />
|
||||||
|
<ClInclude Include="polarssl\cipher_wrap.h" />
|
||||||
|
<ClInclude Include="polarssl\config.h" />
|
||||||
|
<ClInclude Include="polarssl\ctr_drbg.h" />
|
||||||
|
<ClInclude Include="polarssl\debug.h" />
|
||||||
|
<ClInclude Include="polarssl\des.h" />
|
||||||
|
<ClInclude Include="polarssl\dhm.h" />
|
||||||
|
<ClInclude Include="polarssl\entropy.h" />
|
||||||
|
<ClInclude Include="polarssl\entropy_poll.h" />
|
||||||
|
<ClInclude Include="polarssl\error.h" />
|
||||||
|
<ClInclude Include="polarssl\gcm.h" />
|
||||||
|
<ClInclude Include="polarssl\havege.h" />
|
||||||
|
<ClInclude Include="polarssl\md.h" />
|
||||||
|
<ClInclude Include="polarssl\md2.h" />
|
||||||
|
<ClInclude Include="polarssl\md4.h" />
|
||||||
|
<ClInclude Include="polarssl\md5.h" />
|
||||||
|
<ClInclude Include="polarssl\md_wrap.h" />
|
||||||
|
<ClInclude Include="polarssl\net.h" />
|
||||||
|
<ClInclude Include="polarssl\openssl.h" />
|
||||||
|
<ClInclude Include="polarssl\padlock.h" />
|
||||||
|
<ClInclude Include="polarssl\pbkdf2.h" />
|
||||||
|
<ClInclude Include="polarssl\pem.h" />
|
||||||
|
<ClInclude Include="polarssl\pkcs11.h" />
|
||||||
|
<ClInclude Include="polarssl\pkcs12.h" />
|
||||||
|
<ClInclude Include="polarssl\pkcs5.h" />
|
||||||
|
<ClInclude Include="polarssl\rsa.h" />
|
||||||
|
<ClInclude Include="polarssl\sha1.h" />
|
||||||
|
<ClInclude Include="polarssl\sha2.h" />
|
||||||
|
<ClInclude Include="polarssl\sha4.h" />
|
||||||
|
<ClInclude Include="polarssl\ssl.h" />
|
||||||
|
<ClInclude Include="polarssl\ssl_cache.h" />
|
||||||
|
<ClInclude Include="polarssl\timing.h" />
|
||||||
|
<ClInclude Include="polarssl\version.h" />
|
||||||
|
<ClInclude Include="polarssl\x509.h" />
|
||||||
|
<ClInclude Include="polarssl\x509write.h" />
|
||||||
|
<ClInclude Include="polarssl\xtea.h" />
|
||||||
|
<ClInclude Include="romfs.h" />
|
||||||
|
<ClInclude Include="romfs_gen.h" />
|
||||||
|
<ClInclude Include="romfs_import.h" />
|
||||||
|
<ClInclude Include="rsf_settings.h" />
|
||||||
|
<ClInclude Include="srl.h" />
|
||||||
|
<ClInclude Include="tik.h" />
|
||||||
|
<ClInclude Include="tik_build.h" />
|
||||||
|
<ClInclude Include="tik_read.h" />
|
||||||
|
<ClInclude Include="titleid.h" />
|
||||||
|
<ClInclude Include="tmd.h" />
|
||||||
|
<ClInclude Include="tmd_build.h" />
|
||||||
|
<ClInclude Include="tmd_read.h" />
|
||||||
|
<ClInclude Include="types.h" />
|
||||||
|
<ClInclude Include="user_settings.h" />
|
||||||
|
<ClInclude Include="utf.h" />
|
||||||
|
<ClInclude Include="utils.h" />
|
||||||
|
<ClInclude Include="yaml_parser.h" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClCompile Include="accessdesc.c" />
|
||||||
|
<ClCompile Include="blz.c" />
|
||||||
|
<ClCompile Include="cardinfo.c" />
|
||||||
|
<ClCompile Include="certs.c" />
|
||||||
|
<ClCompile Include="cia.c" />
|
||||||
|
<ClCompile Include="crypto.c" />
|
||||||
|
<ClCompile Include="ctr_utils.c" />
|
||||||
|
<ClCompile Include="dir.c" />
|
||||||
|
<ClCompile Include="elf.c" />
|
||||||
|
<ClCompile Include="exefs.c" />
|
||||||
|
<ClCompile Include="exheader.c" />
|
||||||
|
<ClCompile Include="keyset.c" />
|
||||||
|
<ClCompile Include="libyaml\api.c" />
|
||||||
|
<ClCompile Include="libyaml\dumper.c" />
|
||||||
|
<ClCompile Include="libyaml\emitter.c" />
|
||||||
|
<ClCompile Include="libyaml\loader.c" />
|
||||||
|
<ClCompile Include="libyaml\parser.c" />
|
||||||
|
<ClCompile Include="libyaml\reader.c" />
|
||||||
|
<ClCompile Include="libyaml\scanner.c" />
|
||||||
|
<ClCompile Include="libyaml\writer.c" />
|
||||||
|
<ClCompile Include="makerom.c" />
|
||||||
|
<ClCompile Include="ncch.c" />
|
||||||
|
<ClCompile Include="ncsd.c" />
|
||||||
|
<ClCompile Include="polarssl\arc4.c" />
|
||||||
|
<ClCompile Include="polarssl\asn1parse.c" />
|
||||||
|
<ClCompile Include="polarssl\asn1write.c" />
|
||||||
|
<ClCompile Include="polarssl\base64.c" />
|
||||||
|
<ClCompile Include="polarssl\bignum.c" />
|
||||||
|
<ClCompile Include="polarssl\blowfish.c" />
|
||||||
|
<ClCompile Include="polarssl\camellia.c" />
|
||||||
|
<ClCompile Include="polarssl\certs.c" />
|
||||||
|
<ClCompile Include="polarssl\cipher.c" />
|
||||||
|
<ClCompile Include="polarssl\cipher_wrap.c" />
|
||||||
|
<ClCompile Include="polarssl\ctr_drbg.c" />
|
||||||
|
<ClCompile Include="polarssl\debug.c" />
|
||||||
|
<ClCompile Include="polarssl\des.c" />
|
||||||
|
<ClCompile Include="polarssl\dhm.c" />
|
||||||
|
<ClCompile Include="polarssl\entropy.c" />
|
||||||
|
<ClCompile Include="polarssl\entropy_poll.c" />
|
||||||
|
<ClCompile Include="polarssl\error.c" />
|
||||||
|
<ClCompile Include="polarssl\gcm.c" />
|
||||||
|
<ClCompile Include="polarssl\havege.c" />
|
||||||
|
<ClCompile Include="polarssl\md.c" />
|
||||||
|
<ClCompile Include="polarssl\md2.c" />
|
||||||
|
<ClCompile Include="polarssl\md4.c" />
|
||||||
|
<ClCompile Include="polarssl\md5.c" />
|
||||||
|
<ClCompile Include="polarssl\md_wrap.c" />
|
||||||
|
<ClCompile Include="polarssl\net.c" />
|
||||||
|
<ClCompile Include="polarssl\padlock.c" />
|
||||||
|
<ClCompile Include="polarssl\pbkdf2.c" />
|
||||||
|
<ClCompile Include="polarssl\pem.c" />
|
||||||
|
<ClCompile Include="polarssl\pkcs11.c" />
|
||||||
|
<ClCompile Include="polarssl\pkcs12.c" />
|
||||||
|
<ClCompile Include="polarssl\pkcs5.c" />
|
||||||
|
<ClCompile Include="polarssl\rsa.c" />
|
||||||
|
<ClCompile Include="polarssl\sha1.c" />
|
||||||
|
<ClCompile Include="polarssl\sha2.c" />
|
||||||
|
<ClCompile Include="polarssl\sha4.c" />
|
||||||
|
<ClCompile Include="polarssl\ssl_cache.c" />
|
||||||
|
<ClCompile Include="polarssl\ssl_cli.c" />
|
||||||
|
<ClCompile Include="polarssl\ssl_srv.c" />
|
||||||
|
<ClCompile Include="polarssl\ssl_tls.c" />
|
||||||
|
<ClCompile Include="polarssl\timing.c" />
|
||||||
|
<ClCompile Include="polarssl\version.c" />
|
||||||
|
<ClCompile Include="polarssl\x509parse.c" />
|
||||||
|
<ClCompile Include="polarssl\x509write.c" />
|
||||||
|
<ClCompile Include="polarssl\xtea.c" />
|
||||||
|
<ClCompile Include="romfs.c" />
|
||||||
|
<ClCompile Include="romfs_gen.c" />
|
||||||
|
<ClCompile Include="romfs_import.c" />
|
||||||
|
<ClCompile Include="rsf_settings.c" />
|
||||||
|
<ClCompile Include="tik.c" />
|
||||||
|
<ClCompile Include="titleid.c" />
|
||||||
|
<ClCompile Include="tmd.c" />
|
||||||
|
<ClCompile Include="user_settings.c" />
|
||||||
|
<ClCompile Include="utf.c" />
|
||||||
|
<ClCompile Include="utils.c" />
|
||||||
|
<ClCompile Include="yaml_parser.c" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Makefile" />
|
||||||
|
</ItemGroup>
|
||||||
|
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
|
||||||
|
<ImportGroup Label="ExtensionTargets">
|
||||||
|
</ImportGroup>
|
||||||
|
</Project>
|
||||||
@@ -0,0 +1,584 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ItemGroup>
|
||||||
|
<Filter Include="Source Files">
|
||||||
|
<UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
|
||||||
|
<Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
|
||||||
|
</Filter>
|
||||||
|
<Filter Include="Header Files">
|
||||||
|
<UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
|
||||||
|
<Extensions>h;hh;hpp;hxx;hm;inl;inc;xsd</Extensions>
|
||||||
|
</Filter>
|
||||||
|
<Filter Include="Resource Files">
|
||||||
|
<UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
|
||||||
|
<Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
|
||||||
|
</Filter>
|
||||||
|
<Filter Include="Header Files\polarssl">
|
||||||
|
<UniqueIdentifier>{bab0486d-d6e9-48e4-b4a5-ab1c9a917a15}</UniqueIdentifier>
|
||||||
|
</Filter>
|
||||||
|
<Filter Include="Header Files\libyaml">
|
||||||
|
<UniqueIdentifier>{e3b6ff03-546a-4f9c-8246-ee2a5a6b5c20}</UniqueIdentifier>
|
||||||
|
</Filter>
|
||||||
|
<Filter Include="Source Files\libyaml">
|
||||||
|
<UniqueIdentifier>{2bf08da5-c0b2-4b6f-a07a-0f3a03b79f14}</UniqueIdentifier>
|
||||||
|
</Filter>
|
||||||
|
<Filter Include="Source Files\polarssl">
|
||||||
|
<UniqueIdentifier>{7545c89e-a9ce-4c04-989e-ae726a518efd}</UniqueIdentifier>
|
||||||
|
</Filter>
|
||||||
|
<Filter Include="Resource Files\PKI">
|
||||||
|
<UniqueIdentifier>{49964d4d-b429-41e6-a85f-e4d361de0faf}</UniqueIdentifier>
|
||||||
|
</Filter>
|
||||||
|
<Filter Include="Resource Files\DESC">
|
||||||
|
<UniqueIdentifier>{a0455bf4-2a1e-4ced-9d42-88d7ce131c22}</UniqueIdentifier>
|
||||||
|
</Filter>
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<Text Include="readme.txt" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClInclude Include="accessdesc.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="blz.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="cardinfo.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="certs.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="cia.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="cia_build.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="cia_read.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="crr.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="crypto.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="ctr_utils.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="dir.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="elf.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="elf_hdr.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="exefs.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="exefs_build.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="exefs_read.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="exheader.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="exheader_build.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="exheader_read.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="keyset.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="lib.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="ncch.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="ncch_build.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="ncch_logo.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="ncch_read.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="ncsd.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="ncsd_build.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="ncsd_read.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="romfs.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="romfs_gen.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="romfs_import.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="rsf_settings.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="srl.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="tik.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="tik_build.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="tik_read.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="titleid.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="tmd.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="tmd_build.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="tmd_read.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="types.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="user_settings.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="utf.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="utils.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="yaml_parser.h">
|
||||||
|
<Filter>Header Files</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\aes.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\arc4.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\asn1.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\asn1write.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\base64.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\bignum.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\blowfish.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\bn_mul.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\camellia.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\certs.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\cipher.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\cipher_wrap.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\config.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\ctr_drbg.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\debug.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\des.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\dhm.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\entropy.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\entropy_poll.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\error.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\gcm.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\havege.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\md.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\md_wrap.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\md2.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\md4.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\md5.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\net.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\openssl.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\padlock.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\pbkdf2.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\pem.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\pkcs5.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\pkcs11.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\pkcs12.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\rsa.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\sha1.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\sha2.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\sha4.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\ssl.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\ssl_cache.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\timing.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\version.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\x509.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\x509write.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="polarssl\xtea.h">
|
||||||
|
<Filter>Header Files\polarssl</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="libyaml\yaml.h">
|
||||||
|
<Filter>Header Files\libyaml</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="libyaml\yaml_private.h">
|
||||||
|
<Filter>Header Files\libyaml</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="pki\dev.h">
|
||||||
|
<Filter>Resource Files\PKI</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="pki\dev_legacy.h">
|
||||||
|
<Filter>Resource Files\PKI</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="pki\prod.h">
|
||||||
|
<Filter>Resource Files\PKI</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="pki\prod_legacy.h">
|
||||||
|
<Filter>Resource Files\PKI</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="pki\test.h">
|
||||||
|
<Filter>Resource Files\PKI</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="desc\dev_sigdata.h">
|
||||||
|
<Filter>Resource Files\DESC</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="desc\presets.h">
|
||||||
|
<Filter>Resource Files\DESC</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
<ClInclude Include="desc\prod_sigdata.h">
|
||||||
|
<Filter>Resource Files\DESC</Filter>
|
||||||
|
</ClInclude>
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<ClCompile Include="accessdesc.c">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="blz.c">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="cardinfo.c">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="certs.c">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="cia.c">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="crypto.c">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="ctr_utils.c">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="dir.c">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="elf.c">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="exefs.c">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="exheader.c">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="keyset.c">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="makerom.c">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="ncch.c">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="ncsd.c">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="romfs.c">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="romfs_gen.c">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="romfs_import.c">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="rsf_settings.c">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="tik.c">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="titleid.c">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="tmd.c">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="user_settings.c">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="utf.c">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="utils.c">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="yaml_parser.c">
|
||||||
|
<Filter>Source Files</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="libyaml\api.c">
|
||||||
|
<Filter>Source Files\libyaml</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="libyaml\dumper.c">
|
||||||
|
<Filter>Source Files\libyaml</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="libyaml\emitter.c">
|
||||||
|
<Filter>Source Files\libyaml</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="libyaml\loader.c">
|
||||||
|
<Filter>Source Files\libyaml</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="libyaml\parser.c">
|
||||||
|
<Filter>Source Files\libyaml</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="libyaml\reader.c">
|
||||||
|
<Filter>Source Files\libyaml</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="libyaml\scanner.c">
|
||||||
|
<Filter>Source Files\libyaml</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="libyaml\writer.c">
|
||||||
|
<Filter>Source Files\libyaml</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\arc4.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\asn1parse.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\asn1write.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\base64.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\bignum.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\blowfish.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\camellia.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\certs.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\cipher.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\cipher_wrap.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\ctr_drbg.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\debug.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\des.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\dhm.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\entropy.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\entropy_poll.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\error.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\gcm.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\havege.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\md.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\md_wrap.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\md2.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\md4.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\md5.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\net.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\padlock.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\pbkdf2.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\pem.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\pkcs5.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\pkcs11.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\pkcs12.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\rsa.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\sha1.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\sha2.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\sha4.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\ssl_cache.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\ssl_cli.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\ssl_srv.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\ssl_tls.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\timing.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\version.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\x509parse.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\x509write.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
<ClCompile Include="polarssl\xtea.c">
|
||||||
|
<Filter>Source Files\polarssl</Filter>
|
||||||
|
</ClCompile>
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Makefile">
|
||||||
|
<Filter>Resource Files</Filter>
|
||||||
|
</None>
|
||||||
|
</ItemGroup>
|
||||||
|
</Project>
|
||||||
+32
-12
@@ -626,28 +626,48 @@ int SetCommonHeaderBasicData(ncch_settings *set, ncch_hdr *hdr)
|
|||||||
hdr->flags[ncchflag_CONTENT_BLOCK_SIZE] = GetCtrBlockSizeFlag(set->options.blockSize);
|
hdr->flags[ncchflag_CONTENT_BLOCK_SIZE] = GetCtrBlockSizeFlag(set->options.blockSize);
|
||||||
|
|
||||||
/* Setting ContentPlatform */
|
/* Setting ContentPlatform */
|
||||||
hdr->flags[ncchflag_CONTENT_PLATFORM] = 1; // CTR
|
if(set->rsfSet->TitleInfo.Platform){
|
||||||
|
if(strcasecmp(set->rsfSet->TitleInfo.Platform, "ctr") == 0)
|
||||||
|
hdr->flags[ncchflag_CONTENT_PLATFORM] = platform_CTR;
|
||||||
|
else if (strcasecmp(set->rsfSet->TitleInfo.Platform, "snake") == 0)
|
||||||
|
hdr->flags[ncchflag_CONTENT_PLATFORM] = platform_SNAKE;
|
||||||
|
else{
|
||||||
|
fprintf(stderr, "[NCCH ERROR] Invalid Platform '%s'\n", set->rsfSet->TitleInfo.Platform);
|
||||||
|
return NCCH_BAD_RSF_SET;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
hdr->flags[ncchflag_CONTENT_PLATFORM] = platform_CTR;
|
||||||
|
|
||||||
/* Setting OtherFlag */
|
/* Setting OtherFlag */
|
||||||
if(!set->options.UseRomFS)
|
if(!set->options.UseRomFS)
|
||||||
hdr->flags[ncchflag_OTHER_FLAG] |= otherflag_NoMountRomFs;
|
hdr->flags[ncchflag_OTHER_FLAG] |= otherflag_NoMountRomFs;
|
||||||
|
|
||||||
|
|
||||||
|
/* Setting FormType */
|
||||||
|
hdr->flags[ncchflag_CONTENT_TYPE] = form_Unassigned;
|
||||||
|
if(set->options.IsCfa)
|
||||||
|
hdr->flags[ncchflag_CONTENT_TYPE] = form_SimpleContent;
|
||||||
|
else if (set->options.UseRomFS)
|
||||||
|
hdr->flags[ncchflag_CONTENT_TYPE] = form_Executable;
|
||||||
|
else
|
||||||
|
hdr->flags[ncchflag_CONTENT_TYPE] = form_ExecutableWithoutRomfs;
|
||||||
|
|
||||||
/* Setting ContentType */
|
/* Setting ContentType */
|
||||||
hdr->flags[ncchflag_CONTENT_TYPE] = 0;
|
|
||||||
if(set->options.UseRomFS) hdr->flags[ncchflag_CONTENT_TYPE] |= content_Data;
|
|
||||||
if(!set->options.IsCfa) hdr->flags[ncchflag_CONTENT_TYPE] |= content_Executable;
|
|
||||||
if(set->rsfSet->BasicInfo.ContentType){
|
if(set->rsfSet->BasicInfo.ContentType){
|
||||||
if(strcmp(set->rsfSet->BasicInfo.ContentType,"Application") == 0) hdr->flags[ncchflag_CONTENT_TYPE] |= 0;
|
if(strcmp(set->rsfSet->BasicInfo.ContentType,"Application") == 0) hdr->flags[ncchflag_CONTENT_TYPE] |= (content_Application << 2);
|
||||||
else if(strcmp(set->rsfSet->BasicInfo.ContentType,"SystemUpdate") == 0) hdr->flags[ncchflag_CONTENT_TYPE] |= content_SystemUpdate;
|
else if(strcmp(set->rsfSet->BasicInfo.ContentType,"SystemUpdate") == 0) hdr->flags[ncchflag_CONTENT_TYPE] |= (content_SystemUpdate << 2);
|
||||||
else if(strcmp(set->rsfSet->BasicInfo.ContentType,"Manual") == 0) hdr->flags[ncchflag_CONTENT_TYPE] |= content_Manual;
|
else if(strcmp(set->rsfSet->BasicInfo.ContentType,"Manual") == 0) hdr->flags[ncchflag_CONTENT_TYPE] |= (content_Manual << 2);
|
||||||
else if(strcmp(set->rsfSet->BasicInfo.ContentType,"Child") == 0) hdr->flags[ncchflag_CONTENT_TYPE] |= content_Child;
|
else if(strcmp(set->rsfSet->BasicInfo.ContentType,"Child") == 0) hdr->flags[ncchflag_CONTENT_TYPE] |= (content_Child << 2);
|
||||||
else if(strcmp(set->rsfSet->BasicInfo.ContentType,"Trial") == 0) hdr->flags[ncchflag_CONTENT_TYPE] |= content_Trial;
|
else if(strcmp(set->rsfSet->BasicInfo.ContentType,"Trial") == 0) hdr->flags[ncchflag_CONTENT_TYPE] |= (content_Trial << 2);
|
||||||
|
else if (strcmp(set->rsfSet->BasicInfo.ContentType, "ExtendedSystemUpdate") == 0) hdr->flags[ncchflag_CONTENT_TYPE] |= (content_ExtendedSystemUpdate << 2);
|
||||||
else{
|
else{
|
||||||
fprintf(stderr,"[NCCH ERROR] Invalid ContentType '%s'\n",set->rsfSet->BasicInfo.ContentType);
|
fprintf(stderr,"[NCCH ERROR] Invalid ContentType '%s'\n",set->rsfSet->BasicInfo.ContentType);
|
||||||
return NCCH_BAD_RSF_SET;
|
return NCCH_BAD_RSF_SET;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
hdr->flags[ncchflag_CONTENT_TYPE] |= (content_Application << 2);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@@ -663,7 +683,7 @@ bool IsValidProductCode(char *ProductCode, bool FreeProductCode)
|
|||||||
if(strlen(ProductCode) < 10)
|
if(strlen(ProductCode) < 10)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
if(strncmp(ProductCode,"CTR",3) != 0)
|
if(strncmp(ProductCode,"CTR",3) != 0 && strncmp(ProductCode, "KTR", 3) != 0)
|
||||||
return false;
|
return false;
|
||||||
|
|
||||||
for(int i = 3; i < 10; i++){
|
for(int i = 3; i < 10; i++){
|
||||||
@@ -946,12 +966,12 @@ bool IsNcch(FILE *fp, u8 *buf)
|
|||||||
|
|
||||||
bool IsCfa(ncch_hdr* hdr)
|
bool IsCfa(ncch_hdr* hdr)
|
||||||
{
|
{
|
||||||
return (((hdr->flags[ncchflag_CONTENT_TYPE] & content_Data) == content_Data) && ((hdr->flags[ncchflag_CONTENT_TYPE] & content_Executable) != content_Executable));
|
return (hdr->flags[ncchflag_CONTENT_TYPE] & 3) == form_SimpleContent;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool IsUpdateCfa(ncch_hdr* hdr)
|
bool IsUpdateCfa(ncch_hdr* hdr)
|
||||||
{
|
{
|
||||||
return (((hdr->flags[ncchflag_CONTENT_TYPE] & content_SystemUpdate) == content_SystemUpdate) && ((hdr->flags[ncchflag_CONTENT_TYPE] & content_Child) != content_Child) && IsCfa(hdr));
|
return (hdr->flags[ncchflag_CONTENT_TYPE] >> 2) == content_SystemUpdate || (hdr->flags[ncchflag_CONTENT_TYPE] >> 2) == content_ExtendedSystemUpdate;
|
||||||
}
|
}
|
||||||
|
|
||||||
u32 GetNcchBlockSize(ncch_hdr* hdr)
|
u32 GetNcchBlockSize(ncch_hdr* hdr)
|
||||||
|
|||||||
+20
-6
@@ -50,14 +50,28 @@ typedef enum
|
|||||||
|
|
||||||
typedef enum
|
typedef enum
|
||||||
{
|
{
|
||||||
content_Data = 0x1,
|
form_Unassigned,
|
||||||
content_Executable = 0x2,
|
form_SimpleContent,
|
||||||
content_SystemUpdate = 0x4,
|
form_ExecutableWithoutRomfs,
|
||||||
content_Manual = 0x8,
|
form_Executable
|
||||||
content_Child = (0x4|0x8),
|
};
|
||||||
content_Trial = 0x10
|
|
||||||
|
typedef enum
|
||||||
|
{
|
||||||
|
content_Application,
|
||||||
|
content_SystemUpdate,
|
||||||
|
content_Manual,
|
||||||
|
content_Child,
|
||||||
|
content_Trial,
|
||||||
|
content_ExtendedSystemUpdate
|
||||||
} ncch_content_bitmask;
|
} ncch_content_bitmask;
|
||||||
|
|
||||||
|
typedef enum
|
||||||
|
{
|
||||||
|
platform_CTR = 0x1,
|
||||||
|
platform_SNAKE = 0x2
|
||||||
|
} ncch_platform;
|
||||||
|
|
||||||
typedef struct
|
typedef struct
|
||||||
{
|
{
|
||||||
u16 formatVersion;
|
u16 formatVersion;
|
||||||
|
|||||||
@@ -0,0 +1,29 @@
|
|||||||
|
========================================================================
|
||||||
|
MAKEFILE PROJECT : makerom Project Overview
|
||||||
|
========================================================================
|
||||||
|
|
||||||
|
AppWizard has created this makerom project for you.
|
||||||
|
|
||||||
|
This file contains a summary of what you will find in each of the files that
|
||||||
|
make up your makerom project.
|
||||||
|
|
||||||
|
|
||||||
|
makerom.vcxproj
|
||||||
|
This is the main project file for VC++ projects generated using an Application Wizard.
|
||||||
|
It contains information about the version of Visual C++ that generated the file, and
|
||||||
|
information about the platforms, configurations, and project features selected with the
|
||||||
|
Application Wizard.
|
||||||
|
|
||||||
|
makerom.vcxproj.filters
|
||||||
|
This is the filters file for VC++ projects generated using an Application Wizard.
|
||||||
|
It contains information about the association between the files in your project
|
||||||
|
and the filters. This association is used in the IDE to show grouping of files with
|
||||||
|
similar extensions under a specific node (for e.g. ".cpp" files are associated with the
|
||||||
|
"Source Files" filter).
|
||||||
|
|
||||||
|
This project allows you to build/clean/rebuild from within Visual Studio by calling the commands you have input
|
||||||
|
in the wizard. The build command can be nmake or any other tool you use.
|
||||||
|
|
||||||
|
This project does not contain any files, so there are none displayed in Solution Explorer.
|
||||||
|
|
||||||
|
/////////////////////////////////////////////////////////////////////////////
|
||||||
@@ -102,12 +102,16 @@ void GET_AccessControlInfo(ctr_yaml_context *ctx, rsf_settings *rsf)
|
|||||||
else if(cmpYamlValue("UseOtherVariationSaveData",ctx)) SetBoolYAMLValue(&rsf->AccessControlInfo.UseOtherVariationSaveData,"UseOtherVariationSaveData",ctx);
|
else if(cmpYamlValue("UseOtherVariationSaveData",ctx)) SetBoolYAMLValue(&rsf->AccessControlInfo.UseOtherVariationSaveData,"UseOtherVariationSaveData",ctx);
|
||||||
else if(cmpYamlValue("RunnableOnSleep",ctx)) SetBoolYAMLValue(&rsf->AccessControlInfo.RunnableOnSleep,"RunnableOnSleep",ctx);
|
else if(cmpYamlValue("RunnableOnSleep",ctx)) SetBoolYAMLValue(&rsf->AccessControlInfo.RunnableOnSleep,"RunnableOnSleep",ctx);
|
||||||
else if(cmpYamlValue("SpecialMemoryArrange",ctx)) SetBoolYAMLValue(&rsf->AccessControlInfo.SpecialMemoryArrange,"SpecialMemoryArrange",ctx);
|
else if(cmpYamlValue("SpecialMemoryArrange",ctx)) SetBoolYAMLValue(&rsf->AccessControlInfo.SpecialMemoryArrange,"SpecialMemoryArrange",ctx);
|
||||||
|
else if(cmpYamlValue("UseExtSaveData", ctx)) SetBoolYAMLValue(&rsf->AccessControlInfo.UseExtSaveData, "UseExtSaveData", ctx);
|
||||||
|
else if(cmpYamlValue("EnableL2Cache", ctx)) SetBoolYAMLValue(&rsf->AccessControlInfo.EnableL2Cache, "EnableL2Cache", ctx);
|
||||||
|
|
||||||
|
|
||||||
else if(cmpYamlValue("IdealProcessor",ctx)) SetSimpleYAMLValue(&rsf->AccessControlInfo.IdealProcessor,"IdealProcessor",ctx,0);
|
else if(cmpYamlValue("IdealProcessor",ctx)) SetSimpleYAMLValue(&rsf->AccessControlInfo.IdealProcessor,"IdealProcessor",ctx,0);
|
||||||
else if(cmpYamlValue("Priority",ctx)) SetSimpleYAMLValue(&rsf->AccessControlInfo.Priority,"Priority",ctx,0);
|
else if(cmpYamlValue("Priority",ctx)) SetSimpleYAMLValue(&rsf->AccessControlInfo.Priority,"Priority",ctx,0);
|
||||||
else if(cmpYamlValue("MemoryType",ctx)) SetSimpleYAMLValue(&rsf->AccessControlInfo.MemoryType,"MemoryType",ctx,0);
|
else if(cmpYamlValue("MemoryType",ctx)) SetSimpleYAMLValue(&rsf->AccessControlInfo.MemoryType,"MemoryType",ctx,0);
|
||||||
else if(cmpYamlValue("SystemMode",ctx)) SetSimpleYAMLValue(&rsf->AccessControlInfo.SystemMode,"SystemMode",ctx,0);
|
else if(cmpYamlValue("SystemMode",ctx)) SetSimpleYAMLValue(&rsf->AccessControlInfo.SystemMode,"SystemMode",ctx,0);
|
||||||
|
else if(cmpYamlValue("SystemModeExt", ctx)) SetSimpleYAMLValue(&rsf->AccessControlInfo.SystemModeExt, "SystemModeExt", ctx, 0);
|
||||||
|
else if(cmpYamlValue("CpuSpeed", ctx)) SetSimpleYAMLValue(&rsf->AccessControlInfo.CpuSpeed, "CpuSpeed", ctx, 0);
|
||||||
else if(cmpYamlValue("CoreVersion",ctx)) SetSimpleYAMLValue(&rsf->AccessControlInfo.CoreVersion,"CoreVersion",ctx,0);
|
else if(cmpYamlValue("CoreVersion",ctx)) SetSimpleYAMLValue(&rsf->AccessControlInfo.CoreVersion,"CoreVersion",ctx,0);
|
||||||
else if(cmpYamlValue("HandleTableSize",ctx)) SetSimpleYAMLValue(&rsf->AccessControlInfo.HandleTableSize,"HandleTableSize",ctx,0);
|
else if(cmpYamlValue("HandleTableSize",ctx)) SetSimpleYAMLValue(&rsf->AccessControlInfo.HandleTableSize,"HandleTableSize",ctx,0);
|
||||||
else if(cmpYamlValue("SystemSaveDataId1",ctx)) SetSimpleYAMLValue(&rsf->AccessControlInfo.SystemSaveDataId1,"SystemSaveDataId1",ctx,0);
|
else if(cmpYamlValue("SystemSaveDataId1",ctx)) SetSimpleYAMLValue(&rsf->AccessControlInfo.SystemSaveDataId1,"SystemSaveDataId1",ctx,0);
|
||||||
@@ -279,7 +283,8 @@ void GET_TitleInfo(ctr_yaml_context *ctx, rsf_settings *rsf)
|
|||||||
if(ctx->error || ctx->done) return;
|
if(ctx->error || ctx->done) return;
|
||||||
// Handle childs
|
// Handle childs
|
||||||
|
|
||||||
if(cmpYamlValue("Category",ctx)) SetSimpleYAMLValue(&rsf->TitleInfo.Category,"Category",ctx,0);
|
if (cmpYamlValue("Platform", ctx)) SetSimpleYAMLValue(&rsf->TitleInfo.Platform, "Platform", ctx, 0);
|
||||||
|
else if(cmpYamlValue("Category",ctx)) SetSimpleYAMLValue(&rsf->TitleInfo.Category,"Category",ctx,0);
|
||||||
else if(cmpYamlValue("UniqueId",ctx)) SetSimpleYAMLValue(&rsf->TitleInfo.UniqueId,"UniqueId",ctx,0);
|
else if(cmpYamlValue("UniqueId",ctx)) SetSimpleYAMLValue(&rsf->TitleInfo.UniqueId,"UniqueId",ctx,0);
|
||||||
else if(cmpYamlValue("Version",ctx)) SetSimpleYAMLValue(&rsf->TitleInfo.Version,"Version",ctx,0);
|
else if(cmpYamlValue("Version",ctx)) SetSimpleYAMLValue(&rsf->TitleInfo.Version,"Version",ctx,0);
|
||||||
else if(cmpYamlValue("ContentsIndex",ctx)) SetSimpleYAMLValue(&rsf->TitleInfo.ContentsIndex,"ContentsIndex",ctx,0);
|
else if(cmpYamlValue("ContentsIndex",ctx)) SetSimpleYAMLValue(&rsf->TitleInfo.ContentsIndex,"ContentsIndex",ctx,0);
|
||||||
@@ -382,6 +387,8 @@ void free_RsfSettings(rsf_settings *set)
|
|||||||
free(set->AccessControlInfo.Priority);
|
free(set->AccessControlInfo.Priority);
|
||||||
free(set->AccessControlInfo.MemoryType);
|
free(set->AccessControlInfo.MemoryType);
|
||||||
free(set->AccessControlInfo.SystemMode);
|
free(set->AccessControlInfo.SystemMode);
|
||||||
|
free(set->AccessControlInfo.SystemModeExt);
|
||||||
|
free(set->AccessControlInfo.CpuSpeed);
|
||||||
free(set->AccessControlInfo.CoreVersion);
|
free(set->AccessControlInfo.CoreVersion);
|
||||||
free(set->AccessControlInfo.HandleTableSize);
|
free(set->AccessControlInfo.HandleTableSize);
|
||||||
free(set->AccessControlInfo.SystemSaveDataId1);
|
free(set->AccessControlInfo.SystemSaveDataId1);
|
||||||
@@ -502,6 +509,7 @@ void free_RsfSettings(rsf_settings *set)
|
|||||||
free(set->PlainRegion);
|
free(set->PlainRegion);
|
||||||
|
|
||||||
//TitleInfo
|
//TitleInfo
|
||||||
|
free(set->TitleInfo.Platform);
|
||||||
free(set->TitleInfo.Category);
|
free(set->TitleInfo.Category);
|
||||||
free(set->TitleInfo.UniqueId);
|
free(set->TitleInfo.UniqueId);
|
||||||
free(set->TitleInfo.Version);
|
free(set->TitleInfo.Version);
|
||||||
|
|||||||
@@ -86,12 +86,16 @@ typedef struct
|
|||||||
bool UseOtherVariationSaveData;
|
bool UseOtherVariationSaveData;
|
||||||
bool RunnableOnSleep;
|
bool RunnableOnSleep;
|
||||||
bool SpecialMemoryArrange;
|
bool SpecialMemoryArrange;
|
||||||
|
bool UseExtSaveData;
|
||||||
|
bool EnableL2Cache;
|
||||||
|
|
||||||
// Strings
|
// Strings
|
||||||
char *IdealProcessor;
|
char *IdealProcessor;
|
||||||
char *Priority;
|
char *Priority;
|
||||||
char *MemoryType;
|
char *MemoryType;
|
||||||
char *SystemMode;
|
char *SystemMode;
|
||||||
|
char *SystemModeExt;
|
||||||
|
char *CpuSpeed;
|
||||||
char *CoreVersion;
|
char *CoreVersion;
|
||||||
char *HandleTableSize;
|
char *HandleTableSize;
|
||||||
char *SystemSaveDataId1;
|
char *SystemSaveDataId1;
|
||||||
@@ -178,6 +182,7 @@ typedef struct
|
|||||||
|
|
||||||
struct{
|
struct{
|
||||||
// Strings
|
// Strings
|
||||||
|
char *Platform;
|
||||||
char *Category;
|
char *Category;
|
||||||
char *UniqueId;
|
char *UniqueId;
|
||||||
char *Version;
|
char *Version;
|
||||||
|
|||||||
Reference in New Issue
Block a user