Looks like heads per cylinder needs - 1
authorRobert Pengelly <robertapengelly@hotmail.com>
Sat, 15 Jun 2024 21:44:52 +0000 (22:44 +0100)
committerRobert Pengelly <robertapengelly@hotmail.com>
Sat, 15 Jun 2024 21:44:52 +0000 (22:44 +0100)
parted.c

index dd809e772a1ec2640b3111b0b58325db16803a9c..2bcd18d3ba69cd82e9a8cd4b912980eff57633eb 100644 (file)
--- a/parted.c
+++ b/parted.c
@@ -513,7 +513,7 @@ int main (int argc, char **argv) {
     write781_to_byte_array (footer.data_size, flen - sizeof (footer), 0);
     
     write721_to_byte_array (footer.disk_geom.cylinders, cylinders, 0);
-    footer.disk_geom.heads_per_cyl = heads_per_cylinder;
+    footer.disk_geom.heads_per_cyl = heads_per_cylinder - 1;
     footer.disk_geom.secs_per_track = sectors_per_track;
     
     get_random_bytes (footer.identifier, sizeof (footer.identifier));