AOH :: HDPAT2.TXT

Using 2K clusters on 10MB hard disks

By popular demand, we are reprinting this article from Usenet.

2K Cluster size for 10MB and 15MB fixed disks under DOS 3.1

Standard 10mb/15mb fixed disks formatted under DOS 3.1 utilize 4K
clusters (i.e., the minimum space allocated to any file is 4096
bytes), while 20mb and larger drives utilize 2K clusters.  At
work, I use a PC with twin 10mb drives under 3.1. Since I have a
multitude of small files on these disks, the smaller allocation
unit's space saving advantage far outweighs any theoretical
disadvantage of additional overhead for DOS to handle the added
allocation units.  With the help of Bob Morse, Jim Gainsley, and
the DOS technical Reference,  I was able to make the changes
necessary to use 2K clusters on both of my 10mb drives.  By
following the step-by-step instructions below, you will be
able to make the switch to 2K clusters yourself.  The need for
making a complete backup of all your files prior to attempting
this procecure cannot be overemphasized.   You will need the
following tools:

    1. DOS version 3.1

    2. A disk utility such as Norton's NU.COM, or equivalent.

Most critical to the process is the sequence in which this
procedure is atttempted.  Here is the 4k to 2k cluster procedure:

1.  Do a complete backup of the drive, using your current version
    of DOS.

2.  Cold boot DOS 3.1 and FDISK the drive to create a partition.

3.  Format the drive using the DOS format program.  Don't use any
    parameters ( no /s or /v ).

4.  Using your Norton (or whatever), select the boot sector and
    view it.  See below for an explanation of the pertinent info
    in this sector.  You should see a value of 08 for sectors per
    cluster, and a value of 0800 for sectors per fat.  All
    changes to the fat sectors required for 2k clusters will be
    accomplished by the subsequent format (6,below).  No other
    manual changes are required.  A more detailed explanation of
    these the two changes:

       The number of sectors per cluster would change from
       08 to 04, since that's what this is all about.  The
       sectors per FAT will change, in order to accommodate
       (1) the increased number of possible FAT entries, and 
       (2) the increased size of each fat entry (new 16 vs. old
       12 bits each).





5.  Exit Norton and do a cold boot.  This is critical, since the
    boot sector is read by DOS only once, at boot time, in order
    to build the BIOS Parameter Block.  Having different info in
    the boot sector than what's in the memory-resident BPB will 
    cause exceedingly flaky things to happen, as you can imagine.

6.  Reformat the drive using the DOS program, using whatever
    switches that you desire (/s or /v).  Format will not affect
    your changes to the boot sector.

7.  Restore your files, remembering to use the new restore switch
    (/p) which prompts before restoring system files.  If you
    restore an old version command.com, make sure to copy a 3.x
    version over it afterward.  You should now be operational
    again, with 2k clusters.

Example of the first few bytes in the boot sector displayed in
hex format, after formatting with DOS 3.1, and prior to 2k
cluster size change.

EB299049 424D2020 332E3100 02080100 020002F3 50F80800
                             ^^                  ^^
                             AA                   BB
After the 2k cluster size changes:
10 meg drive:

EB299049 424D2020 332E3100 02040100 020002F3 50F81500
                             ^^                  ^^
                             AA                   BB 

To get 1k clusters use the following parameters:
10 meg only:

EB299049 424D2020 332E3100 02020100 020002F3 50F82A00
                             ^^                  ^^  
                             AA                  BB

15 meg drive:

EB299049 424D2020 332E3100 02040100 020002F3 50F82A00
                             ^^                  ^^^^
                             AA                   BB

Where the data elements directly above AA are sectors per
cluster, and above BB are sectors per FAT.

Further info on the entries in the boot sector entries use to
build the BIOS parameter block can be found in the DOS 3.1
Technical Reference, Page 3-22.  Of course, I cannot warrant that
this chage will work for all controller/disk combinations,
particularly for controllers and drives which are not "XT
clones", though it should work for all drives compatible enough
to work under DOS 3.1

This revision of the original letter that allowed the change to
10 meg for 2k clusters is as is.  All reference to the 15 meg
drive and 10 meg 1k cluster changes were thought out by Carver Smith
and typed in by Carl Shepherd.


The entire AOH site is optimized to look best in Firefox® 3 on a widescreen monitor (1440x900 or better).
Site design & layout copyright © 1986- AOH
We do not send spam. If you have received spam bearing an artofhacking.com email address, please forward it with full headers to abuse@artofhacking.com.