This site contains the source code for four different variants of the Commodore 64 version of Elite:
- The variant on the official Firebird GMA85 NTSC release, which was a later release of Commodore 64 Elite, with the newly added title music
- The variant on the official Firebird GMA86 PAL release, which was the PAL version of the GMA85 release
- The variant produced by the source disk from Ian Bell's site, which was never released
- The variant built from the binary files already on the source disk, which is subtly different to the variant produced by the build process
See below for comprehensive details of the differences between the variants, along with links to the relevant bits of the source code.
All these differences are implemented within the source code using BeebAsm IF statements, which determine which variant is compiled. These IF statements check the values of the relevant source code variables (_GMA85_NTSC, _GMA85_PAL, _SOURCE_DISK_BUILD and _SOURCE_DISK_FILES), which are themselves set by parameters to the build command (such as variant=compact). See the associated repository for more about building different variants from the source.
To play Elite with a D64 disk image, load the image into the disk drive and type LOAD"*",8,1.
The official Firebird GMA85 NTSC release
----------------------------------------
The Firebird GMA85 NTSC release wasn't the first official release of Commodore 64 Elite, but it came along slightly later, sporting the newly added Elite Theme title music.
Default build in repository | Yes |
Product details | Firebird GMA85 NTSC |
Date | 1985 |
Build command parameter | variant=gma85-ntsc (optional) |
Source code variable | _GMA85_NTSC |
Verification checksums (crc32) | See the GitHub repository |
Download D64 disk image | Original, Flicker-free planets |
The official Firebird GMA86 PAL release
---------------------------------------
The Firebird GMA86 PAL release is the PAL variant of the GMA85 NTSC version. The game itself it identical to the NTSC version, but the disk loader is slightly different.
Default build in repository | No |
Product details | Firebird GMA86 PAL |
Date | 1985 |
Build command parameter | variant=gma86-pal |
Source code variable | _GMA86_PAL |
Verification checksums (crc32) | See the GitHub repository |
Download D64 disk image | Original, Flicker-free planets |
It has the following features that differentiate it from the GMA85 NTSC variant:
- The disk loaders are different, particularly in the fast loader routine in the GMA1 disk loader. This does not affect gameplay in any way.
- There is a configuration variable called USA% that you might expect to be set to FALSE for the PAL variant, but it is set to TRUE for both, so this is not a difference between the two variants.
Ian Bell's source disk build process
------------------------------------
The source disk from Ian Bell's site produces an early version of the game that doesn't contain the Elite Theme music that was added in a later release. The binaries produced may match the very first Firebird release of Commodore 64 Elite but investigations in this area are ongoing.
The source disk does not build a working game, so there are no disk images available for this variant.
Default build in repository | No |
Product details | - |
Date | 1985 |
Build command parameter | variant=source-disk-build |
Source code variable | _SOURCE_DISK_BUILD |
Verification checksums (crc32) | See the GitHub repository |
It has the following features that differentiate it from the GMA variants:
- Some of the game data is stored at different addresses (see DSTORE%, SPRITELOC%, SWAPPZERO, C%, K%).
- A smaller block of ship data is copied the game loader, though this doesn't make any difference (see Elite loader (Part 2 of 7)).
- An image containing the build date is included in the disk loader (see date).
- There is no Elite Theme music, only The Blue Danube (see BR1 (Part 2 of 2), BR1 (Part 2 of 2), BDENTRY, COMUDAT).
- The joystick is read differently (see RDKEY).
- The frequency change when implementing vibrato in voice 3 is different (see BDlab7).
- The period when implementing vibrato in voices 2 and 3 is different (see BDlab1).
- The music counter stops counting when it reaches 2 rather than 0 (see BDlab21).
- The format of the music data file is slightly different (see COMUDAT).
- The text token for the energy unit is "ENERGY UNIT", rather than the "EXTRA ENERGY UNIT" that is found in all the other variants (see QQ18).
Ian Bell's source disk binary files
-----------------------------------
The source disk from Ian Bell's site contains assembled binary files that differ slightly from those produced by the source disk build process. Investigations are ongoing into the differences between these and the binaries produced by the build process.
The source disk does not build a working game, so there are no disk images available for this variant.
Default build in repository | No |
Product details | - |
Date | 1985 |
Build command parameter | variant=source-disk-files |
Source code variable | _SOURCE_DISK_FILES |
Verification checksums (crc32) | See the GitHub repository |
It has the same features as the variant built by the source disk, except the text token for the energy bank is "EXTRA ENERGY BANK", just like the GMA variants.