Skip to content

Game for ZX Spectrum, written in fig-Forth for Abersoft Forth with the Afera library.

License

Notifications You must be signed in to change notification settings

programandala-net/tron-0xf

Repository files navigation

About Tron 0xF

English (en)

Description

Tron 0xF is a Tron-like game for ZX Spectrum (48 KiB model or later), with the following features:

  1. 1, 2 or 3 riders, in any combination of humans and robots.

  2. Riders' color and keys are configurable.

  3. The game never ends. When a score is greater than 999, it starts back from zero. Human players must agree when to finish.

  4. When there’s a human rider, the ride starts at the first keypress; when all riders are robots, the rides start automatically.

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 any of the following files with your favourite ZX Spectrum emulator:

  • <target/tron_0xf_v0.2.0+20200225.szx>

  • <target/tron_0xf_v0.2.0+20200225.z80>

  • <target/tron_0xf_v0.2.0+20200225.sna>

There are many ZX Spectrum emulators, for almost any kind of operating systems. In case you never used such a program, I can recommend the following ones, which work on GNU/Linux, Windows and other systems:

If you prefer not to install a program, you can use this on-line ZX Spectrum emulator just visiting its address with a modern browser:

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 (code or 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 make. That will create the file <target/tron_0xf_v0.2.0+20200225_compilable.tap> (with the current version number).

Step 2: Interpret the sources

Open <target/tron_0xf_v0.2.0+20200225_compilable.tap> normally with your emulator. It contains Abersoft Forth, followed by the Afera library and the program sources.

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 the 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.

Screen saver

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.

Known issues

  • The robots are pretty stupid. Several approaches have been tried in order to make them smarter without slowing the game, but no clear result has been achieved yet.

  • The sound effects are rudimentary, and they affect the game speed: when the sound is enabled, two riders run faster than three. In order to get a decent result from the beeper of the ZX Spectrum 48, the sound should be implemented by an interrupt-driven routine. A future improved version for ZX Spectrum 128, which has a dedicated sound chip, would solve this; Solo Forth, faster and more powerful, would be used for that instead of Abersoft Forth.

  • Color clash between the light trails, which is unavoidable, since all of the ZX Spectrum models have a color resolution lower than the pixel resolution. A future version for the new ZX Spectrum Next, which has improved graphic modes, would solve this problem. Again, Solo Forth would be used.

The to-do list contains other minor issues, planned improvementes and some testings about the robots.

Esperanto (eo)

Priskribo

Tron 0xF estas Tron-speca ludo por ZX Spectrum (modelo de 48 KiB aŭ posta), de jenaj ecoj:

  1. 1, 2 aŭ 3 veturantoj, en ajna kombino de homoj kaj robotoj.

  2. Konfigureblaj koloroj kaj klavoj de la veturantoj.

  3. La ludo neniam finiĝas. Se poentaro iĝas 999, ĝi rekomencas de nulo. Homaj veturantoj devas interkonsenti pri fin-kondiĉoj.

  4. Kiam estas unu homa veturanto, la veturado ekas post ajna klavpremo; kiam ĉiuj veturantoj robotas, la veturadoj ekas aŭtomate.

Lud-instrukcioj estas inkluditaj en la programo.

Pri la kodo

Tron 0xF estas verkita en Abersoft Forth (sistemo fig-Forth 1.1 adaptita al ZX Spectrum far John Jones Steele kaj eldonita de Melbourne House en 1983), uzante la bibliotekon Afera (Marcos Cruz, 2015). Pliaj detaloj estas en la retpaĝo de Tron 0xF.

Kiel funkciigi

Malfermu iun ajn el la sekvantaj dosieroj per via plej ŝatata emulilo de ZX Spectrum:

  • <target/tron_0xf_v0.2.0+20200225.szx>

  • <target/tron_0xf_v0.2.0+20200225.z80>

  • <target/tron_0xf_v0.2.0+20200225.sna>

Estas multaj emuliloj de ZX Spectrum, por preskaŭ ĉia operaciumo (mastruma programo). Se vi neniam uzis tian programon, mi povas rekomendi la sekvantajn, kiuj funkcias en sistemoj GNU/Linukso, Vindozo kaj aliaj:

Se vi preferas ne instali programon, vi povas uzi tiun ĉi retan emulilon de ZX Spectrum nur vizitante ĝian retadreson per moderna retpaĝumilo:

Kiel konstrui la programon el la fonto

Se vi volas modifi la programon, vi devas sekvi jenajn instrukciojn. Se vi volas nur provi, rekonstrui ĝin el la nuna fonto, vi povas iri rekte al paŝo 2.

Paŝo 1: Krei la TAP-dosieron

Por traduki la font-dosierojn (kodajn aŭ bildajn) en TAP-dosieron uzeblan de Abersoft Forth, pluraj programoj devas esti instalitaj (vidu pliajn detalojn en la dosiero Makefile):

Poste eniru la dosierujon de Tron 0xF kaj ordonu make. Tio kreos la dosieron <target/tron_0xf_v0.2.0+20200225_compilable.tap> (kun la nuna versio-numero).

Paŝo 2: Interpreti la fonton

Malfermu normale la dosieron <target/tron_0xf_v0.2.0+20200225_compilable.tap> per via emulilo. Ĝi enhavas unue Abersoft Forth, kaj poste la fontojn de la biblioteko Afera kaj de la programo.

Enlegu Abersoft Forth per la BASIC-komando LOAD "" (aŭ per la menuo de ZX Spectrum 128). Ĉe la salutekrano de Abersoft Forth tajpu la ordonon LOADT 1 LOAD. La interpretado daŭros pli malpi 13 minutojn je la originala rapido de ZX Spectrum. La programo ekfunkcios je la fino. Tiam vi povos registri ĝin kiel sistem-kaptaĵon en ajna formato, ekzemple SZX, SNA, Z80.

Konataj misoj

  • La robotoj estas iom stultaj. Pluraj metodoj estis provitaj por pliinteligentigi ilin sen malrapidigi la ludon, sed klara rezulto ankoraŭ ne estis atingita.

  • La son-efektoj estas rudimentaj, kaj influas la ludo-rapidon: kiam la sono estas aktiva, du veturiloj pli rapidas ol tri. Por atingi decan sonon el ZX Spectrum 48 necesas verki por ĝi interrompo-vokitan subprogramon. Onta plibonigita versio por ZX Spectrum 128, kiu havas son-dediĉitan blaton, solvus tion; Solo Forth, pli rapida kaj potenca, estus uzata anstataŭ Abersoft Forth.

  • Kolor-kolizio inter la lumo-muroj, kiu estas neevitebla, ĉar ĉiuj modeloj de ZX Spectrum havas kolor-distingivon kiu estas malplia ol la piksel-distingivo. Onta versio por la nova ZX Spectrum Next, kiu havas plibonigitajn ekran-modalojn, solvus ĉi-tiun problemon. Ankaŭ, Solo Forth estus uzata.

La listo de farendaĵoj (en la angla) enhavas aliajn malgravajn aferojn, planitajn plibonigojon kaj provojn pri la robotoj.

Español (es)

Descripción

Tron 0xF es un juego de tipo Tron para ZX Spectrum (modelo de 48 KiB o posterior), con las siguientes características:

  1. 1, 2 o 3 pilotos, en cualquier combinación de humanos y robots.

  2. El color y las teclas de los pilotos son configurables.

  3. El juego nunca termina. Cuando un marcador llega a 999, vuelve a empezar desde cero. Los jugadores humanos deben acordar las condiciones de finalización.

  4. Cuando hay un piloto humano, la carrera empieza con la primera pulsación de una tecla; cuando todos los pilotos son robots, las carreras empiezan automáticamente.

Las instrucciones de juego están incluidas en el programa.

Acerca del código

Tron 0xF está escrito en Abersoft Forth (un sistema fig-Forth 1.1 llevado a ZX Spectrum por John Jones Steele y publicado por Melbourne House en 1983), con módulos de la biblioteca Afera (Marcos Cruz, 2015). Puedes encontrar más detalles en la página de Tron 0xF.

Cómo ejecutarlo

Abre cualquiera de los siguientes ficheros con tu emulador de ZX Spectrum favorito:

  • <target/tron_0xf_v0.2.0+20200225.szx>

  • <target/tron_0xf_v0.2.0+20200225.z80>

  • <target/tron_0xf_v0.2.0+20200225.sna>

Hay muchos emuladores de ZX Spectrum, casi para todo tipo de sistema operativo. Si nunca has usado este tipo de programas, puedo recomendarte los siguientes, que funcionan en sistemas GNU/Linux, Windows y otros:

Si prefieres no instalar un programa, puedes usar un emulador de ZX Spectrum en línea tan solo entrando en su página con un navegador moderno:

Cómo crear el programa a partir de las fuentes

Si quieres modificar el programa debes seguir las siguientes instrucciones. Si solo quieres probar a reconstruirlo a partir de las fuentes originales, puedes ir directamente al paso2 .

Paso 1: Crear el fichero TAP

Para convertir los ficheros fuente (de código o gráficos) en un fichero TAP utilizable por Abersoft Forth, es preciso tener instalados varios programas (véanse más detalles en el fichero Makefile):

Después entra en el directorio de Tron 0xF y ejecuta el comando make. Esto creará el fichero <target/tron_0xf_v0.2.0+20200225_compilable.tap> (con el número de versión actual).

Paso 2: Interpretar las fuentes

Abre el fichero <target/tron_0xf_v0.2.0+20200225_compilable.tap> con tu emulador de la forma habitual. Contiene Abersoft Forth, seguido de las fuentes de la biblioteca Afera y del programa.

Carga Abersoft Forth con el comando de BASIC LOAD "" (o con el menú de ZX Spectrum 128). Saldrá la pantalla inicial de Abersoft Forth. A continuación teclea el comando LOADT 1 LOAD. La interpretación durará unos 13 minutos a la velocidad original de ZX Spectrum. El programa se pondrá en marcha al final. Entonces podrás usar tu emulador para guardar una instantánea del sistema en cualquier formato, por ejemplo SZX, SNA, Z80.

Fallos conocidos

  • Los robots son bastante tontos. Se ha probado varios métodos para hacerlos algo más listos sin ralentizar el juego, pero aún no se ha obtenido resultados claros.

  • Los efectos de sonido son rudimentarios, y afectan a la velocidad del juego: cuando el sonido está activado, dos corredores van más rápido que tres. Para lograr un sonido decente en ZX Spectrum 48 habría que implementarlo con una rutina activada por interrupciones. Una futura versión mejorada para ZX Spectrum 128, que tiene un chip específico de sonido, solucionaría este problema; Solo Forth, más rápido y potente, se usaría para ello en lugar de Abersoft Forth.

  • Choque de colores entre los muros de luz, inevitable debido a que todos los modelos de ZX Spectrum tienen una resolución de color menor que la de píxeles. Una futura versión para el nuevo ZX Spectrum Next, que tiene modos de pantalla mejorados, solucionaría esto. Igualmente, se usaría Solo Forth.

La lista de tareas pendientes (en inglés) contiene algunas otras cosas menores, mejoras previstas y algunas pruebas hechas con los robots.

Interlingue (ie)

Descrition

Tron 0xF es un lude de tipe Tron por ZX Spectrum (modelle con 48 KiB o posteriori), con li sequent trates:

  1. 1, 2 o 3 pilotes, in quelcunc combination de homes e robotes.

  2. Li color e li tastes del pilotes es configurabil.

  3. Li lude nequande fini. Quande li punctus de alquí es 999, ili recomensa de null. Li homal lusores deve consentir li conditiones de finition.

  4. Quande hay un pilote homal, li currida comensa per li unesim pression de un taste; quande omni pilotes es robotes, li curridas comensa automaticmen.

Li instructiones del lude es includet in li programa.

Pri li code

Tron 0xF es scrit in Abersoft Forth (un sistema fig-Forth 1.1 adaptat a ZX Spectrum de John Jones Steele e publicat de Melbourne House in 1983), con partes del biblioteca Afera (Marcos Cruz, 2015). Vu posse trovar plu detallies en li web-págine de Tron 0xF.

Qualmen far functionar it

Aperte quelcunc de li sequent documentes per vor favorit emulator de ZX Spectrum:

  • <target/tron_0xf_v0.2.0+20200225.szx>

  • <target/tron_0xf_v0.2.0+20200225.z80>

  • <target/tron_0xf_v0.2.0+20200225.sna>

Hay mult emulatores de ZX Spectrum, presc por qualcunc tip de sistema operativ. Si vu nequande usat un programa tal, yo posse recomandar li sequentes, queles functiona in sistemas GNU/Linux, Windows e altris:

Si vu prefere ne instalar un programa, vu posse usar un emulator web de ZX Spectrum, solmen visitante su adresse per un navigator modern:

Qualmen crear li programa ex li font-documentes

Si vu vole modificar li programa, vu deve sequer li sequent instructiones. Si vu solmen vole provar recrear it ex li original font-documentes, vu posse ear directmen al passu2 .

Passu 1: Crear li document TAP

Por converter li font-documentes (codal o pictural) in un document TAP usabil por Abersoft Forth, on deve haver pluri programas installat (on posse vider plu detallies in li document Makefile):

Tande inea li documentiere de Tron 0xF e usa li comande make. Ti va crear crear li document <target/tron_0xf_v0.2.0+20200225_compilable.tap> (con li númere de version actual).

Passu 2: Interpreter li font-documentes

Aperte li document <tron_0xf_v0.2.0+20200225_compilable.tap> per vor emulator secun li metode ordinari. It contene Abersoft Forth, sequet del font-documentes del biblioteca Afera e del programa.

Carga Abersoft Forth per li comande de BASIC LOAD "" (o per li menú de ZX Spectrum 128). Li ecran initial de Abersoft Forth va aparir. Tande usu li comande LOADT 1 LOAD. Li interpretation va durar circa 13 minutes, secún li rapiditá original del ZX Spectrum. Finalment li programa va comensar. Tande vu va posser usar vor emulator por conservar un copie del sistema in qualcunc formate, por exemple SZX, SNA, Z80.

Defectes conosset

  • Li robotes es sat stult. Pluri metodes ha esset provat por far les un poc plu habil sin lentisar li lude, ma ancor nequel clar resultate esset atinget.

  • Li son-efectes es rudimental, e ili afecte li rapiditá del lude: quande li son es activat, du lusores curre plu rapid quam tri. Por atinger un bon son in un ZX Spectrum 48, on vell dever programar it per un rutine activat per interruptiones. Un futur version ameliorat por ZX Spectrum 128, quel have un chip specific por li son, vell soluer to; Solo Forth, quel es plu rapid e potent, vell esser usat vice Abersoft Forth.

  • Choc de colores ínter li mures de luce. To es ínevitabil, nam omni modeles de ZX Spectrum have un resolution de color inferiori quam li resolution de pixeles. Un futur version por li nov ZX Spectrum Next, quel have ameliorat ecran-modes, vell soluer ti problema. Anc Solo Forth vell esser usat.

Li liste de taches a far (in anglesi) contene quelc altri coses minori, planat ameliorationes e alcun provas fat pri li robotes.

About

Game for ZX Spectrum, written in fig-Forth for Abersoft Forth with the Afera library.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published