hdt: Improve disk output (CLI)
authorPierre-Alexandre Meyer <pierre@mouraf.org>
Sun, 26 Apr 2009 00:52:02 +0000 (17:52 -0700)
committerPierre-Alexandre Meyer <pierre@mouraf.org>
Sun, 26 Apr 2009 00:52:02 +0000 (17:52 -0700)
Do not print EDD C/H/S info, since it is not really useful.
Add disk size to the summary.

Signed-off-by: Pierre-Alexandre Meyer <pierre@mouraf.org>
com32/hdt/hdt-cli-disk.c

index 9bd4b1f..0d3cc18 100644 (file)
@@ -175,18 +175,21 @@ void main_show_disk(int argc __unused, char **argv __unused,
                if (!hardware->disk_info[i].cbios)
                        continue; /* Invalid geometry */
                struct driveinfo *d = &hardware->disk_info[i];
+               char disk_size[8];
+
+               if ((int) d->edd_params.sectors > 0)
+                       sectors_to_size((int) d->edd_params.sectors, disk_size);
+               else
+                       memset(disk_size, 0, sizeof disk_size);
 
                more_printf("DISK 0x%X:\n", d->disk);
-               more_printf("  C/H/S: %d heads, %d cylinders\n",
-                       d->legacy_max_head + 1, d->legacy_max_cylinder + 1);
-               more_printf("         %d sectors/track, %d drives\n",
-                       d->legacy_sectors_per_track, d->legacy_max_drive);
-               more_printf("  EDD:   ebios=%d, EDD version: %X\n",
-                       d->ebios, d->edd_version);
-               more_printf("         %d heads, %d cylinders\n",
-                       (int) d->edd_params.heads, (int) d->edd_params.cylinders);
-               more_printf("         %d sectors, %d bytes/sector, %d sectors/track\n",
-                       (int) d->edd_params.sectors, (int) d->edd_params.bytes_per_sector,
+               more_printf("  C/H/S: %d cylinders, %d heads, %d sectors/track\n",
+                       d->legacy_max_cylinder + 1, d->legacy_max_head + 1,
+                       d->legacy_sectors_per_track);
+               more_printf("  EDD:   Version: %X\n", d->edd_version);
+               more_printf("         Size: %s, %d bytes/sector, %d sectors/track\n",
+                       disk_size,
+                       (int) d->edd_params.bytes_per_sector,
                        (int) d->edd_params.sectors_per_track);
                more_printf("         Host bus: %s, Interface type: %s\n\n",
                        d->edd_params.host_bus_type, d->edd_params.interface_type);