We have upgraded to the latest version of MediaWiki and now support TLS1.2 and transcoding!
Please contact us via Discord or Twitter if you experience any problems.

User:FCandChill/Metal Slader Glory

From The Cutting Room Floor
Jump to navigation Jump to search

Title Screen

FCandChill/Metal Slader Glory

Developer: HAL Laboratory
Publisher: HAL Laboratory
Platform: NES
Released in JP: August 30, 1991


GraphicsIcon.png This game has unused graphics.
TextIcon.png This game has unused text.
DebugIcon.png This game has debugging material.


Metal Slader Glory is an adventure game with some great artwork by the manga artist Yoshimiru Hoshi.

Unused graphics

  • Elina shower scene is still in the ROM at 0x9D010.
  • There's graphics for Tadashi holding Elina's underwear.
  • Unused scene at 0xCE010.
  • Unused scene at 0xF6010
  • Elina's and Azusa have drawn underwear that are covered by the sprite layer.
  • In the ship, there's an unused tile for Tadashi's coat that was later added in the SNES version.
  • For Elina's portrait there's a bg tile that was covered up. It in part of the font's CHR.

Unused namecards

Hmmm...
To do:
Much more.

The game uses namecards to indicate who is talking. It also controls text speed, text color, and text noise. The below namecards are also unused in the SNES version. The numbers inside brackets are bytes. These bytes are interpreted by the game's text engine. For example, the second byte, 0x07, indicates the namecard is 7 characters long.

Location Byte value Data Comment
0x549DF 0x3B
{00}{07}NUDIA 「{00}{0A}{0E}{01}
Nudia is Catty's mech.
0x54AFA 0x61
{00}{00}{00}{0A}{01}{36}
A blank namecard for Azusa.

Pointer features

This a

The game stores a dictionary entry's length within a pointer, the dialogue entries don't use these bits in the final game.

a, b     = length bytes
x, y, z  = Address bytes

a1 a2 x1 x2 x3 x4 x5 x6      y1 y2 y3 y4 y5 y6 y7 y8     b1 b2 b3 z1 z2 z3 z4 z5

Length   = 		-  -  - a1 a2 b1 b2 b3
Address  = 
     
     Dictionary:
     cccccccc =  0  0  0  0  0 x1 x2 x3
     dddddddd = x4 x5 x6 z1 z2 z3 z4 z5
     eeeeeeee = y1 y2 y3 y4 y5 y6 y7 y8
     
     Dialogue:
     cccccccc =  0  0  0  0 a2 x1 x2 x3
     dddddddd = x4 x5 x6 z1 z2 z3 z4 z5
     eeeeeeee = y1 y2 y3 y4 y5 y6 y7 y8
    
     Final PC address = cccccccc dddddddd eeeeeeee

1 MB PRG mapper support

There's two separate pointer processing routines for the dictionary and dialogue. Both are very similar, however, the dialogue pointer routine supports pointers for a 1 MB PRG mapper. It accomplishes this by using a bit used for the dictionary length. The final release uses a 0.5 MB PRG mapper and could have used one pointer reading routine.

Length bits

The dialogue pointer routine never uses the other length bits (b1 b2 b3), however as observed in the Stardust Crusader translation, the game does allow you to use them.


(Source: FCandChill (also posted on Data Crystal))

Debug Mode

MetalSladerGlory-debug.png
Acactussayswhat?
Please elaborate.
Having more detail is always a good thing.
Specifically: What do all the functions do?

Enter でばっぐ やろう★ on the password screen. Appropriately, the password translates to "let's debug".

(Source: Pennywise)

Functions

  1. STAGE JUMP: Go to "stages" or chapters inside the game. There are 7 stages, subdivided in scenes. It is set to 1 by default.
  2. コンティニュモード (continue mode): Set "continue" flag to ON and OFF.
  3. NEW GAME: Start game from the chapter that was previously selected in STAGE JUMP.
  4. DEBUG: Allows scene selection after setting a Stage. It is not always present (e.g. selecting Stage 4).

Custom Option of Each Stage

Acactussayswhat?
Please elaborate.
Having more detail is always a good thing.
Specifically: Add explanations for flags' use and skipped scenes.

Stage Options

MetalSladerGlory-debug.png

Default options.


(Source: Saki)