home *** CD-ROM | disk | FTP | other *** search
/ Programmer 7500 / MAX_PROGRAMMERS.iso / PROGRAMS / UTILS / HARDDISK / ADJUST.ZIP / MANUAL.TXT < prev    next >
Encoding:
Text File  |  1988-02-10  |  40.3 KB  |  886 lines

  1.  
  2.                          Hard Disk Adjustment Utilities
  3.                      Copyright (C) 1987 Richard. B. Johnson
  4.                               All rights reserved.
  5.                                  DOCUMENTATION
  6.  
  7.           WARNING NOTICE
  8.           The use of some of these utilies can result in the un-
  9.           recoverable loss of all data on your hard disk drives! The
  10.           "EXPAND" function attempts to FORMAT as many tracks as pos-
  11.           sible above those normally in use. Some disk drives will
  12.           seek to track zero if an attempt is made to read, write, or
  13.           format above some undefined track. This will cause track
  14.           zero to be formatted with the incorrect track and sector
  15.           information making access impossible without a complete re-
  16.           format. In this case, it will be impossible to recover any
  17.           data from the drive. In any case, the maximum usable track
  18.           is saved in the parameter table so that a new ROM can be
  19.           burned. Do NOT use the EXPAND utility or the FORMAT utility
  20.           on any hard disk that has good data or programs on it unless
  21.           the data on the drive has been completely backed up to disk
  22.           or tape. NOTICE: Some tape backup systems do not allow you
  23.           to restore a disk IMAGE if the size of the disk has been
  24.           changed! This means that you must do a file-by-file backup
  25.           in order to recover the data if you increase the amount of
  26.           data space by adding new tracks to the drive.
  27.  
  28.           NOTE:
  29.  
  30.           IBM is a registered trademark of International Business
  31.           Machines, Inc. IBM/XT/PC/AT are registered trademarks of
  32.           IBM. MS-DOS is a registered trademark of Microsoft
  33.           Corporation.
  34.  
  35.           These utilities are very powerful. Therefore they require
  36.           the utmost of caution with use. If you are unfamiliar with
  37.           hard disk installation and the function of the hard disk
  38.           parameters in the BIOS tables, do not attempt to use the
  39.           program ADJUST.COM. Rename it to ADJUST.SAV so it can't
  40.           accidentally be run by an experienced person. None of the
  41.           other utilities included in this package can cause any harm
  42.           to your system or data.
  43.  
  44.           Introduction.
  45.  
  46.           The hard disk adjustment tool allows the user to modify the
  47.           drive parameters contained within the hard disk BIOS ROM
  48.           provided by various hard disk controller manufacturers. The
  49.           system can be tested with the new parameters in place and an
  50.           output file written that contains the modified code neces-
  51.           sary to program a new BIOS ROM for the controller.
  52.  
  53.           The disk parameters are stored within the ROM in four tables
  54.           corresponding to four disk drive "types". These disk drive
  55.           types are indexed by the shorting pins and jumpers on the
  56.           hard disk controller card. In many cases the types available
  57.  
  58.  
  59.                                     - 1 -
  60.                                              Hard disk adjustment tools Page 2
  61.  
  62.           in these four tables do not cover all the possibilities for
  63.           optimum use of hard disk drives that may be available. For
  64.           instance, a 306 cylinder drive may, in fact, have over 306
  65.           usable cylinders. A common 612 cylinder drive has 650 usable
  66.           cylinders which means that the data storage space of the
  67.           drive can be increased by over 6 percent just by modifying
  68.           the BIOS ROM to "tell" DOS about all the extra cylinders
  69.           available. Even if there are no more usable cylinders above
  70.           the maximum listed in the tables, setting the table values
  71.           to one cylinder higher than the maximum usable, will free up
  72.           the spare cylinder that is thrown away by DOS. DOS throws
  73.           away the last cylinder because  in version one DOS expected
  74.           the last cylinder to be used for a "bad sector table". DOS
  75.           versions after 2.0 write any bad sector information to the
  76.           FAT and therefore never use this cylinder at all. If you
  77.           have a drive with six heads, freeing up the last cylinder
  78.           will provide 52,224 bytes more of disk space!
  79.  
  80.           The adjustment tool allows the modification of any of the
  81.           disk drive parameters, the system can then be run with the
  82.           new parameters in place so the user can optimize things like
  83.           the step rate and error-correcting bits in addition to the
  84.           number of cylinders. When the optimum parameters are found,
  85.           the user can write the BIOS with the new embedded parameters
  86.           to a file. The contents of this file can be "burned" into a
  87.           ROM to make the changes permanent.
  88.  
  89.           The following procedures are supported:
  90.  
  91.           o       Review the four sets of operating parameters for the
  92.           four drive types supported by the hard disk BIOS.
  93.  
  94.           o       Change any/all of the disk parameters for any of the
  95.           drive types.
  96.  
  97.           o       Try out the drive with the new BIOS parameters. Any
  98.           DOS functions and any utilities may be run with the new BIOS
  99.           parameters in place.
  100.  
  101.           o       Write the contents of the BIOS ROM and the new
  102.           parameters to a file so that a new BIOS ROM can be
  103.           programmed.
  104.  
  105.           o       Checksum the new BIOS ROM file so it will be
  106.           recognized by the operating system upon boot up.
  107.  
  108.           o       Format (initialize) a drive using parameters
  109.           selected by the user.
  110.  
  111.           o       Attempt to format more cylinders than normally
  112.           provided. Expand the size of the drive to the maximum
  113.           possible. This will occur automatically with minimum
  114.           operator intervention.
  115.  
  116.  
  117.  
  118.                                     - 2 -
  119.                                              Hard disk adjustment tools Page 3
  120.  
  121.           o       Completely check out the drive with the new
  122.           parameters.
  123.  
  124.           o       Set the heads of all drives to the innermost track
  125.           for protection during handling or shipping.
  126.  
  127.           o       Write protect all hard disks in the system and,
  128.           optionally, write enable them.
  129.  
  130.           It is assumed that the user of these utilities knows quite a
  131.           lot about hard disk drives and that he is either installing
  132.           a new one in a customer's computer or he is trying to im-
  133.           prove his own system. The utilities presented here are very
  134.           POWERFUL, but also very DANGEROUS. NEVER run ADJUST.COM if
  135.           you do not intend to erase all the data on ALL hard disks on
  136.           your system! One simple mistake can cause ALL the data and
  137.           programs on drive C to be destroyed when you were intending
  138.           to FORMAT a new drive D! It is advised that you make a copy
  139.           of your distribution disk onto a bootable floppy disk and
  140.           run the program from the floppy disk with any "good" hard
  141.           disks disconnected. Do not attempt to boot from a hard disk
  142.           and then disconnect it. You have one chance in ten of des-
  143.           troying track zero when you disconnect the drive!
  144.  
  145.                   The following utilities are provided:
  146.  
  147.                   ADJUST   COM     4865   3-22-87  12:25a
  148.           This program is the "main menu" which creates an environment
  149.           in which the user can change the disk parameters at will. As
  150.           the parameters are modified, the user can test the various
  151.           drive functions. When the best parameters are selected the
  152.           contents of the Hard disk BIOS ROM are written to a file
  153.           with the new disk parameters contained in that file. The
  154.           user can then program a PROM with the file contents and in-
  155.           stall it in his disk controller in place of the default ROM.
  156.           The size of the ROM file is automatically determined by the
  157.           program. You may find that the file is somewhat smaller than
  158.           the size of the ROM in the hard disk controller. This is
  159.           perfectly correct. Most controllers use an 8k PROM but have
  160.           1024, 2048, 4096 or 8192 bytes of code in them. All Western
  161.           Digital, Xebec, and Omti controllers (to date) have BIOS
  162.           ROMs that are compatible with this program. As a matter of
  163.           fact, if the controller has a removable PROM, this program
  164.           can correctly copy and modify it. This is because the char-
  165.           acteristics of the ROM are required to be available through
  166.           interrupts and calls so that the ROM will be compatible with
  167.           IBM protocols.
  168.  
  169.                   The commands supported within the ADJUST shell are:
  170.  
  171.           o       Change: This command allows you to modify any of the
  172.           parameters listed in the four tables corresponding to the
  173.           four drive types. The default parameters are not modified.
  174.  
  175.  
  176.  
  177.                                     - 3 -
  178.                                              Hard disk adjustment tools Page 4
  179.  
  180.           o       Checksum: This command invokes the program
  181.           CHECKSUM.COM which modifies the file HDISK.ROM so it check-
  182.           sums in the proper manner to be recognized by the IBM BIOS
  183.           during the power-on-self-test (POST) routines.
  184.  
  185.           o       Exit: This command ends the program and returns to
  186.           DOS
  187.  
  188.           o       Expand: This command attempts to increase the number
  189.           of usable cylinders on a drive by formatting cylinders num-
  190.           bered greater than those listed in the default tables. The
  191.           tables are modified as each good new cylinder is added.
  192.           After the formatting operation, the cylinder must be read
  193.           fifty times without error for it to be considered good. The
  194.           previous cylinder is also checked to make certain that the
  195.           new cylinder had not just been written over the previous
  196.           one.
  197.  
  198.           o       Format: This command formats the entire drive using
  199.           the new parameters. This is important to do since the expand
  200.           routines do not bother with selecting an optimum interleave
  201.           factor. The interleave factor can be changed to whatever the
  202.           user desires to optimize the data transfer time of the
  203.           drive.
  204.  
  205.           o       New: This command restores all the drive parameters
  206.           to the default conditions at bootup.
  207.  
  208.           o       Ship: This command executes SHIP.COM which puts the
  209.           heads of all the drives at the innermost cylinder for a safe
  210.           shutdown.
  211.  
  212.           o       Speed: This command executes HDSPEED.COM which
  213.           checks the track-to-track access times of the drives. Many
  214.           different combinations are provided including reading actual
  215.           data from randomly selected tracks.
  216.  
  217.           o       Test: This command executes HDTEST.COM which
  218.           thoroughly tests the selected drive. Every sector on every
  219.           track are read and any errors are reported.
  220.  
  221.           o       Try: This command executes COMMAND.COM which lets
  222.           the user operate in the DOS environment with the new drive
  223.           parameters. In this manner, it is possible to "try out" the
  224.           new drive with other utilities.
  225.  
  226.           o       Write: This command writes the contents of the disk
  227.           controller BIOS ROM to a file (HDISK.ROM) with the new drive
  228.           parameters installed. This allows the user to "burn" a new
  229.           ROM to be installed in the controller with the new para-
  230.           meters being permanent.
  231.  
  232.           The programs supplied in this package:
  233.  
  234.  
  235.  
  236.                                     - 4 -
  237.                                              Hard disk adjustment tools Page 5
  238.  
  239.                   AUTOTEST COM      798   5-1-87   10:03p
  240.           This program can be loaded into memory during bootup by
  241.           placing the command: AUTOTEST in your AUTOEXEC.BAT file. It
  242.           uses very little of the computer's memory since it has been
  243.           designed to use the absolute minimum amount of code. This
  244.           program causes the hard disk drives to make random seeks
  245.           during periods of hard disk in-activity. Should the seek
  246.           fail, an error message is printed at the upper left-hand
  247.           corner of the screen. Any programs in operation at the time
  248.           continue without interruption. The main purpose of this pro-
  249.           gram is not to report errors. It is to make it unlikely that
  250.           the disk heads remain over the directory tracks should the
  251.           computer power fail or a crash occur! In this manner, the
  252.           heads are moved to different places on the drives at about
  253.           ten-second intervals. Normally, any disk crash is most like-
  254.           ly to destroy the directory and FAT tracks, making it impos-
  255.           sible to recover ANY data (or programs) from the drives
  256.           since DOS leaves the heads over these tracks after every
  257.           file access. With this utility, the heads could be anywhere
  258.           should the disk crash. The chances of the directory tracks
  259.           being destroyed by such a crash is reduced from almost a
  260.           sure thing to 1 in 360 for a 360 cylinder drive. There's
  261.           even a lesser chance of damage with a larger drive. In the
  262.           event of a crash, only a file or two will be unusable rather
  263.           than everything. This utility starts to make random seeks
  264.           only after the drive has been idle for about 30 or more
  265.           seconds. This is so that normal disk activity is not slowed
  266.           down at all.
  267.  
  268.           Note:
  269.           If you are doing intensive work close to your computer, you
  270.           might find the noise from the drives making random seeks an-
  271.           noying at first. After a few hours you probably won't find
  272.           it bothersome and after a few days, you will probably not
  273.           even notice the noise anymore.
  274.  
  275.  
  276.                   CHECKSUM COM      640   1-26-87  10:03p
  277.           This program is called by ADJUST.COM to modify the contents
  278.           of the BIOS ROM file (HDISK.ROM) so that it checksums cor-
  279.           rectly. This program can also be run interactively by typ-
  280.           ing:
  281.                   CHECKSUM <filename> [Return]
  282.           In this case, any file can be modified. The LAST byte in the
  283.           file is changed so that the sum of all the bytes in the file
  284.           (modulo 255) results in zero. This is required so that the
  285.           power-on-self-test (POST) routines in the computer will find
  286.           the ROM and connect it into the system before boot-up.
  287.           [WARNING! This program changes the last byte in the file. If
  288.           you "CHECKSUM" a program you will probably destroy it!]
  289.  
  290.                   DITHER   COM      252   3-09-87  12:18a
  291.           This program will cause a hard disk to make random seeks to
  292.           all tracks until aborted by the operator. This will exercise
  293.  
  294.  
  295.                                     - 5 -
  296.                                              Hard disk adjustment tools Page 6
  297.  
  298.           the drive and help remove any dust particles that may have
  299.           gotten on the drive platters during shipping. It is recom-
  300.           mended that this routine be run overnight on old surplus
  301.           drives before a final low level format is done. Most all
  302.           hard disk drives contain an internal air filter through
  303.           which the internal air is re-circulated over and over again.
  304.           The air within the drive will thus get cleaner and cleaner.
  305.           If any particles on the platters are dislodged, they will
  306.           get trapped in the air filter and do no harm. If they are
  307.           allowed to remain on the platters, the result may be quite a
  308.           few bad sectors.
  309.           [The drive is NEVER written to so the program is safe to use
  310.           with a drive that contains good data.]
  311.  
  312.                   You run it by typing:
  313.  
  314.                   DITHER 0 [Return]       {For drive C}
  315.                   DITHER 1 [Return]       {For drive D}
  316.  
  317.                   HDSPEED  COM      941   3-20-87  11:36a
  318.           This program checks the track-to-track access times of the
  319.           drive. It produces a complete listing of various track
  320.           access times. Tested are:
  321.                   Track-to-track seeks on the outer cylinders.
  322.                   Track-to-track seeks on the middle cylinders.
  323.                   Track-to-track seeks on the inner cylinders.
  324.                   Random seeks over the entire data area.
  325.                   Track-to-track reads on the outer cylinders.
  326.                   Track-to-track reads on the middle cylinders.
  327.                   Track-to-track reads on the inner cylinders.
  328.                   Random reads over the entire data area.
  329.           [The drive is NEVER written to so the program is safe to use
  330.           with a drive that contains good data.]
  331.  
  332.                   HDTEST   COM     2296   3-19-87   8:55p
  333.           This program completely checks the selected hard disk drive.
  334.           It starts by making overlapping seeks between the highest
  335.           and lowest tracks. After the seeks are complete it reads
  336.           every head/sector/track on the drive (backwards, which is
  337.           the hardest way). Any errors are reported on the screen. If
  338.           you run this program interactively, you can type anything in
  339.           the command line after the program name and then ONLY the
  340.           errors will apear on the screen. If you toggle control P
  341.           (The printer toggle), the errors will be listed on the prin-
  342.           ter. Along with the errors is the time and date at which
  343.           they occurred. This is helpful if you are running the pro-
  344.           gram from a batch file and want to test the drive over
  345.           night. The track number are reported in HEX in order to
  346.           speed up the testing as much as possible. Conversion of
  347.           binary to decimal takes about twenty times longer than
  348.           conversion to hexidecimal. Since every track, head, and
  349.           sector are reported, this added overhead would slow the
  350.           testing excessively.
  351.           [The drive is NEVER written to so the program is safe to use
  352.  
  353.  
  354.                                     - 6 -
  355.                                              Hard disk adjustment tools Page 7
  356.  
  357.           with a drive that contains good data.]
  358.  
  359.                   SHIP     COM      351   3-22-87  12:17a
  360.           This program sets the heads on all drives to their innermost
  361.           tracks. Use of this program before the computer is shut down
  362.           or before the drives are removed is recommended to prevent
  363.           the heads for landing (actually crashing) on the directory
  364.           tracks which is where the heads will most likely by when the
  365.           computer is being shut down.
  366.           [The drive is NEVER written to so the program is safe to use
  367.           with a drive that contains good data.]
  368.  
  369.                   SPACE    COM      541   1-26-87  10:05p
  370.           This program tells the user the amount of data space
  371.           available on any disk. You use it like this:
  372.  
  373.           C>space d:
  374.  
  375.           Drive D: has 33,435,648 bytes with 1,327,104 free and
  376.           32,108,544 used.
  377.  
  378.           Unlike CHKDSK which takes a lot of time because it checks
  379.           the FAT against every directory entry, this program ONLY
  380.           gets information about the space available so it works much
  381.           faster. You probably have noticed that the " Bytes free"
  382.           information after a "DIR" under MS-DOS is not very accurate.
  383.           [The drive is NEVER written to so the program is safe to use
  384.           with a drive that contains good data.]
  385.  
  386.                   TRACE    COM     1202   3-26-87  10:10p
  387.           This program allows a programmer to determine the exact
  388.           nature of every call being made to the hard disk BIOS
  389.           routines. Displayed on the screen is information about the
  390.           sectors being written or read, the amount of sectors to be
  391.           transferred, the DMA address, the heads being used as well
  392.           as the track, and whether or not the call was successful.
  393.           This program is very useful for programmers who are creating
  394.           device drivers. It allows them to check that their block-
  395.           ing/deblocking routines are working correctly and if the
  396.           calls being handled by the BIOS are efficient. It's much
  397.           more efficient to read 17 sectors starting at sector one
  398.           than it is to read each sector one at a time. Any errors
  399.           returned are translated to text. You must re-boot to "get
  400.           out" of the trace routine.
  401.           [The drive is NEVER written to so the program is safe to use
  402.           with a drive that contains good data.]
  403.  
  404.                   WPROT    COM      314   3-22-87  11:34p
  405.           This program WRITE protects the hard disk drives in your
  406.           machine. The program functions as a toggle so the first time
  407.           it is run you will see a sign-on message and a notice that
  408.           the drives are write PROTECTED. The next time you run this
  409.           program it will write ENABLE the drives. The next time it
  410.           will write PROTECT then again, etc. The program can be run
  411.  
  412.  
  413.                                     - 7 -
  414.                                              Hard disk adjustment tools Page 8
  415.  
  416.           forever without using any additional memory.
  417.           [The drive is NEVER written to so the program is safe to use
  418.           with a drive that contains good data.]
  419.  
  420.           Running the ADJUSTMENT tool environment:
  421.  
  422.           The following is a complete interactive session using
  423.           ADJUST.COM:
  424.  
  425.                             Hard Disk Adjustment Tool  Version 3.0
  426.                             Copyright (C) 1987 Richard B. Johnson
  427.  
  428.           Number of drives present.   2
  429.           Hard disk drive type.....   1          2          3          4
  430.           1: Number of tracks...... 306 [0132] 480 [01E0] 612 [0264] 306 [0132]
  431.           2: Number of heads.......   6 [0006]   4 [0004]   2 [0002]   4 [0004]
  432.           3: Cyl. reduced current.. 306 [0132] 480 [01E0] 612 [0264] 306 [0132]
  433.           4: Cyl. write precomp.... 128 [0080] 128 [0080] 128 [0080] 128 [0080]
  434.           5: Bits to error correct.  11 [000B]  11 [000B]  11 [000B]  11 [000B]
  435.           6: Control option byte...   0 [0000]   5 [0005]   5 [0005]   5 [0005]
  436.           7: Time-out for R/W......  13 [000D]  14 [000E]  16 [0010]  13 [000D]
  437.           8: Time-out for format... 224 [00E0] 224 [00E0] 208 [00D0] 208 [00D0]
  438.           9: Time-out for diag.....  37 [0025]  37 [0025]  37 [0025]  37 [0025]
  439.                             - Current drive parameters -
  440.           Drive   0    Heads = 6   Cylinders =  305  Sectors =  17   Type =   1
  441.           Drive   1    Heads = 4   Cylinders =  305  Sectors =  17   Type =   4
  442.  
  443.           Change, Checksum, Exit, Expand, Format, New, Speed, Test, Try, Write
  444.           ADJUST> _
  445.  
  446.                   This is the sign-on message showing all of the drive
  447.           parameters possible to use with the present parameters
  448.           stored in the hard disk BIOS ROM. This configuration is
  449.           using the parameters in Table 4 (the right hand column).
  450.           This fact is shown under the "Current drive parameters"
  451.           listing which defines the current drives as being "Type" 1
  452.           and 4. Notice that only 305 of the possible 306 cylinders
  453.           are actually available for use.
  454.  
  455.           Now let's test the drive:
  456.  
  457.           ADJUST> test
  458.           TEST>
  459.           Copyright(C) 1986 Richard B. Johnson. All rights reserved.
  460.           Saturday March 21, 1987  Time 17:51:03.43 (05:51:03 PM)
  461.  
  462.           The hard disk BIOS reports the following configuration:
  463.           Number of drives supported: 02
  464.  
  465.           Drive 00 configuration:         < The first drive, drive C: >
  466.           306  cylinders
  467.           06   heads
  468.           17   sectors per track
  469.           15384  Kb total space
  470.  
  471.  
  472.                                     - 8 -
  473.                                              Hard disk adjustment tools Page 9
  474.  
  475.  
  476.           Drive 01 configuration:         < The drive we are working on. >
  477.           306  cylinders
  478.           04   heads
  479.           17   sectors per track
  480.           10404 Kb total space
  481.  
  482.           Is this correct? (Y/N) Y        < Our answer >
  483.           Which drive to test (0-9) 1     < Answer "1" >
  484.           - testing -
  485.           Seeking 305 ^C                  < We abort with ^C since we have
  486.                                             already tested this drive. >
  487.  
  488.           ADJUST> expand                  < Back to the main menu, type EXPAND>
  489.           EXPAND> Do you really want to do this? Y/N Y
  490.           EXPAND> Attempting to write cyl.  306 Verify OK
  491.           EXPAND> Attempting to write cyl.  307 Verify OK
  492.           EXPAND> Attempting to write cyl.  308 Verify OK
  493.           EXPAND> Attempting to write cyl.  309 Verify OK
  494.           EXPAND> Attempting to write cyl.  310 Verify OK
  495.           EXPAND> Attempting to write cyl.  311 Verify OK
  496.           EXPAND> Attempting to write cyl.  312 Verify OK
  497.           EXPAND> Attempting to write cyl.  313 Verify OK
  498.           EXPAND> Attempting to write cyl.  314 Verify OK
  499.           EXPAND> Attempting to write cyl.  315 Verify OK
  500.           EXPAND> Attempting to write cyl.  316 Verify OK
  501.           EXPAND> Attempting to write cyl.  317 Verify OK
  502.           EXPAND> Attempting to write cyl.  318 Verify OK
  503.           EXPAND> Attempting to write cyl.  319 Verify OK
  504.                   "
  505.                   "
  506.           EXPAND> Attempting to write cyl.  356 Verify OK
  507.           EXPAND> Attempting to write cyl.  357             < Does not verify!>
  508.           FORMAT> Want to reformat the entire drive? Y/N Y  < Answer yes >
  509.           FORMAT> Interleave factor? (1 - 10) 5   < Enter the IBM default >
  510.           FORMAT> Formatting drive    1
  511.  
  512.           We return to the main menu when FORMAT is through.
  513.  
  514.                             Hard Disk Adjustment Tool  Version 3.0
  515.                             Copyright (C) 1987 Richard B. Johnson
  516.  
  517.           Number of drives present.   2
  518.           Hard disk drive type.....   1          2          3          4
  519.           1: Number of tracks...... 306 [0132] 480 [01E0] 612 [0264] 356 [0132]
  520.           2: Number of heads.......   6 [0006]   4 [0004]   2 [0002]   4 [0004]
  521.           3: Cyl. reduced current.. 306 [0132] 480 [01E0] X12 [0264] 306 [0132]
  522.           4: Cyl. write precomp.... 128 [0080] 128 [0080] 128 [0080] 128 [0080]
  523.           5: Bits to error correct.  11 [000B]  11 [000B]  11 [000B]  11 [000B]
  524.           6: Control option byte...   0 [0000]   5 [0005]   5 [0005]   5 [0005]
  525.           7: Time-out for R/W......  13 [000D]  14 [000E]  16 [0010]  13 [000D]
  526.           8: Time-out for format... 224 [00E0] 224 [00E0] 208 [00D0] 208 [00D0]
  527.           9: Time-out for diag.....  37 [0025]  37 [0025]  37 [0025]  37 [0025]
  528.                             - Current drive parameters -
  529.  
  530.  
  531.                                     - 9 -
  532.                                             Hard disk adjustment tools Page 10
  533.  
  534.           Drive   0    Heads = 6   Cylinders =  305  Sectors =  17   Type =   1
  535.           Drive   1    Heads = 4   Cylinders =  305  Sectors =  17   Type =   4
  536.  
  537.           Change, Checksum, Exit, Expand, Format, New, Speed, Test, Try, Write
  538.           ADJUST> _
  539.  
  540.  
  541.                   Notice that the number of usable tracks has
  542.           automatically been set under drive type 4 to 356.  You will
  543.           probably want to use CHANGE to set the cylinders for reduced
  544.           write current and write pre-compensation to the same number
  545.           also, at least until you find out if you need any precom-
  546.           pensation or reduced write current. Most drives do not use
  547.           reduced write current so that parameter is set to be the
  548.           same as the highest track number. Other drives usually use
  549.           write pre-compensation starting at the middle tracks (one
  550.           half of the usable tracks). Miniscribe (R) uses write pre-
  551.           compensation for the entire drive with most of their drives.
  552.           In this case you set that track to zero.
  553.  
  554.           ADJUST> write           < We'll now write a new ROM >
  555.           WRITE> Writing HDISK.ROM
  556.  
  557.           ADJUST> checksum        < We must now checksum the file >
  558.           CHECKSUM> HDISK.ROM
  559.           The file has been modified.
  560.             [Return]              < Hit return to get back to the main
  561.           menu.>
  562.  
  563.                   Now we are going to check the access time of the
  564.           drive to determine if the controller option byte should be
  565.           modified.
  566.  
  567.           ADJUST> speed
  568.           SPEED>
  569.  
  570.           Hard disk access time diagnostic utility.  Version 3.0
  571.           Copyright (C) 1987 Richard B. Johnson
  572.  
  573.           Which drive? (0 - 1) 1
  574.           Code execution time of .32ms is applied to access times.
  575.           Random seeks 89.08ms
  576.           -- Track to track --
  577.           Outside cylinders 16.09ms
  578.           Center  cylinders 15.98ms
  579.           Inside  cylinders 15.98ms
  580.           Random reads 100.72ms
  581.           -- Track to track --
  582.           Outside cylinders 33.26ms
  583.           Center  cylinders 33.15ms
  584.           Inside  cylinders 33.21ms
  585.  
  586.                   As you can see, the access times for this inexpen-
  587.           sive drive are quite good. In this case, we'll not experi-
  588.  
  589.  
  590.                                     - 10 -
  591.                                             Hard disk adjustment tools Page 11
  592.  
  593.           ment with the option byte. When we return to the main menu,
  594.           we type exit to return to DOS
  595.  
  596.           ADJUST> exit
  597.  
  598.           C>dir           < If we check the directory, we find a new file!>
  599.  
  600.  
  601.            Volume in drive C is MAIN!!!!
  602.            Directory of  C:\WORK
  603.  
  604.           .            <DIR>      1-26-87  10:07p
  605.           ..           <DIR>      1-26-87  10:07p
  606.           HDSPEED  COM      941   3-20-87  11:36a
  607.           HDISK    ROM     8192   3-21-87   5:39p < This should be "burned"
  608.           ADJUST   COM     4679   3-20-87  10:19a   into a new
  609.           HDTEST   COM     2296   3-19-87   8:55p   ROM to replace the one on
  610.           DITHER   COM      252   3-09-87  12:18a   the controller board.>
  611.           MANUAL           9076   3-20-87   3:52p
  612.                   6 File(s)   7831552 bytes free
  613.  
  614.                   In this case, we have taken a drive that was
  615.           supposed to be a 10 megabyte drive and have expanded it to
  616.           over 12 megabytes!
  617.  
  618.           Interleave:
  619.           Sector interleave is the mechanism used to improve the
  620.           throughput of most disk drives. Ideally, one would like to
  621.           be able to read or write a whole track in one revolution of
  622.           the disk. In the real world applications of disk drives,
  623.           there is seldom any requirement to read the entire contents
  624.           of a track at one time. Usually, the operating system re-
  625.           quests a read or write to one or more logical records. The
  626.           system effectively says "I want to read 5 records starting
  627.           at the 300th record". The disk drive BIOS converts these
  628.           record requests to physical tracks, sectors, and heads. It's
  629.           very likely that the first record requested may be on the
  630.           last physical sector on a track, the next record may be the
  631.           first sector on the other side of the disk platter (another
  632.           head), but at the very same track (the same cylinder).
  633.           Furthermore, the operating system may process the data from
  634.           these sectors before it asks for any more. The data proces-
  635.           sing takes a fair amount of time. If we were to use one-to-
  636.           one sector interleave where the sectors are numbered sequen-
  637.           tially one right after another, it is very likely that the
  638.           next sector requested would have already passed the read
  639.           head by the time the operating system "asked" for it. This
  640.           would mean that the disk platters would have to make a new
  641.           revolution to read the next physical sector. If you want to
  642.           read five sectors, you'd have to wait for the disk to go
  643.           around five times. This is not very efficient. If we could
  644.           arrange for the next physical sector to be available just at
  645.           the time the operating system asked for it, one could not
  646.           have to wait very long to read it. This is what sector
  647.  
  648.  
  649.                                     - 11 -
  650.                                             Hard disk adjustment tools Page 12
  651.  
  652.           interleaving does. The IBM default for sector interleaving
  653.           skips five physical sectors (5:1 interleave) for each
  654.           incremental sector on the disk. It is very possible that
  655.           this may not be the optimum interleave for your drive, BIOS,
  656.           and software.
  657.  
  658.           The way to determine the optimum sector interleave takes a
  659.           bit of time, but can really pay for itself in time saved
  660.           later on. What you do is obtain a copy of a timing program
  661.           like Peter Norton's "Stopwatch" TM.COM . This program will
  662.           record the amount of time necessary copy a group of files
  663.           between directories on your hard disk. First you create a
  664.           batch file that's something like this:
  665.  
  666.           TM /START/N
  667.           COPY *.* \JUNK
  668.           TM /STOP/N
  669.  
  670.           Save this BATCH file on a floppy. Then initialize the hard
  671.           disk using a 1:1 interleave factor. You must then FDISK it
  672.           and FORMAT it. The format operation takes a long time, but
  673.           it will be worth it. After the drive is formatted, copy the
  674.           files you saved on drive A: to the fixed disk. Copy enough
  675.           files to that it takes at least one minute to copy them all.
  676.           Then make \JUNK directory on the hard disk and copy the
  677.           files to that directory using your BATCH procedure.
  678.  
  679.           The procedure looks like this:
  680.  
  681.           C>XXX                   < This is the name of my BATCH file>
  682.           C>TM /START/N           < This is Norton's Stop watch >
  683.           C>COPY *.* \JUNK
  684.           ADJUST.COM
  685.           ADJUST.ASM
  686.           CHECKSUM.COM
  687.           DITHER.COM
  688.           HDBIOS.ROM
  689.           HDISK.ROM
  690.           HDSPEED.COM
  691.           HDSPEED.ASM
  692.           HDTEST.COM
  693.           HDTEST.ASM
  694.           MANUAL
  695.           SHIP.COM
  696.           SHIP.ASM
  697.           WPROT.ASM
  698.           WPROT.COM
  699.           INTER
  700.           XXX.BAT
  701.                  17 File(s) copied
  702.  
  703.           C>TM STOP/N
  704.                                      4:18 seconds < This is the time.>
  705.           In this case the file transfer took four minutes and
  706.  
  707.  
  708.                                     - 12 -
  709.                                             Hard disk adjustment tools Page 13
  710.  
  711.           eighteen seconds.
  712.  
  713.           Now we'll initialize the drive using an interleave of 2:1.
  714.           We then FDISK it and FORMAT it. Using the same procedure as
  715.           before, we use our batch procedure to time the copying of
  716.           files.
  717.  
  718.           C>XXX                   < This is the name of my BATCH file>
  719.           C>TM /START/N           < This is Norton's Stop watch>
  720.           C>COPY *.* \JUNK
  721.           ADJUST.COM
  722.           ADJUST.ASM
  723.           CHECKSUM.COM
  724.           DITHER.COM
  725.           HDBIOS.ROM
  726.           HDISK.ROM
  727.           HDSPEED.COM
  728.           HDSPEED.ASM
  729.           HDTEST.COM
  730.           HDTEST.ASM
  731.           MANUAL
  732.           SHIP.COM
  733.           SHIP.ASM
  734.           WPROT.ASM
  735.           WPROT.COM
  736.           INTER
  737.           XXX.BAT
  738.                  17 File(s) copied
  739.  
  740.           C>TM STOP/N
  741.                                      3:58 seconds < This is the time.>
  742.           In this case the file transfer took three minutes and fifty-
  743.           eight seconds which is still not very much better. Undaunt-
  744.           ed, we continue, this time setting the interleave factor to
  745.           3:1. After FDISK and FORMAT, the results are like this:
  746.  
  747.           C>XXX                   < This is the name of my BATCH file>
  748.           C>TM /START/N           < This is Norton's Stop watch>
  749.           C>COPY *.* \JUNK
  750.           ADJUST.COM
  751.           ADJUST.ASM
  752.           CHECKSUM.COM
  753.           DITHER.COM
  754.           HDBIOS.ROM
  755.           HDISK.ROM
  756.           HDSPEED.COM
  757.           HDSPEED.ASM
  758.           HDTEST.COM
  759.           HDTEST.ASM
  760.           MANUAL
  761.           SHIP.COM
  762.           SHIP.ASM
  763.           WPROT.ASM
  764.           WPROT.COM
  765.  
  766.  
  767.                                     - 13 -
  768.                                             Hard disk adjustment tools Page 14
  769.  
  770.           INTER
  771.           XXX.BAT
  772.                  17 File(s) copied
  773.  
  774.           C>TM STOP/N
  775.                                      3:44 seconds < This is the time.>
  776.           In this case the file transfer took three minutes and
  777.           fourty-four seconds which is still not very much better.
  778.           Undaunted, we continue, this time setting the interleave
  779.           factor to 4:1. After FDISK and FORMAT, the results are like
  780.           this:
  781.  
  782.           C>XXX                   < This is the name of my BATCH file>
  783.           C>TM /START/N           < This is Norton's Stop watch>
  784.           C>COPY *.* \JUNK
  785.           ADJUST.COM
  786.           ADJUST.ASM
  787.           CHECKSUM.COM
  788.           DITHER.COM
  789.           HDBIOS.ROM
  790.           HDISK.ROM
  791.           HDSPEED.COM
  792.           HDSPEED.ASM
  793.           HDTEST.COM
  794.           HDTEST.ASM
  795.           MANUAL
  796.           SHIP.COM
  797.           SHIP.ASM
  798.           WPROT.ASM
  799.           WPROT.COM
  800.           INTER
  801.           XXX.BAT
  802.                  17 File(s) copied
  803.  
  804.           C>TM STOP/N
  805.                                      34 seconds < This is the time>
  806.           This is NOT a typo!! It only took thirty-four seconds to
  807.           transfer all those files once the optimum interleave factor
  808.           was found! Do NOT increase the interleave factor beyond this
  809.           point, it will only increase the disk access time again.
  810.           Generally, if you start with too small an interleave factor,
  811.           you will find a point where the transfer rate will abruptly
  812.           increase. This is a lot better than starting with too great
  813.           an interleave factor and then finding that at some point it
  814.           abruptly got very poor. You would have to re-initialize the
  815.           drive again to the previously determined interleave factor.
  816.           - END -
  817.  
  818.  
  819.  
  820.  
  821.  
  822.  
  823.  
  824.  
  825.  
  826.                                     - 14 -
  827.                                             Hard disk adjustment tools Page 15
  828.  
  829.  
  830.                                     WARRANTY
  831.  
  832.           THIS SOFTWARE IS LICENSED (NOT SOLD). IT IS LICENSED TO
  833.           SUBLICENSEES, INCLUDING END-USERS, WITHOUT EITHER EXPRESS OR
  834.           IMPLIED WARRANTIES OF ANY KIND ON AN "AS-IS" BASIS.
  835.  
  836.           It is possible to completely destroy data and programs using
  837.           the Winchester Drive low-level FORMAT and EXPAND routines.
  838.           This data can never be recovered since it will be completely
  839.           overwritten.
  840.  
  841.           If you discover any "bugs" or encounter any problems with
  842.           this software that you think might be caused by problems
  843.           within the programs supplied, please contact the designer.
  844.  
  845.                           Richard B. Johnson
  846.                           2006 Broughton Drive
  847.                           Beverly, Massachusetts
  848.                           01915-1802
  849.  
  850.           If you get a "Program file is corrupt!" notice when you
  851.           attempt to run any of these utilities it means that the
  852.           program contents has changed since the distribution copy was
  853.           made. This is usually caused by "hackers" changing things
  854.           like serial numbers and copyright notices. It is possible to
  855.           patch such a program and make it work, but it is not advised
  856.           since damage might occur to your data on your disk drives.
  857.           The purpose of the program verification routine is to make
  858.           certain that you have a correct copy of the programs. These
  859.           programs are not copy-protected. Unlike copy-protection
  860.           schemes, the program verification routines are designed to
  861.           protect you, not the vendor.
  862.  
  863.  
  864.  
  865.  
  866.  
  867.  
  868.  
  869.  
  870.  
  871.  
  872.  
  873.  
  874.  
  875.  
  876.  
  877.  
  878.  
  879.  
  880.  
  881.  
  882.  
  883.  
  884.  
  885.                                     - 15 -
  886.