Information about NTRawrite
This document is $Revision: 1.4 $
This version of NTRawrite is 1.0.1
Rationale
The reason I wrote NTRawrite is because
Rawrite/Rawrite3 didn't work under NT half the time, and I didn't really want
to figure out why. I looked at the source, and found out that:
- The code was built with Turbo C which I'm not sure even exists any more. At
point, someone made Rawrite 2 which put
#ifdefs
areound the Turbo C
functions, and inserted the equivalent functions in MSC / VC.
- The code is using raw DOS interrupt calls that under NT and Win2K are an
emulation of an emulation of the original DOS calls. I'm surprised it even
works at all.
So it turns out that my emulated emulated calls weren't working for some
reason, which deterred me from trying to research what my problem was any
further, since the likelihood of anyone sympathizing with my plight was near
zero. I gave up and wrote NTRawrite, which didn't take that long.
Why It's Better
I have added:
- Contemporary API use. Uses supported Windows NT / Windows 2000 APIs for
diskette manipulation.
- Meaningful status. You know how far along you are in the process.
- Verification. The data written to the diskette is verified against the
source image file.
- Recording. You can "rip" floppies to an image file.
Current Problems
- Has not been tested on a wide variety of floppies or floppy drives. All
comments welcome if you have a failure using a particular machine with a
particular floppy drive. If it's broken for a particular drive, I'm not sure
what I'd do to fix it, though.
- Return codes are messed up -- I will see what I can do. Basically, nonzero
means "I didn't do it", and zero means "I did it". Whatever "it" is.
- Only supports Windows NT 4.0 and current Windows 2000 variants. That is
to say, Windows 95 and Windows 98 are not supported. Maybe Rawrite will still
work for those users...
Usage
usage: NTRawrite [--noverify] [--reverse] [-n] [-h] [-f image_file] [-d drive]
--noverify Skips verification step.
--reverse Saves diskette to image file instead.
-n Don't wait for the user to insert a diskette.
-f image_file Disk image file to place on diskette.
-d drive Drive specifier to put diskette image on.
-h Display usage.