Thank you so much for your interest and help, Brian and El_Pescador.
Proving that persistence is everything and ranting is just ranting, I have finally succeeded in making a boot CD which actually works. This I consider to be a minor miracle. A revelation! Pascal himself can have felt nothing akin. "Certitude, certitude, sentiment, joie, paix"!!!
Well, anyway, in the interests of preserving others' sanity, I would like to short-circuit all the long and involved instructions you find all over the net and just post an ISO image for you all here (about 3MB).
It does not, however, seem possible to post files... I'm not sure how legal it would be either, but I wouldn't wish this nightmare on anyone, so if you can come up with a solution to this distribution problem, I will happily go along with it...
I can also provide a zip of the files necessary to create the floppy emulation part of the boot CD (about 600K), without ghost.exe itself, but, crucially,
with the USB and Firewire drivers.This could be useful anyway, in case the particular CD-ROM driver I used doesn't work for your machine. It is simple to change to another. There are 4 provided and one is bound to work, but you need to burn a new CD after changing just one character in the config.sys file in order to do this (see below), for which you need the actual files. Mine worked with the second one I tried, so not too many coasters!
In the meantime, let me tell you what I did, and explain why a CD-ROM driver is needed at all. (This is another one of those long, though hopefully slightly less involved, explanations. Getting the ISO would be best.)
I think the problems were threefold:
1) External disk drivers on the original Ghost CD possibly out of date, incomplete or corrupted?
2) No accessible ghost.exe on the original CD, for whatever reason, just an installation directory.
3) Getting so worked up about the whole thing that the process of creating a boot CD came to appear impossibly fraught with obstacles; the more so since there are
many www sites telling you what to do with a plethora of options and vast numbers of downloads required to put the whole thing together, which may or may not then function as required, but none offering "this will work, just download it" solutions.
So, this is what I did (shortcut by downloading the ISO, if we can sort that out):
Firstly, you need to understand what we are trying to achieve.
The bootable CD we are trying to create functions in "floppy emulation mode". It will work in most modern PCs/laptops. It
simulates booting from a floppy and then mounts the main part of the CD and any other disks as separate drives.
You provide files from an ordinary DOS boot floppy and ask Nero (or other burning software) to create a bootable CD from them.
Those DOS files are
hidden in a special bit of the CD which you can't see until you boot with it. Then they appear as both the a: and b: drives (identical contents).
The files have to be provided as an
actual 1.44MB floppy disk (containing not more than 1.44MB), not just the files. This is a problem if you don't have a floppy drive. We'll come to that.
Any other files you might want to use, like ghost.exe, are added to the Nero CD project window in the usual way. You can add as much stuff as you like up to the capacity of the CD.
These extra files are then mounted, separately, as a drive when you boot from the CD. In my case I chose to mount them as the d: drive. You can change the letter by editing the autoexec.bat file on the floppy (or virtual floppy - see below) - just change "/L:D" to "/L:anydriveletter" (again, see below, it will become clear).
So that is why you need a DOS CD-ROM driver, even though you have just booted from the CD and would logically think why have a driver for something you can already see without one.
You are tricking the computer into thinking it has just booted from a floppy. It then looks for the driver for the CD, as specified in config.sys, on what it thinks is a floppy. It then mounts it, assigning a drive letter to it using MSCDEX.EXE (which is not, itself, the driver), so you can access the rest of your files (ie. ghost.exe)
If you don't have a floppy drive, providing a boot floppy for Nero to copy is difficult. It has to contain the
USB and Firewire drivers, so you can't use the Nero default one.
I downloaded this utility to create a virtual, memory resident, floppy drive -
http://chitchat.at.infoseek.co.jp/vmware/vfd.htmlNext, I downloaded a customised (just extra CD-ROM drivers for compatibility) Windows98SE boot floppy image from
http://1gighost.net/randyboy/boot98sc.exe (see
www.bootdisk.com/bootdisk.htm)
You need to mount a virtual
a: drive, then double-click boot98sc.exe, which will copy the relevant files onto it to create a virtual "boot floppy".
Then use the "virtual floppy drive" control panel to mount a 1.44MB virtual
b: drive too.
Use the Ghost boot disk wizard to create a standard ghost boot floppy with USB1.1 (not 2.0) and Firewire drivers (I ran LiveUpdate first, to make sure they were up-to-date). Make sure you choose the
b: drive as the target, or you will overwrite your nice new boot floppy on the
a: drive.
You can provide MS-DOS (as opposed to PC-DOS) by pointing the wizard to your a: drive for the files. I don't know whether this makes any difference,
since you are only running the Ghost wizard at all to get the USB and Firewire drivers and config.sys lines. I did it anyway.
When the wizard tries to create diskette 2 (with ghost.exe on it), just click CANCEL. You can copy it to the CD later from Program Files. Otherwise, it will overwrite your drivers.
Now, copy the FWR and USB directories from virtual floppy
b: (temporary Ghost boot disk) to virtual floppy
a: (our real boot disk)
You will probably need to delete some superfluous utilities from
a: in order to have enough space. You only need bare-bones DOS to accomplish an image restore since Ghost provides all the functionality.
Next job is to reconcile the differing autoexec.bat and config.sys files, adding the disk drivers but not all the silly Ghost scripting.
Just edit the ones on virtual floppy
a: using notepad so they look like this:
AUTOEXEC.BAT
Code:
@echo off
SET TZ=GHO+00:00
MSCDEX.EXE /D:banana /L:D
CONFIG.SYS
Code:
DEVICE=HIMEM.SYS /testmem:off
FILES=30
BUFFERS=20
DEVICE=cd2.SYS /D:banana
DEVICE=usb\aspiohci.sys /int /all
DEVICE=usb\aspiohci.sys /int /all /D1
DEVICE=usb\aspiohci.sys /int /all /D2
DEVICE=usb\aspiohci.sys /int /all /D3
DEVICE=usb\aspiuhci.sys /int /all
DEVICE=usb\aspiuhci.sys /int /all /D1
DEVICE=usb\aspiuhci.sys /int /all /D2
DEVICE=usb\aspiuhci.sys /int /all /D3
DEVICE=fwr\aspi1394.sys /int /all
rem DEVICE=cd1.SYS /D:banana /P:1f0,14
rem DEVICE=cd1.SYS /D:banana /P:170,15
rem DEVICE=cd1.SYS /D:banana /P:170,10
rem DEVICE=cd1.SYS /D:banana /P:1e8,12
rem DEVICE=cd1.SYS /D:banana /P:1e8,11
rem DEVICE=cd1.SYS /D:banana /P:168,10
rem DEVICE=cd1.SYS /D:banana /P:168,9
LASTDRIVE=Z
If you need to try a different CD-ROM driver, edit the line
Code:DEVICE=cd2.SYS /D:banana
changing the number "2" to 1, 3, or 4.
Ignore the banana reference. It just ties this in with the line in autoexec.bat
Later, you can also play around with the lines beginning "rem" to add extra params to the drivers if things totally refuse to work. Leave them for now.
SO now, on your
virtual floppy a: you should have something which is going to be able to boot your computer with external disk support:
1) Basic DOS taken from a Windows98SE boot floppy
2) USB and Firewire drivers
3) autoexec.bat file to set the drive letter for your ghost.exe file
4) config.sys file to reference the USB and Firewire drivers as well as one of the 4 available generic CD-ROM drivers.
Start a bootable CD project in Nero.
In the Add Files window, add ghost.exe from your Program Files folder.Click next and point Nero to your virtual floppy a: to copy as the boot disk.Drag all the files from your a: drive to somewhere safe so you can drag them back again and create another CD if the CD-ROM driver doesn't work. (You will lose the virtual floppy when you restart, or course.)
Restart using your new Ghost boot CD.
Make sure your firewire/USB drive is on and connected BEFORE DOS starts looking for it.If the d: drive (the bit of your CD with ghost.exe on it) does not mount, burn another CD using one of the other CD-ROM drivers (see above), and try again.
Type d:
type ghost.exe
Restore your disk image.
Ghost can read NTFS drives, even though DOS can't, so don't be concerned that other drives have not mounted.