This commit is contained in:
Martino Fontana 2025-08-10 23:26:24 +02:00 committed by GitHub
commit 63a4adfe2e
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
28 changed files with 293 additions and 9 deletions

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,12 @@
# GAHEGG - Alien Hominid
[OnFrame]
$Limit internal frame rate (speed hack)
0x80031130:dword:0x60000000
0x8003113C:dword:0x60000000
[OnFrame_Enabled]
$Limit internal frame rate (speed hack)
[Patches_RetroAchievements_Verified]
$Limit internal frame rate (speed hack)

View file

@ -2,12 +2,12 @@
[OnFrame]
# This game does not support Progressive Scan or Dolphin's
# "Force Progressive" hack. However this patch can be used
# "Force Progressive" hack. However this patch can be used
# to substitute field rendering with full frame rendering.
$Force Progressive Scan
0x80033062:word:0x000001C0
0x800330A0:dword:0x60000000
0x806D0660:dword:0x801640A4
0x806D0660:dword:0x801670A4
[OnFrame_Enabled]
$Force Progressive Scan

View file

@ -1,4 +1,4 @@
# GHKD7D, GHKE7D, GHKF7D, GHKP7D, GHKS7D - The Hulk
# GHKD7D, GHKE7D, GHKF7D, GHKP7D, GHKS7D - Hulk
[Core]
# Values set here will override the main Dolphin settings.

View file

@ -0,0 +1,11 @@
# GHKD7D - Hulk
[OnFrame]
$Limit internal frame rate (speed hack, also fixes audio and gameplay bugs)
0x801E8C94:dword:0x60000000
[OnFrame_Enabled]
$Limit internal frame rate (speed hack, also fixes audio and gameplay bugs)
[Patches_RetroAchievements_Verified]
$Limit internal frame rate (speed hack, also fixes audio and gameplay bugs)

View file

@ -0,0 +1,11 @@
# GHKE7D - Hulk
[OnFrame]
$Limit internal frame rate (speed hack, also fixes audio and gameplay bugs)
0x801E7B80:dword:0x60000000
[OnFrame_Enabled]
$Limit internal frame rate (speed hack, also fixes audio and gameplay bugs)
[Patches_RetroAchievements_Verified]
$Limit internal frame rate (speed hack, also fixes audio and gameplay bugs)

View file

@ -0,0 +1,11 @@
# GHKF7D - Hulk
[OnFrame]
$Limit internal frame rate (speed hack, also fixes audio and gameplay bugs)
0x801E8B14:dword:0x60000000
[OnFrame_Enabled]
$Limit internal frame rate (speed hack, also fixes audio and gameplay bugs)
[Patches_RetroAchievements_Verified]
$Limit internal frame rate (speed hack, also fixes audio and gameplay bugs)

View file

@ -0,0 +1,11 @@
# GHKP7D - Hulk
[OnFrame]
$Limit internal frame rate (speed hack, also fixes audio and gameplay bugs)
0x801E8C94:dword:0x60000000
[OnFrame_Enabled]
$Limit internal frame rate (speed hack, also fixes audio and gameplay bugs)
[Patches_RetroAchievements_Verified]
$Limit internal frame rate (speed hack, also fixes audio and gameplay bugs)

View file

@ -0,0 +1,11 @@
# GHKS7D - Hulk
[OnFrame]
$Limit internal frame rate (speed hack, also fixes audio and gameplay bugs)
0x801E8B14:dword:0x60000000
[OnFrame_Enabled]
$Limit internal frame rate (speed hack, also fixes audio and gameplay bugs)
[Patches_RetroAchievements_Verified]
$Limit internal frame rate (speed hack, also fixes audio and gameplay bugs)

View file

@ -1,4 +1,4 @@
# GHQE7D, GHQP7D - The Simpsons Hit & Run
# GHQE7D, GHQP7D - The Simpsons: Hit & Run
[Core]
# Values set here will override the main Dolphin settings.
@ -13,4 +13,3 @@
[Video_Hacks]
ImmediateXFBEnable = False

View file

@ -1,7 +1,15 @@
# GHQE7D - The Simpsons: Hit & Run
[OnFrame]
$Limit internal frame rate during startup (speed hack)
0x80276E14:dword:0x60000000
0x80276E20:dword:0x60000000
[OnFrame_Enabled]
$Limit internal frame rate during startup (speed hack)
[Gecko]
$16:9 Widescreen
$16:9 Widescreen
04004600 C002A604
04004604 C09F0014
04004608 FC002040
@ -15,5 +23,8 @@ $16:9 Widescreen
044786B0 3FAAAAAB
04479F28 3FA33333
[Patches_RetroAchievements_Verified]
$Limit internal frame rate during startup (speed hack)
[Gecko_RetroAchievements_Verified]
$16:9 Widescreen

View file

@ -1,5 +1,10 @@
# GHQP7D - The Simpsons: Hit & Run
[OnFrame]
$Limit internal frame rate during startup (speed hack)
0x80277034:dword:0x60000000
0x80277040:dword:0x60000000
[Gecko]
$16:9 Widescreen
04004600 C002A604
@ -21,6 +26,9 @@ $60Hz
04276CD0 38000014
04276F64 48000008
[Patches_RetroAchievements_Verified]
$Limit internal frame rate during startup (speed hack)
[Gecko_RetroAchievements_Verified]
$16:9 Widescreen
$60Hz

View file

@ -0,0 +1,12 @@
# GMNE78 - Monsters, Inc. Scream Arena
[OnFrame]
# After `GXDrawDone`, `nop` a branch that skips a call to `VIWaitForRetrace`.
$Limit internal FPS to VPS (improves performance)
0x80149C38:dword:0x60000000
[OnFrame_Enabled]
$Limit internal FPS to VPS (improves performance)
[Patches_RetroAchievements_Verified]
$Limit internal FPS to VPS (improves performance)

View file

@ -0,0 +1,12 @@
# GMNP78 - Monsters, Inc. Scream Arena
[OnFrame]
# After `GXDrawDone`, `nop` a branch that skips a call to `VIWaitForRetrace`.
$Limit internal FPS to VPS (improves performance)
0x8014CF88:dword:0x60000000
[OnFrame_Enabled]
$Limit internal FPS to VPS (improves performance)
[Patches_RetroAchievements_Verified]
$Limit internal FPS to VPS (improves performance)

View file

@ -0,0 +1,12 @@
# GTRE78 - Tetris Worlds
[OnFrame]
# After `GXDrawDone`, `nop` a branch that skips a call to `VIWaitForRetrace`.
$Limit internal FPS to VPS (improves performance)
0x80101A80:dword:0x60000000
[OnFrame_Enabled]
$Limit internal FPS to VPS (improves performance)
[Patches_RetroAchievements_Verified]
$Limit internal FPS to VPS (improves performance)

View file

@ -0,0 +1,12 @@
# GTRE78 - Tetris Worlds
[OnFrame]
# After `GXDrawDone`, `nop` a branch that skips a call to `VIWaitForRetrace`.
$Limit internal FPS to VPS (improves performance)
0x80101B08:dword:0x60000000
[OnFrame_Enabled]
$Limit internal FPS to VPS (improves performance)
[Patches_RetroAchievements_Verified]
$Limit internal FPS to VPS (improves performance)

View file

@ -0,0 +1,12 @@
# GTRJ8N - Tetris Worlds
[OnFrame]
# After `GXDrawDone`, `nop` a branch that skips a call to `VIWaitForRetrace`.
$Limit internal FPS to VPS (improves performance)
0x8010F210:dword:0x60000000
[OnFrame_Enabled]
$Limit internal FPS to VPS (improves performance)
[Patches_RetroAchievements_Verified]
$Limit internal FPS to VPS (improves performance)

View file

@ -0,0 +1,12 @@
# GTRP78 - Tetris Worlds
[OnFrame]
# After `GXDrawDone`, `nop` a branch that skips a call to `VIWaitForRetrace`.
$Limit internal FPS to VPS (improves performance)
0x80101390:dword:0x60000000
[OnFrame_Enabled]
$Limit internal FPS to VPS (improves performance)
[Patches_RetroAchievements_Verified]
$Limit internal FPS to VPS (improves performance)

View file

@ -0,0 +1,16 @@
# R7XE69 - Need for Speed: Nitro
[OnFrame]
# Changes an idle loop that Dolphin is unable to detect, to one that it can detect.
#
# The loop waits for a vblank interrupt, spamming `OSYieldThread` in the meantime.
# The patch replaces the call to `VIWaitForRetrace`, which still executes the other threads,
# but sleeps instead of spinlocking when there is no thread to execute.
$Speed hack
0x802B2908:dword:0x4826F5C9
[OnFrame_Enabled]
$Speed hack
[Patches_RetroAchievements_Verified]
$Speed hack

View file

@ -0,0 +1,16 @@
# R7XJ13 - Need for Speed: Nitro
[OnFrame]
# Changes an idle loop that Dolphin is unable to detect, to one that it can detect.
#
# The loop waits for a vblank interrupt, spamming `OSYieldThread` in the meantime.
# The patch replaces the call to `VIWaitForRetrace`, which still executes the other threads,
# but sleeps instead of spinlocking when there is no thread to execute.
$Speed hack
0x802B3118:dword:0x4826F5B9
[OnFrame_Enabled]
$Speed hack
[Patches_RetroAchievements_Verified]
$Speed hack

View file

@ -0,0 +1,16 @@
# R7XP69 - Need for Speed: Nitro
[OnFrame]
# Changes an idle loop that Dolphin is unable to detect, to one that it can detect.
#
# The loop waits for a vblank interrupt, spamming `OSYieldThread` in the meantime.
# The patch replaces the call to `VIWaitForRetrace`, which still executes the other threads,
# but sleeps instead of spinlocking when there is no thread to execute.
$Speed hack
0x802B2908:dword:0x4826F5C9
[OnFrame_Enabled]
$Speed hack
[Patches_RetroAchievements_Verified]
$Speed hack

View file

@ -0,0 +1,11 @@
# RB7E54 - Bully: Scholarship Edition
[OnFrame]
$Limit internal frame rate in loading screens (fix hangs)
0x8039C7B8:dword:0x60000000
[OnFrame_Enabled]
$Limit internal frame rate in loading screens (fix hangs)
[Patches_RetroAchievements_Verified]
$Limit internal frame rate in loading screens (fix hangs)

View file

@ -0,0 +1,11 @@
# RB7P54 - Bully: Scholarship Edition
[OnFrame]
$Limit internal frame rate in loading screens (fix hangs)
0x8039C7f8:dword:0x60000000
[OnFrame_Enabled]
$Limit internal frame rate in loading screens (fix hangs)
[Patches_RetroAchievements_Verified]
$Limit internal frame rate in loading screens (fix hangs)

View file

@ -0,0 +1,15 @@
# RRBE41 - Rayman Raving Rabbids
[OnFrame]
# The game's idle loop is composed of two parts that alternate by branching to each other.
# The first part checks how much time has passed (through a function): if it's too much, it aborts the frame. This apparently never happens.
# The second part is a traditional "wait for the VIPostCallback interrupt to change a value".
# The patch changes a branch so that only the second part is executed, so that Dolphin can properly detect the idle loop.
$Idle loop speed hack
0x803564B0:dword:0x4082FFF8
[OnFrame_Enabled]
$Idle loop speed hack
[Patches_RetroAchievements_Verified]
$Idle loop speed hack

View file

@ -0,0 +1,15 @@
# RRBJ41 - Rayman Raving Rabbids
[OnFrame]
# The game's idle loop is composed of two parts that alternate by branching to each other.
# The first part checks how much time has passed (through a function): if it's too much, it aborts the frame. This apparently never happens.
# The second part is a traditional "wait for the VIPostCallback interrupt to change a value".
# The patch changes a branch so that only the second part is executed, so that Dolphin can properly detect the idle loop.
$Idle loop speed hack
0x803562AC:dword:0x4082FFF8
[OnFrame_Enabled]
$Idle loop speed hack
[Patches_RetroAchievements_Verified]
$Idle loop speed hack

View file

@ -0,0 +1,15 @@
# RRBP41 - Rayman Raving Rabbids
[OnFrame]
# The game's idle loop is composed of two parts that alternate by branching to each other.
# The first part checks how much time has passed (through a function): if it's too much, it aborts the frame. This apparently never happens.
# The second part is a traditional "wait for the VIPostCallback interrupt to change a value".
# The patch changes a branch so that only the second part is executed, so that Dolphin can properly detect the idle loop.
$Idle loop speed hack
0x803567A0:dword:0x4082FFF8
[OnFrame_Enabled]
$Idle loop speed hack
[Patches_RetroAchievements_Verified]
$Idle loop speed hack

View file

@ -0,0 +1,12 @@
# SC2E8P, SC2P8P - Conduit 2
[OnFrame]
$Limit internal frame rate (speed hack)
0x8003A910:dword:0x60000000
0x8003A904:dword:0x60000000
[OnFrame_Enabled]
$Limit internal frame rate (speed hack)
[Patches_RetroAchievements_Verified]
$Limit internal frame rate (speed hack)

View file

@ -89,8 +89,8 @@ public:
static constexpr std::string_view BLUE = "#0B71C1";
static constexpr std::string_view APPROVED_LIST_FILENAME = "ApprovedInis.json";
static const inline Common::SHA1::Digest APPROVED_LIST_HASH = {
0x29, 0x4C, 0xBD, 0x08, 0xF0, 0x5F, 0x47, 0x94, 0xC9, 0xB8,
0x05, 0x2E, 0x5C, 0xD6, 0x14, 0x48, 0xFA, 0x07, 0xE8, 0x53};
0x94, 0xFA, 0x1C, 0xF8, 0x93, 0x64, 0x1D, 0x8C, 0xAD, 0xF1,
0x53, 0xBC, 0x79, 0xC2, 0xBF, 0xCE, 0x39, 0xEE, 0x4E, 0xA3};
struct LeaderboardEntry
{