Jacknife
A WCX plugin (Total Commander, Double Commander etc) that aims to handle all Atari ST (etc) floppy and hard disk images
Install / Use
/learn @ggnkua/JacknifeREADME
Jacknife
(formely known as "Total Commander .ST/.MSA packer plugin v0.03")
This little plugin enables Total Commander and compatible programs (Double Commander, TC4Shell) to open and extract Atari ST .ST and .MSA disk images that have a valid file system in it.
Feature list
What's already there
| |.ST | .MSA | .DIM<sup>1</sup> | .AHD<sup>2</sup> |
|--- |:---: |:---: |:---: |:---: |
Opening image (directory listing) |✓|✓ |✓ |✓ |
Extracting files<sup>3</sup> |✓|✓ |✓ |✓ |
Adding files<sup>3</sup> |✓|✓ |✓ |?<sup>3</sup> |
Creating new folders<sup>3</sup> |✓|✓ |✓ |✓<sup>3</sup> |
Deleting files<sup>3</sup> |✓|✓ |✗ |✓<sup>3</sup> |
Deleting folders<sup>3</sup> |✓|✓ |✗ |✓<sup>3</sup> |
Deleting source files (move to archive) |✓|✓ |✗ |✓ |
Creating new image<sup>3</sup> <sup>4</sup> |✓|✓ |✗ |✗ |
Progress bar info during operations |✓|✓ |✓ |✓ |
<a name=f1><sup>1</sup></a>Fastcopy & E-Copy
<a name=f2><sup>2</sup></a>Hard disk images, AHDI 3.00 compatible and ICD style primary partitions schemes only for now. Extended partitions (XGM) not supported yet
<a name=f3><sup>3</sup></a> Recursively
<a name=f4><sup>4</sup></a> Resizing image until the files fit, or maximum length reached (in which case an error is generated)
<a name=f5><sup>5</sup></a>Treat with caution, there are still some open bugs with this. Make a backup of the image before trying anything
What's missing, but planned (in order of severity/implementation likelihood)
- Writing outside the partitions (i.e. the folder where "C", "D" etc folders exist) causes a crash
- Extended (XGM) partition support
.inifile with various settings (specify if creating a HD disk image is allowed, customisable hard disk image extension, etc)- Writing .DIM images (only opening and extracting is possible at the moment)
- Support PK_PACK_SAVE_PATHS
- (IN PROGRESS - check SamariTan below) Stand-alone command line version for scripting (adding files, deleting files, creating new disk images, extract deleted files -because tIn insisted-, monitoring directory and if it changes sync the differences with the image)
- Integrating into other programs (for example PiSCSI, zeST etc)
Installation
Windows
Pre-built binaries are supplied.
Linux/OSX
Starting with v0.05 pre-built binaries are supplied in the releases. To install, follow the instructions below for Double Commander.
There is a possibility that on OSX a message like "Cannot Be Opened Because the Developer Cannot be Verified". If that happens, the only course of action is to implicitly "trust the developer". Several guides exist on the internet about how to achieve this.
To build manually, use the build_linux_mac.sh script to build the plugin. Then see the Double Commander section below on how to install the plugin.
Optionally for Linux, running build_linux_mac.sh GUI will attempt to build with the code that displays an "About" dialog enabled. For now this has only been tried with GTK+2.0 (assuming that libgtk2.0-dev has been installed on a Debian compatible system) and there are no guarantees that this will work properly across distros. You are on your own. Of course if you manage to get it working on your machine, don't hesitate to get in touch and share your experiences.
Total Commander
There are two ways of installing this extension depending on your use case:
"Open file directly" use case
If you want to open .ST/.MSA disk images directly by pressing Return on a selected disk image: just open jacknife.zip in Total Commander and follow the install procedure. The plugin will be associated with .ST and .MSA extensions. Enter disk images like folders/ZIP files.
"Open file with CTRL+Pagedown" use case
Say you already have e.g. an emulator associated with the .ST/.MSA extensions and you want to start them in that emulator by simply pressing return like you're used to by now - then you'll need another way to enter the images in Total Commander. Just open jacknife_ctrlpagedownonly.zip in Total Commander and follow the install procedure. Now the plugin is associated with some gibberish extension you'll probly never use and that keeps the extension out of your way in TC when .ST and .MSA filesare shown; but at the same time you can simply open .ST/.MSA files by pressing CTRL+Page Down on a selected disk image. Magic!
Double Commander
Unlike Total Commander, Double Commander doesn't support automatic installation of plugins. Therefore a manual procedure is described below:
- Extract
jacknife.wcxorjacknife.wcx64fromjacknife.ziporjacknife64.zipto a location which is going to be permanent, i.e. not in your Downloads folder. Preferably inside the Double Commander install folder - Open Double Commander
- Navigate to menu Configuration->Options
- Go to subsection Plugins->Plugins WCX
- Click Add
- Navigate to the location where the extracted
jacknife.wcxorjacknife.wcx64exists and select that - In the pop-up dialog that asks which extensions to associate plugin, type
st msa dim imgand press Ok. Or If you wish to open images using CTRL+Pagedown (as described in the Total Commander section above) then just type any nonsense text, likeatariextension
TC4Shell
Again, this program requires a manual installation:
- Extract
jacknife.wcxorjacknife.wcx64fromjacknife.ziporjacknife64.zipto a location which is going to be permanent, i.e. not in your Downloads folder. Preferably inside "\Program Files\TC4Shell" - After installing TC4Shell, navigate to Control Panel (for Windows 10 onwards just press the Start button and type
controland enter). There should be a TC4Shell plugins button, click that - Right click on the empty space of the window below the installed plugins. A context menu should pop up
- Select Install plugin
- Select WCX plugins in the file extension drop down menu
- Navigate to the location where the extracted
jacknife.wcxorjacknife.wcx64exists and select that - Click Install
- You can now right click on disk image files on Windows Explorer and select "Open as folder". A new window should open with the disk contents (assuming a valid image)
SamariTan
This is a no-frills command line version of Jacknife that aims to expose the same functionality, but from the command line. Currently it is in early stages of development and works on Windows only (but this is easy to fix). There is little to no feedback, especially if things fail. It is highly encouraged to not use this tool on files that are not backed up yet. You have been warned.
The current supported set of commands and their syntax is as follows:
samaritan -c <archive name> <extra parameters> <list of files to add>: This will create an image file with the name archive name and will proceed in adding all files in the list of files to add. Note that the archive name must not exist. For the time being do not supply absolute paths. The only properly tested mode is to supply files relative to the current path, as they will be added with all the subfolders they might be in. Also note that starting a relative path with a..to move up one diretcory will most likely result in an error.samaritan -a <archive name> <extra parameters> <list of files to add>: This will open an image file with the name archive name and will proceed in adding all files in the list of files to add. For the time being do not supply absolute paths. The only properly tested mode is to supply files relative to the current path, as they will be added with all the subfolders they might be in. Also note that starting a relative path with a..to move up one diretcory will most likely result in an error.samaritan -d <archive name> <list of files to delete>: This will attempt to delete all files in list of files to delete from the archivearchive name.samaritan -v <archive name>: This will test the archive.samaritan -x <archive name> <target path>: This will etract the archive into target path (must exist beforehand).samaritan -h: Prints usage information and exits.
<extra parameters> are the following:
-b <bootsector file>: Installs an up to 480 bytes bootsector-l <volume name>: Adds a volume name-t <number>: Specify number of tracks for custom disk geometry-s <number>: Specify number of sectors for custom disk geometry-i <number>: Specify number of sides for custom disk geometry
(when custom disk geometry is enabled then tracks, sectors and sides must be specified. Also, this only makes sense when creating an image)
Credits
- FAT12/16/32 reader "PetitFAT" used in older versions taken from here: http://www.elm-chan.org/fsw/ff/00index_p.html (slightly modified)
- DOSFS library obtained from http://www.larwe.com/zws/products/dosfs/i
Related Skills
node-connect
348.0kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
108.8kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
348.0kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
348.0kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
