Quantcast
Channel: stardot.org.uk
Viewing all articles
Browse latest Browse all 2379

8-bit acorn software: classic games • Elite II source discs: initial findings

$
0
0
Last month Ian Bell released the source discs for Elite II on the BBC Micro (with a 6502 co-pro). I've been poking through the contents, and thought you might be interested in some very early findings.

In this context, Elite II is the unreleased 1985 sequel to the original BBC Micro Elite, as opposed to the 1993 game "Frontier: Elite II". See Ian Bell's site for details.

First up, the version of Elite II that Ian released is a completely new game. It contains some code from the 6502 Second Processor version of Elite, but most of it appears to be new rather than a development of the original version. The source discs appear to contain demo versions of the game, rather than a fully featured update of Elite; truth be told, it's hard to know what's going on!

Still, here it is: a clip of Elite II from one of the discs. The game plays itself - this is not me driving! - and it looks like it's a demo of ship tactics and inter-ship comms. Or something like that.

MP4 movie:
EliteIILong.mp4

QuickTime movie:
EliteIILong.mov

Another fascinating part of the code sums up why I love software archaeology. Look at the following code snippet from the source:

IMG_0225.jpeg

In particular, look at the comments.

It turns out that this is really similar to the 3D landscape routine in Lander, which uses Fourier synthesis to generate the landscape. You can read all about it in this deep dive.

So this is proof that Elite II is the origin of the amazing 3D landscape in Lander, Zarch and Virus. And this must be David Braben's code, we can surmise. What a great find!

So what does this landscape actually look like? Behold, the gentle slopes of planetary surfaces in Elite II, courtesy of Wolfram Alpha.

IMG_0227.jpeg

And what does this look like in-game?

Well, it looks like this. If you squint hard enough, there are mountains and valleys in there somewhere, I think.

Screenshot 2024-10-25 at 20.46.38.png

The landscape is not built by default, so I had to hack the source code to enable it in the build, uncomment the JSR SCAPE instruction that draws the landscape, remove some code to stop the "no room" errors (I disabled the the solar system code), and rerun the build.

Et voilà, we have a planetary surface in Elite II on the BBC Micro, using the same approach as Lander a couple of years later.

Incidentally, I have also created buildable versions of the Commodore 64 and Apple II source discs that Ian released last month. These versions were built on the BBC Micro and the resulting code was piped to a C64 or Apple via the serial/parallel port, so they are of interest to Acorn fans. I'm planning to document them fully and add them to my site; for now, you can find them on GitHub (here are links for the Commodore 64 and Apple II).

It's been a fun couple of days, and I feel I'm only scratching the surface of these discs...

Right on, Commanders!

Mark

Statistics: Posted by MarkMoxon — Fri Oct 25, 2024 10:15 pm



Viewing all articles
Browse latest Browse all 2379

Trending Articles