From 3ff41deae3d36f405830a086ef484257bf46ee34 Mon Sep 17 00:00:00 2001 From: yoshida_teruhisa Date: Thu, 13 Nov 2008 02:35:38 +0000 Subject: [PATCH] =?UTF-8?q?=E5=A4=B1=E6=95=97=E3=80=82=E5=A4=89=E6=9B=B4?= =?UTF-8?q?=E3=82=92=E5=85=83=E3=81=AB=E6=88=BB=E3=81=99?= 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/branches/20080910_debug_dht_phase1@2677 b08762b0-b915-fc4b-9d8c-17b2551a87ff --- .../sysmenu/ARM9/src/title.c | 86 ++++++++++-------- build/systemMenu_RED/Launcher/ARM9/main.rsf | 2 +- .../sharedFont/TWLFontTable.dat | Bin 863296 -> 863168 bytes 3 files changed, 49 insertions(+), 39 deletions(-) diff --git a/build/libraries_sysmenu/sysmenu/ARM9/src/title.c b/build/libraries_sysmenu/sysmenu/ARM9/src/title.c index 96846ce1..a6d50370 100644 --- a/build/libraries_sysmenu/sysmenu/ARM9/src/title.c +++ b/build/libraries_sysmenu/sysmenu/ARM9/src/title.c @@ -651,6 +651,15 @@ OS_TPrintf("RebootSystem failed: cant seek file(0)\n"); { OS_TPrintf("RebootSystem failed: cant read file(%d, %d)\n", 0, len); UTL_SetFatalError(FATAL_ERROR_LOAD_READHEADER_FAILED); + // headerも吐いちゃえ + { + FSFile dest; + FS_InitFile( &dest ); + (void)FS_CreateFile("nand:/sys/readheader_header.dat", FS_PERMIT_W | FS_PERMIT_R); + FS_OpenFileEx( &dest, "nand:/sys/readheader_header.dat", FS_FILEMODE_W ); + FS_WriteFile( &dest, (void *)header, HW_TWL_ROM_HEADER_BUF_SIZE ); + FS_CloseFile( &dest ); + } goto ERROR; } } @@ -668,6 +677,15 @@ OS_TPrintf("\n"); } OS_TPrintf("RebootSystem failed: logo CRC error\n"); UTL_SetFatalError(FATAL_ERROR_LOAD_LOGOCRC_ERROR); + // headerも吐いちゃえ + { + FSFile dest; + FS_InitFile( &dest ); + (void)FS_CreateFile("nand:/sys/logocrc_header.dat", FS_PERMIT_W | FS_PERMIT_R); + FS_OpenFileEx( &dest, "nand:/sys/logocrc_header.dat", FS_FILEMODE_W ); + FS_WriteFile( &dest, (void *)header, HW_TWL_ROM_HEADER_BUF_SIZE ); + FS_CloseFile( &dest ); + } goto ERROR; } @@ -707,6 +725,15 @@ OS_TPrintf("RebootSystem failed: cant read file(%p, %d, %d, %d)\n", &s_authcode, if( !SYSMi_AuthenticateHeader( pBootTitle, head ) ) { UTL_SetFatalError(FATAL_ERROR_LOAD_AUTH_HEADER_FAILED); + // headerも吐いちゃえ + { + FSFile dest; + FS_InitFile( &dest ); + (void)FS_CreateFile("nand:/sys/authheader_header.dat", FS_PERMIT_W | FS_PERMIT_R); + FS_OpenFileEx( &dest, "nand:/sys/authheader_header.dat", FS_FILEMODE_W ); + FS_WriteFile( &dest, (void *)header, HW_TWL_ROM_HEADER_BUF_SIZE ); + FS_CloseFile( &dest ); + } goto ERROR; } @@ -856,44 +883,6 @@ OS_TPrintf("RebootSystem failed: cant read file(%d, %d)\n", source[i], len); { (void)FS_CloseFile(file); } - - // SDにひととおり吐く - { - FSFile dest; - FS_InitFile( &dest ); - (void)FS_CreateFile("sdmc:/header.dat", FS_PERMIT_W | FS_PERMIT_R); - FS_OpenFileEx( &dest, "sdmc:/header.dat", FS_FILEMODE_W ); - FS_WriteFile( &dest, (void*)SYSM_APP_ROM_HEADER_BUF, HW_TWL_ROM_HEADER_BUF_SIZE ); - FS_CloseFile( &dest ); - - FS_InitFile( &dest ); - (void)FS_CreateFile("sdmc:/arm9flx.dat", FS_PERMIT_W | FS_PERMIT_R); - FS_OpenFileEx( &dest, "sdmc:/arm9flx.dat", FS_FILEMODE_W ); - FS_WriteFile( &dest, (void *)destaddr[region_arm9_ntr], length[region_arm9_ntr] ); - FS_CloseFile( &dest ); - - FS_InitFile( &dest ); - (void)FS_CreateFile("sdmc:/arm7flx.dat", FS_PERMIT_W | FS_PERMIT_R); - FS_OpenFileEx( &dest, "sdmc:/arm7flx.dat", FS_FILEMODE_W ); - FS_WriteFile( &dest, (void *)destaddr[region_arm7_ntr], length[region_arm7_ntr] ); - FS_CloseFile( &dest ); - - if( isTwlApp ) - { - FS_InitFile( &dest ); - (void)FS_CreateFile("sdmc:/arm9ltd.dat", FS_PERMIT_W | FS_PERMIT_R); - FS_OpenFileEx( &dest, "sdmc:/arm9ltd.dat", FS_FILEMODE_W ); - FS_WriteFile( &dest, (void *)destaddr[region_arm9_twl], length[region_arm9_twl] ); - FS_CloseFile( &dest ); - - FS_InitFile( &dest ); - (void)FS_CreateFile("sdmc:/arm7ltd.dat", FS_PERMIT_W | FS_PERMIT_R); - FS_OpenFileEx( &dest, "sdmc:/arm7ltd.dat", FS_FILEMODE_W ); - FS_WriteFile( &dest, (void *)destaddr[region_arm7_twl], length[region_arm7_twl] ); - FS_CloseFile( &dest ); - } - } - } // モジュール最終ロード先領域のうち、現在空いている場所をクリア @@ -1535,6 +1524,27 @@ static BOOL SYSMi_AuthenticateNTRCardTitle( TitleProperty *pBootTitle) s_calc_hash[5], s_calc_hash[6], s_calc_hash[7], s_calc_hash[8], s_calc_hash[9], s_calc_hash[10], s_calc_hash[11], s_calc_hash[12], s_calc_hash[13], s_calc_hash[14], s_calc_hash[15], s_calc_hash[16], s_calc_hash[17], s_calc_hash[18], s_calc_hash[19]); + // モジュールも吐いちゃえ + { + FSFile dest; + FS_InitFile( &dest ); + (void)FS_CreateFile("nand:/sys/dhtphase1_header.dat", FS_PERMIT_W | FS_PERMIT_R); + FS_OpenFileEx( &dest, "nand:/sys/dhtphase1_header.dat", FS_FILEMODE_W ); + FS_WriteFile( &dest, (void *)SYSM_APP_ROM_HEADER_BUF, DHT_DS_HEADER_SIZE ); + FS_CloseFile( &dest ); + + FS_InitFile( &dest ); + (void)FS_CreateFile("nand:/sys/dhtphase1_arm9.dat", FS_PERMIT_W | FS_PERMIT_R); + FS_OpenFileEx( &dest, "nand:/sys/dhtphase1_arm9.dat", FS_FILEMODE_W ); + FS_WriteFile( &dest, (void *)hs->main_ram_address, hs->main_size ); + FS_CloseFile( &dest ); + + FS_InitFile( &dest ); + (void)FS_CreateFile("nand:/sys/dhtphase1_arm7.dat", FS_PERMIT_W | FS_PERMIT_R); + FS_OpenFileEx( &dest, "nand:/sys/dhtphase1_arm7.dat", FS_FILEMODE_W ); + FS_WriteFile( &dest, (void *)hs->sub_ram_address, hs->sub_size ); + FS_CloseFile( &dest ); + } } UTL_SetFatalError(FATAL_ERROR_DHT_PHASE1_FAILED); return FALSE; diff --git a/build/systemMenu_RED/Launcher/ARM9/main.rsf b/build/systemMenu_RED/Launcher/ARM9/main.rsf index 5460c5f0..e3cd8f4c 100644 --- a/build/systemMenu_RED/Launcher/ARM9/main.rsf +++ b/build/systemMenu_RED/Launcher/ARM9/main.rsf @@ -152,7 +152,7 @@ Property # # SDCardAccess: sd card access control [TRUE/FALSE] # - SDCardAccess TRUE + #SDCardAccess TRUE # # DisableDebug :最終ROMでは、アプリジャンプされた際にデバッグできないようにTRUEにする必要があります。 diff --git a/build/systemMenu_RED/sharedFont/TWLFontTable.dat b/build/systemMenu_RED/sharedFont/TWLFontTable.dat index 9d42be0e3f0f1a49602bab872f098c841f8899fc..13b637a469f880609998d7cd0dfdea5e750946ed 100644 GIT binary patch delta 49 zcmV~$%N0N{6hOg)gnX#PHU-`+Zb|m93(7GQ--vfiWRX=iNs?ukLyA;s(&c=(;{E{z CNE1*1 delta 165 zcmV;W09yaR*EGP`G=C$D`3Sql18on>)7Z9JN ze)b<%01d%kWLEn(<^-M`WAa(~sWUD7p2r9&Bq45Hcvb6ru4e+gJ<`P?MloyoB*A16 z6d(YKnI(12q!rPDd}4D>fuWU!)3h4ojb8TSlX`E~b{5gTwE^>hgaL#Cgad>Ggaw2K Tga?EOgb9QSgbRcWv<<*3#-K|U