mirror of
https://github.com/DarkStore-3DS/Project_CTR.git
synced 2026-07-02 16:59:03 +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));
|
||||
|
||||
/* Adjust Data */
|
||||
u8 *flag = &exhdrset->acexDesc->arm11SystemLocalCapabilities.flag;
|
||||
u8 *flag = &exhdrset->acexDesc->arm11SystemLocalCapabilities.flag[2];
|
||||
u8 SystemMode = (*flag>>4)&0xF;
|
||||
u8 AffinityMask = (*flag>>2)&0x3;
|
||||
u8 IdealProcessor = 1<<((*flag>>0)&0x3);
|
||||
*flag = (u8)(SystemMode << 4 | AffinityMask << 2 | IdealProcessor);
|
||||
exhdrset->acexDesc->arm11SystemLocalCapabilities.priority /= 2;
|
||||
exhdrset->acexDesc->arm11SystemLocalCapabilities.flag[3] /= 2;
|
||||
|
||||
/* Sign AccessDesc */
|
||||
return SignAccessDesc(exhdrset->acexDesc,exhdrset->keys);
|
||||
|
||||
+44
-8
@@ -317,7 +317,34 @@ int SetARM11SystemLocalInfoFlags(exhdr_ARM11SystemLocalCapabilities *arm11, rsf_
|
||||
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 idealProcessor = 0;
|
||||
u8 systemMode = 0;
|
||||
@@ -343,9 +370,9 @@ int SetARM11SystemLocalInfoFlags(exhdr_ARM11SystemLocalCapabilities *arm11, rsf_
|
||||
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){
|
||||
u8 priority = strtoul(rsf->AccessControlInfo.Priority,NULL,0);
|
||||
if(GetAppType(rsf) == processtype_APPLICATION)
|
||||
@@ -354,7 +381,7 @@ int SetARM11SystemLocalInfoFlags(exhdr_ARM11SystemLocalCapabilities *arm11, rsf_
|
||||
fprintf(stderr,"[EXHEADER ERROR] Invalid Priority: %d\n",priority);
|
||||
return EXHDR_BAD_RSF_OPT;
|
||||
}
|
||||
arm11->priority = priority;
|
||||
arm11->flag[3] = priority;
|
||||
}
|
||||
else{
|
||||
ErrorParamNotFound("AccessControlInfo/Priority");
|
||||
@@ -479,8 +506,13 @@ void SetARM11StorageInfoSystemSaveDataId(exhdr_ARM11SystemLocalCapabilities *arm
|
||||
|
||||
void SetARM11StorageInfoExtSaveDataId(exhdr_ARM11SystemLocalCapabilities *arm11, rsf_settings *rsf)
|
||||
{
|
||||
if(rsf->AccessControlInfo.ExtSaveDataId)
|
||||
u64_to_u8(arm11->storageInfo.extSavedataId, strtoull(rsf->AccessControlInfo.ExtSaveDataId,NULL,0), LE);
|
||||
if (rsf->AccessControlInfo.UseExtSaveData || rsf->AccessControlInfo.ExtSaveDataId) {
|
||||
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)
|
||||
@@ -508,6 +540,10 @@ bool CheckCondiditionsForNewAccessibleSaveDataIds(rsf_settings *rsf)
|
||||
fprintf(stderr,"[EXHEADER ERROR] Too many UniqueId in \"AccessibleSaveDataIds\".\n");
|
||||
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){
|
||||
fprintf(stderr,"[EXHEADER ERROR] ExtSaveDataId is unavailable if AccessibleSaveDataIds is specified.\n");
|
||||
return false;
|
||||
@@ -561,8 +597,8 @@ void SetARM11StorageInfoAccessibleSaveDataIds(exhdr_ARM11SystemLocalCapabilities
|
||||
int SetARM11ServiceAccessControl(exhdr_ARM11SystemLocalCapabilities *arm11, rsf_settings *rsf)
|
||||
{
|
||||
if(rsf->AccessControlInfo.ServiceAccessControl){
|
||||
if(rsf->AccessControlInfo.ServiceAccessControlNum > 32){
|
||||
fprintf(stderr,"[EXHEADER ERROR] Too Many Service Names, maximum is 32\n");
|
||||
if(rsf->AccessControlInfo.ServiceAccessControlNum > 34){
|
||||
fprintf(stderr,"[EXHEADER ERROR] Too Many Service Names, maximum is 34\n");
|
||||
return EXHDR_BAD_RSF_OPT;
|
||||
}
|
||||
for(int i = 0; i < rsf->AccessControlInfo.ServiceAccessControlNum; i++){
|
||||
|
||||
+9
-5
@@ -28,6 +28,12 @@ typedef enum
|
||||
resrc_limit_OTHER
|
||||
} resource_limit_category;
|
||||
|
||||
typedef enum
|
||||
{
|
||||
cpuspeed_268MHz,
|
||||
cpuspeed_804MHz
|
||||
};
|
||||
|
||||
typedef enum
|
||||
{
|
||||
othcap_PERMIT_DEBUG = (1 << 0),
|
||||
@@ -127,13 +133,11 @@ typedef struct
|
||||
{
|
||||
u8 programId[8];
|
||||
u8 coreVersion[4];
|
||||
u8 padding0[2];
|
||||
u8 flag;
|
||||
u8 priority;
|
||||
u8 flag[4];
|
||||
u8 resourceLimitDescriptor[16][2];
|
||||
exhdr_StorageInfo storageInfo;
|
||||
u8 serviceAccessControl[32][8]; // Those char[8] server names
|
||||
u8 padding1[0x1f];
|
||||
u8 serviceAccessControl[34][8]; // Those char[8] server names
|
||||
u8 padding1[0xf];
|
||||
u8 resourceLimitCategory;
|
||||
} 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);
|
||||
|
||||
/* 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 */
|
||||
if(!set->options.UseRomFS)
|
||||
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 */
|
||||
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(strcmp(set->rsfSet->BasicInfo.ContentType,"Application") == 0) hdr->flags[ncchflag_CONTENT_TYPE] |= 0;
|
||||
else if(strcmp(set->rsfSet->BasicInfo.ContentType,"SystemUpdate") == 0) hdr->flags[ncchflag_CONTENT_TYPE] |= content_SystemUpdate;
|
||||
else if(strcmp(set->rsfSet->BasicInfo.ContentType,"Manual") == 0) hdr->flags[ncchflag_CONTENT_TYPE] |= content_Manual;
|
||||
else if(strcmp(set->rsfSet->BasicInfo.ContentType,"Child") == 0) hdr->flags[ncchflag_CONTENT_TYPE] |= content_Child;
|
||||
else if(strcmp(set->rsfSet->BasicInfo.ContentType,"Trial") == 0) hdr->flags[ncchflag_CONTENT_TYPE] |= content_Trial;
|
||||
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 << 2);
|
||||
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 << 2);
|
||||
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{
|
||||
fprintf(stderr,"[NCCH ERROR] Invalid ContentType '%s'\n",set->rsfSet->BasicInfo.ContentType);
|
||||
return NCCH_BAD_RSF_SET;
|
||||
}
|
||||
}
|
||||
else
|
||||
hdr->flags[ncchflag_CONTENT_TYPE] |= (content_Application << 2);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@@ -663,7 +683,7 @@ bool IsValidProductCode(char *ProductCode, bool FreeProductCode)
|
||||
if(strlen(ProductCode) < 10)
|
||||
return false;
|
||||
|
||||
if(strncmp(ProductCode,"CTR",3) != 0)
|
||||
if(strncmp(ProductCode,"CTR",3) != 0 && strncmp(ProductCode, "KTR", 3) != 0)
|
||||
return false;
|
||||
|
||||
for(int i = 3; i < 10; i++){
|
||||
@@ -946,12 +966,12 @@ bool IsNcch(FILE *fp, u8 *buf)
|
||||
|
||||
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)
|
||||
{
|
||||
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)
|
||||
|
||||
+20
-6
@@ -50,14 +50,28 @@ typedef enum
|
||||
|
||||
typedef enum
|
||||
{
|
||||
content_Data = 0x1,
|
||||
content_Executable = 0x2,
|
||||
content_SystemUpdate = 0x4,
|
||||
content_Manual = 0x8,
|
||||
content_Child = (0x4|0x8),
|
||||
content_Trial = 0x10
|
||||
form_Unassigned,
|
||||
form_SimpleContent,
|
||||
form_ExecutableWithoutRomfs,
|
||||
form_Executable
|
||||
};
|
||||
|
||||
typedef enum
|
||||
{
|
||||
content_Application,
|
||||
content_SystemUpdate,
|
||||
content_Manual,
|
||||
content_Child,
|
||||
content_Trial,
|
||||
content_ExtendedSystemUpdate
|
||||
} ncch_content_bitmask;
|
||||
|
||||
typedef enum
|
||||
{
|
||||
platform_CTR = 0x1,
|
||||
platform_SNAKE = 0x2
|
||||
} ncch_platform;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
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.
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
+10
-2
@@ -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("RunnableOnSleep",ctx)) SetBoolYAMLValue(&rsf->AccessControlInfo.RunnableOnSleep,"RunnableOnSleep",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("Priority",ctx)) SetSimpleYAMLValue(&rsf->AccessControlInfo.Priority,"Priority",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("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("HandleTableSize",ctx)) SetSimpleYAMLValue(&rsf->AccessControlInfo.HandleTableSize,"HandleTableSize",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;
|
||||
// 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("Version",ctx)) SetSimpleYAMLValue(&rsf->TitleInfo.Version,"Version",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.MemoryType);
|
||||
free(set->AccessControlInfo.SystemMode);
|
||||
free(set->AccessControlInfo.SystemModeExt);
|
||||
free(set->AccessControlInfo.CpuSpeed);
|
||||
free(set->AccessControlInfo.CoreVersion);
|
||||
free(set->AccessControlInfo.HandleTableSize);
|
||||
free(set->AccessControlInfo.SystemSaveDataId1);
|
||||
@@ -502,6 +509,7 @@ void free_RsfSettings(rsf_settings *set)
|
||||
free(set->PlainRegion);
|
||||
|
||||
//TitleInfo
|
||||
free(set->TitleInfo.Platform);
|
||||
free(set->TitleInfo.Category);
|
||||
free(set->TitleInfo.UniqueId);
|
||||
free(set->TitleInfo.Version);
|
||||
|
||||
@@ -86,12 +86,16 @@ typedef struct
|
||||
bool UseOtherVariationSaveData;
|
||||
bool RunnableOnSleep;
|
||||
bool SpecialMemoryArrange;
|
||||
|
||||
bool UseExtSaveData;
|
||||
bool EnableL2Cache;
|
||||
|
||||
// Strings
|
||||
char *IdealProcessor;
|
||||
char *Priority;
|
||||
char *MemoryType;
|
||||
char *SystemMode;
|
||||
char *SystemModeExt;
|
||||
char *CpuSpeed;
|
||||
char *CoreVersion;
|
||||
char *HandleTableSize;
|
||||
char *SystemSaveDataId1;
|
||||
@@ -178,6 +182,7 @@ typedef struct
|
||||
|
||||
struct{
|
||||
// Strings
|
||||
char *Platform;
|
||||
char *Category;
|
||||
char *UniqueId;
|
||||
char *Version;
|
||||
|
||||
Reference in New Issue
Block a user