Repository navigation
ZX-V v0.7.0
ZX-V, a 32-bit hobby computer inspired by the ZX Spectrum. (Español más abajo.)
What's new in 0.7.0
Colour palettes, files in ZX-V's own formats, loading screens, protected programs and a BASIC debugger.
- Palettes: each of the four colour tables now has its own palette of 16 colours out of 65,536, so a screen can show 16 colours per line and up to 64 at once. In BASIC,
PALETTE colour, r, g, b; in C,ZXV_PALETTE(t)andZXV_RGB(r, g, b). The usual 15 colours are still the default, and colour 8 is still transparent for sprites. Umbra uses them for a lamp that dims and flickers and a fog of real dark colours. - Files in ZX-V's formats:
SAVEwrites programs to.zvb(with their variables, as on the Spectrum), arrays (DATA) to.zvdandCODEto.bin, with no 64 KB limit. A.tapis for taking programs to and from Spectrum emulators;.tapfiles from earlier ZX-V versions still load. - The ZX-V screen in a file:
SAVE "x" SCREEN$saves the screen (its mode, border, palette and every pixel) as a screen in a.gfx, whichzxv-gfxedits;.scris only the Spectrum's.SAVE "x" LINE 10 SCREEN$puts it in the program as a loading screen, and native programs can have one too (elf2zxv.py --screen,png2gfx.py --screen). A game's web page shows it while the game starts. - Protected programs:
SAVE "x" LINE 10 PROTECTsaves a program that starts by itself and is deleted when it stops, so it cannot be listed. ZX-V's tools do not show it either. - BASIC debugger: breakpoints, step by step, variables, arrays and the call stack, from the ZX-V extension for VS Code, with the emulator (
--basic-debug PORTinzxv-sdlandzxv-cli). - Also: the editor's cursor blinks cyan and blue, like the +2's;
boardtesthas a palette page (key P) to check them on the board; and the documentation has been reviewed against the code. - Changes to take into account: the
.zxvheader now has 72 bytes: programs made with earlier versions must go throughelf2zxv.pyagain. ZX Basic needs 1.19.0-zxv.5 (the.zxvfiles of zxv.4 do not load). Snapshots from 0.6 still load.
| File | Contents |
|---|---|
zxv-windows-x64.zip |
The emulator for Windows: the zxv app (with the ROM inside), zxv-sdl, zxv-cli, zxv-check, sdimg, zxv-gfx, zxv-tracker, the examples and the documentation. Unzip it and open zxv.exe |
ZX-V-0.7.0-x86_64.AppImage |
The emulator for Linux in a single file: make it executable and run it |
zxv-linux-x86_64.tar.gz |
The same for Linux (x86-64) as a folder, using the system's Qt 6 and SDL 2 |
zxv-web.zip |
The web version: unzip it and open index.html (no server needed), or upload it as it is to a website or to itch.io. It is also online at cronomantic.github.io/ZX-V |
zxv-uf2.zip |
The firmware for the two Pico 2 boards (.uf2): which file goes on each board is in the firmware guide |
The binaries are free and can be passed on unchanged (TERMS.txt). Start with the getting started guide.
ZX-V, un ordenador de 32 bits para aficionados, inspirado en el ZX Spectrum.
Novedades de la 0.7.0
Paletas de colores, ficheros en los formatos de ZX-V, pantallas de carga, programas protegidos y un depurador para el BASIC.
- Paletas: cada una de las cuatro tablas de colores tiene ahora su paleta de 16 colores de entre 65.536, así que una pantalla puede tener 16 colores por línea y hasta 64 a la vez. En el BASIC,
PALETTE color, r, g, b; en C,ZXV_PALETTE(t)yZXV_RGB(r, g, b). Los 15 colores de siempre siguen siendo los de partida, y el 8 sigue siendo el transparente de los sprites. Umbra las usa para una lámpara que se apaga y tiembla y una niebla de oscuros de verdad. - Ficheros en los formatos de ZX-V:
SAVEgraba los programas en.zvb(con sus variables, como en el Spectrum), las matrices (DATA) en.zvdyCODEen.bin, sin el límite de 64 KB. El.tapqueda para llevar programas a los emuladores del Spectrum y traerlos; los.tapde las versiones anteriores de ZX-V se siguen cargando. - La pantalla de ZX-V en un fichero:
SAVE "x" SCREEN$graba la pantalla (su modo, su borde, su paleta y cada píxel) como una pantalla de un.gfx, que se edita enzxv-gfx; el.scres solo el del Spectrum.SAVE "x" LINE 10 SCREEN$la mete en el programa como pantalla de carga, y los programas nativos también pueden llevar una (elf2zxv.py --screen,png2gfx.py --screen). La página web de un juego la enseña mientras arranca. - Programas protegidos:
SAVE "x" LINE 10 PROTECTgraba un programa que arranca solo y se borra al pararse, así que no se puede listar. Las herramientas de ZX-V tampoco lo enseñan. - Depurador del BASIC: puntos de parada, paso a paso, variables, matrices y la pila de llamadas, desde la extensión de ZX-V para VS Code, con el emulador (
--basic-debug PUERTOenzxv-sdlyzxv-cli). - Además: el cursor del editor parpadea en cian y azul, como el del +2;
boardtesttiene una página de las paletas (tecla P) para probarlas en la placa; y la documentación se ha repasado con el código. - Cambios a tener en cuenta: la cabecera de los
.zxvtiene ahora 72 bytes: los programas hechos con versiones anteriores tienen que pasar otra vez porelf2zxv.py. ZX Basic necesita la 1.19.0-zxv.5 (los.zxvde la zxv.4 no cargan). Las instantáneas de la 0.6 se siguen cargando.
| Fichero | Contenido |
|---|---|
zxv-windows-x64.zip |
El emulador para Windows: la aplicación zxv (con la ROM dentro), zxv-sdl, zxv-cli, zxv-check, sdimg, zxv-gfx, zxv-tracker, los ejemplos y la documentación. Se descomprime y se abre zxv.exe |
ZX-V-0.7.0-x86_64.AppImage |
El emulador para Linux en un solo fichero: se le da permiso de ejecución y se abre |
zxv-linux-x86_64.tar.gz |
Lo mismo para Linux (x86-64) en una carpeta, con el Qt 6 y el SDL 2 del sistema |
zxv-web.zip |
La versión web: se descomprime y se abre index.html, sin servidor, o se sube tal cual a una web o a itch.io. También está en línea, en cronomantic.github.io/ZX-V |
zxv-uf2.zip |
El firmware de las dos Pico 2 (.uf2): qué va en cada placa está en la guía del firmware |
Los binarios son gratis y se pueden repartir sin cambios (TERMS.txt). Empieza por la guía de primeros pasos.