About Tron 0xF
Tron 0xF is a simple Tron-like game for ZX Spectrum (48 KiB model or later), with the following features:
1, 2 or 3 riders, in any combination of humans and robots.
Riders' color is configurable.
Human riders' keys are configurable.
When at least one human rider plays, the ride starts at the first keypress. When no human rider plays, the rides start automatically.
The game never ends. When a score is greater than 999, it starts back from zero. Human players must agree when to finish.
The game instructions are included in the program.
About the code
Tron 0xF is written in Abersoft Forth (a fig-Forth 1.1 system ported to ZX Spectrum by John Jones Steele and published by Melbourne House in 1983), using the Afera libray (Marcos Cruz, 2015). See more details in the Tron 0xF homepage.
How to run
Open the file <tron_0xf.szx> with your favorite ZX Spectrum 48K emulator.
How to build the program from the sources
If you want to modify the program you must follow the following instructions. If you just want to rebuild it from the original sources, you can skip to Step 2: Interpret the sources.
Step 1: Make the TAP file
In order to convert the sources (of code and graphics) to a TAP file suitable for Abersoft Forth, several programs have to be installed (see the Makefile for more details):
Then enter the Tron 0xF’s directory and execute the command
That will create the file <tron_0xf_compiling.tap>.
Step 2: Interpret the sources
Open <tron_0xf_compiling.tap> normally with your emulator. It contains Abersoft Forth, followed by the Afera library and program sources.
Two launchers for the Fuse emulator are provided as example: <tron_0xf_compiling_128_fuse.sh> and <tron_0xf_compiling_48_fuse.sh>, the only difference being the emulated Spectrum model, which doesn’t affect the program.
Then load Abersoft Forth with the BASIC command
LOAD "" (or with the
menu of the ZX Spectrum 128). You will see the start screen of
Abersoft Forth. Then type the command
LOADT 1 LOAD. The
interpretation will take about 13 minutes at the original speed of ZX
Spectrum. The program will run at the end. Then you can use your
emulator to save a snapshot in any format, e.g. SZX, Z80, SNA.
As a side effect, the game can be used as screen saver: Configure it with three robot raiders, set the desired speed on your ZX Spectrum emulator, turn whole screen mode on, and start the game. It will not stop.
The robots are pretty stupid. I tried several approaches to make them smarter without slowing the game but didn’t get clear results.
Sound is rudimentary, and it affects the game speed: two riders run faster than three when sound is enabled. In order to get a decent result from the beeper of the ZX Spectrum 48, sound should be implemented by an interrupt driven routine.
The to-do list contains other minor issues and some testings about the robots.
The main issues will be solved in a future improved version for ZX Spectrum 128, which has a dedicated sound chip, and Solo Forth, which is much faster and powerful than Abersoft Forth.