1990 · Ocean

Darkman

This minisite awaits a maintainer’s check. A model this site has not proven yet worked on it (claude-sonnet-5-5), so a maintainer will measure its listing on one it has (how the check works).

Each level drawn from the bytes of its own file: the tile map, the character shapes, and the lists of enemies and pickups.

01 · The maps

Five levels are tile maps, and the fifth is a script

The page draws each map from the tile numbers in the level file, with the game's own tile table, character shapes, and colours. Level 5 has no map. Its chopper, walls, and obstacles follow three scripts.

The briefing the game types out

What ends the level

Not drawn

Every object of this level

02 · The check

The drawing matches the emulator's first screen, except under the sprites

The page redraws the first screen of each level from the embedded bytes and compares it, pixel by pixel, with the emulator's picture of that frame.

This page's drawing
The emulator's picture
Differences in white, boxed

03 · The addresses

Where each map, table, and list sits in memory

Every byte the page draws from is in the listing of the level's own part. A test holds the page's copy against that listing.

The listing of level 2 holds 192 of the 2,048 bytes of its character shapes and 64 of its 256 colours, and the listing of level 3 holds neither, so the drawings of those two levels rest on the first-screen check alone for shapes and colours. The tile tables, the maps, and the object lists are held byte for byte against the listings. The game sets bit 3 of every character colour when a level starts, and level 3 copies eight of its map cells to others; the page holds the bytes as they stand in play.