the cutting room mirror

Toki (Arcade)

This article has a talk page!This article has a talk page!
view on tcrf.net

Transforming into a blue-eyed monkey that spits energy projectiles might seem like a good idea to some people, but not Toki.

Debug Functions#

Debug Mode#

Address 0x00489 in the ROM holds a byte that's used as a debug flag. It's set to 00 in all versions, but if the following code is put in MAME's toki.xml cheat file, it'll change to 0F:

<cheat desc="Debug Mode">
    <script state="on">
      <action>maincpu.mb@489=0F</action>
    </script>
    <script state="off">
      <action>maincpu.mb@489=00</action>
    </script>
</cheat>

This enables four different debug features, each one controlled by a different bit in the debug flag:

  • Bit 1: Displays an overlay during gameplay that shows some sprite-related values:

Name

Description

A

Number of enemies on-screen

B

Number of enemies loaded in memory but not on-screen

M

Number of enemy projectiles/shots on-screen

T

Number of traps set on-screen

I

Number of items on-screen

  • Bit 2: Freezes the stage timer.
  • Bit 4: Makes the player invulnerable to enemies and their projectiles. Falling down pits will still kill the player, though.
  • Bit 8: Disables the invincible skull enemies that appear when the player idles around.

(Source: BackintoysTV, ryosama (mamecheat.co.uk) (MAME cheat), smitdogg (MAMEWorld Forums) (value descriptions))

Object Viewer#

TokiArcObjectViewer.png
There's a flag in the main CPU (stored at 0x02B78 in the toki set) that would have enabled an object viewer if set to a non-zero value, but it's set to zero in each set. Place the following code in MAME's toki.xml cheat file to re-enable the object viewer:

  <cheat desc="Object Viewer">
    <script state="on">
      <action>maincpu.mw@002B78=FFFF</action>
    </script>
    <script state="off">
      <action>maincpu.mw@002B78=0000</action>
    </script>
  </cheat>

Press 1P Button 1 to increment and 1P Button 2 to decrement the current frame value. Valid values are 0000 to 08DF.

It's highly advised to use this code in conjuction with the debug mode code, since the object viewer will not disable the invincible flying skulls, give the player invincibility, or disable the timer.

(Source: Original TCRF research)

Demo Recorder#

Another debug function controlled by a ROM-based flag (0x1A026 in toki) is a partially functional demo recorder. Place the following code in toki.xml:

  <cheat desc="Demo Recorder">
    <script state="on">
      <action>maincpu.mw@01A026=FFFF</action>
    </script>
    <script state="off">
      <action>maincpu.mw@01A026=0000</action>
    </script>
  </cheat>

The player will now be able to move around freely in demos until time runs out (Demos run for 512 frames) or until the player dies. The game tries to write the player's input to the ROM each frame, but since it's Read-only Memory, you can imagine how successful it is at doing that.

(Source: Original TCRF research)

Victory Animations#

TokiArcTokiVictoryF.gif
Toki does a little victory animation after clearing a stage. There's only one seen in the final game...

TokiArcTokiVictoryAltsF.gif
...but there are a total of seven victory animations in the sprite graphics ROM! Support for these animation is partly coded in the game: The code for this starts at 0x02956 in the toki set. The victory animation subroutine has code that would have changed the animation based on what stage the player just cleared, but the table that stores the animation values (0x0297E) just has six copies of the default animation. Interestingly, the second frames of both the second and third unused animations are actually used in the game, appearing as part of Toki's entry in the cast roll and the beginning of the staff roll respectively.

Place the following code in MAME's toki.xml cheat file to restore the victory animations. Note that since there are only six stages, the default victory animation will be unused:

  <cheat desc="Unused Victory Animations">
    <script state="on">
      <action>maincpu.mw@00297E=0807</action>
      <action>maincpu.mw@002980=0808</action>
      <action>maincpu.mw@002982=0809</action>
      <action>maincpu.mw@002984=080A</action>
      <action>maincpu.mw@002986=080B</action>
      <action>maincpu.mw@002988=080C</action>
      <action>maincpu.mw@00298A=080D</action>
      <action>maincpu.mw@00298C=0827</action>
      <action>maincpu.mw@00298E=0828</action>
      <action>maincpu.mw@002990=0829</action>
      <action>maincpu.mw@002992=082A</action>
      <action>maincpu.mw@002994=082B</action>
    </script>
    <script state="off">
      <action>maincpu.mw@00297E=0805</action>
      <action>maincpu.mw@002980=0806</action>
      <action>maincpu.mw@002982=0805</action>
      <action>maincpu.mw@002984=0806</action>
      <action>maincpu.mw@002986=0805</action>
      <action>maincpu.mw@002988=0806</action>
      <action>maincpu.mw@00298A=0805</action>
      <action>maincpu.mw@00298C=0806</action>
      <action>maincpu.mw@00298E=0805</action>
      <action>maincpu.mw@002990=0806</action>
      <action>maincpu.mw@002992=0805</action>
      <action>maincpu.mw@002994=0806</action>
    </script>
  </cheat>

(Source: BackintoysTV)

(Source: Original TCRF research)

Unused Graphics#

Referenced Graphics#

All of these graphics have assigned frame IDs and are visible with the in-game object viewer.

TokiArcGatorWalk.gif TokiArcGatorDead.png
Frame IDs: 11A-120
This simple alligator / crocodile was likely the first enemy designed, as it's the first one by ID and the first one seen in the sprite graphics ROM. Doesn't seem like it would do much except lumber around. Good candidate for the Dark Jungle stage.

TokiArcSnake.gif TokiArcSnakeLunge.gif TokiArcSnakeBurrow.gif
Frame IDs: 214-21B, 29D-29E, 31A-320, 33C-34B, 351-353
Another fairly generic enemy: A green snake. These snakes would have been used in the Labyrinth of Caves, burrowing out of the ground and falling from above, but they were cut due to lack of development time.

(Source: BackintoysTV)

TokiArcSnakeBurst.gif
When defeated, they would have burst open like snake-shaped balloons.

TokiArcBlastumsVert.gif
Frame IDs: 246-249, 24E-253, 256-257
The Blastums enemies appear throughout the game, but they're always placed so that they fly out horizontally. These vertically-positioned variants are never used.

Frame IDs: 354-355, 3C5-3C6
An unused magic lamp power-up. What this would have done is a mystery.

TokiArcBigCarving.png
Frame ID: 812
A larger version of the stone carving that blocks the way to a helmet power-up in the Labyrinth of Caves.

Unused

Used

Frame IDs: 81E-81F
The 16t weights are normally black, but there's an unused pink variant in the game data. These would fit with the pink see-saw platforms seen in the Dark Jungle.

Unused

Used

TokiArcIcePlatLarge.gif
TokiArcIcePlatSmallAnim.gif

Frame IDs: 85B-860
The frozen platforms seen in the Ice Palace have three frames of animation, but only the second frame is used in the final game. There's also a longer version of the platform that's entirely unused.

TokiArcChainBox.gif
Frame IDs: 88C-88E
A window with moving chains that should appear near the spike platforms and windowed gears seen in the Golden Palace. Probably cut due to a lack of screen space.

TokiArcBoulder.gif
Frame IDs: 89F-8A2
It's a boulder. Would have fit in with any stage, really.

TokiArcBallOFire.gif
Frame IDs: 8A3-8A5
This ball of fire, though, only has an appropriate palette in the Caverns of Fire. Makes sense if you think about it.

(Source: Original TCRF research)

Unreferenced Graphics#

Early

Final

TokiArcTokiWalkE.gif
TokiArcTokiCrouchE.png

TokiArcTokiWalkF.gif
TokiArcTokiCrouchF.png

An alternate design for Toki appears at the very start of the object graphics ROM. This design has a slightly different forehead, no eyes, and an angrier expression.

Early

Final

This alternate design takes up a significant amount of ROM space, so it's not clear why they left all of it in.

Early

Final

One possible theory, based on a difference in the game's attract mode (seen below) is that the unused design would have been used in the Japanese version of the game.

Early

Final

The alternate version's climbing animation only has four frames of animation, with two frames being repeated to make up a six frame sequence. The newer design has six unique frames.

Early

Final

TokiArcTokiSwingE.gif TokiArcTokiSwingJumpE.gif

TokiArcTokiSwingF.gif TokiArcTokiSwingJumpF.gif

Toki's animation where he jumps off of a swinging rope has four frames of animation in the eyeless design. The final design repeats the first two frames twice; it looks awkward but it works.

Early

Final

Any animations that have popped eyes in the final design also have popped eyes in the alternate design. In this single frame, the eye was properly recolored from brown to blue; in all other frames, the eyes keep the brown color from the older design.

Early

TokiArcTokiVictoryE.gifTokiArcTokiVictoryAltsE.gif

Final

TokiArcTokiVictoryF.gifTokiArcTokiVictoryAltsF.gif

The alternate design even has proper victory animations! Actually, the eyeless design is what's stored first in the ROM, and then the eyes for the final design appear immediately after.

Early

Final

TokiArcTokiSwimE1.gif
TokiArcTokiSwimE2.gif

Toki's swimming animation is the only one that uses the older design's scowling face in the final game. However, there are two alternation swimming animations in the ROM: One that uses the final design's head but doesn't have goggles, and one with both goggles and green flippers.

Early

Final

The designs sans goggles doesn't have a shooting animation, while the flipper-wearing variant does.

TokiArcTokiEating.gif
This eating animation only appears in the older Toki's sprites; it's replaced by one of Zorzamoth's tusks in the final set.

Early

Final

Even the HUD icon has graphics for the alternate design!

Starting at 0x07C0 in the sprite graphics ROM are graphics for what seems to be a completely different game. The first of these is the world's most generic font.

TokiArcJankenpon.png TokiArcSymbols.png TokiArcBalloon.gif
Next up are a set of hands for rock-paper-scissors, success, failure, and tie symbols, arrows, and a balloon.

TokiArcWeatherIcons.png
These graphics could have been used in the Dark Jungle, which starts out rainy and clears up as you get further into the stage, but were probably meant for some other game.

Shaded

Solid

The hearts that appear in the game's ending use a solid pink palette in the final game, but they actually have a good deal of shading in the sprite graphics ROM.

TokiArcCardSuits.png
Immediately after the spinning hearts are a full set of card suits!

TokiArcHomingMissile.gif
A multi-directional missile that would have homed in on the player. Maybe a little too technologically advanced for this game.

TokiArcBigFruit.gif
Big fruits that would have presumably given the player large point bonuses.

TokiArcSleepingHead.gif
A strange sleeping frog that looks like it's coming out of a wall or something? Weird.

Unused

Used

TokiArcBugWheelAlt.gif TokiArcBugWheelHarmless.gif

Spinning centipede wheels appear in the Dark Jungle. There are two unused designs for the wheel: A spiky caterpillar and a more harmless-looking worm.

TokiArcWaterBall.gif TokiArcShrimpRoll.gif TokiArcSpikeBall1.gif TokiArcSpikeBall2.gif
More spinning objects: A jellyfish, a shrimp, and two spike balls. The fourth frame of the shrimp roll has two missing tiles.

TokiArcBigKey.png
There are keys that appear throughout the game, but they're 16x16 and just fall to the ground. These key graphics look like they would have actually stuck into something...

TokiArcLockedDoor.png
...perhaps, say, this foreground-based locked door? Makes more sense than just moving a bunch of rocks.

TokiArcStage2BG.png
The Stage 2 background seems simple enough; just a layer of clouds, most of which aren't visible because of the long water section near the start of the stage...

TokiArcUnusedBGA.png TokiArcUnusedBGB.png
...but the background in the ROM is actually much larger! It consists of two parts: A lower section that includes purple mountains and a ruined city, and an upper section with large, puffy clouds.

TokiArcUnusedBGC.png
This is a mock-up of how the two pieces would look combined.

TokiArcUnusedBGParts1.png TokiArcUnusedBGParts2.png
There are also individual cloud, moon, and star tiles that would have been placed sporadically in the background.

TokiArcStage2StoneFaces.png
Stone faces meant to appear in Stage 2, both in the water and in the caves.

TokiArcStage3Blocks.png
These sprite-based blocks would have appeared somewhere in the Caverns of Fire, doing block things...

TokiArcStage3BlockGuy.png
...while this tile-based block just has a little guy in it. A blockman.

TokiArcStage3PillarFace.png
This intimidating stone head would have shown up near the end of Stage 3.

TokiArcStage4Heads.png
There's a swimming section in the ice palace that has a mostly blank floor, but apparently this two-headed rock formation was meant to appear down there at some point. Maybe it's for the best that it wasn't.

(Source: Original TCRF research)

Version Differences#

Intro/Title Screen#

Japan

US

Europe

My girlfriend was kidnapped and now I'm a ludicrous ape. I'm pissed about this!
Guess it's up to me save Miho, ape or not.

Aside the different logo, the design of Toki/JuJu in the game intro/title screen is different depending on the game's region. In the Japanese version, he's transformed into a scowling, eyeless monkey, while in the other versions, the standard happier design is used.

Since Fabtek distributed the game in the US, "TAD CORPORATION" was replaced with "U.S. LICENSEE FABTEK, INC."

(Source: Original TCRF research)

High Score Bug#

An early US set (tokiu in MAME) will always display "00000000" as the top high score, regardless of what the actual top high score is. This is due to the top high score being stored at $60010 in RAM, rather than at $60008 like in the other versions. $60010 is used for other purposes by the code. This was fixed in a later US set (tokiua in MAME) by moving the top score value back to $60008.

(Source: MAME (toki.cpp))

High Scores List#

Earlier European Version

Other Versions

For some assuredly boring reason, the word "BEST" in the high scores list, placed above "SCORE" and "AREA," was removed in the early European (World) set (toki in MAME). It was later reinserted in the later European set (tokia in MAME).