1991 · Ocean Software

Toki

This minisite was contributed by air, unorig. It’s currently claimed by unorig who is editing it to reach a Gold tier standard.

The sprite shapes in memory at one moment in each of the five stages.

Sprites

Every sprite shape in memory, stage by stage

The game draws Toki and other moving figures with the C64's hardware sprites, and their shapes sit in the bank of memory that the video chip reads.

A shape is a block of 64 bytes: 21 rows of 3 bytes and one spare byte. In multicolour each pixel takes two bits, and the game turns multicolour on for all eight sprites when it sets up a stage $884A. The video chip reads the shapes from the top 16 KB of memory, so shape number n lies at $C000 plus 64 times n, and the shapes $40 to $FF fill the upper three quarters of that bank. The background loader $5108 copies most of them in from the cartridge in pieces of 63 bytes, at most one piece each time it runs, starting at shape $40 or higher. A few arrive another way: the stage start $0AFF copies 256 bytes into shapes $F4 to $F7.

Toki's own three shapes are different. When one of his animation frames changes, a routine $5092 copies the new shape from the cartridge into one of three fixed blocks, shapes $FC, $FD, and $FE. In each sheet below those three show the frames Toki held when the snapshot was taken.

Sheet of the 182 sprite shapes present in stage 1, each labelled with its shape number

Stage 1. 182 shapes. Blue, yellow, and white stand for the three sprite colours of a multicolour pixel, and black is clear. Two of the three colours are shared by every sprite and the third is each sprite's own, so these are not the colours in play.

By stage

The other four stages load their own shapes

The shapes in memory change from stage to stage, though many appear in more than one.

Snapshots taken during play in each stage held 182 shapes in stage 1, 186 in stages 2 and 3, and 191 in stages 4 and 5, leaving out empty blocks and blocks that begin with four $FF bytes and four zeros. Across the five snapshots there are 459 different shapes, counting each distinct block of 63 bytes once. Of these, 34 are in all five snapshots and 262 in only one. In the stage 3 snapshot, the blocks $F8 to $FB hold the letters of STAGE CLEAR, left there by the screen between stages, which clears those four shapes and draws into them $4016.

Stage 2 sheetSheet of the 186 sprite shapes present in stage 2
Stage 3 sheetSheet of the 186 sprite shapes present in stage 3
Stage 4 sheetSheet of the 191 sprite shapes present in stage 4
Stage 5 sheetSheet of the 191 sprite shapes present in stage 5