Short: exFAT filesystem for classic 68k Amigas Author: Andrew Nayenko, Fredrik Wikstrom (68k port: Tobias Karlsson) Uploader: tobias karlsson piratkopia se (Tobias Karlsson) Type: disk/misc Version: 53.4 Requires: 68020+; filesysbox.library 54+ (68k build included) Architecture: m68k-amigaos >= 3.0 ================================================================ exFATFileSystem - read and write exFAT media on 68k AmigaOS ================================================================ WHAT IT IS A 68k build of Fredrik Wikstrom's exFATFileSystem, which upstream has only ever released for AmigaOS 4 (PPC) and AROS (i386) - as far as I can tell the only exFAT filesystem for classic 68k AmigaOS. CrossDOS reads FAT12/16/32 but not exFAT, and Poseidon is a USB stack, not a filesystem - it hands you the block device and stops there. Most sticks and cards over 32 GB come formatted exFAT from the factory; this handler mounts them: insert a stick, the icon appears on Workbench, and every program uses it as an ordinary volume. FEATURES - No disk geometry to edit: the handler inspects sector 0 itself on every insertion, the way fat95 does. An exFAT boot sector there means superfloppy - used as-is. An MBR (primaries plus one level of extended) or GPT partition table is scanned and the first exFAT partition selected - judged by content, never by partition type bytes. Factory-formatted, superfloppy and hand-partitioned sticks all swap under the same EXFAT: device. - Files over 4 GB: 64-bit device offsets through the NSD 64-bit trackdisk extensions. A 4.5 GiB file was copied exFAT-to-exFAT and exFAT -> SFS\2 -> exFAT on the Amiga, SHA256-identical afterwards. (The 32-bit Examine API displays such sizes wrongly - the data itself is fine.) - Fast: 22 MB/s sustained sequential reads on an A1200 with a PiStorm32. Use 128 KB or larger buffers - smaller requests route through the per-sector block cache and are much slower. - DiskWatch: a small background command that makes the volume icon appear on insertion for Poseidon-hosted media, sleeping on Poseidon's binding events - zero calls while idle. - 68020 and 68060 builds included; filesysbox.library 54.9 (68k) and FbxDismount included. INSTALLATION exFATFileSystem into L:, filesysbox.library into LIBS:, FbxDismount and DiskWatch into C:, the EXFAT DOSDriver (+ icon) into DEVS:DOSDrivers, and Run >NIL: C:DiskWatch EXFAT: in S:User-Startup. The supplied mount files assume Poseidon's usbscsi.device unit 0; point Device/Unit at something else if your media lives elsewhere. Full details, known behaviour and tuning notes are in the included ReadMe.txt. STATUS Tested on an A1200 + PiStorm32-lite (Emu68, AmigaOS 3.2.3, Poseidon 6.0) with a 128 GB USB stick formatted three ways - superfloppy, MBR and GPT: mount, read, write, mkdir, delete, eject/reinsert all working, and the media verified clean afterwards with fsck.exfat on Linux. Run "FbxDismount EXFAT:" before pulling a stick, or it stays marked volume-dirty. SOURCE https://github.com/creep-ltx/exfat-aos3 The release archive there additionally carries a traced debug build (with Sashimi and a capture HOWTO) and the source changes of the 68k port. Upstream: github.com/salass00/exfat (GPL-2.0) and github.com/salass00/filesysbox (APL). The filesystem itself is Andrew Nayenko's and Fredrik Wikstrom's work; the 68k port, the partition auto-detection and DiskWatch are additions. HISTORY 53.4 First 68k AmigaOS release (upstream releases were OS4 and AROS only), plus partition auto-detection in whole-device mode and DiskWatch.