ブートタイプの変更をSDKのFinalize処理完了後まで遅延。

git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@1629 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
nakasima 2008-06-13 13:20:18 +00:00
parent 0449a0cc04
commit 2354252c2b
3 changed files with 8 additions and 4 deletions

View File

@ -123,7 +123,10 @@ static void BOOTi_RebootCallback( void** entryp, void* mem_list_v, REBOOTTarget*
OS_WaitIrq( 1, OS_IE_SUBP );
OS_TPrintf( "INTR SUBP passed!!\n" );
// SDKのFinalize処理完了後にブート種別をアプリのものへ変更
( (OSBootInfo *)OS_GetBootInfo() )->boot_type = SYSMi_GetWork()->appBootType;
// 割り込みをクリアして最終ブートシーケンスへ。
reg_PXI_SUBPINTF &= 0x0f00; // サブプロセッサ割り込み許可フラグをクリア
(void)OS_DisableIrq();
@ -209,7 +212,7 @@ static void BOOTi_RebootCallback( void** entryp, void* mem_list_v, REBOOTTarget*
// デバッガによるROMエミュレーション時はNTR-ROMヘッダバッファの
// ゲームコマンドパラメータをスクランブルOFF設定に書き換える
if ( OS_GetBootType() == OS_BOOTTYPE_ROM )
if ( SYSMi_GetWork()->appBootType == OS_BOOTTYPE_ROM )
{
// ブート対象のROMヘッダはカードブート時のみ
dh->s.game_cmd_param = SYSMi_GetWork()->gameCommondParam;

View File

@ -1707,8 +1707,8 @@ AuthResult SYSM_TryToBootTitle( TitleProperty *pBootTitle )
SYSMi_GetWork2()->bootTitleProperty = *pBootTitle;
SYSMi_SetBootSRLPathToWork2( pBootTitle );
// HW_WM_BOOT_BUFへのブート情報セット
( (OSBootInfo *)OS_GetBootInfo() )->boot_type = s_launcherToOSBootType[ pBootTitle->flags.bootType ];
// ブート種別仮セット
SYSMi_GetWork()->appBootType = s_launcherToOSBootType[ pBootTitle->flags.bootType ];
// タイトルIDリストの作成
SYSMi_makeTitleIdList();

View File

@ -137,6 +137,7 @@ typedef struct SYSM_work {
OSLockWord lockCardRsc ATTRIBUTE_ALIGN(8); // カードリソース排他制御用
OSLockWord lockHotSW; // カードリソース排他制御用
u32 appCardID; // カードID
OSBootType appBootType; // ブート種別
u32 gameCommondParam; // NTRのゲームコマンドパラメータ(NTRのROMヘッダのゲームコマンドパラメータに上書きする)
u8 cloneBootMode;