Ink Blot welcomes you to Lance's Web Site!

I've decided to resurrect my web site on a limited basis; mainly to discuss FAT32X, but also to test a new site build process. LC

(best viewed at 800x600 full screen!)


Home
Boot Sectors
FAT32X
Utility Programs
Site Map

FAT32X

FAT32X Test Cases

These test cases were run to explore the various options of using FDISK to create FAT32X partitions.

The test platform was a Tyan Titan motherboard with Award 4.51PG BIOS, and a Maxtor 4.3GB disk. The BIOS setting for the disk was set to NORMAL, which forced the BIOS geometry to 1023x16x63.

The boot floppy was a DOS 7.10 floppy created by Win95B (format a: /s). The FDISK and FORMAT utilities were copied to the floppy, along with my BOOTSECT utility.

  • Boot from floppy.
  • Erase the master boot record.
    bootsect 0 -m -i -z
  • Create partitions with FDISK.
  • Display master and extended partition tables.
    bootsect 0 -m -t -x

Case Studies

These first three cases show the basic options of whole disk configuration. The remaining cases show combinations using an extended partition.

Case 1) - FDISK was run from the command prompt, large disk support was enabled, and a primary DOS parition was created using the entire disk. This resulted in a FAT32X partition/volume of 4GB.
BOOTSECT (01.07, 05/07/98) - Read/Write/etc Boot Records

Reading master boot record from drive 0

Partition table for drive 0:
Part  Boot  Sys   Start Address   End Address   Starting  Number of
Num   Flag  Type   Cyl Head Sec   Cyl Head Sec    Sector    Sectors
  0    80h  0Ch      0   1   1   1022  15  63         63    8440929
  1    00h  00h      0   0   0      0   0   0          0          0
  2    00h  00h      0   0   0      0   0   0          0          0
  3    00h  00h      0   0   0      0   0   0          0          0

Drive 0  Cylinders=1023 Heads=16 Sectors=63
Actual   Cylinders=8374 Heads=16 Sectors=63
Case 2) - FDISK was run from the DOS prompt, large disk suport was disabled, and a primary DOS partition was created using the entire disk. This resulted in a FAT16X partition/volume of 2GB.
BOOTSECT (01.07, 05/07/98) - Read/Write/etc Boot Records

Reading master boot record from drive 0

Partition table for drive 0:
Part  Boot  Sys   Start Address   End Address   Starting  Number of
Num   Flag  Type   Cyl Head Sec   Cyl Head Sec    Sector    Sectors
  0    80h  0Eh      0   1   1   1022  15  63         63    4193217
  1    00h  00h      0   0   0      0   0   0          0          0
  2    00h  00h      0   0   0      0   0   0          0          0
  3    00h  00h      0   0   0      0   0   0          0          0

Drive 0  Cylinders=1023 Heads=16 Sectors=63
Actual   Cylinders=8374 Heads=16 Sectors=63
Case 3) - FDISK /X was run from the DOS prompt, a primary DOS partition was created using the entire disk. This resulted in a FAT16 partition of 503MB. This did exactly what the /X switch is supposed to do - it ignored the int13 extension support and used the BIOS disk parameters to determine the disk size.
BOOTSECT (01.07, 05/07/98) - Read/Write/etc Boot Records

Reading master boot record from drive 0

Partition table for drive 0:
Part  Boot  Sys   Start Address   End Address   Starting  Number of
Num   Flag  Type   Cyl Head Sec   Cyl Head Sec    Sector    Sectors
  0    80h  06h      0   1   1   1022  15  63         63    1031121
  1    00h  00h      0   0   0      0   0   0          0          0
  2    00h  00h      0   0   0      0   0   0          0          0
  3    00h  00h      0   0   0      0   0   0          0          0

Drive 0  Cylinders=1023 Heads=16 Sectors=63
Actual   Cylinders=8374 Heads=16 Sectors=63
Case 4) - FDISK was run from the DOS prompt, large disk support was enabled, a primary DOS partition of 1 MB was created, an extended DOS partition of 4GB was created, and a logical DOS drive was created in the extended parition using the entire extended parition. This resulted in a FAT12 partition/volume of 1MB, and an ExtendedX partition of 4GB. In the ExtendedX partition, this resulted in a FAT32 volume of 4GB.
BOOTSECT (01.07, 05/07/98) - Read/Write/etc Boot Records

Reading master boot record from drive 0

Partition table for drive 0:
Part  Boot  Sys   Start Address   End Address   Starting  Number of
Num   Flag  Type   Cyl Head Sec   Cyl Head Sec    Sector    Sectors
  0    00h  01h      0   1   1      2  15  63         63       2961
  1    00h  0Fh      3   0   1   1022  15  63       3024    8437968
  2    00h  00h      0   0   0      0   0   0          0          0
  3    00h  00h      0   0   0      0   0   0          0          0

Drive 0  Cylinders=1023 Heads=16 Sectors=63
Actual   Cylinders=8374 Heads=16 Sectors=63

Extended partition table for drive 0 partition 1 (sector 3024):
Part  Boot  Sys   Start Address   End Address   Starting  Number of
Num   Flag  Type   Cyl Head Sec   Cyl Head Sec    Sector    Sectors
  0    00h  0Bh      3   1   1    181  15  63         63    8437905
  1    00h  00h      0   0   0      0   0   0          0          0
  2    00h  00h      0   0   0      0   0   0          0          0
  3    00h  00h      0   0   0      0   0   0          0          0
Case 5) - FDISK was run from the DOS prompt, a primary DOS partition of 400MB was created, an extended parition of 2000MB was created. Within the extended partition, a logical DOS drive of 200MB was created, and a logical DOS drive of 1800MB was created. This resulted in a FAT16 parition/volume of 400MB, and an ExtendedX partition of 2000MB. In the ExtendedX partition, this resulted in a FAT16 volume of 200MB, and a FAT32 volume of 1800MB.
BOOTSECT (01.07, 05/07/98) - Read/Write/etc Boot Records

Reading master boot record from drive 0

Partition table for drive 0:
Part  Boot  Sys   Start Address   End Address   Starting  Number of
Num   Flag  Type   Cyl Head Sec   Cyl Head Sec    Sector    Sectors
  0    00h  06h      0   1   1    812  15  63         63     819441
  1    00h  0Fh    813   0   1   1022  15  63     819504    4096512
  2    00h  00h      0   0   0      0   0   0          0          0
  3    00h  00h      0   0   0      0   0   0          0          0

Drive 0  Cylinders=1023 Heads=16 Sectors=63
Actual   Cylinders=8374 Heads=16 Sectors=63

Extended partition table for drive 0 partition 1 (sector 819504):
Part  Boot  Sys   Start Address   End Address   Starting  Number of
Num   Flag  Type   Cyl Head Sec   Cyl Head Sec    Sector    Sectors
  0    00h  06h    813   1   1    195  15  63         63     410193
  1    00h  05h    196   0   1    780  15  63     410256    3686256
  2    00h  00h      0   0   0      0   0   0          0          0
  3    00h  00h      0   0   0      0   0   0          0          0

Extended partition table for drive 0 partition 1.1 (sector 1229760):
Part  Boot  Sys   Start Address   End Address   Starting  Number of
Num   Flag  Type   Cyl Head Sec   Cyl Head Sec    Sector    Sectors
  0    00h  0Bh    196   1   1    780  15  63         63    3686193
  1    00h  00h      0   0   0      0   0   0          0          0
  2    00h  00h      0   0   0      0   0   0          0          0
  3    00h  00h      0   0   0      0   0   0          0          0
Case 6) - FDISK was run from the DOS prompt, large disk support was enabled, a primary DOS partition of 800MB was created, an extended DOS partition using the remainder of the disk was created. Logical DOS drives were created in the extended partition of 800MB, 1000MB, 200MB, 10MB, and 1311MB. This resulted in a FAT32 volume of 800MB, and an ExtendedX partition of 3.3GB. Within the ExtendedX partition, this resulted in a FAT32 volume of 800MB, a FAT32 volume of 1000MB, a FAT16 volume of 200MB, a FAT12 volume of 10MB, and a FAT32 volume of 1311MB.
BOOTSECT (01.07, 05/07/98) - Read/Write/etc Boot Records

Reading master boot record from drive 0

Partition table for drive 0:
Part  Boot  Sys   Start Address   End Address   Starting  Number of
Num   Flag  Type   Cyl Head Sec   Cyl Head Sec    Sector    Sectors
  0    00h  0Ch      0   1   1   1022  15  63         63    1638945
  1    00h  0Fh   1022   0   1   1022  15  63    1639008    6801984
  2    00h  00h      0   0   0      0   0   0          0          0
  3    00h  00h      0   0   0      0   0   0          0          0

Drive 0  Cylinders=1023 Heads=16 Sectors=63
Actual   Cylinders=8374 Heads=16 Sectors=63

Extended partition table for drive 0 partition 1 (sector 1639008):
Part  Boot  Sys   Start Address   End Address   Starting  Number of
Num   Flag  Type   Cyl Head Sec   Cyl Head Sec    Sector    Sectors
  0    00h  0Bh    602   1   1    179  15  63         63    1638945
  1    00h  05h    180   0   1    163  15  63    1639008    2048256
  2    00h  00h      0   0   0      0   0   0          0          0
  3    00h  00h      0   0   0      0   0   0          0          0

Extended partition table for drive 0 partition 1.1 (sector 3278016):
Part  Boot  Sys   Start Address   End Address   Starting  Number of
Num   Flag  Type   Cyl Head Sec   Cyl Head Sec    Sector    Sectors
  0    00h  0Bh    180   1   1    163  15  63         63    2048193
  1    00h  05h    164   0   1    570  15  63    3687264     410256
  2    00h  00h      0   0   0      0   0   0          0          0
  3    00h  00h      0   0   0      0   0   0          0          0

Extended partition table for drive 0 partition 1.1.1 (sector 5326272):
Part  Boot  Sys   Start Address   End Address   Starting  Number of
Num   Flag  Type   Cyl Head Sec   Cyl Head Sec    Sector    Sectors
  0    00h  06h    164   1   1    570  15  63         63     410193
  1    00h  05h    571   0   1    591  15  63    4097520      21168
  2    00h  00h      0   0   0      0   0   0          0          0
  3    00h  00h      0   0   0      0   0   0          0          0

Extended partition table for drive 0 partition 1.1.1.1 (sector 5736528):
Part  Boot  Sys   Start Address   End Address   Starting  Number of
Num   Flag  Type   Cyl Head Sec   Cyl Head Sec    Sector    Sectors
  0    00h  01h    571   1   1    591  15  63         63      21105
  1    00h  05h    592   0   1    182  15  63    4118688    2684304
  2    00h  00h      0   0   0      0   0   0          0          0
  3    00h  00h      0   0   0      0   0   0          0          0

Extended partition table for drive 0 partition 1.1.1.1.1 (sector 5757696):
Part  Boot  Sys   Start Address   End Address   Starting  Number of
Num   Flag  Type   Cyl Head Sec   Cyl Head Sec    Sector    Sectors
  0    00h  0Bh    592   1   1    182  15  63         63    2684241
  1    00h  00h      0   0   0      0   0   0          0          0
  2    00h  00h      0   0   0      0   0   0          0          0
  3    00h  00h      0   0   0      0   0   0          0          0

Conclusions

FDISK recognizes if the BIOS is using the int13 extensions, and uses them by default unless /X is applied.

The int13 extension partition types (0C, 0E, and 0F) are only used for primary partitions. They do not appear as types within the extended partitions.

The start/end CHS addresses in the extended partition tables appear to be nonsense, but they really aren't. Their purpose is left as an exercise for the reader.
Lance Costanzo, [email protected]