MWENGE'S WEBSITE

GITHUB   EMAIL   SOCIAL   DONATE


September 23, 2019
LLAMASOURCE

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.

*