TWLではレジューム後のゲームカード再ロードが可能であり、PM_GoSleepModeでNANDブート時にカード抜け検出を強制的に無効化

されていることもあるので、DS-IPLとは異なりスリープ時のカード抜けは検出しないようにしておく。

git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@1122 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
nakasima 2008-04-14 05:36:00 +00:00
parent 32d49702ad
commit 3009f2ac79

View File

@ -202,8 +202,19 @@ void SYSM_GoSleepMode( void )
// デバッガ起動時にはスリープに入らない
if ( ! SYSM_IsRunOnDebugger() || (OSi_DetectDebugger() & OS_CONSOLE_TWLDEBUGGER) )
{
// カード抜け無検出設定
// TWLではゲームカードの再ロードが可能なため
// スリープ時のカード抜け検出を無効化
// DS-IPLではゲームカードが起動できなくなるので
// レジューム時のROM-IDチェックでエラーになると
// シャットダウンしていた)
OSIntrMode enable = OS_DisableInterrupts();
reg_MI_MCCNT0 &= ~REG_MI_MCCNT0_I_MASK;
OS_ResetRequestIrqMask( OS_IE_CARD_IREQ );
OS_RestoreInterrupts( enable );
// スリープ遷移
PM_GoSleepMode( PM_TRIGGER_COVER_OPEN |
(u32)(SYSM_IsExistCard() ? PM_TRIGGER_CARD : 0) |
PM_TRIGGER_RTC_ALARM,
0,
0 );