Remove the anti-DG check on 11.0 firmware (and future ones)
This commit is contained in:
parent
a3ae38520c
commit
7ea2a0a278
@ -290,6 +290,9 @@ static inline void patchNativeFirm(u32 nandType, u32 emuHeader, u32 a9lhMode)
|
||||
//Apply signature patches
|
||||
patchSignatureChecks(process9Offset, process9Size);
|
||||
|
||||
//Apply anti-anti-DG patches for >= 11.0 firmwares
|
||||
if(nativeFirmType == 1) patchTitleInstallMinVersionCheck(process9Offset, process9Size);
|
||||
|
||||
//Apply emuNAND patches
|
||||
if(nandType)
|
||||
{
|
||||
|
@ -34,6 +34,15 @@ void patchSignatureChecks(u8 *pos, u32 size)
|
||||
off2[1] = sigPatch[1];
|
||||
}
|
||||
|
||||
void patchTitleInstallMinVersionCheck(u8 *pos, u32 size)
|
||||
{
|
||||
const u8 pattern[] = {0x89, 0x0A, 0x81, 0x42, 0x02, 0xD2};
|
||||
|
||||
u8 *off = memsearch(pos, pattern, size, 6);
|
||||
|
||||
if(off != NULL) off[5] = 0xE0;
|
||||
}
|
||||
|
||||
void patchFirmlaunches(u8 *pos, u32 size, u32 process9MemAddr)
|
||||
{
|
||||
//Look for FIRM reboot code
|
||||
|
@ -17,6 +17,7 @@ typedef struct patchData {
|
||||
|
||||
u8 *getProcess9(u8 *pos, u32 size, u32 *process9Size, u32 *process9MemAddr);
|
||||
void patchSignatureChecks(u8 *pos, u32 size);
|
||||
void patchTitleInstallMinVersionCheck(u8 *pos, u32 size);
|
||||
void patchFirmlaunches(u8 *pos, u32 size, u32 process9MemAddr);
|
||||
void patchFirmWrites(u8 *pos, u32 size);
|
||||
void patchFirmWriteSafe(u8 *pos, u32 size);
|
||||
|
Reference in New Issue
Block a user