Converting Nethack to the C64

2018 has started off pretty well as far as time management goes. I’ve actually begun to make some progress on hitherto stalled projects which I’ll talk about in my next few posts. Its amazing the amount of time ditching idle browsing and keeping up with Twitter frees up.

Thanks to being born in the early seventies, my middle childhood and teenage years coincided with the eighties British computer revolution. I can’t emphasise enough the impact of this on me at the time. I lived and breathed these new machines. To cut a long story short, I ended up with a Commodore 64 and was completely obsessed with knowing everything about it. I owe my entire career to that time and to that machine in particular.

Fast forward 30-odd years (insert horrified emoji here) and I’m delighted that retro computing is undergoing somewhat of a renaissance, with the C64 in particular seeing a bunch of new games and demos being written for it. Some of the stuff getting posted to the /r/c64 subreddit these days is quite amazing. I’ve been following development of this RPG by Sarah Jane Avory with particular interest for example. New fanzines like Freeze64 and the showcase of games on show how much love there still is out there for the good old breadbin.

So a while back I pondered starting a project to contribute to this reawakened scene, without being quite sure what to do. Having seen just about every demo with a scroll text back in the day I didn’t think the world needed any more of those. There wasn’t a huge amount of spare time to create a game from scratch. What about, I wondered, doing a conversion? That would mean not having to figure out gameplay, and perhaps graphics and sound might be easier too. What game did the C64 miss out on, back then?

By coincidence I happened across a list of ‘rogue like’ game development FAQs on Reddit which reminded me of Nethack, the classic old text based game. I could port that. Perfect. The C64 was known for it’s PETSCII character set, so that hopefully bodes well. I don’t even remember it having any sound.. plus the code is open source!

Surely, I thought, this must have been done already? A good search around suggested it hadn’t (although there were some similar old games). I’m not underestimating the difficulty here though - the least powerful system I ever personally saw Nethack running on was an Amiga back in the day, which had way more resources than the C64 ever had.

So yes, I’m porting an old game to an old platform for the love and challenge of it.

I’ve decided to set myself some limitations: I’m not expecting this done be done in a hurry. Likely I’ll only have a few hours a month to work on this. There’s no rush. No deadlines. I do want it to run on a stock C64 with disk drive if possible, so at least a few hours will be spent reviving my old setup, which is languishing in the garage at the moment.

Nethack screenshot