1985 · Datasoft

The Goonies

This minisite was contributed by air, unorig. 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-goonies with me to Gold.

How the game reads its players: a joystick in port 1 where up means jump, a second joystick in port 2 for two players at once, and two keys the guides leave out.

The joystick

Up is the jump, and fire swaps the Goonies

The game reads the joystick in port 1 once a pass, at the top of the main loop ($08EB). The controlled Goonie's routine copies up onto the fire bit before move_object sees it ($0B14), so up does what most games give to fire: it jumps from a floor, climbs a ladder, and grips a bar.

StickWhat the Goonie does
Left, rightwalks two units, four pixels, a pass
Upjumps straight up from a floor; climbs a ladder; holds on to a bar
Up-left, up-rightjumps diagonally, two units across a pass
Downclimbs down a ladder, or through a floor that is a ladder's top; lets go of a bar
Firegives the stick to the other Goonie (one player)

Fire is read as a press, not as held. The main loop sets a flag on the pass fire goes down and not again until it has been let go ($0976), and the waiting Goonie's routine swaps the two Goonies' types on that pass and plays sound 6 ($0B62).

Two players

Two players play at the same time, with a joystick each

F3 on the title switches two players on and off and shows a 2 in the corner of the status line ($169C). A game started that way gives each player a Goonie: the first object slot reads port 1 and the second port 2 (read_stick, $172B), and fire no longer swaps anything.

The C64-Wiki describes the standard game as two players taking turns, and gives this simultaneous mode to the U.S. Gold release alone.1 The Datasoft disk analysed here has the simultaneous mode and no turns.

The keys

L turns a player's joystick a quarter turn

The game scans eight keys ($161C) and acts on a key the pass it goes down (handle_keys, $1634).

KeyWhereWhat it does
F1$1684quits to the attract mode
F3$169Cone or two players, on the title only
F7, or fire on the title$168Ba new game, from the scene in $12BC: always scene 1
Space$165Fpause, with PAUSED on the status line, music and effects silent
S$16B6music off and on
V$1692prints the version line, V 1 BY SES
L, shift L$16C2turns player 1's joystick, or with shift player 2's, a quarter turn, marked 1L or 2L on the status line
F5nonescanned with the others, and nothing acts on it

The L key changes how read_stick reads the port ($1742). With it on, pushing left reads as up, right as down, up as right, and down as left, so a joystick held on its side works the right way round. Fire is left alone. Why the game offers this is not known, and the C64-Wiki does not list the key.