Microsoft KB Archive/68871

Restoring Files When BACKUPID.@@@ Has Length Zero Bytes PSS ID Number: Q68871 Article last modified on 02-05-1993 PSS database name: O_MSDOS

3.00 3.10 3.20 3.21

MS-DOS

Summary:

The Backup program in DOS versions 3.00, 3.10, 3.20, and 3.21 produces files in the format described on pages 746-747 of “The MS-DOS Encylopedia.” In this scheme, each file that is backed up is stored on a backup disk with a 128-byte header that is used to store the file’s pathname for restoration purposes.

On each backup disk there is also a file named BACKUPID.@@@, which contains information including the number of the disk in the backup series and the date the backup disk was created. If the /T:time switch was used to make the backup disk, the time of creation will also be stored.

When the Backup program works properly, BACKUPID.@@@ will have a length of 128 bytes. In some cases, however, a directory of the disk will show the file as having a length of zero bytes. The following message will appear during the restoration process:

Warning! Diskette is out of sequence Replace diskette or continue if okay Strike any key when ready

Attempts to continue will result in the error message repeating. Upon exiting the program, the message “Last file not restored” will appear.

More Information:

If the user files were backed up correctly, this situation can, in most cases, be remedied as follows:


 * 1) Make a copy of the affected disk. This will be referred to as Disk #1.
 * 2) Format a blank floppy disk of the same media type and density as the affected disk. Do not use the /S option on Format. This will be referred to as Disk #2.
 * 3) Copy the file BACKUPID.@@@ from the disk that follows the affected disk in the backup series onto Disk #2. If the affected disk was the last disk in the backup series, use the previous disk.
 * 4) Using DEBUG, edit BACKUPID.@@@ on Disk #2 as follows:
 * 5) * If the affected disk was the last disk in the backup series, modify byte 0 (zero) of the file, giving it the value FFh. (See note below.)
 * 6) * If the affected disk was not the last disk in the backup series, modify byte 0 of the file if necessary, to have the value 00h. Also modify bytes 1 and 2 of the file such that together they are the four-digit decimal (not hexadecimal) representation of the number of the disk in the backup series. For example, if the disk was number 14 in the series, byte 1 should have a value of 00 and byte 2 a value of 14. These are the actual values you would enter – you would not translate the value 14 to the hex value 0E. (See note below.)
 * 7) Delete the file BACKUPID.@@@ from Disk #1.
 * 8) Copy all files from Disk #1 to Disk #2.
 * 9) Repeat the restoration process, using Disk #2 instead of the original backed up disk.

If Disk #2 fails in the restoration process, the alternative is to use the MS-DOS Backup/Restore Supplemental Utilities Disk to restore the files from the backup disks individuallly, using the SREST program.

Note: To modify a byte using Debug, you must first load the file into Debug by typing “DEBUG ” (without quotation marks). To write a byte at a specific location, add 100h to the byte value. Call this value “BYTE”. Then, issue the command “e BYTE” at the DEBUG dash prompt. The address of the byte will appear on the left side of the screen. Also, the current value at this location will appear, followed by a period. Enter the value you want this byte to have, then press ENTER. For example, to change byte zero to have a value of 36h, type “e 0000” and then press ENTER to display the current value. Then, type “36” and press ENTER to change to value.

Additional reference words: 3.00 3.10 3.20 3.21 noupd

Copyright Microsoft Corporation 1993.