Modern network scanning for classic Amigas.
MintSCAN is a standalone GadTools application which scans directly from an eSCL/AirScan network scanner or multifunction printer to a file on your Amiga. It is the scanning companion to MintPRINT: no PC scan server, vendor-specific Amiga driver, or system modification is required.
The 1.1.0 release adds and hardens:
- Eight independent saved scanner profiles (Unit0 to Unit7).
- Live scanner state, manual IPv4/port Query, and an ASL save requester.
- Timeout-bounded connect, send and receive operations, including one retry for sleeping Wi-Fi scanners.
- DNS-SD SRV port and TXT
rs=resource-root support. - Complete HTTP framing and disk-write checks, with partial scans removed after truncation, timeout, malformed chunking, or write failure.
- Source-scoped DPI/colour validation and a model-specific workaround for the
Brother MFC-J6930DW
BlackAndWhite1firmware fault. - A 400 DPI choice, Installer script, AmigaGuide, portable parser tests, CI, and guarded release packaging.
See CHANGELOG.md for the release history.
- Motorola 68000 or later.
- AmigaOS 3.0 or later.
- A TCP/IP stack providing
bsdsocket.library. - An eSCL/AirScan scanner reachable over plain HTTP.
- A 128 KiB stack (set in both the program and supplied Workbench icon).
HTTPS-only _uscans._tcp devices are not supported yet because the client
does not use AmiSSL.
- Start the Amiga TCP/IP stack and run
MintScan. - Click Discover. If mDNS cannot cross the network or emulator, enter an
IPv4 address (optionally
:port) and click Query. - Check the reported Model and Status.
- Choose Source, Colour, DPI, Format, Size, and a destination.
- Click Scan.
- Click Save Config to retain the settings in the selected Unit.
Use File > About MintSCAN... for version and project details. Help > MintSCAN Help...
opens the AmigaGuide manual shipped beside the program.
The scanner creates the JPEG, PNG, or PDF data; MintSCAN streams it unchanged to disk. A successful scan is only reported after the HTTP transfer and file close have completed.
The full user guide is docs/MintSCAN.guide.
MintSCAN performs one-page flatbed or feeder scans. The selectors contain fixed choices:
- Source: Flatbed or Feeder.
- Colour: Colour, Grayscale, or Black & White.
- DPI: 100, 150, 200, 300, 400, or 600.
- Format: JPEG, PNG, or PDF.
- Size: A4, Letter, Legal, or A3.
DPI and colour are checked against the selected source when the scanner advertises discrete values. Source, format, and size are not yet dynamically filtered. Multi-page ADF, duplex, HTTPS, IPv6/hostnames, and scan cancellation are not implemented.
A Bebbo-style m68k-amigaos-gcc toolchain is expected on PATH. Override
CROSS if the prefix differs.
make # build MintScan
make check # portable HTTP and DNS-SD parser tests
make release # validate art and stage the Aminet bundle under release/
make cleanThe release target validates the supplied Amiga DiskObjects before staging
them. It places MintScan.info beside the application, MintSCAN.info
beside the release drawer, and Install.info beside the Installer script.
The wrapper GNUmakefile then adjusts only the packaged drawer window
height, leaving the source icons untouched. See
art/README.md for the artwork manifest.
windows_escl_probe.py sends the equivalent eSCL requests from a PC on the
same network. It is useful for separating scanner firmware behaviour from an
Amiga networking or filesystem problem.
python windows_escl_probe.py SCANNER-IP --dpi 400 --color Grayscale8Please open an issue with the scanner make/model, AmigaOS version, TCP/IP stack, chosen options, and probe output where possible.
Implementation notes are in docs/ARCHITECTURE.md.
MIT - Copyright (c) 2026 Darren Banfi (boingball).