Under the microscope: Strike Force Hydra (Game Boy Advance, PlayStation)
They can't all be Ikaruga
Strike Force Hydra, the vertical shoot-em-up from Ignition Entertainment, was released in 2003. This was well after most coverage of video games was on the Internet, but there’s surprisingly little information about it online. The most authoritative review of it that I could find is this scathing takedown of the Game Boy Advance version from the Hungarian magazine 576 Konzol. Their critic gave it a single point out of 10, writing:
This is no Ikaruga. It is a hideously ugly, low-effort game—arguably the weakest I’ve seen in a long time, and I say this as a massive fan who has churned through quite a few shmups.
(English translation via Google)
Did I pick it up to judge it? No – I picked it up to see whether it has any hidden secrets. And it does! Both the Game Boy Advance version and the PlayStation version have some handy cheat codes that seem to have gone unnoticed until now.
Below are details on these new cheat codes and the reverse engineering involved in finding them.
The GBA version
GameHacking.org is often a good place to start when looking for cheat codes. That site lists this "infinite health" Action Replay code for Strike Force Hydra, along with the memory address that it alters:

I followed this excellent GBA hacking tutorial to load the Strike Force Hydra game data into Ghidra. Then I used Ghidra’s reference checker to see what functions access the memory address that stores health.
One reference stood out in the function at 08002530. That function sets the health address’s value to 10 if seven conditions are met. The logic looks like this pseudo-Python:
if (
(DAT_03000d5a == 0x0020) and
(DAT_03000d5e == 0x0040) and
(DAT_03000d62 == 0x0080) and
(DAT_03000d66 == 0x0010) and
(DAT_03000d6a == 0x0200) and
(DAT_03000d6e == 0x0100) and
(DAT_03000d72 == 0x0001)
):
health = 10The seven condition checks are for 16-bit values in the range 03000d5a through 03000d72. Inspecting this memory region with the mGBA emulator reveals that these are part of a "button history" buffer that works like this:
When the game is paused, information about the buttons you press get stored for a few seconds.
When you press a button, a value gets written to address
03000d72.The values associated with previous button presses each get pushed back 4 bytes.
By pressing all of the GBA buttons and writing down which values get written into the buffer, I was able to decode the "restore health” cheat sequence: 0x0020 is Left, 0x0040 is Up, 0x0080 is Down, 0x0010 is Right, 0x0200 is L, 0x0100 is R, and 0x0001 is A.
Pressing those buttons quickly enough at the pause screen makes the health gauge refill and causes a sound effect to play.
The same function checks for four other cheat codes! Here is the full list:
Restore health: Left, Up, Down, Right, L, R, A
Skip to the next zone: B, A, Down, Up, A, Left, A, Select, Select
Upgrade rockets: B, A, Down, B, Select, Select
Invincibility: Left, A, R, Down, B, Select, Select
Show the ending: L, R, Up, Down, B, A, Left, Up, B
All of these are entered at the pause screen.
The PlayStation version
A PlayStation version of Strike Force Hydra was published in PAL regions. I loaded a memory snapshot from the Mednafen debugger into Ghidra to see if it has the same cheats as the GBA version.
The function at 800209ec, which has the main game loop, includes some logic like this:
if DAT_8003e4bc == 0x4007:
DAT_8003e3a2 = 10What are 8003e4bc and 8003e3a2? They former changes in response to controller button presses. The latter changes when you take damage. With that information, we can rewrite the logic as:
if held_button == (BUTTON_L1 | BUTTON_L2 | BUTTON_R2 | BUTTON_DOWN):
health = 10The 0x4007 check from above is the logical OR of the patterns for L1 (0x0004), L2 (0x0001), R2 (0x0002), and Down (0x4000).
So there are cheats in the PlayStation version! The same function checks for a total of five while the game is paused:
Restore health: L1+L2+R2+Down
Upgrade main weapon: L1+L2+R2+Square
Upgrade rockets: L1+L2+R2+Circle
Skip to the next act: L1+L2+R2+X
Extra life: L1+L2+R2+Up
You can upgrade the main weapon multiple times. The logic is:
if held_button == (BUTTON_L1 | BUTTON_L2 | BUTTON_R2 | BUTTON_SQUARE):
if weapon_level < 5:
weapon_level += 1Rockets can be upgraded three times. Lives max out at 9.
There doesn’t seem to be an invincibility cheat, unlike the GBA version. The level skipping cheat also works differently – it takes you to the next act (e.g., from 1A to 1B) rather than to the next zone (e.g., from 1A to 2A).
Outro
I was pleased to be able to get a working setup for hacking Game Boy Advance for this article. Which other GBA games might have hidden secrets? Leave your suggestions in the comments.
There will be more Rings of Saturn soon – subscribe to get the next article when it’s published.






As far as GBA game go, I'd be curious o see if Ninja Five-0 has any hidden cheats. There are Gameshark codes to unlock certain game modes, and a curious one that lets you press Select+L to skip levels, so that may point to the existence of a hidden cheat/ debug mode.
Wario Land 4, please.