Loading

So what did I use my ZX Spectrum for? Why did I get an Amstrad CPC?

Well, after my first steps in programming as outlined here you would think I was going forward with more programming being my next ventures on ‘home computers’.  Yes, clearly I went on to use my ZX Spectrum for…

…games.  Well, didn’t everyone else?

Well, yes, I did do some programming.  But despite the revolution that the Spectrum was, I personally didn’t find it that good for exploring programming.  It had BASIC on it and it wasn’t a great version (although I came to find my way around it pretty well).  I wasn’t satisfied however…I couldn’t afford a microdrive or disk drive with interface and saving programs to tape in BASIC just put me off of taking the ZX Spectrum seriously for programming.  The turnaround for development was frustrating.  I did little things here and there – I read programming books and I typed in listings.  I learned stuff.  Assembly language evaded me – I didn’t have an assembler anyway and I am sure that would have been required to ‘get it’, but that’s the point – I just didn’t know what it was and didn’t have the tools to explore and find out, which is how things happened back then.

I did try some things to step out of BASIC.  If there was some kind of game development suite available, I would check it out.  The Quill for adventure games…yes I did that, same for Graphic Adventure Creator – I was enjoying making games one way or the other.  I also came across a package called White Lightning, which used FORTH.  This fascinated me immensely, purely because it wasn’t BASIC and could possibly help me author arcade games that ran faster than they would in BASIC.  All very interesting and I still have my boxed copy of that package today, but it was way beyond where I was at anyway.  I would find it much easier to get into that today and have often pondered dabbling in it…I kind of like some of the things FORTH does.

So eventually, I just got a more capable machine with a built in disk drive – an Amstrad CPC 6128.  It might have been wise to get a BBC Micro given that’s what we used at school, but in the Amstrad I saw something I personally thought had many similarities but was a little better.  I also preferred the Amstrad games.  While it didn’t always have the games that the Spectrum or C64 had, the BBC had a much worse problem.  It had games and it had games I wanted, but more of the games I wanted were elsewhere.

I soon obtained an assembler and started putting Z80 programs together.  It wasn’t a great assembler and everyone was using something called MAXAM.  Seemed to me then that I wanted MAXAM too and should have it on ROM so it’s power was more or less ‘built in’ to my computer.  It was a great choice – editor available instantly and assembling at the command of just a few keystrokes.

So at school I programmed on the BBC Micro in BASIC still and at home I would use the Amstrad CPC, venturing into Z80 when it made sense.  I recall putting a game together for a school project.  Sometimes my CS teacher let me submit work from the Amstrad CPC as homework.  She couldn’t run the programs because the BASIC version was slightly different but she could read the listings and see what I was up to.

I didn’t actually get into the Computer Studies class at first.  At the end of the 3rd year of ‘high school’ you would choose ‘options’.  I couldn’t work CS into my options that well.  It wasn’t a case of choosing what you wanted exactly – there were constraints to work within.  You could choose things from certain groups.  Looking back, I think they had a schedule of lessons in mind already and that was the constraint.  Whenever I could choose CS, it meant a great compromise of having to do something really shitty and I wasn’t into Art, Music, Drama or foreign languages back then.  I especially disliked foreign languages due to the teachers in that department, who I felt were quite different to the rest and not very personable.  So I chose things I would tolerate and put CS in as a ‘preference’.  I didn’t get it.  I was gutted.  In it’s place…Biology.  It wasn’t intolerable, but it was the booby prize.

I wouldn’t say I put much effort into Biology.  My work was poor, as was my attitude to class.  I just wasn’t interested.  After about 4 months, the teacher pulled me aside.  She realized I didn’t want to be in the class and I told her the whole story.  I was even more upset because as it turned out they’d scheduled a CS class at the same time as Biology, so I wasn’t too sure how this had happened.  We made a deal in that she would try to get me in the CS class but if she failed, I would accept it and try to do a little better.  I didn’t have to be interested, she just needed me to cooperate and not ‘not bother’.

I owe this teacher a lot.  I spoke with the CS teacher as part of the negotiations to make it work.  I think she was skeptical and it was a trial – I was given four months of classwork to catch up on.  I did it all in a week and was accepted into the class, where the rest of my clan were.  Well, clan might be strong…they were there yes, but CS was also full of ‘dossers’ too – basically other people who ‘didn’t want to be in Biology’.  We all had fun.

That game I made in class, a gambling and horse racing simulator type thing was my first experience of making a game and giving it out for others to play.  There were times more or less the whole class had it running and were playing it instead of working.  That was quite an experience – my first ‘gamers’.  I didn’t think games would go down too well with the examining board so I authored a phone directory program.  It was supposed to be a little more than this but the CS teacher thought it was too ambitious so I cut it down a little.

Well, both programs were liked…I eventually left school with an ‘A’ in CS.  I probably wouldn’t have even bothered to turn up for the Biology exam.

Some of the Amstrad CPC work at home would be based on things that inspired me in the school classes though.  I remember the BBC had a ‘Teletext’ mode – basically a mode suited to receiving pages of text with some chunky graphics.  The idea was really a low bandwidth transmission almost like a very cheap webpage.  It was used in UK TV’s at the time for information pages and broadcast over the air.  The BBC Micro supported it and it was used in many BBS’s too.  Once I understood it, I thought it was a good idea.  The Amstrad CPC didn’t have this so I put something similar together.  Wasn’t quite the same because it really needed the special screen mode, but the spirit was one of being able to put pages and pages of information together on a disk and have an editor for the blocky graphics.  It was fun to do and it was fun to make pages of information and stuff.

My assembly work progressed into adding ‘bar commands’.  A bar command was simply a new keyword that could be used in the BASIC interpreter (booting the assembler could be done with a bar command ‘|MAXAM’ for example).  I was authoring bar commands more suitable to adding sprite and graphics manipulation functionality into BASIC programs.  I wanted some power of assembly, but in BASIC.  I wrote a number of things that would let you define special characters, combine them to form a type of sprite graphics plot, animate them and draw them anywhere on the screen.

School was ending for me now.  At 16 you have to choose – get a job, or stay on at either school or college.  I didn’t know what to do.  I visited the local college, checked that out.  I spoke to the military about joining the Royal Marines (yes, I was vaguely a ‘tough guy’ back then).  I went on a few job interviews (not all computing related) and wasn’t offered anything.  That summer, no longer at school I was killing time before being forced to make a decision.  I recall good weather and spending a lot of time on a sun lounger in the yard feeling I’d put the hard work of my life (school) behind me – so funny thinking back to how I thought back then.  During that time I saw an ad in the local newspaper for trainee game programmers.  I applied and I sent in the assembly language listings.  I got an interview.

The waiting room was full of local candidates.  I was in my school trousers.  Some of the candidates were in expensive suits.  There was a guy with all this jewelry on – 16 years old like me and all these gold rings, chains and so on.  I don’t know what job he was going for.  My turn came around and I was sat with three interviewers.  They said straight away that they didn’t actually expect anyone to send a demo disk in, but they knew it could happen and they weren’t at all prepared to receive one containing assembly programs.  I did get asked some questions yes, but they more or less said that I was a very strong prospect.  I went home feeling I’d probably got the job.  My Mum had drove me into town and drove me back.  When we walked through the door at home, the phone rang.  It was one of the interviewers – they wanted to invite me back the next day so that I could spend some time with them.

So I did that.  It wasn’t what I expected.  I manned their booth at a local careers fair.  Yes, I started the industry as a ‘booth babe’.  Made sense though really.  What it was for them was an opportunity for one of the interviewers to get to know me better – he was also manning the booth.  When he wasn’t talking to a recruit for their printing business, he’d stand next to me and we would talk.  I think we had a chippy lunch if I recall and stood outside the chip shop talking.  I think if anything, they were trying to figure out what sort of person I was and whether I was a nutter or not.  Perhaps a discussion over a bag of chips is the best way of interviewing most people?

Back in time a little…in addition to FORTH, I explored other possibilities too.  The Amstrad CPC drove this further because you could use the CP/M operating system and for that there were shareware compilers for just about everything.  I used to boot CP/M to play around with LOGO, which I found fun because of the graphics turtle.  I fiddled around with Pascal and I had compilers for things like Modula-2, Prolog and Lisp.  I just used to toy with them really.  A great driver for me was exploring different languages – I can’t say that I explored many of them well enough to call myself a programmer in that language, but the idea that a language existed and understanding how it came about, what it was supposed to be good at, why there were so many languages, etc…it all just fascinated me.

Always looking for alternatives, I eventually ended up with  BCPL compiler on ROM for the Amstrad machine.  This was my first exploration into curly brackets style languages.  Again, a lot of the driver with BCPL was because it ‘wasn’t BASIC’, could be faster, yet still high level for productivity.  I was so much into the idea I had a good development suite and could learn a language I tracked down the language creator and ordered ‘The BCPL book’ (that’s not it’s name but that’s what we generally call the authoritative texts for any particular language) from the print shop of the University he was situated at.  Mailing off for the list of books they published, eventually putting an order in and giving my Dad some pocket money back in return for him writing a check in the name of the publisher…all very proactive things for a 14 year old to be doing.  It was good to have such interests.

If I am putting a series of posts together about my way into game development and the games I played (wasn’t intentional but it looks like it’s going that way), then like the last post I should speak about the games that were important to me.  The above text completely misses that really so let’s switch context.

I had two or three years of dedicated Spectrum use and even after I got the Amstrad CPC I still played it.  There are 100’s of Spectrum games I liked.  I think for me the most memorable would be Turbo Esprit, Skool Daze, Scuba Dive and Rebelstar.  The list could go on and on really, but I think those games have a heavy influence on me.

Turbo Esprit had me for hours – I think of it as an early Grand Theft Auto.  Skool Daze was just fun, as was the follow up Back 2 Skool.  Scuba Dive…addictive, original and well balanced.  Rebelstar was a very different type of game that I was introduced to at my spoiled friends house.  I got into that series and Laser Squad is one of my all time faves.

Quite unusual, I wasn’t really into Ultimate’s (Rare before they were called Rare) titles.  Most Spectrum users were all over those.  Atic Atac I think I mentioned in the last post and I liked it, but I thought it was way too hard and the goals not clear – I found it frustrating.  I liked their early titles such as Pssst!, Cookie, JetPac and TransAm.  I didn’t get into their isometric games at all (my favorite isometric game was the Ritman/Drummond Batman).  Sabre Wulf did nothing for me.  Sorry.

Games in played in my Amstrad era…well, a lot of the same games were available it’s just that the Amstrad was more colorful.  Laser Squad (mentioned above) was released in my Amstrad era so that was my machine of choice for that game.  I also enjoyed Spindizzy and Get Dexter.  Ocean’s Imagine label had a pretty good version of Pong that I would return to again and again for quick fixes.  The CPC version of Gryzor (Contra) pissed all over anything on the other platforms, as did Ikari Warriors.  IMHO these just weren’t worth playing on other platforms.  Then, there is also the CPC conversions of Gauntlet I and II, which were just well suited to the palette on that platform and they looked amazing and really did play quite well.  Bomb Jack, Space Harrier, Head over Heels – same story, the best 8-bit versions.  This I feel is the strange story of the Amstrad CPC – if it was the least popular of the big three home micro’s in the UK (which I would define by ‘the ones that consistently had attention from publishers’) then it was a great game machine in it’s own right because it had a good share ‘best versions’ and original/exclusives.  Get Dexter is a great example of an original and exclusive (although this did later appear on the Atari ST).

I also need to mention Elite.  The BBC Micro is the home for Elite and this is where I first saw it.  That version is and always will be the definitive 8-bit version, I don’t care how many people hold up the C64 one.  That’s the thing though – there is the original BBC Micro version and then ‘the ports’.  While I was introduced to Elite on BBC Micro and played it there when I had access to the machine, at home I played the ports on both Spectrum and Amstrad CPC.  I was released in my ‘Spectrum era’ but about 1988/9 I managed to get a CPC disk version.  Elite has to be mentioned as one of the great games I played and went back to throughout this entire period.  Although I never made Elite status and even today it evades me as I play Elite Dangerous.

Really, games playing, game development and general programming were very much all subsets of a hobby called ‘home computing’.  I would describe this hobby as using a computer for useful things and figuring out how to do it well.  You would program.  You would do some artwork and be creative.  You’d put together disks based around each specific task, art being disks of art packages and all the art manipulation tools.  You’d do the same for Word Processing, Music, general housekeeping of your computer or <whatever>.  It wasn’t that you were into all these topics themselves, but you’d come across programs that would draw you in and allow you to explore such interests and figure out whether that was your thing.  You’d find ‘hobbies within the hobby’.  In some ways I think ‘home computing’ is a lost hobby nowadays – a lot of the possibility that was once so obviously here is abstracted by modern operating systems and user interfaces.

BTW: I got the job.  This is how I became a game developer.