Shutdown when waiting for button presses if the shell is closed, except when coming from a NTRboothax boot

This commit is contained in:
Aurora Wright 2017-12-18 20:56:32 +01:00
parent 20af9c6750
commit 6a0f332e3c

View File

@ -68,9 +68,11 @@ static u64 chrono(void)
u32 waitInput(bool isMenu) u32 waitInput(bool isMenu)
{ {
static u64 dPadDelay = 0ULL; static u64 dPadDelay = 0ULL;
static u32 shouldShellShutdown = 2;
u64 initialValue = 0ULL; u64 initialValue = 0ULL;
u32 key, u32 key,
oldKey = HID_PAD; oldKey = HID_PAD;
if(shouldShellShutdown == 2) shouldShellShutdown = (bootType == B9SNTR || bootType == NTR) ? 0 : 1;
if(isMenu) if(isMenu)
{ {
@ -85,7 +87,13 @@ u32 waitInput(bool isMenu)
if(!key) if(!key)
{ {
if((i2cReadRegister(I2C_DEV_MCU, 0x10) & 1)== 1) mcuPowerOff(); if((i2cReadRegister(I2C_DEV_MCU, 0x10) & 1) == 1) mcuPowerOff();
if(!(i2cReadRegister(I2C_DEV_MCU, 0xF) & 2))
{
if(shouldShellShutdown) mcuPowerOff();
}
else shouldShellShutdown = 1;
oldKey = 0; oldKey = 0;
dPadDelay = 0; dPadDelay = 0;
continue; continue;