Ext2emu converts an extracted data file to an emulator file.

--cylinders -c #

The number of cylinders.

--emulation_file -m filename

File name to write emulation bit data to.

--extracted_data_file -e filename

File name to read decoded data from.

--format -f formatName

The track format. Use --format help to list all currently supported formats.

--heads -h #

The number of heads.

--interleave -i #[,#]

The sector interleave and track interleave. The first parameter is the value to increment sector number by between sectors on the same track. If interleave is not specified default of 1 is used. The second parameter is the value to increment the first sector by for next track on the same cylinder. Default is zero.

You can use –analyze on an existing disk or image to determine the proper value. Subtract the first two number printed for interleave and use that value. For example below use 7.

Interleave (not checked): 0 7 14 4 11 1 8 15 5 12 2 9 16 6 13 3 10

If you get a message like “Interleave mismatch previous entry...” it may indicate the second parameter should be non zero. You would need to use mfm_read/mfm_util –quiet 1 to see the sector values and manually determine the proper value. Getting the second parameter wrong will only have a small impact on performance. Getting the first value wrong can significantly reduce performance.

--mark_bad -M #,#,#:#,#,#...

The cylinder,head,sector to mark bad by complementing the CRC/Check code. Use to force sectors that are known to be bad to be seen as bad by the host system.

--note -n “string”

String is stored in header of emulation file for information about image. mfm_util will display.

--quiet -q #h

Bit mask to select which messages not to print. 0 is print all messages. Default is 1 (no debug messages). Higher bits are more important messages in general.

--version -v

Print program version number.

Long options can be abbreviated to the shortest unique name. Option values can't have spaces unless quoted as a string.

# is a number. #h is a number which may be decimal, octal if starts with a 0, or hex starting with 0x.

Cylinders, heads, format, emulation_file and extracted_data_file are required. The cylinders, format, and heads parameters can be determined by mfm_util if an emulator or transitions file is available.

NOTE: Some computers use different format on different tracks. This program can only handle one format.


ext2emu --extracted_data_file extracted_data --emulation_file emulation_file --cylinders 300 --heads 4 --format OMTI_5510 --interleave 3,1 –mark_bad 3,2,6:6,1,3:200,4,14 –note “Regenerated file”

This would generate sectors 0, 3, 6… for first track, 1, 4, 7... for second track, 2, 5, 8... for third. The start of the next cylinder will start back with sector 0.

If the extracted data file size calculated using the specified cylinders and tracks doesn't match the actual file size the warning message “Calculated extract file size # bytes, actual size #'” will be printed. Verify the parameters are correct for the file being converted.