diff --git a/source/firm.c b/source/firm.c index 5cbf2b1..63c1ecb 100755 --- a/source/firm.c +++ b/source/firm.c @@ -270,15 +270,17 @@ static inline u32 loadFirm(FirmwareType firmType) else { firmVersion = firmRead(firm, (u32)firmType); - - //We can't boot < 3.x NANDs (if firmware.bin is in the /luma folder, booting will fail) - if(firmVersion < 0x18) - error("An old unsupported NAND has been detected.\nLuma3DS is unable to boot it."); - - //We can't boot a 4.x NATIVE_FIRM, load one from SD - if(firmType == NATIVE_FIRM && !isN3DS && firmVersion < 0x25) - error("An old unsupported FIRM has been detected.\nCopy firmware.bin in /luma to boot"); + if(firmType == NATIVE_FIRM && !isN3DS) + { + //We can't boot a 4.x NATIVE_FIRM + if(firmVersion < 0x25) + error("An old unsupported FIRM has been detected.\nCopy firmware.bin in /luma to boot"); + + //We can't boot < 3.x NANDs (if firmware.bin is in the /luma folder, booting will fail) + else if(firmVersion < 0x18) + error("An old unsupported NAND has been detected.\nLuma3DS is unable to boot it."); + } decryptExeFs((u8 *)firm); } @@ -508,4 +510,4 @@ static inline void launchFirm(FirmwareType firmType) //Final jump to ARM9 kernel ((void (*)())firm->arm9Entry)(); -} \ No newline at end of file +}