Expansion Hack: Metal Black

The Saturn version of Metal Black is a port of the 1991 Taito arcade game. In its story, Earth is suffering under an uneasy truce with a hostile alien force. Our hero, John Ford, takes it upon himself to banish the aliens by commandeering an illegal space plane. Weirdly, the bad ending is good (Earth launches a strike against the aliens) and the good ending is bad (Earth gets broken in half).

The invasion takes place in 2042, so we have 18 years to get our act together.

Why am I writing about it? Alas, it’s not because there’s a prototype demo of it on Saturn Super Vol. 6 — that version sadly doesn’t have any additional files.

Metal Black Taiken is the trial version on the Saturn Super Vol. 6 demo disc; it lets you play part of the first stage.

No, I’m writing about the final game’s heretofore undocumented DEBUG MODE. You can get a patch to enable it from SegaXtreme. Here’s a video!


Technical details

Debug mode

The flag at 060a6f00 controls whether the special DEBUG MODE and ROUND SELECT items appear in the options menu.

Debug Mode changes a few things. Most notably, it gives you additional options on the pause menu — MUTEKI ON makes you invincible:

Additionally, you get extra controls:

  • X freezes gameplay without bringing up the pause menu
  • Y advances frames slowly when you hold it
  • Z advances frames one by one when you press it
  • L shows some text information on the screen
  • R fast forwards the gameplay
  • C instantly kills you

That last one is really annoying! I’ve disabled it in my patch (see below).

The round select changes your starting stage. You can even pick the two bonus stages:


Technical details

I found the debug mode by searching for the string DEBUG in a save state — sometimes it’s that easy.

There’s no way to set the flag that enables the menu item, e.g. with a button code, so we have to patch the reads to it:

06014362 e001 # Read a constant 01 instead of the dynamic value
06013a72 ed01 # Ditto

Once it’s enabled, you can toggle debug mode. This flips another flag at 060a6eff, so an alternative way of enabling debug controls is this Action Replay code:

360a6eff 0001

To prevent the C button from killing you when you accidentally press it, I also disabled one check for the debug flag during normal gameplay:

0601e994 e000  # Read a constant 00 instead of the dynamic value

One other note: this debug mode is very similar to the one present in Galactic Attack, a.k.a. Layer Section — it also enables Debug Mode and Round Select in the options menu, Muteki in the pause menu, and frame advance controls.

See TCRF on how to enable that one. This game was also developed by Ving and published by Taito; it seems there was some code reuse.


Outro

For more about Metal Black, see this characteristically great article at Hardcore Gaming 101.

For other hidden debug modes, see:

Feel free to use this information and these screenshots elsewhere! Feel free to use this information and these screenshots elsewhere. Also, send me your suggestions for games to analyze next!

* This article is cross-posted from Rings of Saturn, Bo’s reverse engineering blog.

About the author

Leave a comment

Your email address will not be published.


*