Implement "friends" and "ErrDisp" patches
This commit is contained in:
parent
5a0f2e4dfc
commit
6351e5b8c3
@ -180,6 +180,53 @@ void patchCode(u64 progId, u8 *code, u32 size)
|
||||
break;
|
||||
}
|
||||
|
||||
case 0x0004013000003202LL: // FRIENDS
|
||||
{
|
||||
static const u8 fpdverPattern[] = {
|
||||
0xE0, 0x1E, 0xFF, 0x2F, 0xE1, 0x01, 0x01, 0x01, 0x01
|
||||
};
|
||||
|
||||
u8 *fdpver = memsearch(code, fpdverPattern, size, sizeof(fpdverPattern));
|
||||
|
||||
if(fdpver == NULL) break;
|
||||
else fdpver += sizeof(fpdverPattern);
|
||||
|
||||
if(*fdpver < 5) *fdpver = 5;
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
case 0x0004003000008A02LL: // ErrDisp
|
||||
{
|
||||
static const u8 unitinfoCheckPattern1[] = {
|
||||
0x14, 0x00, 0xD0, 0xE5, 0xDB, 0x9A, 0x9F, 0xED
|
||||
};
|
||||
|
||||
static const u8 unitinfoCheckPattern2[] = {
|
||||
0x14, 0x00, 0xD0, 0xE5, 0x01, 0x00, 0x10, 0xE3
|
||||
} ;
|
||||
|
||||
static const u8 unitinfoCheckPatch[] = {
|
||||
0x00, 0x00, 0xA0, 0xE3
|
||||
} ;
|
||||
|
||||
patchMemory(code, size,
|
||||
unitinfoCheckPattern1,
|
||||
sizeof(unitinfoCheckPattern1), 0,
|
||||
unitinfoCheckPatch,
|
||||
sizeof(unitinfoCheckPatch), 1
|
||||
);
|
||||
|
||||
patchMemory(code, size,
|
||||
unitinfoCheckPattern2,
|
||||
sizeof(unitinfoCheckPattern2), 0,
|
||||
unitinfoCheckPatch,
|
||||
sizeof(unitinfoCheckPatch), 3
|
||||
);
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
case 0x0004001000021000LL: // USA MSET
|
||||
case 0x0004001000020000LL: // JPN MSET
|
||||
case 0x0004001000022000LL: // EUR MSET
|
||||
|
Reference in New Issue
Block a user