diff --git a/arm9/source/patches/arm9/OSResetSystemPatch.cpp b/arm9/source/patches/arm9/OSResetSystemPatch.cpp index 7912705..c67f603 100644 --- a/arm9/source/patches/arm9/OSResetSystemPatch.cpp +++ b/arm9/source/patches/arm9/OSResetSystemPatch.cpp @@ -7,6 +7,7 @@ static const u32 sOSResetSystemPatternSdk2Old[] = { 0xE59F101Cu, 0xE3A00010u, 0xE5815000u, 0xEB000005u }; static const u32 sOSResetSystemPatternSdk2[] = { 0xE59F1018u, 0xE3A00010u, 0xE5814000u, 0xEB000004u }; +static const u32 sOSResetSystemPatternSdk2New[] = { 0xE59F1014u, 0xE3A00010u, 0xE5814000u, 0xEB000003u }; static const u32 sOSResetSystemPatternSdk3[] = { 0xE59F1014u, 0xE3A00010u, 0xE5814000u, 0xEBFFFFD9u }; static const u32 sOSResetSystemPatternSdk4[] = { 0xE59F103Cu, 0xE59F003Cu, 0xE5814000u, 0xEBFFFFD6u }; static const u32 sOSResetSystemPatternPokemonDownloader[] = { 0xE59F1010u, 0xE3A00010u, 0xE5814000u, 0xEBFFFFDEu }; @@ -47,6 +48,10 @@ bool OSResetSystemPatch::FindPatchTarget(PatchContext& patchContext) { _osResetSystem = patchContext.FindPattern32(sOSResetSystemPatternSdk3, sizeof(sOSResetSystemPatternSdk3)); } + if (!_osResetSystem && patchContext.GetSdkVersion() >= 0x2017532) + { + _osResetSystem = patchContext.FindPattern32(sOSResetSystemPatternSdk2New, sizeof(sOSResetSystemPatternSdk2New)); + } if (!_osResetSystem && patchContext.GetSdkVersion() >= 0x2004F50) { _osResetSystem = patchContext.FindPattern32(sOSResetSystemPatternSdk2, sizeof(sOSResetSystemPatternSdk2));