Shining the Holy Ark, the 1996 RPG for Saturn, has the strangest hidden feature I’ve ever seen. It has unused code for a sound matching minigame that works like this:
A series of animal sound effects plays on the name entry screen.
You’re meant to press X, Y, or Z depending on which sound plays.
If you miss fewer than three matches, a debug menu is enabled.
Easy enough, right? Two issues:
Nothing tells you which sound goes with which button.
The pace is insane.
The matching game code goes unused in the released versions of Shining the Holy Ark, but I’ve made a patch that enables it. If you think you’ve got what it takes to win, get the patch from SegaXtreme!
Here’s a video that shows: (1) losing the game, (2) watching the target buttons change in the memory window, and (3) winning the game:
How to play
Start the patched game and proceed to the name entry screen. When you’re ready to play, press R:
You’ll hear a series of sound effects:
The first five that you hear correspond to the Y button, and they’re just for practice.
The next three you hear will be for Y, then X, then Z.
There are 21 sounds after the first five, and you have to get at least 19 of them to win the game. You’ll get a crashing sound effect if you win and a buzzer sound effect if you lose. You can retry (by pressing R) as many times as you like.
If you’re successful, you can open the debug menu during gameplay by pressing B+Start:
The Param Change and Level Up screens are pretty useful. My favorite is the MAP CHANGE screen, which lets you warp to an arbitrary location:
The Cutting Room Floor has a more thorough description of the menu items.
Technical details
The function at 0604a24c
(NTSC-J version) implements the logic for this mini rhythm game. Things kick off if the enable flag at 060217ca
is set to 01
. My patch makes that check always pass:
0604a286 e101 # Always read 0x01
You can also use this Action Replay code to set the enable flag:
360217ca 0001 # Pin the value to 0x01
Interestingly, the enable flag is preserved in the game’s save data (at 0x1af1
for the first file). So you can play the rhythm game on an unpatched disc image if you have a modified save file.
The byte at 0604d7f2
stores your current progression:
00
means you haven’t pressed R yet.01
means the sounds are playing.02
means you won the game.
The game reads from the table at 0604bbec
to determine which sound effect plays and how long before the next one starts. Each entry has:
A 2 byte bit pattern that corresponds to a button:
0x10
is Z,0x20
is Y,0x40
is X.A 2 byte value that indicates how long till the next item (I’m not sure about the units).
Here is the full sequence of buttons and duration values if you want to cheat at the challenge:
Each time you miss, the counter at 0604d7e6
increments. It resets after the first five “practice” sounds. At the end of the 21 “real” sounds, the game checks to see if it’s less than 3:
if miss_counter < 3:
sfx_id = 0xa4
debug_flag = 0x01
else:
sfx_id = 0x83
play_sfx(sfx_id)
You could presumably also win by overflowing the counter. Pressing incorrect buttons 235 times (good luck with that) should reset it back to 0.
You can also play this game on the “Load” screen — the same code is running there:
I’m 90% sure that the enable flag can’t be activated without hacking. The only writes that Ghidra finds to the address are (1) the one that sets it to 00
, disabling the rhythm game, and (2) the one that restores the value in the save file.
The NTSC-U and PAL versions of Shining the Holy Ark have all of the code for the rhythm game, but it doesn’t execute. It’s probably possible to restore it in them, but it would require more than a single instruction patch / Action Replay code.
Outro
I would love to know more about how this feature came to be, so tell me if you know something I don’t. As always, feel free to use this information and/or these screenshots for your favorite fan site or reference wiki.
The first person who shows they can successfully beat the matching challenge can pick which article I finish next, so get playing!
