In this edition:
- There’s an Easter egg in Kaitou Saint Tail.
- It lets you play a ghost-fighting mini-game.
- To access it, hold L+R while pressing C on the minigame entry screen.
Here’s a video of it in action:
Details are below…
Intro
Kaitou Saint Tail is a 1997 Saturn game that’s based on the Saint Tail manga / anime series. It was published in Japan by Tomy. It stars Meimi Haneoka, whose alter ego is “Saint Tail,” a phantom thief.
After starting a new game, you eventually get control of Meimi. The game’s clock starts at 08:00 AM.
You’re meant to leave the house and get to school by 09:00, but if you’re late, the game will take you directly there (and you’ll be scolded for your tardiness). Once you’re in the classroom, it’s time to pick a minigame.
The minigame that you play isn’t predetermined. When you press A or C on the selection screen, a virtual wheel starts spinning. You can press A or C to stop it, and whatever game comes up is the one you play.
How does this work? Let’s check…
Technical details
The function at 06012518 implements the minigame selection screen’s logic.
- The wheel’s position is updated every 8 frames.
- The position cycles through 16 values (0 through 15).
- When you stop the wheel, its position is rounded down to the nearest even number.
- That even number is used as an index into a list of minigame files.
Here’s how it looks with the a reduced frame rate:
The list of minigame files has eight entries. You’ll play the one whose index comes up on the wheel. They’re vaguely school-themed, and range from P.E. to cooking.
There’s some extra logic that executes before the wheel starts spinning. It looks like this in pseudo-Python:
while True:
if ((held_button & 0x0400) != 0) and ((held_button & 0x0200) != 0):
update_frame_0600b21c()
timer_06041ece += 1
if timer_06041ece == 30:
timer_06041ece = 0
else:
break
if ((held_button & 0x0080) == 0) and ((held_button & 0x0008) == 0):
# ...
load_file_0600ebd0("\\mini\\mini9.bin")
That is, the game waits for you to press A or C (hex patterns 0x0400 and 0x0200). Once you do, it checks to see whether you’re pressing both R and L (hex patterns 0x0080 and 0x0008). If you are, it loads mini9.bin.
Busting ghosts
In this game, your opponent sends ghosts at you. You’re meant to stop them with a fireball attack.

If three of them make it past you, you lose.

But if you last long enough, you win!

The video above shows a winning strategy. Each of the ghosts moves at a different speed. You can let the slow ghosts take up a row for a while and only attack them when they get close to the left side of the screen.
Outro
Thanks for reading! For another breakdown of an Easter egg like this, see my article on the Puffy boss fight in NiGHTS Into Dreams.
I’ll have another Saturn hacking article here at SHIRO! next week. In the meantime, check out my blog for more on my retro game reverse engineering projects.




Be the first to comment