From 30376950b3f28a440ba7abdd29a9f7db5431c389 Mon Sep 17 00:00:00 2001 From: yutaka Date: Mon, 30 Jun 2008 12:11:31 +0000 Subject: [PATCH] =?UTF-8?q?CARD=E3=83=91=E3=83=A9=E3=83=A1=E3=83=BC?= =?UTF-8?q?=E3=82=BF=E3=81=AE=E3=82=B3=E3=83=94=E3=83=BC=E5=85=88=E4=BF=AE?= =?UTF-8?q?=E6=AD=A3=E3=80=81=20=E3=81=93=E3=82=93=E3=81=A9=E3=81=AFFINALR?= =?UTF-8?q?OM=E7=89=88=E3=81=97=E3=81=8B=E5=8B=95=E3=81=8B=E3=81=AA?= =?UTF-8?q?=E3=81=84=E3=81=8B=E3=82=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@1747 b08762b0-b915-fc4b-9d8c-17b2551a87ff --- build/gcdfirm/sdmc-launcher-writer/ARM7/main.c | 12 +++++++----- build/gcdfirm/sdmc-launcher-writer/README.txt | 2 +- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/build/gcdfirm/sdmc-launcher-writer/ARM7/main.c b/build/gcdfirm/sdmc-launcher-writer/ARM7/main.c index d7a3d5ab..c3f3c796 100644 --- a/build/gcdfirm/sdmc-launcher-writer/ARM7/main.c +++ b/build/gcdfirm/sdmc-launcher-writer/ARM7/main.c @@ -77,7 +77,9 @@ static void CreateIdleThread(void) static void PreInit(void) { // GCDヘッダコピー - MI_CpuCopyFast( OSi_GetFromBromAddr(), (void*)HW_ROM_HEADER_BUF, HW_ROM_HEADER_BUF_END - HW_ROM_HEADER_BUF ); + MI_CpuCopyFast( OSi_GetFromBromAddr(), (void*)HW_CARD_ROM_HEADER, HW_CARD_ROM_HEADER_SIZE ); + // NANDコンテキストコピー + MI_CpuCopyFast( &OSi_GetFromBromAddr()->SDNandContext, (void*)HW_SD_NAND_CONTEXT_BUF, sizeof(SDPortContextData) ); // FromBrom全消去 MIi_CpuClearFast( 0, (void*)OSi_GetFromBromAddr(), sizeof(OSFromBromBuf) ); } @@ -98,7 +100,7 @@ static void PostInit(void) /* バッテリー残量チェック */ - MCUi_WriteRegister( MCU_REG_MODE_ADDR, MCU_SYSTEMMODE_FIRMWARE ); // change battery level only + MCUi_WriteRegister( MCU_REG_MODE_ADDR, MCU_SYSTEMMODE_TWL ); // TWL mode for ES library if ( (MCUi_ReadRegister( MCU_REG_POWER_INFO_ADDR ) & MCU_REG_POWER_INFO_LEVEL_MASK) == 0 ) { #ifndef SDK_FINALROM @@ -278,14 +280,13 @@ static int CARDi_ReadRomWithCPU(void *userdata, void *buffer, u32 offset, u32 le } -extern SDPortContext *SDNandContext; extern SDMC_ERR_CODE FATFSi_sdmcGoIdle(u16 ports, void (*func1)(),void (*func2)()); void TwlSpMain( void ) { GCDHeader* const gh = &OSi_GetFromBromAddr()->header.gcd; u32 offset = gh->l.nandfirm_offset; - u32 size = 261120;//gh->l.nandfirm_size; + u32 size = gh->l.nandfirm_size; u32 nsize = size - offsetof(NANDHeader,l); // size to write to nand u32 sectors = (nsize + 511)/512; u8* nor2 = nor + size; // buffer to verify @@ -313,7 +314,6 @@ void TwlSpMain( void ) OS_TPrintf("Failed to call FATFSi_sdmcInit().\n"); goto err; } - SDNandContext = NULL; FATFSi_sdmcGoIdle( 2, NULL, NULL ); SetDebugLED(++step); // 0x05 @@ -330,6 +330,7 @@ void TwlSpMain( void ) SetDebugLED(++step); // 0x07 // read all + *(u32*)nor = 0; CARDi_ReadRomWithCPU( NULL, nor, offset, size ); SetDebugLED(++step); // 0x08 @@ -351,6 +352,7 @@ void TwlSpMain( void ) OS_TPrintf("Failed to call FATFSi_sdmcWriteFifo() to write header.\n"); goto err; } + SetDebugLED(++step); // 0x0b PXI_NotifyID( FIRM_PXI_ID_NULL ); diff --git a/build/gcdfirm/sdmc-launcher-writer/README.txt b/build/gcdfirm/sdmc-launcher-writer/README.txt index 514a448e..6beef713 100644 --- a/build/gcdfirm/sdmc-launcher-writer/README.txt +++ b/build/gcdfirm/sdmc-launcher-writer/README.txt @@ -1,3 +1,3 @@ 注意 -2008年5月20日現在、FINALROM版は動作しません。 +2008年6月30日現在、FINALROM版しか動作しません。