|
||||||||||||||
Under the Microscope: The Incredible Hulk — The Pantheon SagaIn this edition:
The password is DAF71D1075 . If you like this game, give it a shot! IntroSome repositories of GameShark and Pro Action Replay codes have this one for the PlayStation version of The Incredible Hulk: Pantheon Saga: Cheat Mode replaces Hall of fame. This gives you access to the screen shown here, which lets you give yourself infinite energy; gamma; continues; and calling cards, skip levels at will, and alter your starting position. This screen has graphics and effects and special menu logic ( ALL CHEATS toggles everything above it), so it’s clear that some work went into it — it’s not some utilitarian developer menu. Is there a way to unlock it without hacking? I decided to investigate… Technical detailsThe function at 060362ac (U.S. Saturn version) handles the mode select screen, which includes the password input field. The function keeps track of the cursor position, and when you press down it increments it. The disassembly is fairly straightforward — if you hit down when highlighting the last item, the cursor wraps back around and goes to the top again. In pseudo-Python: if p1_held_button & DOWN_BUTTON != 0: cursor_index += 1 if cursor_index == (4 + extra_enabled): cursor_index = 0There are four menu items normally, but if the extra_enabled value (my name for it) is nonzero, you get an additional one. That value is stored at 06053f68 . Tracing the references in Ghidra, I found that the code starting at 0636776 , which executes when you enter a password, updates it: if ( password_byte[0] == 0xAD and # Check the 1st and 2nd characters password_byte[1] == 0x7F and # Check the 3rd and 4th characters password_byte[2] == 0xD1 and # Check the 5th and 6th characters password_byte[3] == 0x01 and # Check the 7th and 8th characters password_byte[4] == 0x57 # Check the 9th and 10th characters ): update_extra_enabled()This requires some interpretation. When you enter a password, it goes into the buffer starting at 0605430c :
This means we read out the password in a slightly scrambled order. AD becomes DA , 7F becomes F7 , D1 becomes 1D , 01 becomes 10 , and 57 becomes 75 . Put those together and we have the one to unlock the cheat menu: DAF71D1075 . The game says PASSWORD REJECTED , but Cheat Mode pops up right afterward: OutroKudos to the hacker who discovered the existence of this menu with Action Replay codes. Which other games have hidden things that might be accessible via cheat code? Send me your suggestions! For more from the cheat code mines, see my archive here at SHIRO!. For more retro game reverse engineering, see my Rings of Saturn blog.
|
||||||||||||||