How many people used the DOS RESTORE command and
Dec 24, 2023 11:39:57 GMT -6
feralferret likes this
Post by papaof2 on Dec 24, 2023 11:39:57 GMT -6
found that it didn't always work?
I wrote my own version when that happened - found the instructions for it on an ancient backup drive.
JREST is an alternative to the DOS 'restore' command that can
restore individual files from a disk created with the DOS 3.2
and earlier 'backup'. It works when 'restore' won't.
Usage: jrest [drive:]filename [-d dest:] [-o] [-r]
drive: source drive (default A:)
-d dest: destination drive (default C:)
-o 'overwrite' mode, which overwrites an existing
file without asking (default is to prompt
"<filename> already exists! Overwrite?")
-r source disk is ready - used when running JREST
from a hard disk - skips the prompt:
"Place source disk in drive A: and press return: "
Background:
This was originally written in a hurry for a specific task -
A PC used for electronic mail experienced intermittent read errors.
The decision was made to back it up, low level format the hard disk,
upgrade to a new release of DOS, and restore from the backup floppies.
(Yes, all at once!) Restore refused to read disk 10 of 25, although
the disk number in the BACKUPID.@@@ file was correct. (I hate MSDOS.)
Some additions have been made since the original was written, such
as file date/time and the handling of read-only files. You'll also
find stubs of work in progress. It should handle wildcards (* and ?)
on the command line or at the 'Enter next file name' prompt and it
should bring up a directory of the files on drive A, but, as they say
in most textbooks, "These are left as an exercise for the reader."
Compiled with Mark Williams' "Let's C" (4.0.10). A compiler with a
richer library will probably have mkdir() which should be used in
place of the system() calls, or you can adapt the mkdir()/intcall()
to your compiler. If your compiler doesn't have mkdir() or an
interrupt call, compile with -dNOMKDIR to use the system() mkdir.
'intcall()' may be 'int86()' or 'intdos()' under other compilers, and
the date/time and attribute routines will need to be adapted to your
compiler, or you can comment out these functions. The restore will
still work, but the date/time of the restored file will be the current
date/time, not the date/time of creation, and the file attributes of
the restored file will be set to 'none'. Also, you will NOT be able
to restore over an existing read-only file.
No warranty express or implied, no known bugs (it worked for me),
tested under AT&T MSDOS 3.2 on AT&T 6300 (8086) & AT&T 6310
(80286) computers, MS-DOS 5 and 6.22 on 80386, 80486, Pentium,
and Cyrix 586 computers, and Windows 95 on 80486, Pentium, and
Cyrix 586 computers.
=============================
If anyone is really curious about the source code, it might also be on that same ancient backup drive. Just let me know.
Now you know how the geeks in the computer support group spent their time when not working on big problems ;-)
I wrote my own version when that happened - found the instructions for it on an ancient backup drive.
JREST is an alternative to the DOS 'restore' command that can
restore individual files from a disk created with the DOS 3.2
and earlier 'backup'. It works when 'restore' won't.
Usage: jrest [drive:]filename [-d dest:] [-o] [-r]
drive: source drive (default A:)
-d dest: destination drive (default C:)
-o 'overwrite' mode, which overwrites an existing
file without asking (default is to prompt
"<filename> already exists! Overwrite?")
-r source disk is ready - used when running JREST
from a hard disk - skips the prompt:
"Place source disk in drive A: and press return: "
Background:
This was originally written in a hurry for a specific task -
A PC used for electronic mail experienced intermittent read errors.
The decision was made to back it up, low level format the hard disk,
upgrade to a new release of DOS, and restore from the backup floppies.
(Yes, all at once!) Restore refused to read disk 10 of 25, although
the disk number in the BACKUPID.@@@ file was correct. (I hate MSDOS.)
Some additions have been made since the original was written, such
as file date/time and the handling of read-only files. You'll also
find stubs of work in progress. It should handle wildcards (* and ?)
on the command line or at the 'Enter next file name' prompt and it
should bring up a directory of the files on drive A, but, as they say
in most textbooks, "These are left as an exercise for the reader."
Compiled with Mark Williams' "Let's C" (4.0.10). A compiler with a
richer library will probably have mkdir() which should be used in
place of the system() calls, or you can adapt the mkdir()/intcall()
to your compiler. If your compiler doesn't have mkdir() or an
interrupt call, compile with -dNOMKDIR to use the system() mkdir.
'intcall()' may be 'int86()' or 'intdos()' under other compilers, and
the date/time and attribute routines will need to be adapted to your
compiler, or you can comment out these functions. The restore will
still work, but the date/time of the restored file will be the current
date/time, not the date/time of creation, and the file attributes of
the restored file will be set to 'none'. Also, you will NOT be able
to restore over an existing read-only file.
No warranty express or implied, no known bugs (it worked for me),
tested under AT&T MSDOS 3.2 on AT&T 6300 (8086) & AT&T 6310
(80286) computers, MS-DOS 5 and 6.22 on 80386, 80486, Pentium,
and Cyrix 586 computers, and Windows 95 on 80486, Pentium, and
Cyrix 586 computers.
=============================
If anyone is really curious about the source code, it might also be on that same ancient backup drive. Just let me know.
Now you know how the geeks in the computer support group spent their time when not working on big problems ;-)