diff --git a/build/libraries_sysmenu/boot/ARM9/src/bootAPI.c b/build/libraries_sysmenu/boot/ARM9/src/bootAPI.c index 3792573e..c1b337a6 100644 --- a/build/libraries_sysmenu/boot/ARM9/src/bootAPI.c +++ b/build/libraries_sysmenu/boot/ARM9/src/bootAPI.c @@ -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; diff --git a/build/libraries_sysmenu/sysmenu/ARM9/src/title.c b/build/libraries_sysmenu/sysmenu/ARM9/src/title.c index c7df8089..1c99c4bc 100644 --- a/build/libraries_sysmenu/sysmenu/ARM9/src/title.c +++ b/build/libraries_sysmenu/sysmenu/ARM9/src/title.c @@ -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(); diff --git a/include/sysmenu/sysmenu_lib/common/sysmenu_work.h b/include/sysmenu/sysmenu_lib/common/sysmenu_work.h index 10933309..1e9989f4 100644 --- a/include/sysmenu/sysmenu_lib/common/sysmenu_work.h +++ b/include/sysmenu/sysmenu_lib/common/sysmenu_work.h @@ -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;