flux2imd processes Kryoflux files into an IMD file. Due to current limitations of IMD it cannot store some historic disk formats, in this case flux2imd saves a hex dump of the sectors for post analysis.
flux2imd -v|-V | [-b] [-d[n]] [-f format] [-g] [-h[n]] [-p] [-s] zipfile|rawfile]+
|
Note ZDS disks and rawfiles force -g, as image files are not created
raw filenames should be named in the following format
[prefix] [2 digit cylinder] . [1 digit head] . raw
e.g GW500203.1.raw where the prefix is GW5002, cylinder is 3 and head is 1.
To process a whole disk, include the raw filenames for all cylinders into a single zip file. This is includes those for both heads, if a double sided disk.
Current limits for the types of disk supported are
When processing a file, flux2imd creates a log file that is named after the input file, with .raw or .zip replaced by .log. The log file contains information about the processing and will include additional information as follows, dependent on the options selected
Option | Additional data in log file |
-b | Shows hex dumps of bad sectors. The format used shows alternative decodes for suspect data |
-g | Shows hex dumps of valid sectors. Always enabled for raw files and formats IMD does not support |
-h | For each track a histogram of the data is shown, indicating the spread of clock/data bits |
-p | When dumping sectors, the parity bit is removed |
-s | Always writes the physical sector order in the log file. Always done for missing sectors |
Normally flux2imd can determine the disk format, however for poor quality disks, it may be necessary to explicitly declare the disk format. The -f option supports this and as noted -f help shows a summary of the predefined formats and how to create a custom one. The current list is
Format | Description |
FM5 | 5 1/4" SD ** |
FM5-16x128 | 5 1/4" SD 16 x 128 sectors |
FM5-15x128 | 5 1/4" SD 15 x 128 sectors |
FM8-26x128 | 8" SD 26 x 128 sectors |
NSI-SD | 5 1/4" SD NSI 10 x 256 hard sectors |
SD8H | 8" SD hard sectors ** |
ZDS | ZDS 8" SD 32 x 128 sectors |
LSI | LSI 8" SD 32 x 128 sectors |
MFM5 | 5 1/4" DD ** |
MFM5-16x256 | 5 1/4" DD 16 x 256 sectors |
MFM5-10x512 | 5 1/4" DD 10 x 512 sectors ** |
MFM5-8x512 | 5 1/4" DD 8 x 512 sectors |
WREN | 5 1/4" Wren DD 10 x 512 sectors |
DD8 | 8" DD MFM & M2FM ** |
MFM8-52x128 | 8" DD 52 x 128 sectors |
MFM8-26x256 | 8" DD 26 x 256 sectors |
M2FM8-INTEL | 8" Intel M2FM DD 52 x 128 sectors |
M2FM8-HP | 8" HP DD 30 x 256 sectors |
TI | 8" TI 26 x 288 sectors |
DD5H | ** 5 1/4" DD hard sectors |
MTECH | Mtech 5 1/4" DD 16 x 256 hard sectors |
NSI-DD | NSI 5 1/4" DD 10 x 512 hard sectors |
Note ** formats will auto adapt based on detected sectors / encoding
Prefix | Format applies to |
[c/h] | cylinder c head h |
[c] or [c/*] | to cylinder c |
[*/h] | to head h |
[*] or [*/*] or no prefix | to all cylinders / heads |
Although flux2imd supports a level of debugging, for the non DEBUG build, -d can only be used to echo log file information to the screen, as the tool processes the data.
In the DEBUG build, the -d option takes a hex value argument, which is the sum of the options below. Most of these are primarily of interest during analysing new disk formats.
01 -> echo | 02 -> flux | 04 -> detect | 08 -> pattern |
10 -> AM | 20 -> decode | 40 -> no Opt | 80 -> tracker |
Where
echo | shows log data on the screen as per normal builds |
flux | shows information on the flux file |
detect | shows information on the format detection |
pattern | shows information from the bit pattern recogniser |
AM | shows the address mark matches |
decode | shows information on what has been decoded |
no Opt | rescans the track trying all options, even if all sectors have been resolved this is primarily for my internal use |
tracker | shows shifts in the format detection |
Last Updated: 31-Oct-2020 | Copyright © 2020 Mark Ogden |