SYSM_GetCardTitleListの返り値を変更時のみTRUEを返す形に変更。

git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@1771 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
yosiokat 2008-07-03 11:25:19 +00:00
parent e71cac5e0f
commit feb7a43677
2 changed files with 15 additions and 9 deletions

View File

@ -290,24 +290,20 @@ BOOL SYSM_GetCardTitleList( TitleProperty *pTitleList_Card )
// の場合は、正常に認識できないタイトルであることを示す。
if( SYSMi_GetWork()->flags.hotsw.isCardStateChanged ) {
u16 id = (u16)OS_GetLockID();
MI_CpuClear32( pTitleList_Card, sizeof(TitleProperty) );
(void)OS_LockByWord( id, &SYSMi_GetWork()->lockCardRsc, NULL ); // ARM7と排他制御する
// ROMヘッダバッファのコピー
if( SYSM_IsExistCard() ) {
u16 id = (u16)OS_GetLockID();
(void)OS_LockByWord( id, &SYSMi_GetWork()->lockCardRsc, NULL ); // ARM7と排他制御する
// ROMヘッダのリード
(void)SYSMi_CopyCardRomHeader();
// バナーデータのリード
(void)SYSMi_CopyCardBanner();
SYSMi_GetWork()->flags.hotsw.isCardStateChanged = FALSE; // カード情報更新フラグを落とす
(void)OS_UnlockByWord( id, &SYSMi_GetWork()->lockCardRsc, NULL ); // ARM7と排他制御する
OS_ReleaseLockID( id );
pTitleList_Card->pBanner = &s_bannerBuf[ CARD_BANNER_INDEX ];
pTitleList_Card->flags.isValid = TRUE;
pTitleList_Card->flags.isAppLoadCompleted = FALSE;
@ -317,8 +313,17 @@ BOOL SYSM_GetCardTitleList( TitleProperty *pTitleList_Card )
MI_CpuCopy8( SYSM_GetCardRomHeader()->parental_control_rating_info, pTitleList_Card->sub_info.parental_control_rating_info, 0x10);
pTitleList_Card->sub_info.card_region_bitmap = SYSM_GetCardRomHeader()->card_region_bitmap;
pTitleList_Card->sub_info.agree_EULA_version = SYSM_GetCardRomHeader()->agree_EULA_version;
}else {
// ROMヘッダのクリア
MI_CpuClearFast( (void *)SYSM_APP_ROM_HEADER_BUF, SYSM_APP_ROM_HEADER_SIZE );
// バナーデータのクリア
MI_CpuClearFast( &s_bannerBuf[ CARD_BANNER_INDEX ], sizeof(TWLBannerFile) );
}
SYSMi_GetWork()->flags.hotsw.isCardStateChanged = FALSE; // カード情報更新フラグを落とす
(void)OS_UnlockByWord( id, &SYSMi_GetWork()->lockCardRsc, NULL ); // ARM7と排他制御する
OS_ReleaseLockID( id );
// タイトル情報フラグのセット
pTitleList_Card->flags.bootType = LAUNCHER_BOOTTYPE_ROM;
pTitleList_Card->titleID = *(u64 *)( &SYSM_GetCardRomHeader()->titleID_Lo );
@ -1800,7 +1805,6 @@ void SYSM_TryToBootTitle( TitleProperty *pBootTitle )
{
u8 *pBuffer = SYSM_Alloc( LCFG_WRITE_TEMP );
if( pBuffer != NULL ) {
LCFG_TSD_SetLastTimeBootSoftTitleID ( pBootTitle->titleID );
LCFG_TSD_SetLastTimeBootSoftPlatform( (u8)SYSM_GetAppRomHeader()->platform_code );
(void)LCFG_WriteTWLSettings( (u8 (*)[ LCFG_WRITE_TEMP ] )pBuffer );
SYSM_Free( pBuffer );

View File

@ -568,7 +568,9 @@ MAIN_LOOP_START:
}
// カードアプリリストの取得(スレッドで随時カード挿抜を通知されるものをメインループで取得)
(void)SYSM_GetCardTitleList( s_titleList );
if( SYSM_GetCardTitleList( s_titleList ) ) {
OS_TPrintf( "Change CARD status.\n" );
}
// 無線ファームロードのポーリング
if( PollingInstallWlanFirmware() &&