AmigaChromeA new chapter for the Amiga
Featured · ACFS · 15 October 2026

Your Amiga's hard disk is a folder.

AmigaChrome has no hard disk images. DH0 is an ordinary folder on your PC, and ACFS is the Amiga filesystem that makes it look and behave like a real Amiga hard disk, protection bits, comments and all.

Open the folder on your PC and your Amiga's files are simply there. Back it up with whatever you already use, copy a game in by dragging it, or read a text file in your PC's editor. There is no image to mount, no fixed size to outgrow and no single huge file that a crash can ruin.

Images, or folders.

Most Amiga emulators keep a hard disk as one image file, an HDF, holding a whole Amiga filesystem inside it. It works, but the PC can't see in, and the Amiga's disk is only as safe as that one file. We chose folders, and our installer turns HDF images away: their files are copied out into a folder instead, with their protection bits and comments kept.

 A hard disk image (HDF)An ACFS folder
Seeing your files on the PCOnly with special tools, with the Amiga switched offOpen the folder
SizeFixed when you make itGrows and shrinks with your files
BackupsThe whole image, every timeOnly the files that changed
If the PC crashes mid-writeThe image's own filesystem can be left damagedOnly the file being written is at risk, and each metadata write is atomic
Where the Amiga filesystem livesInside the imageIn ACFS, on the Amiga

We are not the first to share host folders with an Amiga. WinUAE and FS-UAE have long had a directory filesystem, and A314's a314fs does it for real Amigas. ACFS is our own, built around our own AutoConfig board.

From AmigaDOS to your folder.

The rule behind the design: everything that makes a disk behave like an Amiga disk lives in ACFS, on the Amiga. The PC side only does plain, safe file operations inside the folder. A request goes through five steps.

1 · AmigaDOS

A packet, as always

A program opens, reads or lists something. AmigaDOS sends the usual packet to the volume's handler, exactly as it would for FFS. Nothing in the program knows the difference.

2 · ACFS

The Amiga filesystem

ACFS, in L:ACFS, answers the packet. It keeps the locks, open files and Amiga rules, and asks for only what it needs from the PC: read these bytes, list this drawer, rename this file.

3 · acscsi.device

An ordinary Exec device

ACFS talks to the hardware through acscsi.device, so it is a normal Amiga filesystem with a normal device under it, mounted like any other.

4 · ACStorage

An AutoConfig board

ACStorage is a Zorro II AutoConfig board of ours: 128 KB, with a boot ROM so the Amiga boots straight from DH0, and a 63.5 KB mailbox that carries each command and its data.

5 · The PC

Safe file operations

On the PC, AmigaChrome's host service carries out the command inside the volume's folder and answers through the mailbox. It never reaches outside that folder.

Fast path

The machine reads files itself

Reads are the busiest job, so the emulated machine asks once where a file is, keeps it open for a second and reads it directly, instead of a round trip to the host service for every 63.5 KB. That one change took copying from about 1 MB/s to about 17 MB/s.

The Amiga parts a PC doesn't have.

A PC filesystem has no protection bits, no file comments and different ideas about upper and lower case. ACFS keeps all of them, without changing your files.

Protection and comments

A small note in each drawer

Protection bits and comments live in a small hidden file in each drawer, .amigachrome-meta.json. Only values that differ from the default are written, so most drawers have none. Each update is written to a new file and then swapped in, so it is never half written. The D bit really does stop a delete.

Names

Case-insensitive, like AmigaDOS

Looking up s:startup-sequence finds S/Startup-Sequence, and the spelling you gave a file is kept. If a PC folder holds two names that differ only in case, ACFS refuses to guess between them. Names with :, \, .. or control characters are refused.

Dates

The file's own time

A file's date is the PC file's modification time, shown in your local time, and SetDate changes it on the PC too.

Locks

Amiga locks, kept by the Amiga

Locks and open files are ACFS's job, with no fixed limit. Renaming a drawer carries every lock inside it along, and deleting something that is locked or open gives the familiar "object in use".

Inside the folder, and nowhere else.

Built
  • Every path is checked on the PC: absolute paths and .. are refused, and anything that would land outside the volume's folder is stopped
  • Links on the PC are followed only while they stay inside the folder
  • The hidden .amigachrome- files are out of the Amiga's reach
  • A volume can be read-only, and the Amiga then sees it as write-protected
  • Only one running machine owns a volume at a time
Still open
  • A program on the PC can change the folder while the Amiga is using it. Close the Amiga's files first, or use a read-only volume
  • Any Amiga program can ask where a file sits on the PC. Knowing the path doesn't let it reach outside the folder, but it is more than it needs to know

The numbers, measured.

Measured by us on one of our development PCs, on the dates shown.

MeasurementResultWhen
Copying a 120 MB file into RAM:, first buildabout 1 MB/s4 Oct 2026
The same copy, with our boards costing no bus timeabout 16 MB/s4 Oct 2026
The same copy, with the machine reading files itselfabout 17 MB/s4 Oct 2026
acfstest on Kickstart 3.2.3 with the AC09034 of 34 checks pass1 Oct 2026

The copies ran on an OS 3.2.3 machine, three times each. What limits speed now is the Amiga copying the mailbox one byte at a time. Our next step is to let the PC write straight into the Amiga's buffer; we have not measured that yet.

Where it is today.

Done
  • AmigaOS 3.2.3 and AROS boot from a folder as DH0, and on OS 3.2.3 Info shows the blocks in use
  • Protection bits, comments, dates, locks and case-insensitive names on OS 3.2.3
  • The newest handler in our guest repository adds ExAll, soft and hard links, record locks and change notification; it comes into AmigaChrome's own build next
Next
  • Files are 32-bit, so 2 GB per file for now
  • Amiga names with accented Latin-1 letters don't yet survive the trip to the PC
  • The AROS handler doesn't yet set protection, comments or dates
  • OpenBench search for ACFS volumes, indexed on the PC so the Amiga reads nothing at all (in review)