Skip to content

Installation

Building

devsoak needs bebbo's amiga-gcc. With m68k-amigaos-gcc on your PATH, make builds directly. Otherwise make runs the build inside the stefanreinauer/amiga-gcc:gcc-v16.1 Docker image, so you don't need the cross-toolchain installed natively:

make

Either way the result is a single static devsoak binary — nothing else to link or install on the Amiga side.

Why -mcrt=nix13

The build uses -mcrt=nix13, not plain -noixemul. The default libnix variant implements even 32-bit multiply/divide via utility.library (V36+), which makes the binary refuse to start on Kickstart 1.3 ("utility.library failed to load"). src/soft64.c additionally provides pure-software 64-bit helpers so no 64-bit arithmetic can reintroduce the dependency.

If you change the toolchain flags, re-check that utility.library hasn't crept back in:

m68k-amigaos-nm devsoak | grep -i utility

It must print nothing.

What to copy to the Amiga

Copy devsoak and devsoak.quirks to the target machine side by side — by default devsoak looks for the quirks file in the current directory, then PROGDIR:, so keep them together unless you point -Q elsewhere.

Memory requirements

Range sizing: 16–64 MB on a machine with at least 8 MB of fast RAM. The generation table costs 2 bytes per sector in the range, and each worker slot buffers MaxTransfer bytes, so worker count, queue depth and -M all trade directly against memory. On a 1 MB machine, cut all three down:

devsoak DEVICE UNIT -d -r ...,8M -M 0x8000 -w 2 -q 2

Placing the range at the end of the device puts the traffic and the bounds tests in the same neighbourhood.

Kickstart 1.3 boot floppy

On Kickstart 1.3 there is no --run staging under Copperline (that needs a 2.0+ shell), and there are no shell built-ins on the guest either, so build a minimal bootable OFS floppy: devsoak, the quirks file, and a one-line s/startup-sequence that invokes it.

xdftool boot.adf create + format Boot ofs + boot install + write devsoak \
    + write devsoak.quirks + makedir s + write ss.txt s/startup-sequence

Then run devsoak from that floppy, keeping the resource footprint small and output on serial (no CLI window to read from):

devsoak lide.device 0 -d -r 512,2K -t 30s -w 2 -q 2 -W 60 -y -o ser

See Testing under Emulation for the Copperline side of running a 1.3 boot floppy in CI.