Documentación de ZX-V
ZX-V es un ordenador de 32 bits para aficionados, inspirado en el ZX Spectrum: lo enciendes y estás en el BASIC. Estas páginas explican cómo usarlo, cómo programarlo en BASIC o en C y cómo construir la máquina real.
Para empezar
- Primeros pasos: consigue el emulador, escribe tu primer programa y carga los ejemplos que trae.
- El emulador: las versiones de escritorio y web: menús, teclas, la carpeta que hace de tarjeta SD, instantáneas y opciones.
- La máquina: cómo es ZX-V por dentro: la pantalla y sus colores, el sonido, la entrada, la memoria y los ficheros que usa.
Programar en BASIC
- Aprende BASIC: un curso desde cero, sin haber programado nunca ni conocer el Spectrum. Acaba con un juego completo.
- El editor: escribir y corregir programas, las teclas y el menú de opciones.
- Referencia del BASIC: cada orden, cada función y cada mensaje de error.
Programar en C
- Programas nativos (SDK): las herramientas, tu primer programa, gráficos, sonido, entrada y ficheros.
- Gráficos: el motor gráfico a fondo: la memoria de vídeo, sprites, mapas de tiles, scroll, el modo 7 y convertir imágenes.
- Referencia de la API: cada función del SDK.
Herramientas para el PC
Vienen con el emulador, para Windows y Linux:
- El editor de gráficos,
zxv-gfx: sprites, tiles, mapas y texturas para el BASIC y los programas en C. - El tracker,
zxv-tracker: música para los dos AY (módulos PT3) y efectos de sonido AYFX para el BASIC y los programas en C. - Publicar tu juego en la web:
mkweb.py(en el SDK) hace una página con tu juego solo, en C o en BASIC, para itch.io o tu web, con controles táctiles para los móviles.
Compilar BASIC
- ZX Basic: el compilador de BASIC de Boriel, con un target para ZX-V: programas en BASIC que van como los nativos.
La máquina real
- Construir el hardware: qué hace falta y cómo se conecta todo.
- La placa: pedir la placa montada y las piezas que sueldas tú.
- El firmware: poner el software en las dos Pico.
- En una protoboard: montarla sin la placa.
Ejemplos
- Un juego de plataformas en BASIC: sprites, un mapa de tiles, scroll y música.
- Rock, Paper, Scissors en BASIC:
el IF de bloque,
SELECT CASEy procedimientos, en un listado que se carga en texto. - Sentry, defensa contra misiles en BASIC: el ratón, los gráficos rápidos y explosiones en cadena, a 60 imágenes por segundo.
- Estela, un matamarcianos en C: un juego nativo completo.
- Route 128, un juego de carreras en C: una carretera en pseudo-3D con curvas y rasantes, y sprites escalados.
- Muncher en BASIC: un laberinto con cuatro perseguidores, cada uno con su manera de buscarte, con un mapa de tiles y sprites a 60 imágenes por segundo.
- Cascade en BASIC: un juego de gemas que caen, con sus gráficos, su música y sus efectos en ficheros que se editan.
- The Mine, un juego de cavar en C: piedras y diamantes que caen y ruedan, en cuevas más grandes que la pantalla.
- Street Justice, un juego de peleas en C: por las calles contra los matones de las bandas, con luchadores dibujados por el motor a partir de un esqueleto.
- Umbra, un laberinto en 3D en C: paredes por raycasting, suelo con el modo 7 y una lámpara cuya luz se acorta al gastarse el aceite.
- The Keep, una aventura de mazmorras en C:
cuatro plantas de salas vistas desde arriba, cuyos mapas puedes redibujar
en
zxv-gfx. - ZXV Chess, ajedrez en C: contra la máquina o entre dos, con el teclado, el mando o el ratón.
- Stardust, un juego en ZX Basic:
doble buffer, sprites y choques con
zxv.bas, a 60 imágenes por segundo.
Esta documentación tiene licencia CC BY 4.0; sus ejemplos de código son de dominio público (CC0): puedes copiarlos en tus programas sin más.