Repository navigation
Simple GameShark ROM patch code does not work #2724
Description
Activity
Hmm... that GameShark code doesn't look right to me. For making a GameShark ROM Patch code, take the address and logical shift-right by 1 (0x0806E2A8 >>> 1 = 0x04037154), and then add 0x60000000.
Knowing this, I figure the code before encryption would be64037154 00002001and final code after encrypting959DBC75 8499CE5FWhat gamehacking.org converter spat out in the first part was 0x600DC550, so that site may be mistakenly performing a shift-left instead (0x6E2A8 << 1 = 0xDC550).
Try retesting mGBA with the new code to confirm whether or not any problems occur.
@camthesaxman Please try with the changes mentioned; the gamehacking.org converter does appear to be broken after all.
Use
60037154 00002001though, since the patch code shouldn't include the base address of the ROM, and is in fact filtered out.- addedblocked:needs retestNeeds a retest to confirm if it's fixedNeeds a retest to confirm if it's fixed
on Dec 22, 2022 Strangely enough, that code does not work on its own, but does work if it's encrypted first (
D3C95F54 156F2ECCaccording to AR Crypt).- added a commit that references this issue
on Dec 23, 2022 - added a commit that references this issue
on Sep 15, 2023 - added a commit that references this issue
on Jan 28, 2024 - added a commit that references this issue
on Sep 9, 2026
I am trying to create a cheat to always enable the National Dex on Pokemon Fire Red by patching the
mov r0, #0(0x2000) instruction at 0x0806E2A8 tomov r0, #1. Using this site https://gamehacking.org/system/gba I generated the code600DC550 00002001to accomplish this. Entering it into mGBA's cheats has no affect, and the instruction is not patched. However, by manually patching said instruction using the memory viewer, the National Dex does get enabled.Steps to reproduce:
600DC550 00002001, select GameShark for the code type, and click Add New Code. The code should be enabled (checked), and you may give it a name if you wish.Expected result:
The 16-bit value at address 0x0806E2A8 should be patched to 0x2001 and the National Pokedex should be unlocked (green bars and both "NUMERICAL MODE: KANTO" and "NUMERICAL MODE: NATIONAL" options).
Actual result:
The cheat has no effect, and only the Kanto Pokedex is unlocked (brown bars and only has the NUMERICAL MODE option under Pokemon List). As mentioned above, changing the byte at 0x0806E2A8 to 01 using the memory viewer does allow the National Pokedex to appear, but the cheat does nothing.