llamaSource

The Llamasoft Source Code Project

An archive of the source code for Llamasoft software

Introduction

One by one I’m disassembling some games and programs published for the Commodore 64 and other platforms by Llamasoft (i.e. Jeff Minter).

For some games, such as Attack of the Mutant Camels on Konix and Tempest 2000 for the Atari Jaguar, the original source code is already available so all I have done is collect it in a form that allows you to compile and build the original game with modern Linux build toolchains.

In the cases where the source code has to be reverse engineered the process is often relatively straightforward. I can simply disassemble the code (with a tool such as Regenerator, split out the characterset and sprite data from the game logic, and recompile to a binary that matches exactly (byte for byte) the original game file. After that, I can start labelling and commenting the code to make explicit the workings of the game.

In other cases, the task isn’t so trivial. Larger games such as Batalyx and Iridis Alpha used compression and copy-protection software so it is much harder, and may even be impossible, to produce a disassembled version that compiles a target which will match the original prg file. For these guys, I’ve had to work from a snapshot of the game while it’s running and just accept that the binary I end up compiling will not be a bytewise match, and may have bugs. If I don’t find a way of reverse-engineering the compression and copy-protection that’s what I will end up doing, for now.

All of the disassembled games below are a work in progress. At a minimum all compile and run. They’re listed in descending order of completeness so if you’re looking for further reading start with Iridis Alpha and work your way down. The work that remains in all cases is to continue improving the comments in the code and figuring out the operation of the routines while assigning labels and variable names that are meaningful. For now, though, my focus is on completing a first pass on as many games as possible.

The Games

Tempest 2000 (1994) by Jeff Minter

This is the source code for Tempest 2000 by Jeff Minter originally published in 1994 for the ill-fated Atari Jaguar.



Virtual Light Machine (1995) by Jeff Minter

This is the reconstructed source code for the Virtual Light Machine by Jeff Minter originally published in 1995 for the ill-fated Atari Jaguar.



Iridis Alpha

Minter’s magnum opus. This is the one I’ve spent most time on so far and the reverse-engineering is well advanced. There are 3 additional games in here apart from the main game: a breakneck-paced vertical-scrolling bonus phase, a pause-mode mini-game that is an interesting variation on ‘Snakes’, and a psychedelic light-machine where the player can manipulate a double helix of technicolor eye-balls (!).

The page also contains disassemblies and playable versions of the numerous demos Minter wrote preparing Iridis Alpha.



Gridrunner



Matrix

The successor to Gridrunner. Faster, more enoyable. An underrated game.



Psychedelia

Minter’s first light synthesizer.



Hellgate

One of Minter’s later Vic 20 games, this is not very well known and as you can see above is let down by some very mediocre box cover art. The most striking thing about Hellgate is its innovative gameplay and sheer frenetic pace.



Attack of the Mutant Camels



Voidrunner

Written for the Commodore 16 in 1987, Voidrunner is a continuation of the Gridrunner series. It takes advantage of the extra colors available to the C16 and has rapid gameplay. The disassembly is very clean as there is no compression or copy protection used in the binary. It should be possible to arrive at a very coherent disassembled source file in future work.



Metagalactic Llamas: Battle at the Edge of Time

More manically fast gameplay on the Vic 20. An extremely compact game.



Batalyx

A compendium of 5 bizarre sub-games, Batalyx is full of original gameplay and extremely original gameplay ideas.



Sheep in Space

A sort-of-predecessor to Iridis Alpha with many of the gameplay components present. Overall not a very fun game to play as it feels comparatively slow compared to other Minger games.



Revenge of the Mutant Camels



Hover Bovver



Mama Llama



Ancipital



Return of the Mutant Camels