diff --git a/Core/HLE/ReplaceTables.cpp b/Core/HLE/ReplaceTables.cpp index d8a1633a2f..facdb57f27 100644 --- a/Core/HLE/ReplaceTables.cpp +++ b/Core/HLE/ReplaceTables.cpp @@ -1052,6 +1052,15 @@ static int Hook_atvoffroadfurypro_download_frame() { return 0; } +static int Hook_atvoffroadfuryblazintrails_download_frame() { + const u32 fb_address = currentMIPS->r[MIPS_REG_A1]; + if (Memory::IsVRAMAddress(fb_address)) { + gpu->PerformMemoryDownload(fb_address, 0x00088000); + CBreakPoints::ExecMemCheck(fb_address, true, 0x00088000, currentMIPS->pc); +} + return 0; +} + #ifdef ARM #define JITFUNC(f) (&MIPSComp::ArmJit::f) #elif defined(ARM64) @@ -1150,6 +1159,7 @@ static const ReplacementTableEntry entries[] = { { "tonyhawkp8_upload_tutorial_frame", &Hook_tonyhawkp8_upload_tutorial_frame, 0, REPFLAG_HOOKENTER, }, { "sdgundamggenerationportable_download_frame", &Hook_sdgundamggenerationportable_download_frame, 0, REPFLAG_HOOKENTER, 0x34 }, { "atvoffroadfurypro_download_frame", &Hook_atvoffroadfurypro_download_frame, 0, REPFLAG_HOOKENTER, }, + { "atvoffroadfuryblazintrails_download_frame", &Hook_atvoffroadfuryblazintrails_download_frame, 0, REPFLAG_HOOKENTER, }, {} }; diff --git a/Core/MIPS/MIPSAnalyst.cpp b/Core/MIPS/MIPSAnalyst.cpp index efbb41ee63..e894021fc1 100644 --- a/Core/MIPS/MIPSAnalyst.cpp +++ b/Core/MIPS/MIPSAnalyst.cpp @@ -227,6 +227,7 @@ static const HardHashTableEntry hardcodedHashes[] = { { 0x5642a63f3802a792, 456, "orenoimouto_download_frame", }, // Ore no Imouto ga Konnani Kawaii Wake ga Nai { 0x56c9929e8c8c5768, 24, "fabsf", }, { 0x572b2d9e57e6e363, 788, "memcpy_thingy", }, + { 0x573b69fc56d689a7, 216, "atvoffroadfuryblazintrails_download_frame", }, // ATV Offroad Fury Blazin' Trails (US) { 0x580200b840b47c58, 1856, "_realloc_r", }, { 0x5961f681bbd69035, 28, "vfad_q", }, { 0x598b91c64cf7e036, 2388, "qsort", },