From 1b866df715886aec17ffccb983ba93792f27198a Mon Sep 17 00:00:00 2001 From: yoshida_teruhisa Date: Thu, 27 Mar 2008 05:51:02 +0000 Subject: [PATCH] =?UTF-8?q?mountInfo=E3=81=A7=E5=A4=A7=E5=A4=89=E3=81=AA?= =?UTF-8?q?=E3=81=93=E3=81=A8=E3=82=92=E3=81=97=E3=81=A6=E3=81=84=E3=81=9F?= =?UTF-8?q?=E3=81=AE=E3=81=A7=E4=BF=AE=E6=AD=A3=20=E3=80=80=E3=83=BB?= =?UTF-8?q?=E3=83=A9=E3=83=B3=E3=83=81=E3=83=A3=E3=83=BC=E3=81=AEmountInfo?= =?UTF-8?q?=E7=99=BB=E9=8C=B2=E6=99=82=E3=80=81=E3=83=87=E3=83=95=E3=82=A9?= =?UTF-8?q?=E3=83=AB=E3=83=88=E3=83=AA=E3=82=B9=E3=83=88=E3=82=92=E7=9B=B4?= =?UTF-8?q?=E6=8E=A5=E5=BC=84=E3=81=A3=E3=81=A6=E3=81=9D=E3=81=AE=E3=81=BE?= =?UTF-8?q?=E3=81=BE=E6=AC=A1=E3=81=AE=E3=82=A2=E3=83=97=E3=83=AA=E3=81=A7?= =?UTF-8?q?=E3=82=82=E3=81=9D=E3=81=AE=E3=83=AA=E3=82=B9=E3=83=88=E3=82=92?= =?UTF-8?q?=E3=83=87=E3=83=95=E3=82=A9=E3=83=AB=E3=83=88=E3=81=A8=E3=81=97?= =?UTF-8?q?=E3=81=A6=E4=BD=BF=E3=81=A3=E3=81=A6=E3=81=84=E3=81=9F?= 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@980 b08762b0-b915-fc4b-9d8c-17b2551a87ff --- .../sysmenu/common/src/mountInfo.c | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/build/libraries_sysmenu/sysmenu/common/src/mountInfo.c b/build/libraries_sysmenu/sysmenu/common/src/mountInfo.c index 6a4c435c..2dc8eb84 100644 --- a/build/libraries_sysmenu/sysmenu/common/src/mountInfo.c +++ b/build/libraries_sysmenu/sysmenu/common/src/mountInfo.c @@ -76,9 +76,13 @@ OSMountInfo s_defaultMountList[ DEFAULT_MOUNT_LIST_NUM ] ATTRIBUTE_ALIGN(4) = { // ランチャーのマウント情報セット void SYSMi_SetLauncherMountInfo( void ) { + OSMountInfo mountListBuffer[ DEFAULT_MOUNT_LIST_NUM ] ATTRIBUTE_ALIGN(4); ROM_Header_Short *header = ( ROM_Header_Short *)HW_TWL_ROM_HEADER_BUF; NAMTitleId titleID = (( ROM_Header_Short *)HW_TWL_ROM_HEADER_BUF)->titleID; + // デフォルトリストをバッファにコピー + MI_CpuCopyFast( s_defaultMountList, mountListBuffer, sizeof(s_defaultMountList) ); + if( ( *(u8 *)HW_NAND_FIRM_HOTSTART_FLAG & 0x80 ) == 0 ) { MI_CpuClearFast( (u8 *)header->sub_mount_info_ram_address, 0x400 ); } @@ -89,12 +93,12 @@ void SYSMi_SetLauncherMountInfo( void ) // ※このタイミングではFSは動かせないので、FSを使わない特別版で対応。 SYSMi_ModifySaveDataMountForLauncher( LAUNCHER_BOOTTYPE_NAND, titleID, - &s_defaultMountList[ PRV_SAVE_DATA_MOUNT_INDEX ] ); + &mountListBuffer[ PRV_SAVE_DATA_MOUNT_INDEX ] ); // マウント情報のセット SYSMi_SetMountInfoCore( LAUNCHER_BOOTTYPE_NAND, titleID, - &s_defaultMountList[0], + &mountListBuffer[0], (OSMountInfo *)header->sub_mount_info_ram_address ); } @@ -102,11 +106,15 @@ void SYSMi_SetLauncherMountInfo( void ) // SYSM_TWL_MOUNT_INFO_TMP_BUFFERに、ブートするアプリのマウント情報を登録する void SYSMi_SetBootAppMountInfo( TitleProperty *pBootTitle ) { + OSMountInfo mountListBuffer[ DEFAULT_MOUNT_LIST_NUM ] ATTRIBUTE_ALIGN(4); // アプリがTWL対応でない場合は、何もセットせずにリターン if( ( (( ROM_Header_Short *)HW_TWL_ROM_HEADER_BUF)->platform_code ) == 0 ) { return; } + // デフォルトリストをバッファにコピー + MI_CpuCopyFast( s_defaultMountList, mountListBuffer, sizeof(s_defaultMountList) ); + // 起動アプリのSRLパスをセット // SYSMi_SetBootSRLPath( (LauncherBootType)pBootTitle->flags.bootType, // pBootTitle->titleID ); @@ -118,17 +126,17 @@ void SYSMi_SetBootAppMountInfo( TitleProperty *pBootTitle ) // ※ARM7ではNAMは動かせないので、NAMを使わないバージョンで対応。 SYSMi_ModifySaveDataMountForLauncher( LAUNCHER_BOOTTYPE_NAND, pBootTitle->titleID, - &s_defaultMountList[ PRV_SAVE_DATA_MOUNT_INDEX ] ); + &mountListBuffer[ PRV_SAVE_DATA_MOUNT_INDEX ] ); /* // セーブデータ有無によるマウント情報の編集 SYSMi_ModifySaveDataMount( (LauncherBootType)pBootTitle->flags.bootType, pBootTitle->titleID, - &s_defaultMountList[ PRV_SAVE_DATA_MOUNT_INDEX ] ); + &mountListBuffer[ PRV_SAVE_DATA_MOUNT_INDEX ] ); */ // マウント情報のセット SYSMi_SetMountInfoCore( (LauncherBootType)pBootTitle->flags.bootType, pBootTitle->titleID, - &s_defaultMountList[0], + &mountListBuffer[0], (OSMountInfo *)SYSM_TWL_MOUNT_INFO_TMP_BUFFER ); /*