Jonathan Cauldwell has had over 50 titles published for the ZX Spectrum. Many of you will know the classic Egghead games and utilities he has developed over the years.
Many of his titles are still available to purchase for the Spectrum - and he still develops games for our favourite 8-bit machine. It's fair to say that Jonathan really helps to keep the classic games scene going with his modern arcade games created with 48K of RAM or less.
We were fortunate enough to catch up with Jonathan over the festive period who was more than happy to share with us his views on development for the ZX Spectrum.
1: What was the first computer you ever programmed on? And how old were you?
I played around on friends' ZX81's back in the early 80s, but don't remember doing much programming on them. The first time I remember actually being interested in programming was probably back in 1983, shortly before I bought my first Spectrum. I remember copying program listings from books in the school library, then studying the listings to see if I could make sense of them. Of course, I didn't learn much until I typed them in and played around with them to see what would happen if certain things were changed. A friend gave me his stash of old Sinclair Programs listings, and I particularly remember looking for the ones with machine code routines because machine code could do so much more than BASIC.
2: How did you get into developing games? Did it start with BASIC programming before you moved into assembler?
Yes, for a while. It was simple enough to understand, although the results were not very good. The main issue with BASIC was the lack of speed, so it isn't the sort of language you can really use to write an arcade game. You could just about manage TRON, and I knocked up a Frogger clone with it the other year, but there's not much else you can do with it aside from strategy games. In 1985 I started to learn machine code, which was a bit of a shock. It was like learning to program all over again, because the techniques required were so radically different to those for BASIC.
3: You seemed to start Spectrum game development a little after the 'boom' years of the mid-eighties. How was it working with 8-bits just as the 16-bit machines were taking over as home gaming computers?
Well, I had an Amiga myself, and a few friends of mine had Atari STs. To tell you the truth I was a little disappointed by the games that were available for the 16-bit machines at the time. Programmers had been getting the best out of the 8 bits for many years, but were still finding their feet somewhat on the new formats. The games just weren't as playable as their 8-bit counterparts. I kept the Spectrum, because the games were better, and also because I was starting to write my own games. Unfortunately, software houses were starting to pull out of the Spectrum market as sales dwindled. One of my games was cancelled after the contracts were signed and the artwork completed. I even received the advance - but then the publisher, GTi, decided not to go ahead with it. Still, at least magazines were still publishing bedroom programmers' games. There may not have been much money in it, but I was only writing games for kicks anyway. Getting paid was just a bonus.
4: What did/do you like about developing on the Spectrum?
Its simplicity. Everything is there, everything is accessible.
5: Conversely, what did/do you not like about programming the Spectrum?
Its simplicity. You have to do everything yourself and it can be hard work. It's not so difficult when you've been programming the machine for a couple of decades and have built up a vast library of routines to do just about everything, but it can be a nightmare when you're just getting started.
6: Did you work on any of the other 8-bit or 16-bit machines during the late 80's and early 90's?
I dabbled in 68000, and wrote a point-and-click card game for the Amiga. I have no idea what became of it, though.
7: Were you given 'free reign' to develop games, or did other people come up with gaming concepts too?
I had free range, more or less. Beyond Belief did ask me to do a conversion of a C64 game once, a top-down racer which was to be called Jimmy's Grand Prix. So I wrote a Spectrum game based on a spec I was given over the phone, and sent it off. In the end, Beyond Belief went belly-up before either the Spectrum or C64 versions were published. You'll find Jimmy's Grand Prix on the Games that Weren't website for the C64, so it doesn't look like it survived. As for the Spectrum version, it was tweaked a little to become Grand Prix Drivers and released on my Bumper Boogie Pack compilation in 1993. Retro-Soft have the rights to distribute the game now so you might find it one one of their compilations.
8: Which other games developers or software houses impressed you at the time?
Mike Lamb always did a very good job, as did Joffa, and ACG of course. I always liked John Gibson's games too. Jon Ritman was a hero, and I liked some of Pete Cooke's early stuff.
9: Do you have any favourite Spectrum games (your own titles and games by other coders)?
Halls of the Things is my favourite game of all time, on any system. There are other games I play from time to time, mostly those with quirky designs. Skool Daze is brilliant, obviously, but there are others like Escape from Krakatoa and Rocket Raider which seem to have passed most people by.
10: Do you currently develop software on other platforms?
I've been working on a CPC conversion of Fun Park for some years now, but that's still some way off. Nicholas Campbell converted my Area 51 minigame to the Amstrad, and then there's Christopher Dewhursts' eggsellent conversion of Egghead in Space for the Beeb. Other than that, it's all Spectrum. I would like to do more CPC games though.
11: How do you think todays games compare to those from the (classic gaming) 8-bit era?
Don't get me started on modern games - they're all graphics, and little gameplay. It seems attention is lavished on the story, and the actual game bit gets included later somewhere along the way, if you're lucky. It's completely the wrong way round. You have to approach a game from the gameplay perspective, "grow" your design slowly and organically, and let it take shape that way. Only at the end should you think about trying to come up with a story to fit the action. Personally, I think the story is irrelevant 90% of the time anyway.
Back in the 8-bit era nobody was trying to produce interactive movies, the gameplay was what made a game immersive. That's how I like my games. (We agree)
12: Keeping with modern versus retro games - it seems that coders during the 8-bit and 16-bit era really pushed the machines way beyond their capabilities. How did you manage to squeeze more and more out of the humble Speccy?
The only way is through efficiency, of one sort or another. You have to find new ways of doing things to squeeze as much into the 40-odd K of available RAM, or to get the kind of speed you need to bounce lots of sprites around at 25 frames per second. Some things are more efficient than others - program code is usually very efficient, graphics eat up memory like you wouldn't believe, and text can sometimes be expensive. When you're trying to cram a Civilization clone into less than 4K you need to keep graphics and text to an absolute minimum, and write very efficient code.
Once again many thanks to Jonathan for taking the time to do this!
Classic Games and ZX Spectrum Games