Digital archaeology, game disassemblies and more

Level Select in Magical Error wo Sagase

I noticed this menu a while back in Magical Error wo Sagase, a puzzle game where you search for differences between two images. In the past I was able to load the routine, but I guess the stack wasn't set up properly, and it would reset the game immediately after the text appeared. I took a second look at the disassembly tonight and had much better success.

Yup, sure is a stage select! P1 Left/Right selects the Stage, while P1 Up/Down selects the round. Button 2 sets the Norm (the amount of errors needed to be found to pass the round) for the level, and Button 1 starts the round. There are a couple levels with blank names, but selecting them just takes you to an existing, working level. Also, Bonus Stage 7 appears to be broken (probably never implemented).

Note that it always marks it as level 1-1 no matter what you choose, and it does not advance to the next level, but rather replays the level. This can sort of be fixed by turning the code off after the level loads, but then it will just progress to the normal level 1-2 anyway, so it's kind of pointless. (And if you're wondering if the level replay is a side effect of having the code on, I also tried doing this the 'hard way' by stepping through the code and forcing it into the level select. It naturally replays the level.)

The check for the level select occurs right before loading a level, including the levels before the demo screen. So it will show the level select during the attract mode, when it would show the demo. If you let it load this way, it will always be 2 player mode. If you want 1 player or 2 player only, you'll need to insert a coin, enable the code, then choose 1P or 2P start.

It's interesting to note that there is a Japanese family name below each of the levels (Takagi, Matsumoto, Mawatari, etc). At first I thought it was the artist for that round's scene, but I'm not so sure now, as some of the artwork really doesn't match other art that has the same name. None of the names appear in the end credits (which are all nicknames anyway). I'm assuming that the names are the person responsible for that round, using their actual real-life name. Maybe. Could be completely wrong there.

Besides the level select, there also appears to be a Demo Creation mode left over:

Note the 'Demo Make' text in the lower left. In this mode, the demo screens play, but you have player control. It doesn't seem to work, however: if you turn the code off and let it run, it will play the normal, built in demo instead of any input you 'recorded.'

As a technical note, the code checks the long value at 0xC0E23C (but because it's working with longs and the number is so low, the actual value is actually at 0xC0E23F). A value of 0 seems to be normal user gameplay and 1 is the title screen/attract/demo, etc. A value of 2 turns on the Demo Make mode, and 3 enables the level select. As such, both Demo Make and Level Select cannot be on at the same time.

Here are the MAME cheats to enable the Level Select and Demo Make mode:

  <cheat desc="Level Select">
    <comment>You will probably need to reset the game to return to 100% normal operation after turning the code off.</comment>
    <script state="run">
      <action>maincpu.pb@C0E23f=03</action>
    </script>
    <script state="off">
      <action>maincpu.pb@C0E23f=00</action>
    </script>
  </cheat>
  
  <cheat desc="Demo Make Mode">
    <comment>You will probably need to reset the game to return to 100% normal operation after turning the code off.</comment>
    <script state="run">
      <action>maincpu.pb@C0E23f=02</action>
    </script>
    <script state="off">
      <action>maincpu.pb@C0E23f=01</action>
    </script>
  </cheat>

I'm going to run out of arcade games to hack...


  • 2015.02.14 22:02 by Ryou