From a915f482e84e0cfb017a2df16f6e9b8e26765a2f Mon Sep 17 00:00:00 2001 From: "(no author)" <(no author)@b08762b0-b915-fc4b-9d8c-17b2551a87ff> Date: Fri, 21 Dec 2007 01:17:31 +0000 Subject: [PATCH] =?UTF-8?q?(=E6=9B=B4=E6=96=B0:Akabane=20Jumpei)=20?= =?UTF-8?q?=E3=83=BBArm9=E6=8B=A1=E5=BC=B5=E5=B8=B8=E9=A7=90=E3=83=A2?= =?UTF-8?q?=E3=82=B8=E3=83=A5=E3=83=BC=E3=83=AB=E3=81=AE=E3=82=BB=E3=82=AD?= =?UTF-8?q?=E3=83=A5=E3=82=A2=E9=A0=98=E5=9F=9F=E5=88=86=E3=81=AE=E3=83=87?= =?UTF-8?q?=E3=83=BC=E3=82=BF=E3=82=92=E3=80=81=E4=B8=80=E6=99=82=E6=A0=BC?= =?UTF-8?q?=E7=B4=8D=E3=83=90=E3=83=83=E3=83=95=E3=82=A1=E3=81=AB=E8=BB=A2?= =?UTF-8?q?=E9=80=81=E3=81=99=E3=82=8B=E3=82=88=E3=81=86=E3=81=AB=E4=BF=AE?= =?UTF-8?q?=E6=AD=A3=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@393 b08762b0-b915-fc4b-9d8c-17b2551a87ff --- .../libraries_sysmenu/hotsw/ARM7/src/hotsw.c | 52 ++++--------------- 1 file changed, 10 insertions(+), 42 deletions(-) diff --git a/build/libraries_sysmenu/hotsw/ARM7/src/hotsw.c b/build/libraries_sysmenu/hotsw/ARM7/src/hotsw.c index 44a45ee3..b5d03b8b 100644 --- a/build/libraries_sysmenu/hotsw/ARM7/src/hotsw.c +++ b/build/libraries_sysmenu/hotsw/ARM7/src/hotsw.c @@ -236,7 +236,11 @@ BOOL HOTSW_Boot(void) // Boot Segment読み込み s_funcTable[s_cbData.cardType].ReadBootSegment_N(&s_cbData); - + + OS_TPrintf(" | Game Command Param : 0x%08x\n", s_cbData.pBootSegBuf->rh.s.game_cmd_param); + OS_TPrintf(" | Secure Command Param : 0x%08x\n", s_cbData.pBootSegBuf->rh.s.secure_cmd_param); + OS_TPrintf(" | Secure Command Latency : 0x%08x\n", s_cbData.pBootSegBuf->rh.s.secure_cmd_latency); + // Romエミュレーションデータを取得 if(s_cbData.cardType == DS_CARD_TYPE_1){ // Type1の場合 @@ -418,7 +422,7 @@ void HOTSW_LoadStaticModule(void) // Arm9の常駐モジュールを指定先に転送(※TWLカード対応していないので、注意!!) s_funcTable[s_cbData.cardType].ReadPage_G(s_cbData.pBootSegBuf->rh.s.main_ltd_rom_offset, - (u32 *)s_cbData.arm9Ltd, + (u32 *)SYSM_CARD_TWL_SECURE_BUF, size); if( s_cbData.pBootSegBuf->rh.s.main_ltd_size > SECURE_SEGMENT_SIZE ) { s_funcTable[s_cbData.cardType].ReadPage_G(s_cbData.pBootSegBuf->rh.s.main_ltd_rom_offset + SECURE_SEGMENT_SIZE, @@ -664,7 +668,6 @@ static void DecryptObjectFile(void) static BOOL CheckArm7HashValue(void) { u8 sha1data[DIGEST_SIZE_SHA1]; - u32 i; BOOL retval = TRUE; // クリア @@ -677,15 +680,7 @@ static BOOL CheckArm7HashValue(void) s_digestDefaultKey, sizeof(s_digestDefaultKey) ); - // ハッシュ値の照合 - for(i=0; irh.s.sub_static_digest[i]){ - retval = FALSE; - break; - } - } - - return retval; + return SVC_CompareSHA1( sha1data, s_cbData.pBootSegBuf->rh.s.sub_static_digest ); } // ---------------------------------------------------------------------- @@ -696,7 +691,6 @@ static BOOL CheckArm7HashValue(void) static BOOL CheckArm9HashValue(void) { u8 sha1data[DIGEST_SIZE_SHA1]; - u32 i; BOOL retval = TRUE; SVCHMACSHA1Context hash; @@ -715,15 +709,7 @@ static BOOL CheckArm9HashValue(void) // Hash値取得 SVC_HMACSHA1GetHash( &hash, sha1data ); - // ハッシュ値の照合 - for(i=0; irh.s.main_static_digest[i]){ - retval = FALSE; - break; - } - } - - return retval; + return SVC_CompareSHA1( sha1data, s_cbData.pBootSegBuf->rh.s.sub_static_digest ); } // ---------------------------------------------------------------------- @@ -732,7 +718,6 @@ static BOOL CheckArm9HashValue(void) static BOOL CheckExtArm7HashValue(void) { u8 sha1data[DIGEST_SIZE_SHA1]; - u32 i; BOOL retval = TRUE; // クリア @@ -745,15 +730,7 @@ static BOOL CheckExtArm7HashValue(void) s_digestDefaultKey, sizeof(s_digestDefaultKey) ); - // ハッシュ値の照合 - for(i=0; irh.s.sub_ltd_static_digest[i]){ - retval = FALSE; - break; - } - } - - return retval; + return SVC_CompareSHA1( sha1data, s_cbData.pBootSegBuf->rh.s.sub_ltd_static_digest ); } // ---------------------------------------------------------------------- @@ -762,7 +739,6 @@ static BOOL CheckExtArm7HashValue(void) static BOOL CheckExtArm9HashValue(void) { u8 sha1data[DIGEST_SIZE_SHA1]; - u32 i; BOOL retval = TRUE; // クリア @@ -775,15 +751,7 @@ static BOOL CheckExtArm9HashValue(void) s_digestDefaultKey, sizeof(s_digestDefaultKey) ); - // ハッシュ値の照合 - for(i=0; irh.s.main_ltd_static_digest[i]){ - retval = FALSE; - break; - } - } - - return retval; + return SVC_CompareSHA1( sha1data, s_cbData.pBootSegBuf->rh.s.main_ltd_static_digest ); } /* -----------------------------------------------------------------