A Docker image containing various tools for building ZX Spectrum software.
TLDR: See alexanderk23/zx-tools-image-example for a usage example.
- zmakebas - Converts Spectrum BASIC programs written as text files into actual Speccy BASIC files
- zx0 - Optimal data compressor by Einar Saukas
- lzsa - A lossless data compression tool by Emmanuel Marty and spke
- mhmt - MeHruMsT - MEgalz, HRUM and hruST packer/unpacker
- mctrd - A tool for working with ZX Spectrum disk images (TRD, SCL, TAP formats)
- trd2scl - A tool to convert TRD to SCL format by Matthew Westcott
- zxtune123 - A chiptune conversion utility supporting various tracker formats
- psg_compressor - A tool to pack PSG files
- createhdf - Create hard disk image
- fmfconv - FMF converter
- listbasic - List BASIC programs
- profile2map - Convert profile to map
- raw2hdf - Convert raw data to HDF
- rzxcheck - RZX file checker
- rzxdump - RZX file dumper
- rzxtool - RZX utility tool
- scl2trd - Convert SCL to TRD format
- snap2tzx - Convert snapshots to TZX format
- snapconv - Snapshot converter
- tape2pulses - Convert tape to pulses
- tapeconv - Tape converter
- tzxlist - TZX file lister
- make - Makefile build system support
Create a .github/workflows/build.yml file in your project repository:
name: Build ZX Spectrum Project
on:
push:
branches: [ main, master ]
pull_request:
branches: [ main, master ]
jobs:
build:
runs-on: ubuntu-latest
container:
image: ghcr.io/alexanderk23/zx-tools-image:latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: Build project
run: |
sjasmplus source.asm
- name: Upload artifacts
uses: actions/upload-artifact@v4
with:
name: zx-spectrum-build
path: output.tapdocker build -t zx-tools-image .Feel free to submit issues or pull requests to improve this image.