Contents
========

* PC BIOS hard disk parameter tables
* Format of the table
* 1st Reference
* 3rd Reference
* Olivetti-386sx16
* IBM
* IBM PC 330 (6577)
* AMI-286
* Phoenix-A368SX
* Phoenix 286 ROM BIOS Version 3.01
* Award-486
* Compaq Deskpro 386
* The number of sectors per track
* Hard disk capacities over the years
* Capacity Limits

PC BIOS hard disk parameter tables
==================================

In ancient times one had to specify the parameters of one's MFM or
RLL disk to the BIOS, or add them as user-defined type (often type
47 or 48).

Often, the table with these parameters is found at 0xe400 (0162000).
Below the results found for five different BIOSes and two programs to
investigate other machines.

See also:

* dump.awk, which writes the BIOS area to dump.hex
* dtable.awk, which prints the BIOS disk type table from dump.hex

Adapted FROM: <https://aeb.win.tue.nl/linux/hdtypes/hdtypes-1.html>

Format of the table
===================

The table is a series of 16-byte entries with the following structure.

   struct hdtype {
       short cylinders;
       char heads;
       /* XT: 1-8,
        * AT: 1-16,
        * ESDI: 1-32
        */
       short reduced_write_current_starting_cyl; /* XT only */
       short pre_compensation_starting_cyl;
       char max_ECC_data_burst_length;           /* XT only */
       char control; /* AT and later */
       /* bit 7: 1 - do not retry on access error
        * bit 6: 1 - do not retry on ECC error
        * bit 5: 1 - there is a bad block map past the last cylinder
        * bit 4: 0
        * bit 3: 1 - more than 8 heads on the drive
        * bit 2: 0 - no reset
        * bit 1: 0 - disable IRQ
        * bit 0: 0
        */
       char normal_timeout;                      /* XT only */
       char formatting_timeout;                  /* XT only */
       char drive_check_timeout;                 /* XT only */
       short landing_zone;                       /* AT and later */
       char sectors_per_track;                   /* AT and later */
       char unused;
   };

Unused fields are zero.

The pointer to the parameters for drive 0 is found at the location
for interrupt 0x41, at 0x0104. The pointer to the parameters for
drive 1 is found at the location for interrupt 0x46, at 0x0118.

SCSI and ESDI drives do not use this table, and have drive type 0.

Adapted FROM: <https://aeb.win.tue.nl/linux/hdtypes/hdtypes-2.html>

1st Reference
=============

With the IBM AT and early AT clones, CHS figures never appeared on
the screen. Armed with the CHS figures (and other figures [e.g. WPC])
you would consult the technical manual for your computer. That would
give you a drive type number to enter via your SETUP.EXE

For the first 23 drive types, most clones emulated the 23 drive types
defined in the IBM AT (that helped the clone makers to justify their
"100% IBM compatible" statement).

Thus try using a drive type using the following IBM AT list:

The first version of the IBM/AT had a ROM BIOS that supported 15
drive types:

   Type  Cyl   Hd  WPC    Ctrl  LZ    Sec  Cap (Mb)
   ----  ----  --  -----  ----  ----  ---  --------
      1   306   4    128   00h   305   17      10.2
      2   615   4    300   00h   615   17      20.4
      3   615   6    300   00h   615   17      30.6
      4   940   8    512   00h   940   17      62.4
      5   940   6    512   00h   940   17      46.8
      6   615   4  65535   00h   615   17      20.4
      7   462   8    256   00h   511   17      30.7
      8   733   5  65535   00h   733   17      30.4
      9   900  15  65535   08h   901   17     112
     10   820   3  65535   00h   820   17      20.4
     11   855   5  65535   00h   855   17      35.5
     12   855   7  65535   00h   855   17      49.7
     13   306   8    128   00h   319   17      20.3
     14   733   7  65535   00h   733   17      42.6
     15     0   0      0   00h     0    0  Reserved

The second version of the IBM/AT extended the support to 22 different
types:

   Type  Cyl   Hd  WPC    Ctrl  LZ    Sec  Cap (Mb)
   ----  ----  --  -----  ----  ----  ---  --------
     16   612   4      0   00h   663   17      20.3
     17   977   5    300   00h   977   17      40.6
     18   977   7  65535   00h   977   17      56.8
     19  1024   7    512   00h  1023   17      59.5
     20   733   5    300   00h   732   17      30.4
     21   733   7    300   00h   732   17      42.6
     22   733   5    300   00h   733   17      30.4

The third and final version of the IBM/AT extended the support to 23
different types:

   Type  Cyl   Hd  WPC    Ctrl  LZ    Sec  Cap (Mb)
   ----  ----  --  -----  ----  ----  ---  --------
     23   306   4      0   00h   336   17      10.2

From: <https://vintage-pc.tripod.com/types.html>

3rd Reference
=============

   Type  Hd  Sec   Cyl  Pre-comp    LZ  Cap (Mb)
   ----  --  ---  ----  --------  ----  --------
      1   4   17   306       128   305        10
      2   4   17   615       300   615        21
      3   6   17   615       300   615        32
      4   8   17   940       512   940        65
      5   6   17   940       512   940        65
      6   4   17   615        no   615        21
      7   8   17   462       256   511        32
      8   5   17   733        no   733        31
      9  15   17   900        no   901       117
     10   3   17   820        no   820        21
     11   5   17   855        no   855        37
     12   7   17   855        no   855        52
     13   8   17   306       128   319        21
     14   7   17   733        no   733        44
     16   4   17   612       all   663        21
     17   5   17   977       300   977        42
     18   7   17   977        no   977        59
     19   7   17  1024       512  1023        62
     20   5   17   733       300   732        31
     21   7   17   733       300   732        44
     22   5   17   733       300   733        31
     23   4   17   306       all   336        10
     24   5   17   977       no    976        42
     26   7   17  1024       no   1023        62
     27  11   17  1024       no   1023        98
     28  15   17  1024       no   1023       133
     29   8   17  1024       no   1023        71
     30  11   17  1024       no   1023        98
     32   9   17   925       no    926        72
     33  10   17  1024       no   1023        89
     34  12   17  1024       no   1023       106
     35  13   17  1024       no   1023       115
     36  14   17  1024       no   1023       124
     37   2   17  1024       no   1023        17
     38  16   17  1024       no   1023       142
     40   6   17   820       no    820        42
     41   5   17  1024     1024   1023        44
     42   8   17   615      512    615        42
     43   7   17  1186       no   1186        72

From: <https://vintage-pc.tripod.com/types.html>

Olivetti-386sx16
================

   Type  Cyl.  Head  Sect.  Write   Land
                            p-comp  Zone
   -------------------------------------
    1     306   4    17       128    305
    2     615   4    17       256    700
    3     925   5    17       128    924
    4     697   5    17       128    696
    5    1024   9    17        -1   1023
    6     820   6    17       256    819
    7     615   8    17       128    664
    8     981   5    17        -1    980
    9     981   5    17       128    980
   10    1024   6    17        -1   1023
   11     925   7    17       128    924
   12    1024   8    17        -1   1023
   13     925   9    17       128    924
   14    1024   5    17        -1   1023
   15      -- reserved --
   16     612   4    17       128    656
   17     612   4    17        -1    663
   18     820   6    17        -1    819
   19     872   6    17         0    871
   20     612   4    17         0    663
   21     820   6    26        -1    819
   22     820   6    26       128    819
   23     615   8    26       384    664
   24     820  10    34        -1    822
   25    1021   8    34        -1   1023
   26    1021   4    34        -1   1023
   27     823  10    17       512    822
   28     615   8    17       512    614
   29     615   8    26       512    614
   30     981   5    26        -1    980
   31     635   4    33        -1    639
   32     615   4    17        -1    614
   33     776   8    33        -1    775
   34     745   4    28        -1    744
   35     965   5    17        -1    964
   36     805   4    26        -1    804
   37     776   8    33        -1    775
   38      -- not used or user defined --

From: <https://aeb.win.tue.nl/linux/hdtypes/hdtypes-3.html>

IBM
===

The original AT BIOS (01/10/84) has types 1-14. Later versions also
have types 16-N with N=23 (AT, 11/15/85) or N=24 (XT), or N=33, or
N=44, At the end of the table one usually had one or two or three
user-defined types.

   Type  Cyl.  Head  Sect.  Write   Land
                            p-comp  Zone
   -------------------------------------
    1     306   4    17       128    305
    2     615   4    17       300    615
    3     615   6    17       300    615
    4     940   8    17       512    940
    5     940   6    17       512    940
    6     615   4    17        -1    615
    7     462   8    17       256    511
    8     733   5    17        -1    733
    9     900  15    17        -1    901
   10     820   3    17        -1    820
   11     855   5    17        -1    855
   12     855   7    17        -1    855
   13     306   8    17       128    319
   14     733   7    17        -1    733
   15      -- reserved --
   16     612   4    17         0    663
   17     977   5    17       300    977
   18     977   7    17        -1    977
   19    1024   7    17       512   1023
   20     733   5    17       300    732
   21     733   7    17       300    732
   22     733   5    17       300    733
   23     306   4    17         0    336
   24     612   4    17       305    663
   25     306   4    17        -1    340
   26     612   4    17        -1    670
   27     698   7    17       300    732
   28     976   5    17       488    977
   29     306   4    17         0    340
   30     611   4    17       306    663
   31     732   7    17       300    732
   32    1023   5    17        -1   1023
   33     614   4    25        -1    663
   34     775   2    27        -1    900
   35     921   2    33        -1   1000
   36     402   4    26        -1    460
   37     580   6    26        -1    640
   38     845   2    36        -1   1023
   39     769   3    36        -1   1023
   40     531   4    39        -1    532
   41     577   2    36        -1   1023
   42     654   2    32        -1    674
   43     923   5    36        -1   1023
   44     531   8    39        -1    532
   45      -- not used or user defined --
   46      -- not used or user defined --
   47      -- not used or user defined --

From: <https://aeb.win.tue.nl/linux/hdtypes/hdtypes-3.html>

IBM PC 330 (6577)
=================

dtable.awk output from a 1999 era IBM PC.

   Type  Cyl.  Head  Sect.  Write   Land  Cap (MB)
                            p-comp  Zone
   -----------------------------------------------
    1    306      4    17      128   305        10
    2    615      4    17      300   615        20
    3    615      6    17      300   615        30
    4    940      8    17      512   940        62
    5    940      6    17      512   940        46
    6    615      4    17       -1   615        20
    7    462      8    17      256   511        30
    8    733      5    17       -1   733        30
    9    900     15    17       -1   901       112
   10    820      3    17       -1   820        20
   11    855      5    17       -1   855        35
   12    855      7    17       -1   855        49
   13    306      8    17      128   319        20
   14    733      7    17       -1   733        42
   15   -- not used or user defined --
   16    612      4    17        0   663        20
   17    977      5    17      300   977        40
   18    977      7    17       -1   977        56
   19   1024      7    17      512  1023        59
   20    733      5    17      300   732        30
   21    733      7    17      300   732        42
   22    733      5    17      300   733        30
   23   1024      5    17       -1  1023        42
   24    925      9    17       -1   925        69
   25    699      7    17      256   700        40
   26   1024      4    17       -1  1023        34
   27   1024      5    17       -1  1023        42
   28   1024      8    17       -1  1023        68
   29    512      8    17      256   512        34
   30    615      2    17      615   615        10
   31    989      5    17        0   989        41
   32   1020     15    17       -1  1024       127
   33    615      4    26       -1   615        31
   34    820      6    26       -1   820        62
   35   1024      9    17     1024  1024        76
   36   1024      5    17      512  1024        42
   37   1024      5    26      512  1024        65
   38    823     10    17      256   824        68
   39    615      4    17      128   664        20
   40    496    246    17     3588     0      1012
   41    917     15    17       -1   918       114
   42   1023     15    17       -1  1024       127
   43    823     10    17      512   823        68
   44   1027    255    63        0     3      8056
   45   -- not used or user defined --
   46   -- not used or user defined --
   47   -- not used or user defined --

AMI-286
=======

   Type  Cyl.  Head  Sect.  Write   Land
                            p-comp  Zone
   -------------------------------------
    1     306   4    17       128    305
    2     615   4    17       300    615
    3     615   6    17       300    615
    4     940   8    17       512    940
    5     940   6    17       512    940
    6     615   4    17        -1    615
    7     462   8    17       256    511
    8     733   5    17        -1    733
    9     900  15    17        -1    901
   10     820   3    17        -1    820
   11     855   5    17        -1    855
   12     855   7    17        -1    855
   13     306   8    17       128    319
   14     733   7    17        -1    733
   15      -- reserved --
   16     612   4    17         0    663
   17     977   5    17       300    977
   18     977   7    17        -1    977
   19    1024   7    17       512   1023
   20     733   5    17       300    732
   21     733   7    17       300    732
   22     733   5    17       300    733
   23     306   4    17         0    336
   24     925   7    17         0    925
   25     925   9    17        -1    925
   26     754   7    17       754    754
   27     754  11    17        -1    754
   28     699   7    17       256    699
   29     823  10    17        -1    823
   30     918   7    17       918    918
   31    1024  11    17        -1   1024
   32    1024  15    17        -1   1024
   33    1024   5    17      1024   1024
   34     612   2    17       128    612
   35    1024   9    17        -1   1024
   36    1024   8    17       512   1024
   37     615   8    17       128    615
   38     987   3    17       987    987
   39     987   7    17       987    987
   40     820   6    17       820    820
   41     977   5    17       977    977
   42     981   5    17       981    981
   43     830   7    17       512    830
   44     830  10    17        -1    830
   45     917  15    17        -1    918
   46    1224  15    17        -1   1223
   47      -- not used or user defined --

From: <https://aeb.win.tue.nl/linux/hdtypes/hdtypes-3.html>

Phoenix-A368SX
==============

   Type  Cyl.  Head  Sect.  Write   Land
                            p-comp  Zone
   -------------------------------------
    1     306   4    17       128    305
    2     615   4    17       300    615
    3     615   6    17       300    615
    4     940   8    17       512    940
    5     940   6    17       512    940
    6     615   4    17        -1    615
    7     462   8    17       256    511
    8     733   5    17        -1    733
    9     900  15    17        -1    901
   10     820   3    17        -1    820
   11     855   5    17        -1    855
   12     855   7    17        -1    855
   13     306   8    17       128    319
   14     733   7    17        -1    733
   15      -- reserved --
   16     612   4    17         0    663
   17     977   5    17       300    977
   18     977   7    17        -1    977
   19    1024   7    17       512   1023
   20     733   5    17       300    732
   21     733   7    17       300    732
   22     733   5    17       300    733
   23     306   4    17         0    336
   24    1004  12    17        -1   1005
   25     683  16    38        -1    684
   26    1024   4    17        -1   1023
   27    1024   5    17        -1   1023
   28    1024   8    17        -1   1023
   29     762   8    39        -1    763
   30     814   9    32        -1    815
   31     989   5    17         0    989
   32    1020  15    17        -1   1024
   33     968  10    34        -1    969
   34     873  13    36        -1    874
   35    1024   9    17      1024   1024
   36    1024   5    17       512   1024
   37    1024   5    26       512   1024
   38     823  10    17       256    824
   39     980  10    17        -1    981
   40     615   8    17       128    664
   41     917  15    17        -1    918
   42    1023  15    17        -1   1024
   43     823  10    17       512    823
   44     820   6    17        -1    820
   45    1024   5    17        -1   1023
   46     925   9    17        -1    925
   47     699   7    17       256    700
   48      -- user defined --

From: <https://aeb.win.tue.nl/linux/hdtypes/hdtypes-3.html>

Phoenix 286 ROM BIOS Version 3.01
=================================

   Type  Cyl.  Head  Sect.  Write   Land
                            p-comp  Zone
   -------------------------------------
    1     306   4    17       128    305
    2     615   4    17       300    638
    3     615   6    17       300    615
    4     940   8    17       512    940
    5     940   6    17       512    940
    6     615   4    17        -1    615
    7     462   8    17       256    511
    8     733   5    17        -1    733
    9     900  15    17        -1    901
   10     820   3    17        -1    820
   11     855   5    17        -1    855
   12     855   7    17        -1    855
   13     306   8    17       128    319
   14     733   7    17        -1    733
   15       0   0     0         0      0
   16     612   4    17         0    633
   17     977   5    17       300    977
   18     977   7    17        -1    977
   19    1024   7    17       512   1023
   20     733   5    17       300    732
   21     733   7    17       300    733
   22     733   5    17       300    733
   23       0   0     0         0      0
   ...
   35       0   0     0         0      0
   36    1024   5    17       512   1024
   37     830  10    17        -1    830
   38     823  10    17       256    824
   39     615   4    17       128    664
   40     615   8    17       128    664
   41     917  15    17        -1    918
   42    1023  15    17        -1   1024
   43     823  10    17       512    823
   44     820   6    17        -1    820
   45    1024   8    17        -1   1024
   46     925   9    17        -1    925
   47    1024   5    17        -1   1024

From: <https://aeb.win.tue.nl/linux/hdtypes/hdtypes-3.html>

Award-486
=========

   Type  Cyl.  Head  Sect  Write   Land  Example
                           p-comp  Zone  Models
   ------------------------------------------------------------------
    1     306   4    17     128     305  TEAC SD510, MMI 112, 5412
    2     615   4    17     300     615  Seagate ST225, ST4026
    3     615   6    17     300     615
    4     940   8    17     512     940
    5     940   6    17     512     940
    6     615   4    17      -1     615  Seagate ST125, Tandon TM262
    7     462   8    17     256     511
    8     733   5    17      -1     733  Tandon TM 703
    9     900  15    17      -1     901
   10     820   3    17      -1     820
   11     855   5    17      -1     855
   12     855   7    17      -1     855
   13     306   8    17     128     319  Disctron 526, MMI M125
   14     733   7    17      -1     733
   15    -- reserved --
   16     612   4    17       0     663  Microscience HH725,
                                         Syquest 3250, 3425
   17     977   5    17     300     977
   18     977   7    17      -1     977
   19    1024   7    17     512    1023
   20     733   5    17     300     732
   21     733   7    17     300     732
   22     733   5    17     300     733  Seagate ST4038
   23     306   4    17       0     336
   24     977   5    17      -1     976  Seagate ST4051
   25    1024   9    17      -1    1023  Seagate ST4096
   26    1224   7    17      -1    1223  Maxtor 2085
   27    1224  11    17      -1    1223  Maxtor 2140, Priam S14
   28    1224  15    17      -1    1223  Maxtor 2190, Priam S19
   29    1024   8    17      -1    1023  Maxtor 1085, Micropolis 1325
   30    1024  11    17      -1    1023  Maxtor 1105, 1120, 4780
   31     918  11    17      -1    1023  Maxtor 1170
   32     925   9    17      -1     926  CDC 9415
   33    1024  10    17      -1    1023
   34    1024  12    17      -1    1023
   35    1024  13    17      -1    1023
   36    1024  14    17      -1    1023
   37    1024   2    17      -1    1023
   38    1024  16    17      -1    1023
   39     918  15    17      -1    1023  Maxtor 1140, 4380
   40     820   6    17      -1     820  Seagate ST251
   41    1024   5    17      -1    1023  Seagate 4053,
                                         Miniscribe 3053/6053
   42    1024   5    26      -1    1023  Miniscribe 3053/6053 RLL
   43     809   6    17      -1     852  Miniscribe 3650
   44     809   6    26      -1     852  Miniscribe 3675 RLL
   45     776   8    33      -1     775  Conner CP3104
   46     684  16    38      -1     685  Conner CP3204
   47    -- user defined --

From: <https://aeb.win.tue.nl/linux/hdtypes/hdtypes-3.html>

Compaq Deskpro 386
==================

   Type  Cyl.  Head  Sect.  Write   Land
                            p-comp  Zone
   -------------------------------------
    1     306   4    17      128     305
    2     615   4    17      128     638
    3     615   6    17      128     615
    4    1024   8    17      512    1023
    5     940   6    17      512     939
    6     697   5    17      128     696
    7     462   8    17      256     511
    8     925   5    17      128     924
    9     900  15    17       -1     899
   10     980   5    17       -1     980
   11     925   7    17      128     924
   12     925   9    17      128     924
   13     612   8    17      256     611
   14     980   4    17      128     980
   15    -- reserved --
   16     612   4    17        0     612
   17     980   5    17      128     980
   18     966   6    17      128     966
   19    1023   8    17       -1    1023
   20     733   5    17      256     732
   21     733   7    17      256     732
   22     805   6    17       -1     805
   23     924   8    17       -1     924
   24     966  14    17       -1     966
   25     966  16    17       -1     966
   26    1023  14    17       -1    1023
   27     966  10    17       -1     966
   28     748  16    17       -1     748
   29     805   6    26       -1     805
   30     615   4    25      128     615
   31     615   8    25      128     615
   32     905   9    25      128     905
   33     748   8    34       -1     748
   34     966   7    34       -1     966
   35     966   8    34       -1     966
   36     966   9    34       -1     966
   37     966   5    34       -1     966
   38     611  16    63       -1     611
   39    1023  11    33       -1    1023
   40    1023  15    34       -1    1023
   41    1023  15    33       -1    1023
   42    1023  16    63       -1    1023
   43     805   4    26       -1     805
   44     805   2    26       -1     805
   45     748   8    33       -1     748
   46     748   6    33       -1     748
   47     966   5    25      128     966

From: <https://aeb.win.tue.nl/linux/hdtypes/hdtypes-3.html>

The number of sectors per track
===============================

We look at the number of sectors per track for these old drives, and
give examples from the seagate archive.

Almost all MFM drives have 17 sectors per track, like the
prototypical ST506, with 512 bytes per sector. The st419 had
32 sectors per track (geometry C/H/S=306/6/32, total capacity
15.0 MB). Maybe also 26 occurs.

Almost all RLL drives have 26 sectors per track with 512 bytes per
sector. (And these may well be the same drives that have 17 sectors
per track with MFM; indeed, RLL is a denser recording technique.) The
st225r had 31 sectors per track (geometry C/H/S=667/2/31, total
capacity 21.2 MB), just like the st250r (with 4 heads, twice as
large). Also 25 occurs.

ESDI drives can be soft sectored or hard sectored dependent upon the
controller used. Hard sectored controllers use 34 sectors per track
and soft sectored controllers can use 34, 35 or 36 sectors per track.
The drive must be jumpered for hard/soft sectoring to match the
constraints of the controller. (Here we see the first traces of the
"translation" disease: For systems with BIOS types that only support
17 sectors per track, the controller may be jumpered for translation
mode. In ESDI translation mode, the controller converts the drive to
a 17 sectors per track drive by logically doubling the number of
physical heads.) A few other values occur: 53 (e.g. the Seagate
st4766e or the Maxtor 9780E)), 54 (e.g. the st2182e), 63 (e.g. the
st4767e), 71 (e.g. the Maxtor XT 8800E). Also 26 and 72 occur.

IDE (ATA) drives usually have a variable number of sectors per track
and here we see that one has to use a geometry that is unrelated to
the actual hardware. Sometimes only a single geometry (specified by
the manufacturer) will work; usually any geometry that multiplies to
the right total capacity will be OK.

Thus, we see a great variety of values for the number of sectors per
track here, and it is not always clear in which cases this is an
obligatory value. Examples: 16 (e.g. the st9100ag), 17 (e.g. the
st325ax), 24 (e.g. the st9190ag), 27 (e.g. the st280a), 28 (e.g. the
Maxtor 8051A), 29 (e.g. the st1162a), 32 (e.g. the st9051a), 34 (e.g.
the st3195a), 35 (e.g. the st3283a), 36 (e.g. the st1239a), 38 (e.g.
the st3211a), 47 (e.g. the st9150ag), 50 (e.g. the st3291a), 51 (e.g.
the st9385ag), 52 (e.g. the st9240ag), 53 (e.g. the st3271a), 55
(e.g. the st2274a), 56 (e.g. the st2383a), 59 (e.g. the st9550ag), 60
(e.g. the st9300ag), 61 (e.g. the st1401a), 62 (e.g. the st3385a), 63
(e.g. the st3270a).

Of course, all modern drives use 63 sectors per track.

From: <https://aeb.win.tue.nl/linux/hdtypes/hdtypes-4.html>

Hard disk capacities over the years
===================================

Year:     1983 to 1986
Capacity: 10 to 20 MB
Notes:
 MFM encoding. Hard disk was connected to a hard disk controller
 card (8-bit ISA). "Hard cards" arrived late 1985 (hard disk
 physically mounted on a long controller card in the ISA slot).
 First IDE interface created in 1986 (ATA-1).

Year:     1987 to 1989
Capacity: 20 to 65 MB
Notes:
 MFM or RLL encoding. Hard disk was connected to a hard disk
 controller card (8-bit or 16-bit ISA).

Year:     1990
Capacity: 20 to 85 MB
Notes:
 MFM or RLL encoding is still common, but some IDE drives start to
 arrive.

Year: 1991
Capacity: 40 to 120 MB
Notes: ATA (IDE) hard disks become more commonplace.

Year: 1992
Capacity: 40 to 160 MB
Notes: IDE hard disks taking over. MFM/RLL not seen anymore.

Year: 1993
Capacity: 40 to 300 MB
Notes:
 IDE hard disks supporting ATA Mode 4 standard. Motherboards start
 to appear with embedded IDE sockets, so no need for a separate host
 adapter card using up an expansion slot.

Year: 1994
Capacity: 300 to 500 MB
Notes:
 EIDE (Enhanced IDE) arrives - some manufacturers make their own
 versions called "Fast ATA" or "Fast ATA-2".

Year: 1995
Capacity: 300 MB to 1 GB
Notes:
 Motherboards now almost universally come as standard with
 IDE sockets.

Year: 1996
Capacity: 300 MB to 1.5 GB
Notes:
 Introduced LBA (Logical Block Addressing) for larger drives up to
 8.4 GB

Year: 1997
Capacity: 300 MB to 2 GB
Notes:
 ATA-3 arrived, with 16.6 Mbps (megabits per second). Hard disks
 started to arrive with S.M.A.R.T. for hard disk health monitoring.

From: <https://dosdays.co.uk/topics/hard_disks.php>

Capacity Limits
===============

   Limit            Cyl      Hd  Sec  Maximum Capacity
   ---------------  ------  ---  ---  ------------------------
   BIOS              1,024  255   63    7.84 GB, aka "8 GB"
   ATA Interface    65,536   16  255  127.5  GB, aka "128 GB"
   Hard Disk         1,024   16   63  504    MB
   DOS 2.x                             16    MB
   DOS 3.x                             32    MB partition size
   DOS 4.0 to 6.22                      2    GB
   DOS 7.1                            124.5  GB

From: <https://dosdays.co.uk/topics/hard_disks.php>