https://www.theverge.com/2015/6/9/87523 ... ar-pc-game
Then about 5 years ago someone turned it into an HTML-5 version of the game which you can play here:
http://blastar-1984.appspot.com
And someone else found the screenshots of the listing:
https://archive.org/details/blastar-elo ... ectravideo
Since it's quite instructive to see what 12 year old geniuses can achieve, I thought I'd recreate it for the ZX-Spectrum and then port that to the unexpanded VIC-20 as the first two steps towards building my first $billion company !
Here's it is! And in my 'umble opinion, it's better than the original, because a VIC-20 is better than the SV-328!

Observations:
The SV-328 version uses Sprites and ON INTERVAL type commands to force periodic calls to the game code. In reality, that kind of functionality doesn't provide any advantages over the straightforward video game pattern: Render, Take Input, CalculateNextPositions and in fact probably made the game a bit more complex for Musk, because it means he could never be sure exactly which part of the program was running as one part could 'interrupt' another.
Secondly, the game really is super-simple. With a bit more programming experience, his version can be reduced to less than half the length (though some of this is because my UDGs were in decimal rather than binary). I fixed an issue in his code whereby the STATUS BEAM that will certainly kill your ship was, I think meant to track your ship as it fell, but in fact it didn't. In this Improved version, the status beam does track the ship!
The VIC-20 version is particularly challenging for several reasons. Firstly, it's possible, but really tricky, to set up a graphics mode so that you only allocate space for the graphics characters you need (in my case 5 characters) and are also able to access normal text characters.
The solution is to allocate one page of memory for the graphics chars starting at 7168 (28*256), and it turns out that inverse characters appear as normal upper case + some block graphic characters. Because I only wanted 5 graphical chars, I used video (not ASCII) characters 59 to 63. I then set the end of BASIC to point to the address 7640, which meant that BASIC in fact could encroach on the character set!
The second major problem for the VIC-20 version is that it's tricky to print at any location on the screen. I chose to poke the printing position to where I wanted it, which needed 3 pokes, but subsequent testing shows that using cursor controls is much neater and faster. This had the consequence that the VIC-20 version of the game is slower than the ZX Spectrum version, though ironically the sluggishness and keyboard buffering on the VICE emulator makes the game more fun and challenging to play.
And here's the listing if you want to type it in

The ZX Spectrum version can also be found here:
https://sites.google.com/site/libby8dev/zxblastar
