extract-adf is a tool for recovering files from broken Amiga OFS filesystem images. It can reconstruct directory hierarchies even for files that don’t have directory entries.
I originally developed
extract-adf to reconstruct the leftovers on the Amiga Kickstart 1.0 disk. Sigurbjörn B. Lárusson has made it into a general-purpose tool with the following features:
- support for ADF, ADZ and DMS image files
- support for DD and HD disks
- reconstruction of directory hierarchies
- recreation of time stamps
- lots of optional debug output
Just passing a disk image file as an argument will write all files and directories to the local filesystem:
$ extract-adf "Amiga Workbench 1.0 (31.334) (Commodore) (1985) [m].adf" Autodetected fileformat from extension is ADF Startsector is 0 Endsector is 1760
extract-adf will create a directory matching the disk name with all the contents, and an “Orphaned” directory.
$ ls -l total 0 drwxr-xr-x 2 mist staff 64 May 12 10:47 Orphaned drwxr-xr-x 23 mist staff 736 Jan 31 2000 Workbench $ ls -l Workbench/ total 152 drwxr-xr-x 9 mist staff 288 Jan 31 2000 Demos -rw-r--r-- 1 mist staff 346 Sep 11 1985 Demos.info -rw-r--r-- 1 mist staff 306 Sep 11 1985 Disk.info [...] $ ls -l Orphaned/ [empty]
The “Orphaned” directory contains all files that are not referenced by directory entries. In this case, it will be empty.
Here is how to recover the contents of the Kickstart 1.0 disk:
$ extract-adf -s 512 "Amiga Kickstart 1.0 (NTSC) (A1000) (Commodore) (1985) (disk).adf" Autodetected fileformat from extension is ADF Startsector is 512 Endsector is 1760