Back to this month's issue
Features
Columns
Reviews
Why I Love...
Bonus Stage
 
   
Homebrew

 

 

 

 

 
 

All done with hammers and bailing twine.
By Ahchay

Summer 2000, the millennium bug had failed to bring about an end to western civilisation, Scotland struck a late blow against one of the Thatcher government’s least endearing laws, some Football tournament or other was underway and a Japanese corporate take-over broke my heart. June brought news that SNK, not entirely unexpectedly, were being bought out by a pachinko manufacturer called Aruze – who immediately stopped all exports to concentrate on the home market, effectively bringing the NGPC’s (Neo-Geo Pocket Color) shelf-life to a premature end. SNK has since resurfaced as the (New! Improved!) Playmore, but the NGPC remains consigned to the dusty back-shelves of the great videogaming store in the sky.

But enough history.

I was left floundering, searching for increasingly more obscure titles to extend the life of my pocket companion (I had no desire to downgrade to the inferior Game Boy Color, even if you could buy games for it). First of all I concentrated on filling the gaps in my English language collection, then when that became too expensive I turned to Japan for my gaming thrills. Eventually, by the time I’d resorted to Hentai Mahjonng and a strange matching game which involved giving cards to a pink dog, I realised that I had reached the bottom of the barrel. It was time to hang up the spurs and go back to reading books on the train.

Or was it? Random ebay chance led me to an auction for a flash linker, something I had previously dismissed as an overcomplicated road to piracy. But this auction was different – “Write your own games!” it said, in an obvious attempt to get around ebay’s shoot-first policy with such auctions. But that was enough to get me interested. Could I really write my own games for my favourite toy? Was there a way that I could turn my day job of churning out Visual Basic code to better uses?


Surely one of the most evil addictions.

I had to find out. The flash cart was duly purchased and I spent the weeks waiting for it to arrive from Hong Kong searching the internet for ways that a humble VB programmer could make his own videogames.

I was to be disappointed. I found a few people who had written their own games (and lots of ROM sites) but they were all produced in hoary old assembler which was all a bit of a non-starter. The only game I could find that was written in anything approaching a modern language, was a Pac Man game written in some of the most indecipherable C code I have ever seen. Worse, there was no sign of a compiler or any instructions on how to actually build the thing. My flash cart arrived and I spent a happy few hours playing the games I had managed to dig up and that could so easily have been the end of it…

Meanwhile, elsewhere on the internet, other people were also poring over the same code. People with a clue. In particular, Ivan Macintosh (who I vaguely knew from the UK arcade collecting scene) and Roger Bacon. Roger made the first breakthrough, managing to track down the relevant compiler and producing an excellent how-to guide on getting it to work. Ivan had then taking this as a starting point to produce a set of standard libraries which enabled fledgling NGPC developers to produce their own work.

I jumped at the chance.

My adventures in code are a story for another day (and probably only of interest to other coders), but I quickly – if not smoothly – went from a small Hello World program to a passable, if far from perfect, version of Mr Do!

barbarian.png
Shoot the badly drawn horse!

But it was only when I gave up on making incremental changes to Mr Do! that I managed to produce my masterpiece. Barbarian Invaders, a riff on the Space Invaders theme inspired by a brief passage in a Terry Pratchett book. Taking all of the lessons learnt from my first project and redesigning the sprite manipulation functions from the ground up, I managed to get my little barbarians up and snaking down the screen in a bizarre mutant cross between Space Invaders and Centipede within a handful of hours. Two weeks of frenzied evening programming later and I had produced my first properly playable game. I’m very proud of Barbarian Invaders, despite the rather rubbish horse.

More games followed, some more successful than others – Same Game, Juno First, Joust, Blobmatic, Qix, Mechfighter and the previously reported 7 day Robotron. Other people were producing games too – the improbably named Thor for instance churning out an increasingly excellent series of games including versions of Bedazzled and Columns and culminating in a version of Bomberman which is arguably the best game ever produced on the NGPC – rivalling the GBA versions which is no mean technical feat. Meanwhile, on this side of the channel, the even more improably named Fuz released a series of quite wonderful little tech demos including nearly playable versions of Uridium, Fantasy World Dizzy and Trailblazer.


Inspiration can come from anywhere.

Most of all though, this little community of developers kept my beloved NGPC alive when its makers had abandoned it and, more importantly, they gave me a purpose in some pretty tough times. Homebrew games development turned programming from being something that I did, to be being something that I loved. I’ve slowed down in recent years, but still dabble with coding for the pocket.

I’ll finish that Robotron game one of these days…

Useful links

Ivan Macintosh : http://www.neobitz.com/ngpc/

Chris Ahchay : http://www.ahchay.co.uk/html/buildproject.php?devdir=ngpcdev

Thor : http://www.geocities.com/rtb7/

Soft‘n Fuzzy : http://www.softnfuzzy.freeserve.co.uk/

November 2005

Comments.

Back to this month's issue