mirror of
https://github.com/rvtr/TwlIPL.git
synced 2025-10-31 06:01:12 -04:00
・Launcher起動時特定条件化で起動する本体設定のタイトルIDをNAMを利用してリストから取得するように変更
・無駄なコードを発見したので処分 git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@955 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
parent
6f1eac754a
commit
e18627491d
@ -140,12 +140,6 @@ void BOOT_Ready( void )
|
|||||||
NULL,
|
NULL,
|
||||||
};
|
};
|
||||||
|
|
||||||
// 再配置リストの作成と設定(ほぼARM7側でやるのでこちらは空)
|
|
||||||
static u32 relocate_list[] =
|
|
||||||
{
|
|
||||||
NULL
|
|
||||||
};
|
|
||||||
|
|
||||||
REBOOTTarget target = REBOOT_TARGET_TWL_SYSTEM;
|
REBOOTTarget target = REBOOT_TARGET_TWL_SYSTEM;
|
||||||
|
|
||||||
// アプリケーション選択
|
// アプリケーション選択
|
||||||
|
|||||||
@ -30,6 +30,7 @@ extern void LCFG_VerifyAndRecoveryNTRSettings( void );
|
|||||||
static TitleProperty *SYSMi_CheckShortcutBoot( void );
|
static TitleProperty *SYSMi_CheckShortcutBoot( void );
|
||||||
static void SYSMi_CheckCardCloneBoot( void );
|
static void SYSMi_CheckCardCloneBoot( void );
|
||||||
void SYSMi_SendKeysToARM7( void );
|
void SYSMi_SendKeysToARM7( void );
|
||||||
|
static OSTitleId SYSMi_getTitleIdOfMachineSettings( void );
|
||||||
|
|
||||||
// global variable-------------------------------------------------------------
|
// global variable-------------------------------------------------------------
|
||||||
void *(*SYSMi_Alloc)( u32 size );
|
void *(*SYSMi_Alloc)( u32 size );
|
||||||
@ -310,8 +311,11 @@ static TitleProperty *SYSMi_CheckShortcutBoot( void )
|
|||||||
if( ( PAD_Read() & SYSM_PAD_SHORTCUT_MACHINE_SETTINGS ) ==
|
if( ( PAD_Read() & SYSM_PAD_SHORTCUT_MACHINE_SETTINGS ) ==
|
||||||
SYSM_PAD_SHORTCUT_MACHINE_SETTINGS )
|
SYSM_PAD_SHORTCUT_MACHINE_SETTINGS )
|
||||||
{
|
{
|
||||||
s_bootTitle.flags.isLogoSkip = TRUE; // ロゴデモを飛ばす
|
s_bootTitle.titleID = SYSMi_getTitleIdOfMachineSettings();
|
||||||
s_bootTitle.titleID = TITLE_ID_MACHINE_SETTINGS;
|
if(s_bootTitle.titleID != 0)
|
||||||
|
{
|
||||||
|
s_bootTitle.flags.isLogoSkip = TRUE; // 本体設定を起動できる時だけロゴデモを飛ばす
|
||||||
|
}
|
||||||
s_bootTitle.flags.bootType = LAUNCHER_BOOTTYPE_NAND;
|
s_bootTitle.flags.bootType = LAUNCHER_BOOTTYPE_NAND;
|
||||||
s_bootTitle.flags.isValid = TRUE;
|
s_bootTitle.flags.isValid = TRUE;
|
||||||
s_bootTitle.flags.isAppRelocate = FALSE;
|
s_bootTitle.flags.isAppRelocate = FALSE;
|
||||||
@ -346,7 +350,7 @@ static TitleProperty *SYSMi_CheckShortcutBoot( void )
|
|||||||
}else
|
}else
|
||||||
{
|
{
|
||||||
s_bootTitle.flags.isLogoSkip = TRUE; // ロゴデモを飛ばす
|
s_bootTitle.flags.isLogoSkip = TRUE; // ロゴデモを飛ばす
|
||||||
s_bootTitle.titleID = TITLE_ID_MACHINE_SETTINGS;
|
s_bootTitle.titleID = SYSMi_getTitleIdOfMachineSettings();
|
||||||
s_bootTitle.flags.bootType = LAUNCHER_BOOTTYPE_NAND;
|
s_bootTitle.flags.bootType = LAUNCHER_BOOTTYPE_NAND;
|
||||||
s_bootTitle.flags.isValid = TRUE;
|
s_bootTitle.flags.isValid = TRUE;
|
||||||
s_bootTitle.flags.isAppRelocate = FALSE;
|
s_bootTitle.flags.isAppRelocate = FALSE;
|
||||||
@ -361,8 +365,11 @@ static TitleProperty *SYSMi_CheckShortcutBoot( void )
|
|||||||
#if 0
|
#if 0
|
||||||
#ifdef ENABLE_INITIAL_SETTINGS_
|
#ifdef ENABLE_INITIAL_SETTINGS_
|
||||||
if( !LCFG_TSD_IsFinishedInitialSetting() ) {
|
if( !LCFG_TSD_IsFinishedInitialSetting() ) {
|
||||||
s_bootTitle.flags.isLogoSkip = TRUE; // ロゴデモを飛ばす
|
s_bootTitle.titleID = SYSMi_getTitleIdOfMachineSettings();
|
||||||
s_bootTitle.titleID = TITLE_ID_MACHINE_SETTINGS;
|
if(s_bootTitle.titleID != 0)
|
||||||
|
{
|
||||||
|
s_bootTitle.flags.isLogoSkip = TRUE; // 本体設定を起動できる時だけロゴデモを飛ばす
|
||||||
|
}
|
||||||
s_bootTitle.flags.bootType = LAUNCHER_BOOTTYPE_NAND;
|
s_bootTitle.flags.bootType = LAUNCHER_BOOTTYPE_NAND;
|
||||||
s_bootTitle.flags.isValid = TRUE;
|
s_bootTitle.flags.isValid = TRUE;
|
||||||
s_bootTitle.flags.isAppRelocate = FALSE;
|
s_bootTitle.flags.isAppRelocate = FALSE;
|
||||||
@ -396,6 +403,38 @@ static void SYSMi_CheckCardCloneBoot( void )
|
|||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// NAM_Initされるようになったので、NAMで本体設定のID取得
|
||||||
|
// それらしきものがインストールされていない場合は0(NULL)をリターン
|
||||||
|
static OSTitleId SYSMi_getTitleIdOfMachineSettings( void )
|
||||||
|
{
|
||||||
|
OSTitleId ret = NULL;
|
||||||
|
int l;
|
||||||
|
int getNum;
|
||||||
|
int validNum = 0;
|
||||||
|
NAMTitleId *pTitleIDList = NULL;
|
||||||
|
|
||||||
|
// インストールされているタイトルの取得
|
||||||
|
getNum = NAM_GetNumTitles();
|
||||||
|
pTitleIDList = SYSM_Alloc( sizeof(NAMTitleId) * getNum );
|
||||||
|
if( pTitleIDList == NULL ) {
|
||||||
|
OS_TPrintf( "%s: alloc error.\n", __FUNCTION__ );
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
(void)NAM_GetTitleList( pTitleIDList, (u32)getNum );
|
||||||
|
|
||||||
|
// 取得したタイトルに本体情報のIDがあるかチェック
|
||||||
|
for( l = 0; l < getNum; l++ ) {
|
||||||
|
char *code = ((char *)&pTitleIDList[l]) + 1;
|
||||||
|
if( 0 == STD_CompareNString( code, "ESM", 3 ) )
|
||||||
|
{
|
||||||
|
ret = (OSTitleId)pTitleIDList[l];
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
SYSM_Free( pTitleIDList );
|
||||||
|
|
||||||
|
return ret;
|
||||||
|
}
|
||||||
|
|
||||||
//======================================================================
|
//======================================================================
|
||||||
// デバッグ
|
// デバッグ
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user