From 7f96e47b4f647a9caa403a732ad6e58194c3ea61 Mon Sep 17 00:00:00 2001 From: Aurora Date: Thu, 24 Mar 2016 02:24:23 +0100 Subject: [PATCH] Updated sysNAND (A9LH) & SAFE_MODE FIRM update = brick --- source/firm.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/source/firm.c b/source/firm.c index de2619f..8c5a578 100755 --- a/source/firm.c +++ b/source/firm.c @@ -77,8 +77,8 @@ void setupCFW(void){ if(needConfig){ //If L and R are pressed, chainload an external payload - if((pressed & BUTTON_L1) && (pressed & PAYLOAD_BUTTONS) && pressed != SAFE_MODE) - loadPayload(); + if((pressed & BUTTON_L1) && (pressed & PAYLOAD_BUTTONS) && + !(!updatedSys && pressed == SAFE_MODE)) loadPayload(); //If no configuration file exists or SELECT is held, load configuration menu if(needConfig == 2 || (pressed & BUTTON_SELECT)) @@ -87,13 +87,12 @@ void setupCFW(void){ //If screens are inited, load splash screen if(PDN_GPU_CNT != 0x1) loadSplash(); - /* If L is pressed, and on an updated sysNAND setup the Safe Mode combo - is not pressed, boot 9.0 FIRM */ - if((pressed & BUTTON_L1) && !(updatedSys && pressed == SAFE_MODE)) mode = 0; + /* If L is pressed, boot 9.0 FIRM */ + if(pressed & BUTTON_L1) mode = 0; /* If L or R aren't pressed on a 9.0/9.2 sysNAND, or the 9.0 FIRM is selected or R is pressed on a > 9.2 sysNAND, boot emuNAND */ - if((updatedSys && (!mode || ((pressed & BUTTON_R1) && pressed != SAFE_MODE))) || + if((updatedSys && (!mode || (pressed & BUTTON_R1))) || (!updatedSys && mode && !(pressed & BUTTON_R1))){ //If not 9.0 FIRM and B is pressed, attempt booting the second emuNAND if(mode && (pressed & BUTTON_B)) emuNAND = 2;