MLP: Elite
Oct. 20th, 2003 11:04 amVia
hmw26's exceedingly funky blog, a discussion of extracts from a new book about Elite, published in the Gruaniad.
Having previously discovered that there are several people reading this who may be interested, I thought I'd pass this gem on.
To be honest, I think I'm not going to rush out and buy the book; I'd guess that anyone who's interested in this kind of thing is not going to find much novelty in the story of the making of Elite. What fascinates me about the article is the way it goes to such pains to explain that there was a world before the GUI.
Now, I was born a few days before 1979, and thus it occurs to me that I may actually be the youngest person in the world who remembers the 80s! It's a slightly scary concept that books are being marketed at an audience of people younger than me. Or perhaps it's simply that it's marketed at people my age who are *cough* somewhat less geeky than I am...
Having previously discovered that there are several people reading this who may be interested, I thought I'd pass this gem on.
To be honest, I think I'm not going to rush out and buy the book; I'd guess that anyone who's interested in this kind of thing is not going to find much novelty in the story of the making of Elite. What fascinates me about the article is the way it goes to such pains to explain that there was a world before the GUI.
Now, I was born a few days before 1979, and thus it occurs to me that I may actually be the youngest person in the world who remembers the 80s! It's a slightly scary concept that books are being marketed at an audience of people younger than me. Or perhaps it's simply that it's marketed at people my age who are *cough* somewhat less geeky than I am...
(no subject)
Date: 2003-10-20 12:56 pm (UTC)As for the article, the impression I got there is not so much that it was telling young people what computers were like in the pre-GUI days (XEROX PARC pare) but emphasising how revolutionary Elite truly was. Like many things which were revolutionary in their day, it only appears exceptional when judged by the standards of the time it came out.
Also, interesting as it is, the article only covers half of the phenomenon that was Elite: There were also the missions, the Thargoids that ambushed you in witchspace, the possibility of throwing in your trading career for a piracy one, with the police hot on your tail. And there were the legendary ships, which no one knew whether they existed, but everyone hoped to see -- dredgers, generation ships, and the like.
And then, after Elite came out, it got converted for every other computer -- this in an age when games typically got converted for the BBC Micro, not the other way around. And then there were the sequels and the latter day spin-offs, ranging from T-shirts (http://www.ntkmart.co.uk/images/elite.jpg) to Elite emulators for Emacs (http://www.elite-for-emacs.org/elite-for-emacs/index.html) (a text editor equipped with everything including the kitchen sink).
Captain Grant (Elite)
(no subject)
Date: 2003-10-20 05:35 pm (UTC)Re: emacs
Date: 2003-10-20 06:54 pm (UTC)(no subject)
emphasising how revolutionary Elite truly was
This seems a sensible interpretation, yeah.
the article only covers half of the phenomenon that was Elite
Yes; you've added more of real interest in this little comment than there was in the article. And (in case you haven't seen it) look at
Captain Grant (Elite)
It's quite amazing how much I resent that you're miles better at Elite than I am! But 'Captain Grant' is a really boring name for your avatar.
Re: Elite
Date: 2003-11-02 10:56 pm (UTC)It's quite amazing how much I resent that you're miles better at Elite than I am!
*giggle* I told you before, my success is purely down to reading the Micro User Guide to Playing Elite. It transformed my playing. I'd be happy to lend you a copy, and then you can spend hours and hours playing the game to become just as good as me.;^b
But 'Captain Grant' is a really boring name for your avatar.
Well, that was only one of them. There was also Mike Anick (inherited from playing Revs), and Emgee, though that's not particularly exciting either, I will admit. Basically, after I became Elite, I wanted to do it all over again, but this time make as much money as possible at the same time. Perhaps the article was right about it being a Thatcherite game. :o)
Re: Elite
Date: 2003-11-08 11:31 pm (UTC)You evil tempting creature, you! As if I'm not bad enough about displacing anyway, without you appealing to my competitive instincts!
Basically, after I became Elite, I wanted to do it all over again, but this time make as much money as possible
Yes, it's amazing how much scope there is to it. I think that's one of the points the article was making. The brothers went through the whole thing several times with different aims, I think.
Elite!
Date: 2003-11-03 09:26 pm (UTC)(Sorry. I just thought this thread really needed one of these near the top.)
(no subject)
Date: 2003-10-20 05:38 pm (UTC)Which means you were ten when the Berlin Wall came down. I was sixteen. I suspect that the difference in significance that event had for people old enough to remember the absolute surety that we were going to die in the Cold War version of WWIII is going to be one of the biggest generation gaps visible in Western society over the next couple of decades.
(no subject)
Date: 2003-11-02 10:30 pm (UTC)*ponders this nugget from various angles* Hm. Mongoose.
(no subject)
Date: 2003-10-23 04:01 pm (UTC)(no subject)
Do you want props here, or do you prefer to continue lurking in the shadows? Cos I'm sure lots of people who read this would be excited to read your blog if I happened to pimp it!
Anyway, you're always welcome to hang out in this virtual space of mine.
(no subject)
Date: 2003-11-03 02:25 pm (UTC)(no subject)
Date: 2003-10-30 07:00 am (UTC)I left school at 16, already having spent most of my free time for the previous seven years programming. my first machine was a Commodore PET 2001 with 8k of RAM and a cassette drive for storage. I taught myself BASIC initially then 6502 machine code (yes, in hex, it was a few years before I got my hands on an assembler!) when I found that too limiting. By the time I left, I'd moved to using a BBC Micro, this time mostly using 6502 assembler. I also had started playing with BCPL, a block structured language that was the forerunner of B, which was the forerunner of C -- BCPL's inventor is now my second PhD supervisor, which is amazingly cool in my opinion.
Anyway, scene set, back to the story. By a quirk of fate, my first largeish programming contract after leaving school was writing videodisc player drivers for Acorn Video, then Acorn's multimedia offshoot. The Elite connection comes in because Acorn Video had just attempted to get Elite's creators to write those drivers, but for some reason had been unable to agree on a deal. I randomly picked up the contract after happening to call Acorn Video on behalf of a customer who wanted to use Beebs (in a somewhat modified form) as terminals for a Data General minicomputer based GIS system.
I enjoyed Elite. If anything, disassembling it to figure out how various things were achieved was even more fun than playing the actual game.
On the subject of rebellion and of a need to follow in family footsteps for things programming related. I had no such history. I am a quite random mutation in the family meme pool. I followed no one. At school, there was no geek culture, unless one could count getting beaten up on a daily basis as being a cultural activity.
(no subject)
Wow. I bow before your ultimate connectedness to all things geeky!
Anyway, scene set
That tells me more about what programming was like in the earliest days than the article which started this discussion. You have a real knack for making technical detail fascinating, thank you!
a customer who wanted to use Beebs (in a somewhat modified form) as terminals for a Data General minicomputer based GIS system
I am perpetually amazed by what the Beeb was capable of. And it sounds from your description as if the capability was practically within Elite itself. Wow.
Re: The BBC Micro lives!
Date: 2003-11-02 11:04 pm (UTC)The Advanced Useless Guide (as we fondly called it), published in 1983, says about second processors that can be installed in the Beeb using the Tube,I'd have loved to have seen Unix running on a BBC Micro in 1983. If it wasn't for the fact, of course, that in 1983 I had no idea what Unix was. Or, for that matter, a BBC Micro, my experience then being limited to ZX81s, and, if I was really lucky, the chance to use the school's one Spectrum.
Re: The BBC Micro lives!
Date: 2003-11-02 11:15 pm (UTC)Re: The BBC Micro lives!
Date: 2003-11-02 11:46 pm (UTC)I have spent far too much time today posting to LiveJournal. :-S
(no subject)
Date: 2003-11-02 11:12 pm (UTC)I was chatting about this to Martin Richards (Mr. BCPL). He told me that the Public Records Office have been putting quite a bit of effort into resurrecting the Domesday project. Remember that? A Laservision player with 55,000 still images and about 340MB of data, running on a modified BBC Master with a 6502 second processor. They were having some difficulty, it seems, due to the rarity of the hardware concerned. An effort is being made to port everything to an emulator, allowing the historic project to be preserved for posterity. I didn't work on Domesday myself, but knew a few of the people who did at the time.
Yes, the flexibility of the Beeb has only really been matched quite recently in the PC universe. An amazing effort, years ahead of its time.
BBC Micro tales
Date: 2003-11-03 08:00 pm (UTC)Oh yes! People of my brother's generation simply do not know what it was like to work in an environment when every byte mattered.
The funny thing is that I now work professionally in such an environment again. Freeview set top boxes start to misbehave when you're hanging scenes off an application of 15k in size. And even if size is not limiting, you still want to keep it down, as, with the limited bandwidth we have, big scenes take long to download. And with the older generation OnDigital boxes, we were talking about 1980s speeds of execution too (even though the other processor in the box was simultaneously happily decoding TV-quality MPEG in realtime).
I was chatting about this to Martin Richards (Mr. BCPL). He told me that the Public Records Office have been putting quite a bit of effort into resurrecting the Domesday project. Remember that? A Laservision player with 55,000 still images and about 340MB of data, running on a modified BBC Master with a 6502 second processor. They were having some difficulty, it seems, due to the rarity of the hardware concerned. An effort is being made to port everything to an emulator, allowing the historic project to be preserved for posterity. I didn't work on Domesday myself, but knew a few of the people who did at the time.
Feel pity for the companies whose archives are all on eight-inch floppy disks. Within the last year, I dredged everything I'd ever done and still had in digital form off its original DFS and ADFS 5.25" disks, and burned it onto a single CD-ROM. Now all I've got to do is get around to writing something to render the tokenised BASIC and AMPLE into plaintext. (I've already done this with the graphics, and impressed my little brother by loading up an image on a BBC Micro, walking into the other room with it on a disk, and coming back less than a minute later with it as a PNG.;^))
programming efficiency
Wow. I hadn't realized that, I sort of vaguely assumed that your set top boxes were big and fast like most other modern computers. I'm sort of enchanted to know that some people, including you, are still writing streamlined computer programs!
impressed my little brother by loading up an image on a BBC Micro, walking into the other room with it on a disk, and coming back less than a minute later with it as a PNG
That would impress me quite a lot as well, I must admit!
The BBC Micro lives!
Date: 2003-11-02 10:50 pm (UTC)As for knowing the inventor of BCPL, cool. When I was at Cambridge, a friend of mine smuggled me into a garden party in Corpus. Part-way through he said, "There's my computer teacher; I'll just go and say hello to him." It turned out to be Herman Hauser!
You were evidently much more knowledgeable about the BBC Micro than I if you were able to disassemble it and figure it out. I'm impressed; I could never understand anyone's reverse-compiled assembly, even my own. The closest I got to that sort of thing in general was ripping tunes out of games; and the closest I ever got to taking Elite apart was figuring out the format of the player status files, so I could write a utility to interrogate them without having to boot up the game.
Elite certainly did do its fair share of impossible things on that machine*. Lots of colours and high resolution on a single screen? No problems!
Re: The BBC Micro lives!
Date: 2003-11-02 11:29 pm (UTC)Indeed. I was at secondary school when the first shuttle flight happened. I would probably have not believed anyone if they told me it would still be flying into the next century, however!
Indeed. I was at secondary school when the first shuttle flight happened. I would probably have not believed anyone if they told me it would still be flying into the next century, however!
<i.When I was at Cambridge, a friend of mine smuggled me into a garden party in Corpus. Part-way through he said, "There's my computer teacher; I'll just go and say hello to him." It turned out to be Herman Hauser!</i>
It is surprising how many Acorn names seem to pop up in the lab, even now...
<i>I'm impressed; I could never understand anyone's reverse-compiled assembly, even my own. </i>
It is amazing what can be achieved with an absence of friends and the need for a displacement activity in avoiding Geography homework! :-)
<i>Elite certainly did do its fair share of impossible things on that machine*. Lots of colours and high resolution on a single screen? No problems!</i>
It used some very clever interrupt routines that started a timer on each frame blanking interval, then changed the screen mode on-the-fly as the CRT controller was outputting the relevant scan line. It worked really well -- I remember writing my own code that did the same thing, just to prove to myself how they had done it!
<i>And I never did figure out how Firetrack managed its ultra-smooth scrolling,</i>
The CRT controller had hardware scrolling -- the display surface was effectively a torus that could be shifted in any direction in multiples of 8 pixels. You had to write your own drawing code in assembler, but this could be made to work really well. We used the technique in the IVIS project a few times to help implement what would now be called 'wipes' between pages.
<i>nor how it got a tune to play and continue playing whilst the main game loaded off disk...</i>
Probably just an interrupt routine. The sound chip was capable of making sound on its own without too much processor intervention. Again, we did that kind of thing a lot in the IVIS project to reduce the perceived time it took to load pages of text and/or graphics.
Re: The BBC Micro lives!
Date: 2003-11-03 07:47 pm (UTC)<nods> This much any Tom, Dick or Harry could do, including myself. What Firetrack did was absolutely smooth scrolling, in a centre cut out of the screen. I suspect if you could see to the edges, you'd see them moving down, then leaping eight pixels up a couple of times every second.
Probably just an interrupt routine. The sound chip was capable of making sound on its own without too much processor intervention. Again, we did that kind of thing a lot in the IVIS project to reduce the perceived time it took to load pages of text and/or graphics.
The way most games generated sound, though, (including my own (http://www.michael-grant.me.uk/xlcr.html)) was to use events, and those relied on the processor, so stopped (once the sound buffer had emptied) when something was loading off disk.
I was highly reliant on events in my programming; I used the video sync event a lot, but never got as knowledgeable as trying to use the 1ms poll timer -- which is why, unlike you, I wasn't able to replicate Elite's split-mode screen. This is the sort of thing that separates the sheep from the goats amongst BBC Micro geeks. ;^)
What was the IVIS project?
Re: The BBC Micro lives!
Date: 2003-11-04 10:54 am (UTC)Ah, never saw that game. It sounds very much like they were doing some major CRT controller hacking to implement double buffering somehow. It's a *long* time since I did that, but I can vaguely see how they might have managed it. There is always the possibility that they simply split the screen in half vertically, using each of the stripes as separate buffers and swapping them into place with the CRTC's scrolling hardware. They could have stomped on the 'extra' image by using the timer to switch the palette part way down the screen, or maybe they could do that with the CRTC on its own, I don't remember! :-)
What was the IVIS project?
It was a less well known, possibly larger counterpart to Domesday that used similar hardware. 8 videodiscs with accompanying BBC-based software were created for use in UK schools. Each disc was created by a different academic team, using deliberately different approaches in each case. The idea was to find out whether interactive video was useful in a school context, which it was, and constituted one of the first ever large scale multimedia projects anywhere in the world. I ran the main software team -- we wrote a variety of generic tools that ran across all 8 projects, including something called Turpin that was in effect a hyperlinking system for video and accompanying text overlays, long before such ideas turned up in the mainstream. We also wrote specific software for each of 4 of the 8 projects, ranging from relatively simple text-driven interfaces with occasional video clips up to the ridiculously ambitious Life and Energy disc created with BBC Milton Keynes and an academic team based at Bulmershe College in Reading. It was quite a project -- I started it when I was about 17, which is pretty scary to think about now since I had anything up to 14 people working for me.
Re: The BBC Micro lives!
Date: 2003-11-04 11:19 pm (UTC)Demonstrations available on my Beeb. ;^)
It sounds very much like they were doing some major CRT controller hacking to implement double buffering somehow.
Well, I found on googling an annotated program (http://nelsonit.net/~jon/BBCMicro/2002/09/10/182018.html) that purports to replicate the effect. I can't follow at a brief glance exactly how it works; it writes bytes directly to SHEILA. I tried typing it in, but must have made a mistake, as I crashed my machine and had to hit CONTROL-BREAK, and don't have time to debug it tonight.