Hi Jerome,

Here is the NEW general logic used by the installer in NORMAL mode.

        if the MBR for the target hard disk DOES NOT CONTAIN any boot code in
the MBR, then ASSUME YES and overwrite it.
        if the MBR for the target hard disk has ANY KIND of boot code in the
MBR, then PROMPT USER to overwrite it.

I assume by "it" you mean the boot code? How about the partition table?
As far as the boot code is concerned, the new logics sound nice :-)

I’m thinking of also adding

Or, if there is ONLY a single DOS partition on the drive, then ASSUME YES.

You mean if there IS boot code and a partition, you want to overwrite
the boot code and/or partition table nevertheless? Why that? And why
not ask the user, possibly with a prompt telling them that they are
"only" going to overwrite a single FAT partition, just to be sure?

A single prompt definitely is not too much to prevent data loss or
"bootability loss".

Imagine the scenario where there is only 1 FAT partition and you
keep the partition (which I recommend) but overwrite the MBR boot
code without asking. The boot code may have contained something
specific to the hardware, such as a LBA helper for old BIOSes and
replacing it may render the system unbootable. The case where no
boot code at all can be found in the MBR is much lower risk :-)

You could backup the previous MBR contents and provide a way to
restore either boot code or partition table or both, for example
in the form of a readme file explaining how to use FDISK or DEBUG
and a backup file created by the installer before modifying MBRs.

Of course if there is a security prompt, this will be needed much
less often, but having a backup file would not hurt either way :-)
FDISK has command line calls for some of this, as far as I remember.

Thanks! Regards, Eric

PS: Do not forget to update and promote UHDD instead of UIDE :-)



_______________________________________________
Freedos-devel mailing list
Freedos-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-devel

Reply via email to