I discovered Aira Force in late December 2024, and I’ve only been using it for the past 50 days (on and off, because January is a busy month) but it has really accelerated my efforts in understanding Wicked. I feel like I have made more progress in the past month than I have over the four years I have been studying the code with Ghidra. That’s not to say Ghidra isn’t useful, but here is something that I find

Wicked was the reason why I got an Action Replay mk2 for my Amiga 500 back in 1989/90, probably for it’s slowmo feature first of all, but then as I became more aware of the game design, wanting to poke around inside the code to learn from it and about it. I remember the glee of finding all the sound samples, but ultimately, as great as the Action Replay was, my lack of 68000 assembly knowledge meant I was left staring at a blue screen with white text and not a great deal of leads to pursue.
It has only really been recently that utilities and tools have developed that can now really let you see what is happening inside the code, and using the excellent reverse-engineering Amiga games guide by Tetracorp I set about scratching a 30 year old itch to really dig into Wicked and really understand how that growth mechanic worked. IDA-Pro by Hex-rays is a powerful disassembler that can understand 68000 code, but is incredibly expensive and I can’t justify using that for this. Ghidra, a reverse engineering tool, was released in 2019, which when extended with ghidra_amiga_ldr by lab313ru Vladimir Kononovich, then ghidra-amiga by Bartman (Abyss) could let me load in a memory dump from UAE, and using Ghidra’s C decompiler, I thought that having a tool that could ‘translate’ the 68000 disassembly into higher-level code would reveal all Wicked’s secrets. It was great at labelling variables, functions, subroutines and tracking how the code flowed. It’s not that easy though. Ghidra isn’t a debugger, and while it revealed places to start looking, having a tool that could allow you to step through the code whilst the game is running in emulation would be much faster to understand what could be happening.

While WinUAE is an incredible emulator, the debugger hasn’t really had as much development as the emulation side – particularly the graphical debugger window, and I found myself switching to Steem and the Atari ST version of Wicked to regularly dump memory (with some automation) and analyse the data in a spreadsheet to unlock how the screen works. It was rewarding, but tedious.

I was very envious of the excellent Spectrum Analyser reverse engineering tool and wished that something similar existed for the Amiga. It was only by chance that I came across a tweet in my timeline that caught my eye. Aira Force (then at version 0.8) seemed to be that tool! A rapid donation and download later (honestly, this project and the work that Howard is doing is absolutely worth supporting), I had it up and running with it debugging Wicked in no time. Watching some of his YouTube videos, and seeing how fast H0ffman disassembled the Action Replay mk3 ROM using AiraForce, I knew this was going to become the most useful tool in my side-quest.
It’s got to a point now where I have many leads and new ideas, that I thought I should probably start using a blog as a notebook for keeping track of where I am and what I should do next.
I’m very grateful to Howard for his help and support and I’ve been privileged enough to have access to some early alpha and beta releases incorporating some of my requests into the latest version of AiraForce. Stepping through the disassembly with the debugger, using the watch points and being able to see the game running in sync with the code has been the rocket fuel in learning more about the game.
And go download AiraForce. It is fantastic.

Leave a comment