by Andrew Davie

I recall distinctly when the first Famicom (Japan version of the NES) arrived at Melbourne House/BEAM. I still have that actual machine, having obtained it through a rather unlikely chain of ownership. But anyway, the small white/red unit landed on the desk of a small team at BEAM and Fred Milgrom had directed them to reverse engineer it. Nintendo, at that stage, wanted a significant fortune and your first-born child for the rights to program games for it – and Fred wasn’t going down that pathway. The team, as I recall it, was Adrian Thewlis and Lee Piraq, although I’m hazy on the exact composition. In any case, I was working on a C64 title at the time (Street Hassle/Bad Street Brawler), and one day I recall a conversation with Adrian where he told me that the Famicom was actually a 6502-based machine. This was really great news for me, because I was a 6502 guy (as opposed to the Z80 people). It’s not that I really wanted to program the machine, but more that I realised that if it was any good, then I’d have an easy time of it. Little did I know.

So, Adrian was busy compiling a “Manual” for this new machine. He had, I recall, disassembled Mario Bros., or some similar game, and was modifying bytes in the binary by hand and seeing what changed. Extremely tedious work. But in doing this he first discovered it was 6502 code (which then sped the process significantly), and then he started to figure out the graphics registers and how it all worked. So, the manual slowly took shape – but mostly it was pretty rough and had lots of missing information. About the time I finished the C64 game, Fred called me in and gave me the “good news”.  I was going to be writing BEAM’s first Nintendo game.

Now, during the reverse-engineering, Adrian was using Street Hassle as a sort of “test target” to see how certain things could be done. So he had a sort of demo going, based on Mario Bros., which used sprite shapes from Street Hassle; basic animation kind of stuff. This was what was dumped in my lap as “nearly finished” in terms of a game. All I had to do was take a “couple of weeks” and finish it off. Well, I probably exaggerate — but the point was made to me that it was a simple task, and that it was mostly complete. Well, it wasn’t. Not even close. And to make matters worse, the manual was woefully incomplete. I clearly remember much of it was filled with comments like “don’t know how this works”… “don’t know what this does”.

And it was all so unfamiliar — it didn’t work at all like the C64. I rather hated it, and it took me a long, long while to understand not only how the machine worked, but also to figure out the bits that were not yet reverse engineered properly, and how to write new systems that would take account of the limitations of the hardware. Essentially, Bad Street Brawler/Street Hassle was a terrible choice for a game for the machine. The original (C64) relied on huge sprites bouncing off the sides of the screen. This could not be translated to the Nintendo and keep the look/feel. I struggled big-time with depression, despair, and basic hatred for the game for many months. Probably 9 or so, and eventually the game was abandoned. And rightly so. A nightmare which still affects me when I think back on it.

Comparison of sprite size and pixel shapes for NES and C64

So, sometime later, having completed another game or two, Fred/Adam called me in and gave me the “good news” that they’d sold Bad Street Brawler (BSB) to Mattel, and that as it was so close to completion, it should only take me a “couple of weeks” to complete. Just dig up the backup and get to it. Oh, and it uses this cool new peripheral called the Power Glove.  Well, my heart fell out of my chest… um… backup?  It was only, looking back, by sheer good fortune that I actually had a backup somewhere. Certainly, we didn’t have a system in place for this, and although today it seems like this is what you do… back then it wasn’t really so professional. I thought I’d seen the end of it. But, no.

Mattel sent over a guardian for the prototype power glove – made from a golf glove and a few bits and pieces (ultrasonics, etc). It worked and was actually a pretty cool device. The guardian, Darren I think his name was, was nice enough. But I was abandoned in the office late nights, while he was partying. I can’t really recall how long it took me, but it was quite a while. And I was completely burned out at the end of it. Working on a game that was wrong for the system, had started out as a demo not intended for production, with documentation that was inadequate, on a timeline that was unachievable, on a platform we didn’t know how to develop for.

So of course, it was a disaster. It was just meant to be a vector for the Power Glove “codes” for other games. You’d plug in your power glove and BSB, then select the game you wanted to play. The codes for that game (i.e., the gesture movements) would be uploaded to the Powerglove, then you take out BSB, put in the other game, and off you go. Screwy idea, but basically designed to get power glove playability for existing games. BSB was a delivery vector, in other words.

So, this is all a long long time in my past now. Don’t know what it is… 35 years?  I was just thinking how I feel about all this today – I can say that I would never go through that again. I’d just up and walk out the door. At the time I was desperately unhappy and rather ill from stress. And yet somehow, I look back on those times with gratitude and fondness. More so for the friendships that have lasted to this day (I still have maybe a half-dozen BEAM people on my FB feed). I consider myself extremely fortunate to have been a part of that genesis of gaming as a programmer in the ‘80s.

Dr Andrew Davie joined Beam Software in 1984