Useful Tools: Difference between revisions

From DisNCord Community Wiki
Jump to navigation Jump to search
Vmlemon (talk | contribs)
Link to a bunch of handy FUSE modules, and tools, for accessing retro file systems, on modern OSes
Vmlemon (talk | contribs)
Acorn/BBC FUSE things
Line 7: Line 7:
== FUSE File Systems ==
== FUSE File Systems ==
* [https://llg.cubic.org/tools/cbmfs/ CBMFS] supports various disk image formats (d64, d71, d81, d80, and d82), from 8-bit Commodore systems
* [https://llg.cubic.org/tools/cbmfs/ CBMFS] supports various disk image formats (d64, d71, d81, d80, and d82), from 8-bit Commodore systems
* [https://github.com/pcrow/atari_8bit_utils Atari 8-bit Utils] contains ATRFS, which supports Atari DOS 1, Atari DOS 2.0s, Atari DOS 2.5, MyDOS 4.53, SpartaDOS, Atari DOS 3 (read-only), Atari DOS 4 published by Antic (read-only), and LiteDOS volumes, in ATR disk image files
* [https://github.com/pcrow/atari_8bit_utils Atari 8-bit Utils] contains ATRFS, which supports Atari DOS 1, Atari DOS 2.0s, Atari DOS 2.5, MyDOS 4.53, SpartaDOS, Atari DOS 3 (read-only), Atari DOS 4 published by Antic (read-only), and LiteDOS volumes, in ATR disk image files.
* [https://gitlab.com/t-m/fuseadf FUSEADF] supports AmigaOS disk images, and requires ADFLib, to compile
* [https://gitlab.com/t-m/fuseadf FUSEADF] supports AmigaOS disk images, and requires ADFLib, to compile.
* [https://github.com/realchonk/fuse-ufs FUSE-UFS) supports FreeBSD UFSv2 volumes
* [https://github.com/realchonk/fuse-ufs FUSE-UFS] supports FreeBSD UFSv2 volumes.
* [https://github.com/0x09/hfsfuse HFS-FUSE] supports Apple HFS+ volumes, including resource forks, and extended attributes
* [https://github.com/0x09/hfsfuse HFS-FUSE] supports Apple HFS+ volumes, including resource forks, and extended attributes.
* [https://www.adsb.co.uk/bbc/linux/ Acorn ADFS, and DFS] implementations, written in Perl. Requires the "Fuse" CPAN module to be installed, to build.


== Archive Manipulation ==  
== Archive Manipulation ==  

Revision as of 17:52, 31 October 2024

File System Manipulation

  • Aaru supports a fairly comprehensive collection of disk image, partition table, and file system formats, and is built with the Microsoft .NET Framework - builds exist, for several operating systems.
  • kpartx is a fairly standard command to automatically create loop devices for whole disk images (assuming regular partition table types Linux can understand).
  • macFUSE allows you to use FUSE filesystems on macOS.
  • OpenVMS ODS-5 file system for Linux is a kernel module, in source form. A TinyCore Linux VM, with it pre-installed is also available.

FUSE File Systems

  • CBMFS supports various disk image formats (d64, d71, d81, d80, and d82), from 8-bit Commodore systems
  • Atari 8-bit Utils contains ATRFS, which supports Atari DOS 1, Atari DOS 2.0s, Atari DOS 2.5, MyDOS 4.53, SpartaDOS, Atari DOS 3 (read-only), Atari DOS 4 published by Antic (read-only), and LiteDOS volumes, in ATR disk image files.
  • FUSEADF supports AmigaOS disk images, and requires ADFLib, to compile.
  • FUSE-UFS supports FreeBSD UFSv2 volumes.
  • HFS-FUSE supports Apple HFS+ volumes, including resource forks, and extended attributes.
  • Acorn ADFS, and DFS implementations, written in Perl. Requires the "Fuse" CPAN module to be installed, to build.

Archive Manipulation

  • 7-Zip supports the Windows Imaging format (.WIM) disk images, with LZX compression, as used by Windows 8.1.
  • XADMaster supports a fairly comprehensive collection of compression, and archival formats, and can also expand some disk image formats - this seems to be the basis of the "unar" utility, provided for Ubuntu, and some other Linux distributions.
  • unshield is a CLI tool, for unpacking various flavours of InstallShield archive.
  • jSAVF is a Java-based application, for accessing IBM i (AKA OS/400) save files, under Windows, and Linux

Firmware Image Extraction

  • The RandomSHX utility, for Windows will extract the contents of some Motorola P2K (e.g. A835) "UNIX Generated SuperFile" firmware archives - this requires Windows, and does not work with UNC paths.
  • The srecord package, under Ubuntu contains a utility, that can convert Motorola S-Record files, into plain binaries: (for example srec_cat C139_V1.0.03.E.m0 -Output C139_V1.0.03.E.bin -Binary).
  • BinWalk is extremely useful, for extracting files, and resources out of firmware images, executables, and file system structures.

Binary reverse engineering

  • Dependency Walker for understanding Windows program dependencies and what's used by the program, helpful for software archaeology.
  • Ghidra is an open-source set of RE tools, including a set of decompilers and disassemblers for most binary formats.

Development tools

  • The Amsterdam Compiler Kit is one of the few (mostly) C99 compilers around that can still target a PDP-11 Unix v7 target.
  • llvm-cbe is the C backend for LLVM -- it can convert LLVM bytecode into C (useful for compiling modern C++ targeting systems that don't have a functional modern C++ compiler, for example).
  • GNUish Project is a port of UNIX standard utilities for DOS with family mode support (useful for replacing equivalent utilities that cannot be ran under OS/2).