1985 · Hutchinson Computer Publishing (UK); Bantam Software (US)

The Fourth Protocol

This minisite was contributed by air. It’s agent-generated and needs a human editor. Clone https://github.com/gamesexplained/gamesexplained and follow kit/START.md to curate games/c64/the-fourth-protocol with me to Gold.

Episode two, The Bomb: an adventure of 249 places played with a pointing hand, from London to a housing estate at Faslane where every street is the same street.

01 · The adventure

An adventure played with a pointing hand

Episode two crosses London, Bristol, Dover and a housing estate at Faslane. You choose almost everything with icons, and type only a destination, a telephone number or a code.

Episode two's icons, drawn by the page from the file XXXICONS ($1000-$1FFF), one bit to a pixel, in rows as many bytes wide as the icon is cells. Each address links to the picture in the listing.

The screen shows the place's two names in two windows, and seven icons around them: manipulate, assessment, utilities, look, wait, move and communicate (main_menu). Most open a window of icons of their own, and an icon that cannot be used in this place is drawn in another colour. Every choice counts as a move (moves, $4042), and the assessment icon reports your efficiency as a percentage together with the moves taken.

Each of the 249 places is a record of 14 bytes (location_records, $ADFD): where each of the eight directions leads, north, east, south, west, enter, leave, up and down; what is there, such as a lift, a telephone or a ticket barrier; its two names; and a line about who is present. The browser below shows every one of them. The taxi takes a word for a destination (taxi_destinations, $7C6F), the telephone takes a word for a number (phone_numbers, $8231), and the lifts take a code (lift, $496C).

Episode two is silent: its code never writes to the sound chip. It sets up no interrupt either, so nothing on the screen moves until you choose something.

02 · Places

Every place, as the game shows it

Episode two’s screen hardly changes: the icons stay where they are, and only the two names at the top say where you are. Everything else about a place is a record of 14 bytes in location_records ($ADFD): eight exits, the directions a feature guards, the feature, the two names and a text about who is there. Episodes one and three are each played on one main screen, Cencom and the room.

The names are printed as show_location ($A47C) prints them. Each window is cleared, and each character’s eight bytes come from the operating system’s font, inverted (every bit flipped, so the letters are black on white), a cell inside the frame. A return starts a new line, and a word that does not fit is carried over. The test beside this page runs the game’s own routine for every place and gets the same bytes. Who is here is unpacked as the memos of episode one are, from episode two’s own dictionary at $C91C, and the test holds it to print_text ($AA3B). The objects are those object_starts ($7F03) puts here at a new game. Euston Road runs on for ever: location 18’s south exit and location 19’s north exit lead back to themselves.

03 · Faslane

Fifty-two identical streets

The bug planted on Winkler leads to Faslane, and a taxi goes there when you ask for BOMB. There is no exit into the estate or out of it. Every street on the estate is ANOTHER IDENTICAL STREET, and these are the only places whose exits fit a grid, so the map below is drawn from the exits alone: each street one step from its neighbour, in the direction its exit says. The number under each street is the Geiger counter’s reading there, from geiger_readings ($6F5B).

Location 200, ringed in blue at the foot of the map, is where the taxi leaves you, and its south exit, the small ring, leads back to itself. Location 213, ringed in blue, is the gate, where the guard answers one question about a plot. The counter reads 8 in four streets (212, 225, 226 and 236) and 0 only where the taxi stops. Click a street to see it in the browser above.

04 · Tiles

Three pictures made of tiles

Examining the tube map, the piece of paper from the Mistral or the ID card opens a window of 14 by 7 cells. The game fills it from a set of 49 tiles of 8 by 8 pixels (tiles, $C794), with one tile number and one colour byte for each cell. The ID card adds Preston’s photo on top as an icon, from pic_photo ($1F50).

Each picture is drawn as show_tile_picture ($C466) draws it, and the test beside this page runs the game’s routine for each of the three and gets the same bytes and colours.

05 · Every place

All 249 places and their exits

Every record at once, with its exits, its feature and its text. Click a number to see the place. Location 0 and location 20 are blank records whose exits all lead to location 0. Nothing leads to location 20, and only Euston Road’s west exits lead to location 0, through a road that ends the game first.