Description of Physical Layout of 'Perfect' ADFS formats

Format  g1s0    g1s1    g3      ss      spt
L       42      42      57      256     16
D       32+271  32+0    90      1024    5
E       32+271  32+0    90      1024    5
F       50      50      90      1024    10

These formats work in the sence that drives which fit into the following spec will not have a data overrunning ever:

Variation in speed: +/-1.5%
Min. Write to read changeover time 696 uS (2Meg mode) (43 bytes)

                                   1300 uS (1Meg mode) (40 bytes)
        (values for one particular drive)

Track length (nominal) 12500 bytes (2Meg mode)

                        6250 bytes (1Meg mode)

Assume the drive is always running fast gives the actual workable track length of

                        12312 bytes (2Meg mode)
                         6156 bytes (1Meg mode)

If evaluating the total byte usage of the given formats gives a number less than the minimum track length then that format fits and will be reliable.

Here are the parameters of the parts of a track:

(soft) Index mark       96 bytes
Minimum gap 4           30 bytes (2Meg mode)
                        40 bytes (1Meg mode)
Sector overhead         62 bytes (includes gap 2 and pre-ambles)

Plugging the numbers in gives:
L:
96+42+(62+256+57)*16-57+40 = 6121 (min. track length = 6156)
| | | | | | | |
| | | | | | | \ Min gap 4
| | | | | | \ remove one duplicate gap 3
| | | | | \ number of sectors
| | | | \ gap 3
| | | \ data bytes in a sector
| | \ sector overhead
| \ gap 1

        \ soft index mark (not generated on 1772-based systems

D and E:
1772-based system without index mark:

        0 +303+(62+1024+90)*5-90+40 = 6133 (min. track length = 6156)
        |  |    |  |    |   |  |  |
        |  |    |  |    |   |  |  \ Min gap 4
        |  |    |  |    |   |  \ remove one duplicate gap 3
        |  |    |  |    |   \ number of sectors
        |  |    |  |    \ gap 3
        |  |    |  \ data bytes in a sector
        |  |    \ sector overhead
        |  \ biggest gap 1
        \ soft index mark (not generated on 1772-based systems

710-based system with index mark (gap 1 forced to 50 bytes by the 710)

        96+50+(62+1024+90)*5-90+40 = 5976 (min. track length = 6156)
        |  |   |  |    |   |  |  |
        |  |   |  |    |   |  |  \ Min gap 4
        |  |   |  |    |   |  \ remove one duplicate gap 3
        |  |   |  |    |   \ number of sectors
        |  |   |  |    \ gap 3
        |  |   |  \ data bytes in a sector
        |  |   \ sector overhead
        |  \ biggest gap 1
        \ soft index mark (not generated on 1772-based systems
F:
96+50+(62+1024+90)*10-90+30 = 11846 (min. track length = 12312)
| | | | | | | |
| | | | | | | \ Min gap 4
| | | | | | \ remove one duplicate gap 3
| | | | | \ number of sectors
| | | | \ gap 3
| | | \ data bytes in a sector
| | \ sector overhead
| \ biggest gap 1
        \ soft index mark (not generated on 1772-based systems

Summary of what comprises sector overhead: bytes use

12      00-bytes (preamble)
 3      A1-bytes
 1      FE-ID of address field
 1      Track
 1      Side
 1      Sector
 1      Length
 1      CRC 1
 1      CRC 2
22      4e-gap 2
12      00-bytes (preamble)
 3      A1-bytes
 1      FB-ID of data field
(N bytes of data not included in sector overhead)
 1      CRC 1
 1      CRC 2
--
62

Checking the gap 3 value assuming worst case drive speed variation. The drive speed variation gives 3% variation total (assuming the drive used for formatting way 1.5% fast and for writing is 1.5% slow). The write-to-read times give the further slack needed which gives the minimum value for gap3. The total variation in bytes is in the section of a sector from gap2 to the end of CRC2 after the data. This gives an overhead over the data of 40 bytes. L:
Min. gap 3 = 9 + 40 = 49 (actually 57)

             |   |
             |   \ write-to-read time
             \ data size (256+40) * 3%

D & E:
Min. gap 3 = 32 + 40 = 72 (actually 90)

             |    |
             |    \ write-to-read time
             \ data size (1024+40) * 3%
F:
Min. gap 3 = 32 + 43 = 75 (actually 90)
             |    |
             |    \ write-to-read time
             \ data size (1024+40) * 3%

Working the calculations the other way round gives the worst case values for the write-to-read time for a drive whose speed variation is 1.5%: L:
Worst write-read-time = (57-9)*32 = 1536 uS

                         |  |  |
                         |  |  \ uS per byte
                         |  \ data size
                         \ gap 3

D and E:
Worst write-read-time = (90-32)*32 = 1856 uS

                         |  |   |
                         |  |   \ uS per byte
                         |  \ data size
                         \ gap 3
F:
Worst write-read-time = (90-32)*16 = 928 uS
                         |  |   |
                         |  |   \ uS per byte
                         |  \ data size
                         \ gap 3