The Liverpool earthquake of July 1984, the “Big One”, had come and gone, but at Software Projects, the ground still felt uncertain. I had a job, a desk, and a computer, but no clear sense of what I was supposed to be doing.
While the administrative staff in the Pirate Ship front office managed the business, back in the Zoo, we were largely left to our own devices. Nobody told us what to work on. The working theory, as best I could tell, was simple: hire bright kids, give them hardware, and hope money falls out of the disk drive.
The Zoo had accumulated a collection of computers, including a Memotech and a Spectravideo. Most of it, I suspect, was gifted by manufacturers eager to see Manic Miner on their hardware. Some of these machines had arrived before I did, the product of conversations and handshakes I was never party to.
The Tatung Einstein was one I actually had the chance to work with.
The Einstein was MSX-alike but not compatible, and came with a 3” disk drive and monitor that pushed the price to around £500 in a market dominated by £130 Spectrums.
When Tatung invited Software Projects to visit their facility in Telford to discuss creating a version of Manic Miner for the Einstein, I found myself representing technical development alongside MD Alan Maton. Alan had other business in Birmingham on the way, so we stopped there first and grabbed lunch at some forgettable sandwich place in the Bull Ring. Alan had what turned out to be a less-than-stellar chicken sandwich. Nerves getting the better of me, I asked him if it was foul. It was only when Alan laughed that I realized I’d made a joke. I didn’t let on that it was an accident.
Tatung were keen to get Manic Miner onto their new machine. As we toured the facility, I did my best to look like I knew what I was looking at. The engineers spoke fluently about CP/M and the logistics of porting the code. I nodded along, trying to appear thoughtful while internally panicking. I knew very little about CP/M. I wasn’t entirely sure what porting meant. I figured it probably involved serial or parallel ports. I was just a kid who poked Z80 hex codes into a Spectrum, trying not to be found out.
I must have done well enough, because soon after, a Tatung Einstein appeared at the office. It was treated with reverence and awarded its own private room, like a visiting dignitary. On my first unsupervised visit, I inserted the boot disk and powered it up. It loaded into its environment, presenting a menu. I tapped a key, I don’t recall which, and the screen flashed.
I had triggered a format command. The boot disk. Which, crucially, was not write-protected.
In less than a second, I had wiped the operating system of our pristine development machine.
The shame of having to call Tatung and ask for a replacement disk was excruciating, and my mishap hadn’t gone unnoticed by the Software Projects powers that be.
The Einstein was a programmer’s machine through and through; it became a favorite among software houses for development work, but as a consumer product, it was a disaster. Manic Miner never made it onto the Einstein. Like the machine itself, the port was beautiful in theory and went nowhere in practice.
While I was accidentally formatting boot disks, my colleagues were getting things done. Stoo Fotheringham had switched from coding to pixel art, stylus in hand at his KoalaPainter, knocking out loading screens and artwork. He had the eye for it. Marc Dawson, fresh from the collapse of Imagine Software, was working on copy protection for some of the US games that Software Projects was publishing.
The MSX platform seemed promising. It had real market traction, particularly in Japan, and getting Manic Miner onto it made obvious business sense. We had a consumer unit, a Yamaha, if I recall correctly, complete with Japanese manuals that none of us could read. In 1984, you couldn’t just Google the English documentation.
Derrick Rowson, a fellow programmer at Software Projects, and I spent hours trying to reverse engineer the system, writing small BASIC programs to poke values into port addresses and see what happened. We were hoping to stumble upon how to display tiles or sprites on-screen. It was predictably fruitless.
I kept asking for proper development tools. An assembler. Documentation we could actually read. Trying to explain that video games were not developed in BASIC.
The requests went nowhere.
What I didn’t know was that they were being noted.
Tommy Barton, Software Projects’ co-founder (and final boss), had been in discussions with Hudson Soft, a Japanese developer and publisher, presumably about bringing the Software Projects catalog to Japanese platforms. Whatever was said in those conversations, the message that filtered back was unambiguous: no further tools were needed beyond BASIC on ROM, and anyone claiming otherwise was making excuses. He would never elaborate beyond “his contacts at Hudson Soft,” so the details remained a mystery. In his mind, my requests weren’t a reasonable development requirement. They were a sign that I didn’t know what I was doing.
One afternoon, the summons came. I was called to the front of the building, into the Pirate Ship.
Tommy’s wood-paneled office was a deliberate display of authority. Dark timber, heavy desk, no sense that you were meant to be comfortable there. Tommy sat behind it, looking at me with the weary patience of a man explaining the obvious to a simpleton.
Rest in peace, Tommy. For all his shortcomings and the terror he inspired in me that day, he gave me my first break in the industry. But in that moment, there was no sentimentality.
“You’re on the chopping block, Steve,” he said.
He didn’t look up.
“You haven’t produced anything. You keep whining about tools. Making excuses.”
I tried to push back, but he cut me off.
“You erased the disk on the Tatung. You don’t know what you’re doing.”
Then came the accusation of fraud. He suggested someone else must have written my demo game. I had sweated bullets over that code, but looking at my long hair and my lack of output, Tommy just saw a subversive. One of the sprites I had created for the demo was a spinning Campaign for Nuclear Disarmament logo. I’d picked it because it was an easy geometric shape to animate, pixel by bloody pixel, and somewhat recognizable. CND protests had been in the news, and the previous October, there had been a massive demonstration in London with perhaps 400,000 participants. He seemed to view me as a CND supporter, calling me “idealistic.” To him, I wasn’t a programmer; I was just a lazy non-conformist who had lied his way through the door.
“I need an assembler, Tommy. I can’t write machine code on a napkin.”
He leaned forward then, fixing me with a stare.
“The cavemen didn’t need paintbrushes.”
It was, I would come to learn, a favorite line of Tommy’s. He deployed it whenever a developer had the temerity to ask for tools. It was an absurd metaphor, but the threat behind it was real. Imagine Software, whose collapse had sent several programmers our way, had been notorious for lavishing money on development infrastructure, Sage cross-development systems, and the like. Whether Tommy had drawn a direct line between Imagine’s spending habits and their demise, I couldn’t say, but his resistance to tool requests had a certain logic to it, however misguided. I walked away from that meeting still employed, but with a clear understanding that I needed to buck up my ideas.
I was not the only one on the receiving end. One of the other programmers, a refugee from Imagine as it happened, pushed to his limit after one such exchange, finally delivered the retort that had eluded the rest of us. “Yeah, but they needed paint.” Not said by me, alas. But said, and exactly right.
Salvation arrived in the form of the Amstrad CPC-464.
It was a new machine, announced just as my position at Software Projects was looking increasingly precarious. Crucially, it was Z80-based, it had a real keyboard, and it came with documentation. Paint, at last. The plan was simple: start with Manic Miner, the company’s biggest hit, and then tackle Jet Set Willy.
I teamed up with Derrick. We didn’t have Matthew Smith’s original source code for Manic Miner, and as far as I know, nobody outside of Matthew ever did. Nor was Matthew around to ask.
That meant we had to extract the logic by ourselves from the original Spectrum binaries. The process was less software development and more digital archaeology.
On one of Matthew’s rare visits to the Zoo, his only real input into the CPC version, as far as I can recall, was pointing out that it was redundant to show “Amstrad CPC 464” on the title screen, so we removed it.
Derrick had written a custom monitor and disassembler, a piece of relocatable code that could live anywhere in memory. We would load his tool, load the original game, and then start the slow, agonizing process of dissection. We disassembled it section by section, staring at raw Z80 machine code until patterns emerged. But seeing the code was only half the battle. There was no “copy-paste” in 1984, at least none that was available to us. Once we figured out how a routine worked, we often had to manually retype the logic into our own source files. It was laborious, repetitive, and absolutely essential.
Our workflow developed a rhythm that felt strangely modern. We fell into a habit of distributed development. Derrick would go home to work on a map editor while I went home to Holt Road to work on the sound system, or whatever else needed doing. We’d meet up in the office the next day and figure out how to stitch it all together.
We successfully completed the Manic Miner port in a couple of months.
Looking back, that was the moment it clicked. My first published game. I could do this.
Flushed with the success of our port and its critical reception, it was on to Jet Set Willy. The challenge was the same. Matthew Smith was not involved, and no source code was provided. Once again, Derrick and I were on our own, working from the Spectrum binary.
By this point, our development systems had been upgraded to Tandy TRS-80 Model 4s. Derrick had even managed to secure a hard drive for his, 5MB if I recall correctly, which felt like an almost obscene amount of storage at the time. Tommy, it seemed, had quietly accepted that paintbrushes were, in fact, required. Development at home continued regardless. My own CPC 464, by then upgraded with a 3” disk drive, got as much of a workout as anything in the office. Looking back, Software Projects got their money’s worth. Long hours, no overtime, and a genuine obsession with the work. The real dividend, though, was mine. It was a time of dramatic learning.
The original Spectrum version of Jet Set Willy used the tune “If I Were a Rich Man” from Fiddler on the Roof as in-game music. For the Amstrad port, we needed something, shall we say, original. For legal reasons. There was no producer managing this. No audio director. There was just a gap where a tune should be. So, in the spirit of going above and beyond, I decided to fill it myself.
It was a two-finger operation. One finger on the bass line, one on the lead, picked out on a Casio MT-30, a basic keyboard with no MIDI or sequencing, but just enough polyphony to make it work. I picked out an original composition, note by note. There was no MIDI. There were no sequencers. Once I had the melody, the transposition was purely manual. I had to mentally transcribe every note from the keyboard into a numerical index, then type those numbers into the assembler as data statements. It was music by way of accountancy.
Meanwhile, downstairs at Holt Road, a parallel project was underway. Matthew Smith, Stoo, and Marc were working full-time on The Mega Tree, Matthew’s follow-up to Jet Set Willy. Development gear had been set up in the living room. Stoo was living in the house; Marc would often stay over; Matthew commuted in on his motorbike, which I believe Stoo managed to knock over at some point.
The game was being developed primarily for the C64, with Matthew in a design role rather than coding, which was handled by Marc. I remember some dancing tree sprites. Beyond that, the details are hazy, which probably tells you something about the pace of progress. The same management-by-wishful-thinking philosophy that had left me staring at undocumented machines in the Zoo was playing out in the living room, too. The Mega Tree was quietly canceled. Matthew’s next game never came. Years later, there was some kerfuffle about development disks being found and auctioned, but having been in the house at the time, I can say that not much had actually been done.
My own interaction with Matthew was limited. I was too deep in Jet Set Willy to pay much attention. I do remember one conversation where I walked him through setting up interrupt mode 2 on the Spectrum. He listened politely and then remarked that he didn’t really see the point of it. The man who had written Manic Miner had his own way of doing things.
Back in the Zoo, Derrick and I were tackling the Specials, the cinematic flourishes we added to the Amstrad version of Jet Set Willy. We got ambitious. The original game had sixty rooms. We looked at the Amstrad’s memory and thought: we can do better. The frustrated game designer in me woke up. We expanded the mansion, adding rooms, enemies, and secrets until we hit 132 screens.
To the best of my recollection, there was no input from anyone else at Software Projects on the new rooms. No design direction, no production oversight, no management involvement. Mostly, we were just asked, “When will it be done?”
It was Derrick who masterminded the Cartography Room, a feature that became the backbone of our development process. On the surface, it was a cool addition for the player, a room that lit up a grid square for every location you visited. But for us, it was an essential debug tool.
If you typed the cheat code “EMMRAIDNAPRRRTT,” the room transformed into a fully functional level selector. Derrick casually announced the code one day.
“What is that?” I asked.
“It’s a kid’s rhyme,” he said. “Eeny Meeny Macka Racka.”
I knew “Eeny Meeny Miny Moe,” but this was new to me. We typed it so often during testing that the strange sequence of keys became muscle memory. I think we eventually tacked a “HI” and maybe a “!” onto the end at some point, just to make it longer.
But the real satisfaction didn’t just come from the code; it came from the content.
Designing those new levels was just as rewarding as the programming. We added a Starship Enterprise section, which meant Willy needed a wardrobe change. I drew a pixelated space helmet to replace his trademark top hat. It wasn’t high art, but it worked. More importantly, we needed enemies for the dozens of new rooms we were adding. I dug into my archives and pulled out the sprites from my original demo, the very same demo Tommy had accused me of faking.
There was a delicious irony in that. Tommy had claimed I was a liar, implying I hadn’t written the code or drawn the graphics. Now, those “fraudulent” sprites were being shipped in the company’s flagship product. Tommy didn’t notice. He didn’t understand software development; he was a businessman in a Pirate Ship. Sprites were just things that moved on a screen. But for me, seeing those little characters marching around inside Jet Set Willy felt like a quiet vindication.
We shipped both games while I was still twenty-one.
Looking back, that stretch of time changed everything. A few months earlier, I’d been the kid trying not to get found out, bluffing my way through meetings and accidentally wiping boot disks. Now I’d helped ship two major titles, reverse engineered from raw binaries, with my own code, my own tools, and, for better or worse, my own music.
By the time Jet Set Willy shipped, and with the Mega Tree quietly canceled, Stoo and Marc had already left to join a new Liverpool outfit, Odin Computer Graphics. Odin was aiming for the high end of the market. Better packaging, higher prices, bigger ambition. Derrick stayed at Software Projects to port our Amstrad version of Jet Set Willy back to the Spectrum, a bizarre ouroboros of development that became Jet Set Willy 2. Derrick is credited (naturally, he did the back-port). I am not credited. Julian Wiseman maintains a remarkable annotated map of the game at jdawiseman.com, where Derrick and I have both left notes about the room designs.
With Jet Set Willy shipped and no new game in sight from Matthew Smith, it was time for me to start thinking about what came next. I wondered what exactly Odin Computer Graphics was cooking up, and when the opportunity came to go and take a look, I didn’t hesitate.
Chapter 6: The Holt Road Heist
·
May 2
The transition from Software Projects to Odin Computer Graphics was not a clean break. It was a hostage situation.
This chapter is the fifth part of an ongoing series. An evolving list of chapters is available on the contents page.
No posts

Comments
Nothing yet. Say the first thing.
Sign in to join the conversation.