From af54e8741d05f3814b4666015ea1f714a64d5ef2 Mon Sep 17 00:00:00 2001 From: nakasima Date: Fri, 9 May 2008 06:13:11 +0000 Subject: [PATCH] =?UTF-8?q?ImportJump=E3=81=AE=E5=BC=95=E6=95=B0=E3=82=92?= =?UTF-8?q?=E6=8B=A1=E5=BC=B5PSRAM=E3=81=8B=E3=82=89=E3=82=A8=E3=83=9F?= =?UTF-8?q?=E3=83=A5=E3=83=AC=E3=83=BC=E3=82=B7=E3=83=A7=E3=83=B3ROM?= =?UTF-8?q?=E7=B5=8C=E7=94=B1=E3=81=B8=E5=A4=89=E6=9B=B4=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@1299 b08762b0-b915-fc4b-9d8c-17b2551a87ff --- .../ImportJump/ARM9.TWL/include/ImportJump.h | 9 +++--- .../ImportJump/ARM9.TWL/src/import.c | 30 +++++++++++++++++++ 2 files changed, 34 insertions(+), 5 deletions(-) diff --git a/build/systemMenu_RED/ImportJump/ARM9.TWL/include/ImportJump.h b/build/systemMenu_RED/ImportJump/ARM9.TWL/include/ImportJump.h index b486a100..3c14d6fe 100644 --- a/build/systemMenu_RED/ImportJump/ARM9.TWL/include/ImportJump.h +++ b/build/systemMenu_RED/ImportJump/ARM9.TWL/include/ImportJump.h @@ -46,15 +46,14 @@ typedef struct _ImportJumpSetting 定数定義 *---------------------------------------------------------------------------*/ +#define IMPORT_TAD_ROM_OFS 0x00800000 +#define IMPORT_JUMP_SETTING_OFS (IMPORT_TAD_ROM_OFS - CARD_ROM_PAGE_SIZE) + /*---------------------------------------------------------------------------* 関数定義 *---------------------------------------------------------------------------*/ -inline ImportJump* GetImportJumpSetting(void) -{ - // リセット後は各PSRAMの先頭8MBしか保証されない - return (ImportJump *)HW_TWL_MAIN_MEM_EX; -} +ImportJump* GetImportJumpSetting( void ); /*===========================================================================*/ diff --git a/build/systemMenu_RED/ImportJump/ARM9.TWL/src/import.c b/build/systemMenu_RED/ImportJump/ARM9.TWL/src/import.c index 0823e317..0f506cfd 100644 --- a/build/systemMenu_RED/ImportJump/ARM9.TWL/src/import.c +++ b/build/systemMenu_RED/ImportJump/ARM9.TWL/src/import.c @@ -45,6 +45,7 @@ static void* spStack; static u32 sCurrentProgress; static vu8 sNowImport = FALSE; +static ImportJump sImportJumpSetting; /*---------------------------------------------------------------------------* 内部関数宣言 @@ -323,3 +324,32 @@ static void UpdateNandBoxCount( void ) } } +/*---------------------------------------------------------------------------* + Name: GetImportJumpSetting + + Description: + + Arguments: None. + + Returns: None. + *---------------------------------------------------------------------------*/ + +ImportJump* GetImportJumpSetting( void ) +{ + static BOOL inited = FALSE; + + if ( ! inited ) + { + // 開発用CPUでのみリード + if ( *(u8*)(OS_CHIPTYPE_DEBUGGER_ADDR) & OS_CHIPTYPE_DEBUGGER_MASK ) + { + u16 id = (u16)OS_GetLockID(); + CARD_LockRom( id ); + CARD_ReadRom( MI_DMA_NOT_USE, (void*)IMPORT_JUMP_SETTING_OFS, &sImportJumpSetting, sizeof(ImportJump) ); + CARD_UnlockRom( id ); + } + inited = TRUE; + } + + return &sImportJumpSetting; +}