Multi Volume QIC concatonation tool, NSEG.exe Current version 1.03, last modified 11/30/08 The nseg3.exe self extracting archive should contain the following nseg.txt - this note nseg.c - source code nseg.exe - a WIN32 console based executable To actually modify the source and rebuild the executable you also need to download the msbksrc.lzh archive and extract both the include file, msqic.h, and the decompression code, qicdcomp.c. For more documentation see "http://www.willsworks.net/msbackup.htm#MVQICFMT" This program is a side effect of the larger, more robust msqic.exe code. It allows someone to convert a set of floppy disks containing a compatible compressed multi-volume floppy based archive into the single file format expected by msqic. Note MSQIC will only correctly extract files from the first disk in a multi volume backup, but not subsequent disks as the offsets in the catalog of the multi-volume backup are relative to the entire backup, NOT the current file is as assumed in msqic.exe. It was easier to write a program to concatonate the multi-volume format to a single file than it was to make msqic attempt to step through multiple volumes, so you need a little extra disk space to make this work, and its a muti step process. You must successively read the individual disk files (or copies of them which have been transfered to a hard disk) and append their data to a single disk file, the output file specified on the command line. You use different command line arguments to create and finalize the archive as outlined in the usage message below: usage: nseg [] [-c] [-f] [-o###] [-v] use to decompress a file -c creates a new output file (default is append data at end of output file) -f finalize, write vtbl and catalog from this disk to output file -o seek to input data hex offset ### (default is to start append immediately after headers) -v display vtbl with segment # and exit (use as the only option!) With the first disk in the sequence, use the -c option with the output file name to create a new output file. With any intermediate disks, just specify the output file name and let the data be appended to the output file. With the last disk in the sequence use the -f option and the output file name to close the file, ie rewrite the VTBL header and append the catalog from the last disk in the series. Note the current version will NOT proceed if the multi-volume flag is not set, nor if the backup file is not compressed. The source could be modified to work with uncompressed multi-volume archives, but its probably easier to just use msqic's raw data extraction for this. See comments in the code and the copy_region() routine in qicdcomp.c for more information. The disks must be read in the correct order. With luck they were labled with some indication of their location in the order when the backup was created. If not, you can use nseg with just the input file name on the command line, or additionally with the -v option to view all the header information for each of your files. Look at the sequence number to determine the proper order for reading the files to create a single concatonated *.qic file that msqic.exe can parse. This version of nseg.exe will attempt to insert NUL bytes if a disk in the middle of the sequence is missing, but this is untested. No promises about how things will work if you are missing disks. In this case I can think of three options: a) let nseg insert nulls, and accept that some of the recovery will fail when using msqic to restore missing file. b) Use the -f option and finalize the concatonation with the last disk that is in sequence, then extract everything you can from the resulting partial backup file and do the remainder via option c. c) Use the -r*.* option in msqic.exe to extract all files from each of the individual disk backup files. Path information is lost, but can be restored by looking at the individual catalogs with msqic.exe and moving or renaming the files appropriately. Good luck!