Hi Jeremy, thanks for the updates but...

> - Changes from 1.2.1 version (see fdisk.diff at same location):
>  From Eric, it has some changes to carry usage in extended int13 detection.

No, I just sent you a minimized (i.e. excluding changes in whitespace
and comments) between FDISK 1.2.1 and 1.3.0-beta, not my "creation".
Notice that the BETA is compiled with debug mode on (you can put a
WRITE OFF line in the ini file) and with beta mode on (?).

Johnson reports that FDISK fails to detect a flash disk while LBACACHE
detects the disk okay as ??x16x32 geometry. For that reason, check if
you can make FDISK use my style of algorithm:

for each drive from 0x80 to 0x87 do:
  ax=0x4100 bx=0x55aa int 0x13, if returned bx == 0xaa55 and if
  returned cx test 1 is NZ then remember that the drive supports LBA

  ah=8 push es push di int 0x13 pop es di, if carry set, skip drive,
  if dl is 0, skip drive. otherwise take geometry from DH (max head
  number) and (CL and 63) (max sector number, sectors per track).
  remember that the drive exists.
end of for loop

(the drive number is stored in DL before each int 13 call, of course)

> - On any read error it will abort -- note: I just realized this will 
> also cause it to abort if the check for extra cylinder flag is active 
> and one does not exist.  So I need to move the check or allow it to be 
> disabled.

Good idea.

> - All disk writes are delayed until just before a normal program exit; 
> so on any errors (*) no changes are written; also no changes will be 
> made if you select abort from advanced menu, or if you reboot instead of 
> exiting fdisk. *any errors writing to disk during the end phase are 
> still ignored*...

Not good - rebooting is meant to be "write changes and reboot", because
FDISK assumes that the reboot makes sure that DOS reads the new partitions.

> - To avoid changes but still see the partition table, use fdisk /info 
> (it doesn't seem to have the forced MBR update).

Do not use "seem" here - you can ZAP that entire "create MBR if MBR read
error" function completely. Whoever REALLY has an empty MBR should use
FDISK /MBR manually, which is much safer. If you are not sure whether
FDISK would crash when the MBR is empty, make it exit with an error
message (suggesting to use FDISK /MBR) when an empty MBR is detected. How-
ever, FDISK seems (oops) to already have code which avoids reading the
partition data from a broken MBR.

> ... it comes back with 4MB free 
> and if you press enter (such as to create a 2nd logical partition of 4MB 
> or by accident) it will screw up the partition table horribly.

Can you explain "screw up horribly" somewhat more?

Eric



-------------------------------------------------------
SF.Net email is sponsored by: Discover Easy Linux Migration Strategies
from IBM. Find simple to follow Roadmaps, straightforward articles,
informative Webcasts and more! Get everything you need to get up to
speed, fast. http://ads.osdn.com/?ad_id=7477&alloc_id=16492&op=click
_______________________________________________
Freedos-user mailing list
Freedos-user@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-user

Reply via email to