mirror of
https://github.com/rvtr/TwlIPL.git
synced 2025-10-31 06:01:12 -04:00
スリープ時の無線停止処理(スリープ成功率0%だったのが30%程度までしか向上できていない)。
git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlIPL/trunk@1861 b08762b0-b915-fc4b-9d8c-17b2551a87ff
This commit is contained in:
parent
b01ff7f8a1
commit
b5016ec79c
@ -95,6 +95,12 @@ BOOL UTL_IsValidCalibration( u16 x, u16 y, u16 correct_x, u16 correct_y )
|
|||||||
//======================================================================
|
//======================================================================
|
||||||
// スリープ
|
// スリープ
|
||||||
//======================================================================
|
//======================================================================
|
||||||
|
static volatile BOOL isWmEnd = FALSE;
|
||||||
|
|
||||||
|
static void UTLi_WmCallback( void* )
|
||||||
|
{
|
||||||
|
isWmEnd = TRUE;
|
||||||
|
}
|
||||||
|
|
||||||
// スリープモードへの遷移
|
// スリープモードへの遷移
|
||||||
void UTL_GoSleepMode( void )
|
void UTL_GoSleepMode( void )
|
||||||
@ -108,21 +114,37 @@ void UTL_GoSleepMode( void )
|
|||||||
// デバッガ接続中だけはスリープに入らない(蓋閉じでもデバッガが起動するように)
|
// デバッガ接続中だけはスリープに入らない(蓋閉じでもデバッガが起動するように)
|
||||||
if ( !SYSM_IsRunOnDebugger() || (OSi_DetectDebugger() & OS_CONSOLE_TWLDEBUGGER) )
|
if ( !SYSM_IsRunOnDebugger() || (OSi_DetectDebugger() & OS_CONSOLE_TWLDEBUGGER) )
|
||||||
{
|
{
|
||||||
|
// –³<E28093>ü’âŽ~
|
||||||
|
isWmEnd = FALSE;
|
||||||
|
WM_Reset( UTLi_WmCallback );
|
||||||
|
while (isWmEnd == FALSE)
|
||||||
|
{
|
||||||
|
OS_Sleep(1);
|
||||||
|
}
|
||||||
|
isWmEnd = FALSE;
|
||||||
|
WM_End( UTLi_WmCallback );
|
||||||
|
while (isWmEnd == FALSE)
|
||||||
|
{
|
||||||
|
OS_Sleep(1);
|
||||||
|
}
|
||||||
|
|
||||||
// カード抜け無検出設定
|
// カード抜け無検出設定
|
||||||
// TWLではゲームカードの再ロードが可能なため
|
// TWLではゲームカードの再ロードが可能なため
|
||||||
// スリープ時のカード抜け検出を無効化
|
// スリープ時のカード抜け検出を無効化
|
||||||
// (DS-IPLではゲームカードが起動できなくなるので
|
// (DS-IPLではゲームカードが起動できなくなるので
|
||||||
// レジューム時のROM-IDチェックでエラーになると
|
// レジューム時のROM-IDチェックでエラーになると
|
||||||
// シャットダウンしていた)
|
// シャットダウンしていた)
|
||||||
OSIntrMode enable = OS_DisableInterrupts();
|
{
|
||||||
reg_MI_MCCNT0 &= ~REG_MI_MCCNT0_I_MASK;
|
OSIntrMode enable = OS_DisableInterrupts();
|
||||||
OS_ResetRequestIrqMask( OS_IE_CARD_IREQ );
|
reg_MI_MCCNT0 &= ~REG_MI_MCCNT0_I_MASK;
|
||||||
OS_RestoreInterrupts( enable );
|
OS_ResetRequestIrqMask( OS_IE_CARD_IREQ );
|
||||||
|
OS_RestoreInterrupts( enable );
|
||||||
|
|
||||||
// スリープ遷移
|
// ƒXƒŠ<C692>[ƒv‘JˆÚ
|
||||||
PM_GoSleepMode( PM_TRIGGER_COVER_OPEN,
|
PM_GoSleepMode( PM_TRIGGER_COVER_OPEN,
|
||||||
0,
|
0,
|
||||||
0 );
|
0 );
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user