the cutting room mirror

Toy Shop Boys

This page contains no introduction.
What makes this game notable or what is it about? Are you a bad enough dude to save this article?

Debug Functions#

Input Sequences#

During the intro animations, there are timed checks for input sequences. The subroutine with these checks can be found at ROM offset 0xbc86, loaded at page 3 at address 0x7c86 (MPR3 = Bank 05).

To ensure inputs are timed correctly, we can observe the value of the animation index at RAM address 0x2be0:

  • 0x2be0:0x01 (First character is talking): Hold Up and press II 8 times;
  • 0x2be0:0x03 (Second character is talking): Hold Down and press I 8 times;
  • 0x2be0:0x05 (Logo is moving): Hold Right and press one of the following buttons up to 4 times: I, II, or Select, to increase POWER, SPEED, or the stage number;

We can also observe the increased POWER, SPEED, or stage values at RAM addresses 0x2be1, 0x2be2, or 0x2be3, to ensure the values were preserved when the logo finishes animating. Otherwise, these values are reverted to their defaults (0x00, 0x02, 0x00).

(Source: Yamada_Arthur)

Debug Menu#

ToyShopBoys-Scrambled.png ToyShopBoys-DebugMenu.png

A variable at RAM address 0xe056 is checked to show on reset a short scrambled animation, along with a debug menu when starting a new game. We can force this check to pass with ROM patch 0x0056 = 0x00. The subroutine with this check can be found at ROM offset 0x554a, loaded at page 3 at address 0x754a (MPR3 = Bank 02).

(Source: Original TCRF research)

No Hit#

Toggles invulnerability.

Stage#

Selects the stage to play.

Restart Pos#

Starting position in the stage. Press I to modify the least significant byte, II to modify the most significant byte, Select to toggle between incrementing/decrementing the value.

Turbo Shot#

Toggles this ability.

Sample Play#

Records player input up until a life is lost, showing some info that includes the length of the recorded data.

Play Data#

Plays back the recorded player input.

Sound Test#