Caluser2000
Veteran Member
Ghost was originally develpoed here in little ol Nooo Zealand before Norton aquired it....
It does indeed matter. Consider my first experience with a 160GB drive on a P1 system. Not supported by BIOS (requires the ATA-6 extensions). Yet Windows NT 4.0 had no problem with it. It was enough of a problem for Maxtor to package a Promise controller with the drive in the retail package
Perhaps, but the effect is the same--you don't get everything.I think it's more technically correct to say the BIOS didn't support seeing the whole drive, not that the drive was not supported by the BIOS.
I have written a small program which writes floppy disk images exclusively using DOS interrupt 0x26.I'm a certified DOS batch file programmer and I used to build stuff in QBASIC. I have some C experience but most of that is on modern Linux.
No. You cannot access the whole drive like a virtual file as you can on NT or UNIX, and the interfaces available are quite limited and inconsistent (depending on when they were designed and which constraints were relevant).Is there a way usingfopen
or similar that I can use to access these low-level bytes of a disk for read and/or write?
You definitely want to use a somewhat more modern system, Linux and dd_rescue (not plain dd).I know these disks are full of bad sectors and problems so I was hoping to write it where it'll retry a few times, create a separate file denoting what sectors are bad (or simply not creating anything in my file) and keep chugging along. Then allow me to try and re-image later and fill in anything that passes the CRC.
I don't doubt that at all, but the problem I'm having is lack of support for older disks. I have a machine that has IDE but it won't see all the disks. I suspect it's due to the type of disk (CHS vs LBA), but who knows, it could be that they're toast.You definitely want to use a somewhat more modern system, Linux and dd_rescue (not plain dd).
Try BasicLinux https://distro.ibiblio.org/baslinux/I'll look around through this and see what I can make, I'll also look into these Linux distros. I started Linux more or less late to the game with like Ubuntu 7.04 iirc, but I'm comfortable enough in the command line and if I bork a disk it'll suck but won't be devastating.
I assume these sorts of calls are how MS-DOS would allow a program like defrag and scandisk to operate? Sadly the leaked v6 source I have found doesn't contain either of those programs to know for sure.
Note that ddrescue and dd_rescue both exist. Of the two, I've only used ddrescue so can't say how they compare, but it seemed to do a good job with the failing hard drives I unleashed it on.You definitely want to use a somewhat more modern system, Linux and dd_rescue (not plain dd).
That program has been designed to extract the absolute maximum possible off a failing hard drive. It will outperform whatever you can cobble together yourself, and it will likely do a lot better than any contemporary / DOS software you can find.
Native IDE interfaces generally support CHS without issues (Linux definitely does), but even if it is not supported (e.g. through USB interfaces), you should be able to at least detect the drive and show name and serial number.I don't doubt that at all, but the problem I'm having is lack of support for older disks. I have a machine that has IDE but it won't see all the disks. I suspect it's due to the type of disk (CHS vs LBA), but who knows, it could be that they're toast.
ddrescue is open source: https://www.gnu.org/software/ddrescue/I'm not sure of a reasonable Linux distro that might have dd or dd_rescue that will run on a 80386/20, but if you are I'd be happy to locate a copy of it and try it out!
My target system (the Philips :YES) only runs MS-DOS 3.10 or DOS Plus.And there is an alternate way (from Int 25h) to read a volume. It's generic IOCTL call 440dh. Older drivers may not implement it, but it's been around since DOS 3.2. For the call details, see Ralf Brown's description here.
I might have mixed them up. It might actually have been ddrescue what I have been using, but it was a long time ago.Note that ddrescue and dd_rescue both exist. Of the two, I've only used ddrescue so can't say how they compare, but it seemed to do a good job with the failing hard drives I unleashed it on.