The partition table must be recreated beause the geometry of the disk changes. In most
cases users will not be able to access a partition created by ReactOS using Windows or
Linux because of the different geometries. I tested the old geometry using gparted and it
always reported a damaged partition table until I switched to the new geometry.
Unfortunately there is no reliable method to derive the disk geometry from the partition
table. That's why ReactOS cannot detect the old geometry in a reliabe way. And since
Windows and Linux do not care about the reported geometry of the harddisk and always use
the 63/255 geometry instead, I don't see any reason not to use the new geometry.
Why can't we use the Int 13h drive parameters returned by the BIOS that FreeLoader
saves in the CM_DISK_GEOMETRY_DEVICE_DATA struct in the registry for each disk? That's
got all the information we need to easily distinguish between 32/64 and 63/255 disks.
Class2 would need a bit of modification to parse the hardware resources for the disk in
order to find the struct, but I could make a patch if you think it's an idea worth
pursuing.
Regards,
Cameron