I remember seeing the pre-release adverts for Elite and thought it was just an adventure game with static images because that was all the machines of the day could do. Four of us clubbed together to buy it and gathered around my BBC to play for the first time. To say we were floored would be an understatement; the number of times someone uttered "no f*cking way !" was countless as we spent all night launching, docking, fighting and exploring the galaxies. It still amazes me all they managed to pack into what could only be 20k of memory; the null process on Windows, which by definition does nothing, is 16k.
Of course, that’s because AT&T have the copyright on an empty null command (from UNIX). So every subsequent implementation has to find some other much more verbose way of implementing null.
I can only imagin how cool that was at the time, the closest I can relate to was my first experiences with VR, it's mindblowing what kind of excitement and potential opens up before you when you start it for the first time and dig in
I really liked your description of how the text was also compressed to save memory. It's simply an extraordinary achievement for Braben and Bell to have done so many clever things under the bonnet and still ended up with not just a marginally playable game but a complete knockout.
Very interesting, i'd bet the most common sets of characters and needed ones made the character pairs, though i'd half expect triplets as well. To save on some bytes, the recursive data could have a subset of text (upper or lower) where it automatically includes the quotes to start/end, saving a few more bytes but taking a few bytes extra in the decoding step. Though if there's a length byte for the compressed block, doubt any of it would exceed 16 bytes, so 4 bits can include other data, like converting to all uppercase, quote or double quote, include dollar sign after potential quote.
Ditto. Makes me wonder, the PS1 had a math unit which only allowed 256 angles (1 byte, one of the reasons the ps1 had wonky graphics); doing similarly; If you stored 2 byte fixed point (512 bytes, or 256bytes if only 128 angles) the multiplication and truncation would greatly be faster, but again errors add up over time. Integer 16bit math would be faster than using the BASIC BCD math, at least if you don't have to be printing the coordinates.
Playing Elite Dangerous (the newest installation of the series), its hilarious and awesome how much of it was pulled directly from the original games, including the shape of some of the ships.
I played the original Elite on the BBC computer, and later the improved version on the Acorn Archimedes. But - While Elite Dangerous has many aspects from the original games, I never played it because I don't like the on-line aspect of that game. However - In 1999 I stumbled upon a demo of game that was placed on a magazine disk. It was called X-Beyond The Frontier. And while it was not a direct successor of Elite, it has so many aspects that where similar that, for me, it felled like a spiritual successor of Elite. And I still play the latest version of that game now 20+ years later. The latest "incarnation" is called X4:Foundations, and it's a single player sandbox game that still gives me that same feeling I had with Elite on the BBC computer so many years ago...
@@jclosed2516 My personal favourite take on classic Elite is Oolite. An open-source attempt at taking the mechanics of the original Elite and combining it with somewhat modern 3D-graphics, originally. It has since evolved a fair bit beyond that, with a plethora of community-made extensions that add anything from shinier visuals to new ships, stations, factions, missions, subplots, and so on. One of the very few games I actually play occasionally, these days. I even invested a bit of money into a somewhat decent flightstick-style joystick when I got back into it a bit more during the pandemic…
@@jclosed2516 I too played the original Elite on the BBC micro all those years ago, and later on the C64 and then Amiga. Today, I play Elite Dangerous, and in offline mode always - you simply select it on the main screen (you miss nothing in this mode). Honestly, it's a fantastic game with fantastic playing aids/resources available on various websites. It's, by far, the closest realisation of Braben's vision, and of course, Elite Dangerous is also Braben's creation! I would strongly recommend you pick ED up and play it (don't get the Elite Odyssey variant - that off-putting fps element is only there to pander to the 'young uns').
Thanks for making this video. It was very informative. I remember seeing Elite for the first time as a kid and being blown away by the vector graphics of the planets and spacecrafts, and the fact you could trade with space stations. At the time, I only had an Atari Junior 2600, so I only saw it in someone's house. Later, I ended up with a Commodore 64. David Braben and Ian Bell, you could call them early pioneers of modern 3D gaming.
Yank here, got a pirated copy of Elite for my C64 in 1986 and I thought it was an amazing enigma--so complex and interesting that I had to pursue it further, which meant I needed the instructions. Instead of buying a real copy of the game for $25 I bought a book entitled "How to be elite at Elite" for $12, written by some U.K. gamer who had won a tournament as the fastest person to reach Elite status (supposedly). Using his tips I was able to figure out all of the complex systems, key presses, etc. and thoroughly enjoy the game. Thanks for the great video giving a breakdown of the code, very interesting stuff. Just watching how fast it was on the BBC computer makes the young kid in me quite jealous (C64 and it's paltry 1Mhz 6502 strikes again).
Great video, I remember reading in Retro Gamer a lot of tricks they used to continually scrape a few extra bytes off of the program. I was late to the party with elite, only playing on the Amiga a few months before Frontier came out. The sense of scale and freedom these games gave was crazy. I remember sitting at Sirroco station with time sped up just to watch the planet-rise.
Please, more of these ~"so much done with so little" episodes!!! This topic coverage is fire! ... This video brought back some childhood memories of a crash-course day and over-night reading of both my pocket-PC's manual and ~BASIC programming books that found me feverishly curious, among other tasks, in creating and utilizing 2D and 3D numeric and string arrays to go along with my contemporaneous learning of matrix math. The hours of exercising within the constrained environment and memory capacity of my Tandy/Casio pocket-computer were some satisfying learning experiences so much so that I even waited to upgrade to the 8k or 16k options .... Chose to retain the challenges to myself even when I had PCs with plenty more memory and processing because it pushed growth via creative utilization of the smaller space of the pocket-PC not to forget lessons in simplification, efficient utilization, finding similar estimation-correction calculation methods and when to use them in order to speed up through routines to compensate for its slower processing and LCD display culminating into skills on ~other platforms. So much enjoyed the level of the breakdown here on the amazingly creative, lean programming used in Elite! 👏👏
@@RetroBytesUK Been fiddling with an FPGA, considering how one could make a modern retro machine. So, fast and large, but still low level and fun to do. No extra dedicated hardware. Been making my own 6502 compatible a it's so well known
I played a lot of Elite on my ZX Spectrum. And I mean a lot. Made it to Elite status, no cheats no POKEs. :) In fact I still play it, on my ZX Uno (FPGA recreation of the ZX).
@@RetroBytesUK it was very addictive for sure...deffo my goto game as a kid...I even copied the tape a few times so I had backups of backups in case of the dreaded tape munch of death
After playing Elite on the BBC model B, I was really disappointed with the other ports, including the Amiga one. The BBC version was the only one to actually have rotating planets.
That was a really good video! I got an Acorn Electron and a copy of Elite while I was in the last year of my Computer Studies course at Polytechnic. At the time, it didn't seem strange to have to squeeze so much in to the available (limited) memory - my first professional job was working on a Data General S140 Eclispse running MIIS (a MUMPS-like language) where we had only 2K for the programme and 2K for its run-time data. I went on to use Digital Standard MUMPS and Intersystems MUMPS on PDP-11 and VAX systems and their performance and integral database were years ahead of the competition (and anything on the market now).
I have a couple of copies of Elite and did attempt to disassemble the code and I was amazed at how much they managed to cram into such a small amount of memory. The only other game that came to impressing me was Exile, though it was a nightmare to play with all the keys and the security thing is a pain too.
I got the disc version (BBC) the same day I got my cumana disk drive for my Beeb. It was at this point I realised what a wonderful world the future would be.
My emails are larger than this game, yet they managed to create an entire galaxy with so much less memory than what we use today. But the games of today don’t have the same magic of games from yesterday
Elite was the first and afaik only original game I had on the C64. My mother gave it to me for chirstmas. And I thought.. Why? Buy a game? But I played it for hundreds, maybe thousands of hours and loved it. Just recently I got back to Elite Dangerous on the XBox and I love it in VR on the PC but I don't really want to begin all over again… but I go for a little dogfight there from time to time.
@@RetroBytesUK Oh yes. I guess they invented the grinding. :) I never made it to Elite. Went to the Amiga before that happened and there I didn't really play it. On Elite Dangerous I recently hit Trader Elite but there's still quite some way to go for Combat, which is the only one that really counts :) BTW I started playing on the XBox once it was available as a beta, but I stopped for some years until recently. Now I'm back to being addicted haha
Rumour has it that the developers did have to change the seed for the pseudo-random number generator upon discovering that one of the procedurally generated galaxies had a planet in it named "Arse".
I absolutely love these old schemes for efficiently using RAM. Viewers might be interested in a little Forth project called SectorForth. The thing fits on one 512-byte disk sector, and they manage to squeeze an entire Forth interpreter/compiler into that. Not the full normal system you'd work with, but the "engine" - with it you could load the remainder from source after the thing was running. There are some really nifty compression techniques used in there to make it all fit. And by the way - I haven't heard you mention Forth once so far, and I've watched a bunch of your videos. You ought to do a video on Chuck Moore and the history of Forth. It's got all the elements you normally have - business history, a colorful "pioneer" that started it all, etc. etc.
Re the Electron version: They had already had to cut the game down for the BBC cassette version compared to the disk version, because the tape version had to be all loaded at once whereas the disk version could load more data during launch, hyperspace, and docking. So the tape version had substantially fewer ship types, lacked mining and military lasers, had a simplified docking computer that basically just immediately docked rather than computer-flying the ship, and various other cutbacks. The Electron version (which was tape only) was cut down a bit further from that to fit that machine's limitations, but most of the cuts had already been made for the BBC tape version and the main extra difference was, as you said, the whole Thargoids/Thargons/WitchSpace thing and the lack of colour HUD (which I never noticed because I only had a green-screen monitor anyway...)
Love your videos, I've been binge watching for a while now. What is the name of that wonderful oldies song in the background? I can't get it out of my head.
Excellent video. Elite was written in the 'golden age' of home computing, with lots of folk catching the programming bug, leading to all those famous 'bedroom' programmers. Everything was new. Your eyes would widen and innovation light bulbs would go off once you wrote your first assembly language program - the speed difference when compared to the built-in Basic interpreter was astounding. Documentation and examples, of course, was a big problem (remember - no internet), however, you literally used those unused brain cells to problem solve through every issue, and in doing so, became incredibly inventive. Machine code instruction 'cycle counting' and out-of-the-box programming was crucial if you wanted your game to push boundaries. I remember these days very fondly. I'm a bit concerned with the way things are going today, primarily as a result of the internet. That crucial requirement to 'think for yourself' is being seriously eroded.
Internet allows bedroom programming aka "work from home" . People who are good at cycle counting have jobs at Intel, AMD, Arm, and IBM . Or they code the JVM, kernels or other runtimes. It is like back in the day if your demo really pushed the boundaries and win a competition. Maybe I was born too late. I used to write assembly for 6502 only for half a year and then switched to assembly for 386. Golden age for me stops in 1985 when the 68k made home computers the same as the PCs at work (complex (especially the OS), high level language compilers are just fast enough ). You still can get an assembler for free ( as a kid ) and test your talent. I don't get how acorn casted its talent back in the day. I fear that most of those great products on home computers were actually designed by university drop outs who had been lucky to met knowledgeable people in person, but hate corporate IT. Most bedroom coders went to college before we got products from them. Home computers already were distributed in such amounts that we as a societey were able to recruit a lot of talent. I still wonder how people found talent in the past. You had to be rich to be on the cutting edge (you have your own bedroom and your parents buy you an expensive toy). Only a few teachers recognize talent.
It's fascinating to see how much functionality can be had in just a tiny (by today's standards) bit of memory. Coding something life this really required thinking outside of the box of you'll excuse the pun.
Kids today. They don't know. ;). 32k was A Lot of memory. Programmers today dont really worry about memory or cpu restrictions. And Maths? Nobody wants to do simple arithmetic let alone the geometry necessary to draw lines and 3d objects. Great video. Thanks for that tear down!
Awesome video, but overlaying the gameplay screen with images of computers and keyboards was distracting and made my eyes hurt. I wanted to see clear video of the gameplay!
Guessing you've watched it, but if you haven't David Braben did a GDC Classic Game Postmortem talk on ELITE, there should be videos on RU-vid or the GDC website.
@@RetroBytesUK totally is, and brilliant at his job. He worked for my ecommerce agency for a few years on and off and I think he was pretty pleased to find out I went Spectrum -> Beeb -> Archimedes before my “real” IT career and therefore read Acorn User 🤣
Fascinating, the hoops early developers had to jump through in order to make something really cool. Now imagine the problems when someone with that mindset works in a modern development team. Times have changed...
Really impressive vid, deep knowledge of the game. I played it ( got to Deadly ) on my Beeb in the '80's till , and enjoy playing the combat training missions of Elite Dangerous on my G2 / Hotas.
I know it's not the same, but I do like Elite Dangerous, and Everspace 2, and I'm not sure if it's the same Elite, but you do get to do all that stuff you mentioned basically in the new games, so at least the spirit of the game lives on with those who can't be bothered to get a real BBC
I still have Elite on m PC, and with some editing can get 20 million credits I was a Fugitive for trading illegal goods Trying to dock was the most annoying frustrating part of the game
I'd say, cut the music volume in half, and choose some easier and slower music than that 30's banjo+trumpet+singer song. It works counterproductive! Why not use some slow, quiet, ambient space soundscape for a space game like Elite?
I've only seen footage of it, never played it. From the footage I've it certainly looks ok, no idea what its like to play, there are a lot of controls in elite, and a rather limited joypad on the NES. I don't know if that messes with it playability or not.
I struggled to get into elite dangerous too. I really loved the original, and I think I spent more hours play Fronteer on my Amgia than any other game. Some how though I struggled to get into Elite Dangerous then stopped trying.