Llamasoft History - Part 6

Higher Learning

29 I'd like to say that my time at University was successful and productive, but if I did I'd be fibbing. The bottom line was that I'd got into Uni on the basis of a set of A-levels that were geared towards doing Physics, and Physics simply wasn't what I was interested in any more. Academically, I flailed around, found the maths really difficult, and generally wasn't motivated enough to knuckle down and put in the study and learn enough to keep myself afloat. And besides, I spent far too much time playing around with the computers.

Socially, I had a much more productive time, and after the initial couple of weeks hanging out with entirely the wrong crowd for reasons of needing to belong to some peer group, I went for a wander one day and, walking through E-block, came across a door upon which someone had taped the logo from Pink Floyd's The Wall album. Rendered in dot-matrix printout, too. Pink Floyd and computers - I thought there was a fair chance that I might have something in common with whoever lived behind that door, so I knocked and introduced myself, and met Andy, who was to become a good friend in my life from that time onwards. As a result of that Floyd-inspired meeting I fell in with a much more suitable group of friends, and the need to get mortal drunk among strangers in order to fit in vanished completely.

Life at Uni was punctuated by, and anchored on, moments of gaming. We lived in halls a couple of miles off campus, and the day always started with a bike or bus ride. Lunchtimes were spent in the little games room in the student Union hall, where there was an array of pinballs (Black Knight, Gorgar, and, memorably, Nitro Ground Shaker that some nutter got mad at and tore the head off) and videogames such as Tail Gunner – with its lovely vector graphics and metal analog joystick – and the sublime beauty of Asteroids. On the other side of the room, there was Galaxian (which you could sometimes get credits out of by flicking 2p up the coin return slot) and, of course Space Invaders.

I'd retire to the arcade at lunchtimes with my Healthy Student Lunch (usually a can of Coke and a packet of Jaffa Cakes), play or spectate as finances dictated, and hang out with the other gamers of that year’s intake. Chief amongst those was Chico, who lived a couple of doors down from Andy of the Floyd printout, and who was another of our circle of mates. He was one of those people who are just awesome at videogames by default. I'd encounter more of that type years later at Atari test, but Chico was the first I'd ever met, and he was simply awesome at any game he chose to try. You'd go into an arcade with him and he'd get on a new machine for the first time, never having seen it before, and effortlessly rack up a massive hi-score on his first go.

The complete bastard.

I'd thought I was good at Space Invaders until I met Chico. He was so good at Space Invaders that he could play it forever - it was no longer a challenge to him at all. So if he played the game at all he'd set himself some task that us mere mortals simply could not even begin to comprehend. Shooting all the Invaders was too simple. He'd time his shots so precisely that he could shoot individual Invaders out of the flock to eventually form his initials from the remaining attackers.

He taught me about the Execution Method, where he exploited a bug in the game that meant the Invaders couldn’t bomb you if you let them come down to the very last line before they’d land and end the game. By shooting a ‘window’ in the Invaders' ranks, you could sit in complete safety for most of the game gorging yourself on 300-point saucers, but in order to progress you occasionally had to endure a nerve-wracking few moments of ultra-precise timing as you shot the last few Invaders moving directly over your shooter at ultra-low level. Miss one and the game would end instantly. It was a satisfyingly flashy trick to master, and elevated me to the ranks of not-too-shabby Space Invaders players. But I never got as awesomely good as Chico.

At anything.

The bastard.

30 There was more gaming to be had back in halls, where there was the Star Trek pinball and Space Wars as already mentioned, and a Future Spa pinball and another Space Invaders machine in K Block (which could occasionally be coerced into giving a free credit with judicious pressure of the knee on the coin door). It was in K Block that I reached a significant point of Space Invaders zen – I gained perfect knowledge of how the shot counting trick worked. I don't just mean that I could count the shots in my own game and always score 300-point saucers - that was just usual moderately skillful play. I mean that I could be anywhere in the room in K Block within earshot of the Invaders machine, talking to people, doing whatever else I might be doing, and if someone was playing the game, I could tell them instantly what shot number they were on. My brain automagically processed the sound effects from each game played and kept track of shot numbers without any conscious effort at all on my behalf.

There was gaming available in my room in O Block too, in the shape of my old Teleng/Rowtron console upon which matches of Gravity Tennis were played, and on my ZX80, which I spent many a night hunched over, bathed in the flickering monochrome cathode rays.

Being a student, in charge of my own finances at last, I decided to use them wisely, and figured that a term of eating baked beans was a small price to pay for finally assuaging my long-held lust for the Atari VCS. So I set out on my bike one day and rode to BB Adams at the end of the delightfully named Upper Goat Lane in Norwich and bought myself a VCS and a copy of Space Invaders (112 game variations!). I rode back to halls somewhat precariously, as the VCS box was quite large and awkward to carry on the handlebars of my bike, and spent the first of many afternoons worshipping in front of the VCS. My popularity increased with this purchase, and my room in O Block became a regular venue for sessions of Combat, Space Invaders and Basketball (but not Golf, which was complete crap, and looked more like a robot whacking a pixel with a pipe made of Lego than actual golf).

31 Midway through my time at Uni, Uncle Clive introduced the ZX81, which was both cheaper and better than the ZX80. I couldn't afford to make the swap (blowing all my grant on a VCS hadn't helped much), but I did send off for the ZX81's ROM, which was a drop-in replacement for the one in the ZX80 and upgraded the machine to have nearly all the features of the ZX81 (apart, sadly, from the improved display that didn't flash when you entered a key-stroke).

But now I had a somewhat improved BASIC in which I could actually use floating-point numbers and rudimentary graphics commands, and I tinkered with that for a while, making plots of 3D surfaces that looked like they were made of black Lego on snow. A guy I knew in P Block had an Acorn Atom, a much nicer machine with a 6502 like in the Commodore PET and dot-addressable graphics. Some nights I'd go and hang out in his somewhat evil-smelling room and hack on his Atom, producing a range of free-running abstract graphics generation programs that we'd get stoned and sit and watch.

There were computers to be fiddled with at Uni too - PETs and TRS-80s over in the comp sci block, Apple IIs downstairs in Biology which were the cause of my buying my first ever floppy disk (not drive - I just mean a single 5 1/4-inch floppy) to store my code on. Then there were the University mainframes... a Vax machine to which we all had quite restrictive accounts which allowed only a small amount of time each day (nowhere near enough time for the geekily-inclined).

The Vax installation was relatively new, and the thing was full of holes. We found that by carefully pressing Ctrl-C at the right time, we could drop out of the restrictive shell that we were allowed to use, and into a level where we could do whatever we liked - look at all the files on the system, find anybody's password, edit our own account status and allocate ourselves as much time as we liked.

We wrote little scripts which made it look like we were using the intended shell while really allowing us access to the advanced stuff underneath. We never did any damage and basically had a fine time for a couple of months before we got rumbled and hauled up in front of the Dean of the computing facility, who ticked us off and told us that we could have been thrown out for what we did but actually they were rather pleased that we'd found some holes in it so they could fix them.

That was pretty much the limit of my nefarious hacking career.

32 So, life for me at Uni was basically a round of gaming, coding, hacking, hanging out with my mates and getting stoned and listening to Pink Floyd round at Andy's room in E Block. All of this was rather good fun and excellent for my social and gaming life, but didn't really do much for me in terms of getting a degree in Physics. I became less and less competent and eventually failed my first year exams, and despite doing re-sits (which was a pretty pointless exercise, given that I did sod all to prepare for them) I was given the ceremonial order of the boot at the end of the first year.

I remember going to what they would call an "exit interview" these days, with my tutor from the Maths and Physics department, and pointed out to him that I could actually answer a lot of the questions on the Comp Sci degree paper, and if they'd only let me back onto a second-year computing course I'd be a happy little chappie and probably do rather well. I was told that it would be impossible to "bend the rules" to accommodate this scenario, and that I should get onto my bicycle. I mentioned out of the blue that I was even thinking of starting my own software company, and I was roundly told that the market was far too competitive, it'd never work, and that I should get a grip and find a place in a polytechnic the following year instead.

And so my Uni time ended - with a memorable night to round it off. Andy, being a member of the Pink Floyd Fan Club, managed to get tickets to see the very last night of The Wall live at Earls Court. I left a maths exam early to get to that gig, and I don't regret it, since I hadn't a chance of passing anyway.

33 Eventually, I ended up back at my parents' place, in disgrace for having ‘failed’, but with my VCS and upgraded ZX80 and a summer of doing bugger-all ahead of me. On the day I arrived home, my parents were out, so I installed myself and VCS in front of the family telly (where I finally got to see those Space Invaders in all their orangey yellow glory). I don't remember the nature of any conversation about how I was doing at Uni, probably because my brain has deleted it on account of it not being that much fun. What I do recall is that I badgered my dad to have a go at Space Invaders on the VCS. He protested at first, claiming to be too old for such nonsense, but eventually I managed to press the VCS joystick into his hands.

I don't think I got it back for a few hours.

Despite the air of parental disappointment, I actually remember having quite a reasonable time that summer. My brother would come by from time to time, and we'd have games of Superman and Space Invaders on the VCS. We got super-expert at Superman, achieving sub-minute times in rounding all the criminals up and rebuilding the bridge whilst avoiding Lois Lane, kryptonite and that bloody helicopter, and when we weren't hunched over the VCS then as often as not we'd be down the Rec Soc playing Galaxian, Astro Fighter, pool, and "wocka wocka" – my brother's name for the new game with the little yellow ball that ate dots and was chased by ghosts.

I can't remember how it happened but I acquired a student - a lad of about 14 who was interested in learning to program – and occasional lessons were conducted in front of my ZX80. However, one day we happened to be out when the kid came around for his lesson, and bugger me if the little sod didn't break into the house and nick my ZX80 RAM pack and my VCS and all the games! I thought that was a bit bloody harsh, but it made me resolve that whatever I ended up doing, I wasn’t going to rip off anyone else to do it.

So I suppose I should thank the little bastard for that object lesson, but nonetheless it irked me greatly at the time, and I think I would have cheerfully pushed the little bastard’s teeth down his throat for him if I'd seen him around after that, but funnily enough, he avoided me.

34 Over the course of the summer, I managed to trade my ZX80 for a nice new ZX81, and now that I didn't have to jump through hoops to get a stable moving display, I was able to produce a few simple games, including a version of our game Deflex that we'd made for the Commodore PET back in sixth form. One day I went up to London to go to one of the new ‘ZX Microfairs’ - gatherings of enthusiasts and vendors involved in what was proving to be a hobby of increasing popularity as more and more people got their hands on Sinclair’s cheap little machines.

I wandered round, bought a copy of Quicksilva's Defender for the ZX81, and ogled the various bits of hardware and software available from the vendors. I was dribbling over the 16K RAM packs of one company, well out of my budget range at the time but nonetheless worthy of a bit of drooling, as I only had 4K and 16K seemed an astronomical amount of memory.

I got chatting to the bloke on the stand and happened to mention that I'd written a couple of games for my own 4K RAM ZX81. I fished out a tape with the games on and we loaded them there and then on a machine on his stand. To my utter amazement, he expressed an interest in actually *buying* some games off me to sell, and right there he *gave* me one of the 16K RAM packs to work with! Nothing like that had ever happened to me before, and it was with great happiness and surprise that I returned home with a 16K RAM board that I couldn't have hoped to afford yet had got for free.

Thus equipped, my programming efforts redoubled, with the added satisfaction of thinking that now I was actually *working* - doing something I might make some money out of, or at the least use to score some more cool hardware. I started quite simply, polishing up Deflex and writing one of the inevitable 3D maze games (mine was called 3D3D because the maze was inside a cube, and you could go up and down as well as left, right, forward and back). But I wanted to do more than BASIC programs, so I acquired the sacred tomes of the hardcore ZX programmer - the ROM Disassembly and a good z80 machine code reference book. I came up with a version of Centipede, which was a coin-op game I hadn't actually played at that point, but which I figured I knew enough about to make an attempt at…

From Sinclair User, Issue 1, April 1982,

‘Software Overview’:

"The last arcade game at which I look at is DKtronics Centipede. I cannot describe it adequately without confusing all and sundry, so suffice to say it has excellent moving graphics and is very attractively presented, with the game becoming progressively more difficult in several ways.

What is also very creditable about it is that the player can decide at the start how many bases each game should have and how fast the game should run. That means that several people can play at the same level of difficulty and the program produces a high score league table."

My first review!

35 Attending another ZX Microfair, I was standing in the queue outside and experienced my first moment of geeky fame. The two lads in front of me in the queue were talking about their favourite ZX81 games, and I heard them mention Centipede. There were a few versions around at the time, and I was curious to see if they had heard of mine. So I asked them "Have you seen Centipede by DKtronics?" They said that was the version they’d been talking about. I told them that actually I was the one who had written that game, and they said, "Wow, so you must be Jeff Minter!"

That was a very odd moment, but I was not dischuffed.

This minuscule foray into the emerging games biz showed no sign of actually being able to sustain me in terms of a career, however, so plans proceeded to get me back into further education so I could get a degree and a proper job in due course.

Eventually I found a place at Oxford Poly (Ox Poly as it was known to the denizens, and they had a rather excellent T-shirt with an ox logo that I regret not buying). It was, again, on a physics course but with an understanding that I would get to transfer to Comp Sci at the start of the second year if all went well. I attended Ox Poly while still living at my parents' house, which involved a rather hefty commute each day, by bicycle to the train station, then train to Reading, another train to Oxford, then another bike ride through town and up a steep hill to Ox Poly itself. Once there, I'd arrive in time to meet up with my fellow students for an hour, sitting round in the lobby and smoking occasional roll-ups, with perhaps a spliff between lectures and a pint of bitter and barley wine at lunchtime if the afternoon contained nothing too stressful. There was a PET and a Research Machines 380Z there, and occasionally I'd bring in my ZX81 and show off some of the games I was making.

My days at that time began quite early, up before 7 to be on my way in time to arrive at Ox Poly by 9, and often not back until 8 or later in the evening. Once home, I'd retire to my bedroom and continue with my programming for the RAM pack company. The guy who ran the place came up with a hardware hack that, in conjunction with a tiny bit of code, allowed me to use alternate character sets on the ZX81. This would allow users to have character sets full of graphics characters like on the PET. This really appealed to me, as the ZX81's font was devoid of any game-oriented symbols at all, so I offered to design all the character graphics for the ROM hack - about 8 sets in all. If you examine the graphics in a DKtronics graphics ROM, you'll find the initials ‘JCM’ in one pair of characters. And another pair which is a little pair of llamas.

Preparing the ROM was quite a slow and painstaking business, involving drawing the characters onto graph paper and then converting the lines of dots into hexadecimal numbers which would then be programmed into the EEPROM burner that was used to make the chips.

36 One night I was sat in the living room with a graph paper pad on my knee doing this, and something very odd happened. I remember it quite clearly: my dad was watching Tenko on telly while I sat translating dot patterns into hex, and all of a sudden, for no reason at all, my heart started pounding at a great rate, as if I had just been running as fast as I could. I felt quite peculiar and started sweating. Since I was sat at rest on the couch, this was pretty weird and a bit frightening, but after some minutes things returned to normal and I thought nothing more of it.

I carried on commuting to Ox Poly, working on the code at nights. As I got more involved - taking trips to Great Yarmouth on the train at weekends to work more closely with the guy who was making the graphics ROM - I bought myself one of the latest new things, a ‘Game And Watch’, where you had to control little LED firemen bouncing people out of a burning building and into an ambulance. It was made by some company I had never heard of called Nintendo. I played this a lot on the train during my commute to Ox Poly and journeys to Great Yarmouth. Soon, I began work on a version of Space Invaders using the graphics ROM, and it was shown to some acclaim at a ZX Microfair.

Something wasn't right, though. I began to feel uncharacteristically knackered and ill a lot of the time, and the instances of tachycardia became more frequent. I went to the doctor a couple of times, but he refused to believe that there was anything wrong with me and sent me home with instructions to have a hot bath. The general consensus was that it was all in my head, perhaps a byproduct of stress from all the work and commuting.

But my mum had found some entry in a medical dictionary pertaining to "disorderly behaviour of the heart", a psychological condition apparently suffered by soldiers at wartime, and brought on by stress. She showed me the entry one morning when I was getting up to go to Ox Poly, and, fed up of feeling ill all the time, I decided that if it was all in my mind I'd *prove* it to myself by damn well exerting myself to the full on the journey to poly.

Accordingly I rode my bike as fast as I could to the train station and ignored the feelings of discomfort and nausea I felt upon arriving there. I took my trains, raced through town and pelted up the hill to poly, parked my bike and went and sat down with the guys in the lobby.

There's a very definite moment when you realise that something is seriously awry, and curiously enough it isn't accompanied by panic - just the certain knowledge that you have to start doing something *now* to help yourself. As I sat there, the world seemed to recede down a long tunnel, and all I could see was a spot in the middle. I felt great discomfort in my chest, and after a minute or so, although I could see properly again, I felt terribly, desperately weak. I apologised to everyone and left – using my bike as a crutch – and got myself to the train station, where I phoned my parents and asked them to come and collect me at the other end, because I was certainly not capable of making my way back from the station by myself.

My dad ended up carrying me and my bike back to the car, and I was taken to the doctors' where they finally hooked me up to the machine that goes ping, and discovered that actually, no, it hadn't all been in my head after all.

And that was the end of my further education career, and at the time it was horrible and terrifying.

But that unfortunate incident left the way clear for the start of something else…

YAK, March 2005.

Also published by: Way Of The Rodent

Beam me up Scotty!
sheepie