1 Commits
v5.2 ... v6.0

Author SHA1 Message Date
91e987b972 Add TAPTOOLS 2026-02-23 12:31:47 +00:00
3 changed files with 29 additions and 8 deletions

View File

@@ -7,6 +7,7 @@ RUN apt-get update \
automake \ automake \
build-essential \ build-essential \
fpc \ fpc \
libdsk4-dev \
make \ make \
python3-pip \ python3-pip \
unzip \ unzip \
@@ -38,6 +39,11 @@ RUN cd /hdfmonkey/ \
ADD https://github.com/pleumann/pasta80.git#v0.96 /opt/pasta80 ADD https://github.com/pleumann/pasta80.git#v0.96 /opt/pasta80
RUN cd /opt/pasta80 \ RUN cd /opt/pasta80 \
&& fpc pasta && fpc pasta
ADD --unpack https://www.seasip.info/ZX/taptools-1.1.3.tar.gz taptools/
RUN cd taptools/taptools* \
&& ./configure \
&& make -j8 \
&& make install
FROM ubuntu:24.04 AS z88dk FROM ubuntu:24.04 AS z88dk
RUN apt-get update \ RUN apt-get update \
@@ -90,6 +96,8 @@ RUN apt-get update \
ca-certificates \ ca-certificates \
fuse-emulator-utils \ fuse-emulator-utils \
git \ git \
libdsk4 \
libdsk-utils \
m4 \ m4 \
make \ make \
openssh-client \ openssh-client \
@@ -99,7 +107,6 @@ RUN apt-get update \
z80dasm \ z80dasm \
zmakebas \ zmakebas \
&& rm -rf /var/lib/apt/lists/* && rm -rf /var/lib/apt/lists/*
COPY --from=build /usr/local/bin/sjasmplus /bin/sjasmplus
COPY --from=build /ttttt/ttttt /bin/ttttt COPY --from=build /ttttt/ttttt /bin/ttttt
COPY --from=build /zx0/src/zx0 /bin/zx0 COPY --from=build /zx0/src/zx0 /bin/zx0
COPY --from=build /zx0/src/dzx0 /bin/dzx0 COPY --from=build /zx0/src/dzx0 /bin/dzx0
@@ -111,7 +118,6 @@ COPY --from=build /zxbasic/tools /opt/zxbasic/tools
COPY --from=build /inpaws/inpaws /bin/inpaws COPY --from=build /inpaws/inpaws /bin/inpaws
COPY --from=build /usr/local/bin/ /usr/local/bin/ COPY --from=build /usr/local/bin/ /usr/local/bin/
COPY --from=build /usr/local/lib/python3.12/dist-packages/skoolkit/ /usr/local/lib/python3.12/dist-packages/skoolkit/ COPY --from=build /usr/local/lib/python3.12/dist-packages/skoolkit/ /usr/local/lib/python3.12/dist-packages/skoolkit/
COPY --from=build /usr/local/bin/hdfmonkey /bin/hdfmonkey
COPY --from=build /opt/pasta80 /opt/pasta80 COPY --from=build /opt/pasta80 /opt/pasta80
COPY --from=z88dk /opt/z88dk/ /opt/z88dk/ COPY --from=z88dk /opt/z88dk/ /opt/z88dk/
ENV PATH="${PATH}:/opt/z88dk/bin:/opt/zxbasic:/opt/zxbasic/tools:/opt/pasta80" ENV PATH="${PATH}:/opt/z88dk/bin:/opt/zxbasic:/opt/zxbasic/tools:/opt/pasta80"

View File

@@ -2,7 +2,7 @@
"name": "ZX Spectrum dev tools", "name": "ZX Spectrum dev tools",
//"build": { "dockerfile": "Dockerfile" }, //"build": { "dockerfile": "Dockerfile" },
// The Dockerfile takes an age to build due to z88dk, so pull from prebuilt: // The Dockerfile takes an age to build due to z88dk, so pull from prebuilt:
"image": "boarstone.mcphail.uk/mcphail/speccydev:v5.2", "image": "boarstone.mcphail.uk/mcphail/speccydev:v6.0",
"remoteUser": "ubuntu", "remoteUser": "ubuntu",
"runArgs": [ "runArgs": [
"--network=host" "--network=host"

View File

@@ -1,4 +1,4 @@
# Development tools for the ZX Spectrum v5.2 # Development tools for the ZX Spectrum v6.0
The Dockerfile is the basis of the devcontainer and can be changed to add or remove tools. It will take a long time to build locally, so by default the devcontainer will pull a prebuilt version. Edit `.devcontainer/devcontainer.json` if you would rather build your own. The Dockerfile is the basis of the devcontainer and can be changed to add or remove tools. It will take a long time to build locally, so by default the devcontainer will pull a prebuilt version. Edit `.devcontainer/devcontainer.json` if you would rather build your own.
@@ -57,18 +57,31 @@ The devcontainer contains:
- hdfmonkey version 0.4 (for manipulating sdcard files for the Spectrum Next) - hdfmonkey version 0.4 (for manipulating sdcard files for the Spectrum Next)
- git (version control) - git (version control)
- make (build control) - make (build control)
- John Elliott's TAPTOOLS version 1.1.3
- specform (add +3DOS header to a file)
- unspecform (removes +3DOS header)
- tapcat (combines files into a .tap file)
- tapls (lists content of a .tap file)
- tapget (extracts one or more files from a .tap file)
- tapsplit (extracts everything from a .tap file in one go)
- tap2dsk (builds a +3 or PCDOS image from a .tap file)
- mkp3fs (builds a +3 or PCDOS image from separate files)
- bin2bas (wraps a machine code program in a 2-line BASIC program that runs it)
- sna2tap (converts a .sna format snapshot to a .tap file)
- sna2dsk (converts a .sna format snapshot to a .dsk file)
- dsk2tap (converts a .dsk image to a .tap file which when run on a +3 recreates the original disk)
Several useful VSCode extentsions will be installed, including a Z80 assembly language server, Z80 and C debugger, Makefile support, BASIC syntax highlighter and more. Several useful VSCode extentsions will be installed, including a Z80 assembly language server, Z80 and C debugger, Makefile support, BASIC syntax highlighter and more.
Thanks to the many authors of these wonderful tools and extensions; to think what we could have made with these in 1985! Thanks to the many authors of these wonderful tools and extensions; to think what we could have made with these in 1985!
## Breaking changes from v4.x ## Breaking changes from v5.x
Boriel BASIC (zxbasic) has been updated. There have been further bug fixes to array bounds which may break old code reliant on previous behaviour. Some of the binaries, such as `sjasmplus`, are now found in a different $PATH, which may break some existing build scripts.
## New additions from v5.1 ## New additions from v5.2
Boriel BASIC updated with bugfix for rounding error. Addition of TAPTOOLS.
## Install ## Install
@@ -134,3 +147,5 @@ skoolkit - copyright Richard Dymond and Philip M Anderson and released under GPL
hdfmonkey - copyright Matt Westcott and released under GPL v3 hdfmonkey - copyright Matt Westcott and released under GPL v3
PASTA/80 - copyright Jörg Pleumann and released under GPL v3 with linking exception PASTA/80 - copyright Jörg Pleumann and released under GPL v3 with linking exception
TAPTOOLS - copyright John Elliott and released under GPL v2