AMI BIOS survival guide

Edited by Jean-Paul Rodrigue

Contributors
==================================
Gordon L. Burditt (gordon@sneaky.lonestar.org)
Peter Herweijer (pieterh@sci.kun.nl)
Kajetan Hinner (uf341ea@sunmail.lrz-muenchen.de)
Piotr Karocki (yskarock@cyf-kr.edu.pl)
Brian Lee (blee@bart.conestogac.on.ca)
Aad Offerman (offerman@einstein.et.tudelft.nl)
Keith Rohrer (rohrer@fncrd8.fnal.gov)
Jerome Schneider (jls@atg.com)
Cameron Spitzer (cls@truffula.sj.ca.us)
Andy Walton (akw@ukc.ac.uk)

Version history
==================================
Version 1.0 to 1.3: December 1993 (initial postings)
Version 2.0 to 2.4: January 1994 (the first "complete" versions)
Version 2.5 and 2.6 : February 1994 (vitamin C added)
Version 2.65 and 2.7: March 1994 (no cholesterol)
Version 3.0: 16-04-94 (new prune-strawberry-cabbage flavour)
Version 3.1: 13-05-94 (friday the 13th edition)

What's new in version 3.1 (*)
==================================
- FTP archive site available for the guide.
-  A list of BIOS error messages (see section 2.4)
- Several additions to various topics (*).

Crossposted in:
==================================
comp.sys.ibm.pc.hardware, comp.sys.ibm.pc.hardware.chips,  
comp.sys.ibm.pc.hardware.misc & comp.answers (patent pending).

(*) Archive Site
==================================
The guide, along with other hardware-related FAQs, is available through
anonymous FTP at rahul.net in the pub/cameron/PC-info directory.  The
document is compressed by Gzip, available at any GNU archive sites like
gatekeeper.dec.com, in the pub/GNU directory.

What is the AMI BIOS survival guide?
==================================
BIOS settings are a frequent problem in several hardware related
newsgroups.  Did you ever experienced a system lock up or poor
performance and erratic behaviour due to improper BIOS settings? Have
you ever been let in the dark by a cryptic 5 pages badly written
motherboard manual? The answer is probably yes.  I took some initiative
and decided to edit a FAQ for the AMI BIOS (American Megatrends
Inc.).  This BIOS is, I believe, the most common.  The guide provides a
description of each BIOS functions (at least those we are aware of) and
tips for their settings.  I hope it will eventually help newbies "decipher"
BIOS settings and more advanced users "optimize" their system.  It could
even keep you from a painful visit to your local computer store!

Disclaimer and other stuff
==================================
This document is provided "as is".  The editor and contributors take no
responsabilities for any problems, damages, humiliations, world wars or
loss of sanity resulting from improper BIOS settings.  If you are in doubt,
please post a question to the comp.sys.ibm.pc.hardware.chips newsgroup
or refer to a competent computer technician.  Messing up with something
you do not understand will often get you in trouble (Who doesn't know
someone who did?).  YOU HAVE BEEN WARNED.
This guide is provided as a free reference for the usenet (internet)
community.  You may distribute it freely as long as the contents are not
altered, no fees are asked, and references to the editor and contributors
are kept.  If you are making money out of this file or posting net-wide (to
groups where it does not belong) religious babblings or green card lottery
scam: may your CPU perish by electromigration!

I want to know more...
==================================
If you have an UNSOLVED BIOS problem not described herein, please
post it to related newsgroups (like comp.sys.ibm.pc.hardware.chips),
NOT to the editor or the contributors.  You should also have a look at the
ibm.pc.hardware.* Frequently Asked Questions (FTP rtfm.mit.edu;
directory: /pub/usenet/news.answers/csiph-faq; filenames: part1 to part5)
posted regularly.  It contains a wealth of information about computer
hardware.  Look also in the comp.answers newsgroup for available FAQs. 
If you have a SOLVED problem, please send it to the editor so it can be
added to subsequent versions of this document.  Your contributions or
comments will be much appreciated.  If you want the most recent version
of this document, please e-mail the editor and tell what version you
currently have.  If a more recent version is available, it will be fowarded. 
Before doing so, please look in this newsgroup for a regular posting of this
guide.
If you want various technical information about AMI BIOS, you can find
it at the FTP site AMERICAN.MEGATRENDS.COM.  If you can afford
long distance charges, try the AMI BBS at (404) 246-8780 (or 8781, 8782,
8783).  There is also a shareware named AMISETUP that enables BIOS
settings and provides an on-line reference (for registered versions).  It can
even let you access some settings that could not be accessed otherwise. 
You can find it at SIMTEL mirror sites like FTP.WUSTL.EDU or
OAK.OAKLAND.EDU in the /systems/ibmpc/msdos/sysutil directory. 
The file name is AMISE260.ZIP.

One last thing...
==================================
I would like to thank the contributors to have taken some of their time to
write varied topics and provide enlightening feedbacks.  Some parts of this
document are still incomplete and some information may be inaccurate. 
Your feedbacks will help this document be as accurate and up to date as
possible.  I am sorry if I cannot answer to everyone or add everything that
is send to me.
I would also like to thank the following persons for providing information
on specific topics: Michiel de Vries, Andy Eskilsson, Doug Hogarth,
Reinhard Kirchner, Mirek Komon, Jim Kozma, Juha Laiho, Alain Lavoie,
Erik Mouw, Chris Pollard, Dietrich Schmidt, Hans Schrader, Loren
Schwiebert, Dan Sobel, Dave Spensley and Dmitry Stefankov.

TABLE OF CONTENT
==================================
1.0 DEFINITIONS
     1.1 BIOS
     1.2 CMOS
     1.3 Chipset
2.0 POST AND ENTERING SETUP
     2.1 A Typical AMI BIOS POST Sequence
     2.2 AMI BIOS POST Errors
     2.3 Other AMI BIOS POST Codes
     (*) 2.4 BIOS Error Messages
3.0 STANDARD CMOS SETUP
4.0 ADVANCED CMOS SETUP
5.0 ADVANCED CHIPSET SETUP
6.0 AUTO CONFIGURATION WITH BIOS DEFAULTS
7.0 AUTO CONFIGURATION WITH POWER-ON DEFAULTS
8.0 CHANGE PASSWORD
9.0 HARD DISK UTILITY
     9.1 Hard Disk Format
     9.2 Auto Detect Hard Disk
     9.3 Auto Interleave
     9.4 Media Analysis.
10.0 WRITE TO CMOS AND EXIT
11.0 DO NOT WRITE TO CMOS AND EXIT
12.0 FREQUENTLY ASKED QUESTIONS (FAQ)

1.0 DEFINITIONS
==================================
1.1 BIOS: Basic Input Output System.  Computer hardware has to work
with software, so it needs an interface with it.  The BIOS gives the
computer a little built-in starter kit to run the rest of softwares from floppy
disks (FDD) and hard disks (HDD).  The BIOS is responsible for booting
the computer by providing a basic set of instructions.  It performs all the
tasks that need to be done at start-up time: POST (Power-On Self Test,
booting an operating system from FDD or HDD).  Furthermore, it
provides an interface to the underlying hardware for the operating system
in the form of a library of interrupt handlers.  For instance, each time a
key is pressed, the CPU (Central Processing Unit) perform an interrupt to
read that key.  This is similar for other input/output devices (Serial and
parallel ports, video cards, sound cards, hard disk controllers, etc...). 
Some older PC's cannot co-operate with all the modern hardware because
their BIOS doesn't support that hardware.  The operating system cannot
call a BIOS routine to use it; this problem can be solved by replacing your
BIOS with an newer one, that does support your new hardware, or by
installing a device driver for the hardware.

1.2 CMOS: Complementary Metal Oxide Semiconductor.  To perform its
tasks, the BIOS need to know various parameters (hardware
configuration).  These are permanently saved in a little piece (64 bytes) of
CMOS RAM (short: CMOS).  The CMOS power is supplied by a little
battery, so its contents will not be lost after the PC is turned off. 
Therefore, there is a battery and a small RAM memory on board, which
never (should...) loses its information.  The memory was in earlier times
a part of the clock chip, now it's part of such a highly Integrated Circuit
(IC).  CMOS is the name of a technology which needs very low power,
so the computer's battery is not too much in use.  Actually there is not a
battery on new boards, but an accumulator (Ni_Cad in most cases).  It is
recharged every time the computer is turned on.  If your CMOS is
powered by external batteries, be sure that they are in good operating
condition.  Also, be sure that they do not leak.  It may damage the
motherboard.  Otherwise, your CMOS may suddenly "forget" its
configuration and you may be looking for a problem elsewhere.  In the
monolithic PC and PC/XT this information is supplied by setting the DIP
(Dual-In-line Package) switches at the motherboard or peripheral cards. 
 Some new motherboards have a technology named the Dallas Nov-Ram. 
It eliminates having an on-board battery: There is a 10 year lithium cell
epoxyed into the chip.

1.3 Chipset: A PC consists of different functional parts on its
motherboard: ISA (Industry Standard Architecture), EISA (Enhanced
Industry Standard Architecture) VESA (Video Enhanced Standards
Association) and PCI (Peripheral Component Interface) slots, memory,
cache memory, keyboard plug etc...  The chipset enables a set of
instructions so the CPU can work (communicate) with other parts of the
motherboard.  Nowadays most of the discrete chips; PIC (Programmable
Interrupt Controller), DMA (Direct Memory Access), MMU (Memory
Management Unit), cache, etc...  are packed together on one, two or three
chips; the chipset.  SETUP allows you to change the parameters with
which the BIOS configures your chipset.  Since chipsets of a different
brand are not the same, for every chipset there is a BIOS version.  Now
we have fewer and fewer chipsets which do the job.  Some chipsets have
more features, some less.  OPTi is such a commonly used chipset.  In
some well integrated motherboards, the only components present are the
CPU, the two BIOS chips (BIOS and Keyboard BIOS), one chipset IC,
cache memory (DRAMs, Dynamic Random Access Memory), memory
(SIMMs, Single Inline Memory Module, most of the time) and a clock
chip.

2.0 POST AND ENTERING SETUP
==================================
When the system is powered on, the BIOS will perform diagnostics and
initialize system components, including the video system.  (This is
self-evident when the screen first flicks before the Video Card header is 
displayed). This is commonly refered as POST (Power-On Self Test).
Afterwards, the computer will proceed its final boot-up stage by calling
the operating system. Just before that, the user may interupt to have access
to SETUP.
To allow the user to alter the CMOS settings, the BIOS provides a little
program, SETUP.  Mostly setup can be entered by pressing a special key
combination (DEL, ESC, CTRL-ESC, or CRTL-ALT-ESC) at boot time
(Some BIOSes allow you to enter setup at any time by pressing
CTRL-ALT-ESC).  The AMI BIOS is mostly entered by pressing the DEL
key after resetting (CTRL-ALT-DEL) or powering up the computer.   You
can bypass the extended CMOS settings by holding the 'INS' key down
during boot-up.  This is really helpful, especially if you bend the CMOS
settings right out of shape and the computer won't boot properly anymore. 
This is also a handy tip for people who play with the older AMI BIOSes with
the XCMOS setup.  It allows changes directly to the chip registers with very
little technical explanation.

2.1 A Typical AMI BIOS POST Sequence
------------------------------
a) Display some basic informations about the video card like its brand,
video BIOS version and video memory available.
b) Display the BIOS version and copyright notice in upper middle screen. 
You will see a large sequence of numbers at the bottom of the screen. 
They refer to the BIOS serial number, version and type of chipset. (*) For
versions 1986-1991 (AMIBIOS before HI-Flesh):
Reference number: ABBB-NNNN-MMDDYY-KX, where
A    =  D for BIOS with Diagnostics.
     =  S for BIOS with Setup program.
     =  E for BIOS with Extended Setup program.
BBB  =  C&T for C&T386 chipset.
     =  NET for C&T NEAT chipset.
     =  286 fpr standard 286,VLSI,G2 286 boards.
     =  SUN for SUNTAC 286 boards.
     =  PAQ for COMPAQ compatible 386 boards.
     =  INT for INTEL boards.
     =  AMI for AMI 386 motherboard.
     =  G23 for G2 386 board.
     =  ??? other n/a.
NNNN      = reference number for manufacturer.
MMDDYY    = BIOS release date.
KX        = AMI keyboard BIOS version number (X = usually
            1,2,3,etc).

(could someone provide information for recent BIOS serial numbers?)

c) Display memory count.  You will also ear tick sounds if you have
enabled it (see Memory Test Tick Sound section).
d) Once the POST have succeeded and the BIOS is ready to call the
operating system (DOS, OS/2, NT etc...) you will see a basic table of the
system's configurations:
     Main Processor:          The type of CPU identified by the BIOS. 
                              Usually Cx386DX, Cx486DX, etc..
     Numeric Processor:  Present if you have a FPU or None on the
                         contrary.  If you have a FPU and the BIOS
                         does not recognize it, see section Numeric
                         Processor Test in Advanced CMOS Setup.
     Floppy Drive A:          The drive A type.  See section Floppy drive
                              A in Standard CMOS Setup to alter this
                              setting.
     Floppy Drive B:          Idem.
     Display Type:       See section Primary display in Standard
                         CMOS Setup.
     AMIBIOS Date:       The revision date of your AMI BIOS. 
                         Useful to mention when you have
                         compatibility problems with adaptor cards
                         (notably fancy ones).
     Base Memory Size:   The number of KB of base memory. 
                         Usually 640.
     Ext.  Memory Size:  The number of KB of extended memory.

NOTE: In the majority of cases, the summation of base memory and
extended memory does not equal the total system memory.  For instance
in a 4096 KB (4MB) system, you will have 640KB of base memory and
3072KB of extended memory, a total of 3712KB.  The missing 384KB is
reserved by the BIOS, mainly as shadow memory (see Advanced CMOS
Setup).

     Hard Disk C: Type:  The master HDD number.  See Hard disk
                         C: type section in Standard CMOS Setup.
     Hard Disk D: Type:  The slave HDD number.  See Hard disk D:
                         type section in Standard CMOS Setup.
     Serial Port(s):          The hex numbers of your COM ports.  3F8
                              and 2F8 for COM1 and COM2.
     Parallel Port(s):        The hex number of your LTP ports.  378
                              for LPT1.
Right under the table, BIOS usually display the size of cache memory. 
Common sizes are 64KB, 128KB or 256KB.  See External Cache Memory
section in Advanced CMOS Setup.

2.2 AMI BIOS POST Errors
------------------------------
During the POST routines, which are performed each time the system is
powered on, errors may occur.  Non-fatal errors are those which, in most
cases, allow the system to continue the boot up process.  The error
messages normally appear on the screen.  Fatal errors are those which will
not allow the system to continue the boot-up procedure.  If a fatal error
occurs, you should consult with your system manufacturer or dealer for
possible repairs.  These errors are usually communicated through a series
of audible beeps.  The numbers on the fatal error list correspond to the
number of beeps for the corresponding error.  All errors listed, with the
exception of #8, are fatal errors.  All errors found by the BIOS will be put
into I/O port 80h.

# of Beeps          Meaning
1              DRAM refresh failure.  The memory refresh circuitry on
               the motherboard is faulty.
2              Parity Circuit failure.  A parity error was detected in the
               base memory (first 64k Block) of the system.
3              Base 64K RAM failure.  A memory failure occured
               within the first 64k of memory.
4              System Timer failure.  Timer #1 on the system board has
               failed to function properly.
5              Processor failure.  The CPU on the system board has
               generated an error.
6              Keyboard Controller 8042-Gate A20 error.  The
               keyboard controller (8042) contains the gate A20 switch
               which allows the computer to operate in virtual mode. 
               This error message means that the BIOS is not able to
               switch the CPU into protected mode.
7              Virtual Mode (processor) Exception error.  The CPU on
               the motherboard has generated an Interrupt Failure
               exception interrupt.
8              Display Memory R/W Test failure.  The system video
               adapter is either missing or Read/Write Error its memory
               is faulty.   This in not a fatal error.
9              ROM-BIOS Checksum failure.  The ROM checksum
               value does not match the value encoded in the BIOS. 
               This is good indication that the BIOS ROMs went bad.
10             CMOS Shutdown Register.  The shutdown register for the
               CMOS memory  Read/Write Error has failed.
(*)11          Cache Error / External Cache Bad. The external cache
               is faulty.

2.3 Other AMI BIOS POST Codes
------------------------------
2 short beeps: POST failed.  This is caused by a failure of one of the
               hardware testing procedures.

1 long & 2 short
beeps:         Video failure.  This is caused by one of two possible
               hardware faults.  1) Video BIOS ROM failure,
               checksum error encountered.  2) The video adapter
               installed has a horizontal retrace failure.

1 long & 3 short
beeps:         Video failure.  This is caused by one of three possible
               hardware problems.  1) The video DAC has failed.  2)
               the monitor detection process has failed.  3) The video
               RAM has failed.

1 long beep:   POST passed.  This indicates that all hardware tests
               were completed without encountering errors.

If you have access to a POST Card reader, (Jameco, etc) you can watch the
system perform each test by the value that's displayed.  If/when the system
hangs (if there's a problem)  the last value displayed will give you a good
idea where and what went wrong, or what's bad on the system board.  Of
course, having a description of those codes would be helpful, and different
BIOSes have different meanings for the codes. (could someone point out
FTP sites where we could have access to a complete list of error codes for
different versions of AMI BIOS?).

(*)2.4 BIOS Error Messages
------------------------------
This is a short list of most frequent on-screen BIOS error messages.  Your
system may show them in a different manner.  When you see any of these,
you are in trouble - Doh!   (Does someone has any additions of
corrections?)

"8042 Gate - A20 Error"  : Gate A20 on the keyboard controller
                         (8042) is not working.
"Address Line Short!"         : Error in the address decoding circuitry.
"Cache Memory Bad,
Do Not Enable Cache!"    : Cache memory is defective.
"CH-2 Timer Error"       :  There is an error in timer 2.  Several
                         systems have two timers.
"CMOS Battery State Low" : The battery power is getting low.  It
                         would be a good idea to replace the battery.
"CMOS Checksum Failure"  : After CMOS RAM values are saved, a
                         checksum value is generated for error
                         checking.  The previous value is different
                         from the current value.
"CMOS System Options
Not Set"                 : The values stored in CMOS RAM are
                         either corrupt or nonexistent.
"CMOS Display Type
Mismatch"                : The video type in CMOS RAM is not the
                         one detected by the BIOS.
"CMOS Memory Size
Mismatch"                : The physical amount of memory on the
                         motherboard is different than the amount in
                         CMOS RAM.
"CMOS Time and Date
Not Set"                 : Self evident.
"Diskette Boot Failure"  : The boot disk in floppy drive A: is corrupt
                         (virus?). Is an operating system present?
"Display Switch Not
Proper"                  : A video switch on the motherboard must
                         be set to either color or monochrome.
"DMA Error"              : Error in the DMA controller.
"DMA #1 Error"      : Error in the first DMA channel.
"DMA #2 Error"      : Error in the second DMA channel.
"FDD Controller Failure" : The BIOS cannot communicate with the
                         floppy disk drive controller.
"HDD Controller Failure" : The BIOS cannot communicate with the
                         hard disk drive controller.
"INTR #1 Error"          : Interrupt channel 1 failed POST.
"INTR #2 Error"          : Interrupt channel 2 failed POST.
"Keyboard Error"         : There is a timing problem with the
                         keyboard.
"KB/Interface Error"          : There is an error in the keyboard
                              connector. 
"Parity Error ????"      : Parity error in system memory at an
                         unknown address.
"Memory Parity Error
at xxxxx":                    : Memory failed at the xxxxx address.
"I/O Card Parity Error
at xxxxx":                    An expansion card failed at the xxxxx
                              address.
"DMA Bus Time-out"       : A device has used the bus signal for more
                         than allocated time (around 8
                         microseconds).

NOTE: If you encounter any POST error, there is a good chance that it
is an HARDWARE related problem.  You should at least verify if adaptor
cards or other removable components (simms, drams etc...) are properly
inserted before calling for help.

3.0 STANDARD CMOS SETUP
==================================
WARNING: You should have your current setup options written down
ON PAPER somewhere, preferably taped to the inside or the outside of
the case.  CMOS memory has a tendency to get erased as the battery gets
old, or become inaccessible if you forget the password.  Especially
remember the hard disk settings; they are the most important.

NOTE: There are several good CMOS saver programs out on the market,
including the PC-Tools and Norton recovery programs.  They allow a user
to save a copy of the CMOS registers to a file in case the battery dies, or they
mess around with the settings, etc...

Date (mn/date/year) : To change the date of the system clock.
Time (hour/min/sec) : To change the time of the system clock.

Hard disk C:
type           : The number of your primary (master) hard drive. 
               Most of the time this number is 47, which means that
               you must specify the drive specs according to your hard
               drive manual:
               Cyln  : The number of cylinders on your hard disk.
               Head : The number of heads.
               WPcom : Write Precompensation.  Older HDD's have
               the same number of sectors per track at the innermost
               tracks as at the outhermost tracks.  This means that the
               data density at the innermost tracks is higher and thus
               the bits are lying closer together.  Normally the data is
               written like this:
                    +   +   -   +   -   +   +   +   -   -   -   +
               Areas having the same direction tend to float away from
               eachother and areas having opposite direction tend to
               float towards eachother:
                    +    +  -   +   -  +    +    + -    -    - +
               making the data less reliable after some time.  To avoid
               this, starting from the WP cylinder, bits are written on
               the surface like this:
                    + +    -   +   -    +  +  +     -  -  -     +
               making your data last longer.  Starting with this Cyl#
               until the end of Cyl#s the writing starts earlier on the
               disk.  In modern HDs (all AT-BUS and SCSI, Small
               Computer Systems Interface) this entry is useless.  Set
               it either to -1 or max Cyln.  For IDE (Integrated Device
               Electronics) HDD's it is not necessary to enter a WP
               cylinder.  The IDE HDD will ignore it for it has its own
               parameters aboard.
               LZone : The address of the landing zone.  Same as
               WPcom.  Used in old HDs without an auto-parking
               feature (MFM, Modified Frequency Modulated, or
               RLL, Run Length Limited).  Set it to 0 or max Cyl#.
               Sect  : The number of sectors per track.
               Size  : This is automatically calculated according the
               number of cylinders, heads and sectors.  It is in
               megabytes.

NOTE: There is a shareware program called ANYDRIVE that will allow
you to set up hard drive geometries not supported in your BIOS.  This
should be available on your favourite local BBS (Any internet FTP site for
this one?).  Note that it only sets the correct geometry, many older BIOSes
have timing problems with IDE drives and this type of problem will not
be helped by ANYDRIVE. (*) You can also use the freeware program
HD-MBOOT from the archive file DSUTIL12.ZIP on the Internet:
SIMTEL20 or its mirrors, and GARBO FTP-sites in the directory
/MSDOS/TURBOPAS or PC/TURBOPAS.


Hard disk D:
type           : The number of your secondary (slave) hard drive. 
               Same procedure than above.  Jumpers must be set for an
               hard drive to perform as slave.  Please refer to your
               hard drive manual.  You might also want to refer to the
               hard disk data file frequently posted to
               comp.sys.ibm.pc.hardware.

Floppy drive A : The type of floppy drive installed for drive A. 
               Frequent configurations are 1.44 MB (3 1/2 inches), or
               1.2 MB (5 1/4).  Newer systems have also a 2.88 MB
               (3 1/2) setting.

Floppy drive B : The type of floppy drive installed for drive B.

Primary display     : The type of displaying standard you are using.  The
                    most frequent is VGA/PGA/EGA.  Modern computers
                    have VGA (Video Graphics Array).  If you have an
                    older black/white display select Mono or Hercules, if
                    your Video adapter card is text only, select MDA.

Keyboard       : Installed.  If 'not installed' this option sets the BIOS to
               pass the keyboard test in the POST, allowing to reset a
               PC without a keyboard (file server, printer server, etc.),
               without the BIOS producing a keyboard error.

4.0 ADVANCED CMOS SETUP
==================================
WARNING: May vary according to your system and your BIOS version. 
Some functions may not be present or the order and name may be
different.
ADDITIONAL WARNING: Know *exactly* what you are doing.  Some
configurations may keep your computer off from booting.  If that's the
case: Switch the power off.  Turn your computer on *while* keeping the
DEL key pressed.  Some mainboards will come up again.  If it still doesn't
boot, consult your motherboard manual.  Look for a "forget CMOS
RAM" jumper.  Set it.  Try it again.  If it still doesn't boot, ask a friend
or post to this newsgroup.  You are permitted to panic. See note in section
3.0.

Typematic Rate
Programming              : Disabled.  It enables the typematic rate
                         programming of the keyboard.  Not all
                         keyboards support this! The following two
                         entries specify how the keyboard is
                         programmed if enabled.

Typematic Rate Delay
(msec)                   : 500.  The initial delay before key
                         auto-repeat starts.  I.e.  how long you've
                         got to press a key before it starts repeating.

Typematic Rate (Chars/Sec)    : 15.  It is the frequency of the auto-repeat
                              i.e.  how fast a key repeats.

Above 1 MB Memory Test   : If you want the system to check the
                         memory above 1 MB for errors.  Disabled
                         recommended for faster boot sequence. 
                         The HIMEM.SYS driver for DOS 6.2 now
                         verifies the XMS (Extended Memory
                         Specification), so this test is redundant. 
                         Alternatively, you can enable this test and
                         disable HIMEM.SYS from doing so. (*) It
                         is preferrable to use the XMS test provided
                         by HIMEM.SYS since it is operating in the
                         real environment (where user wait states
                         and other are operational).

Memory Test Tick Sound   : Enabled recommended.  It gives an audio
                         record that the boot sequence is working
                         properly.    Plus, it's aural confirmation of
                         your CPU clock speed/Turbo switch setting
                         (for trained users!).

Memory Parity Error
Check          : Enabled recommended.  Additional feature to test bit
               errors in the memory.  All (or almost all) PC's check
               their memory during operation.  Every byte in memory
               has another ninth bit, that with every write access is set
               in such way that the parity of all bytes is odd.  With
               every read access the parity of a byte is checked for this
               odd parity.  If a parity error occurs, the NMI (Non
               Maskable Interrupt), an interrupt you mostly cannot
               switch off, so the computer stops his work and displays
               a RAM failure) becomes active and forces the CPU to
               enter an interrupt handler, mostly writing something
               likes this on the screen: PARITY ERROR AT
               0AB5:00BE SYSTEM HALTED.  On some
               motherboards you can disable parity checking with
               standard memory.  Enabled to be sure data from
               memory are correct.  Disable only if you have 8-bit
               RAM, which some vendors use because it's 10%
               cheaper.  If you own a Gravis Ultrasound Soundcard
               (GUS), it's imperative that this is enabled; otherwise the
               Sound Blaster emulation won't work(!).

Hard Disk Type 47
RAM Area  :  The BIOS has to place the HD type 47 data
          somewhere in memory.  You can choose between DOS
          memory or PC BIOS (or peripheral card) memory area
          0:300.  DOS memory is valuable, you only have 640KB
          of it.  So you should try to use 0:300 memory area
          instead.  There may be some peripheral card which
          needs this area too (soundcard, network, whatever).  So
          if there are some fancy cards in your PC, check the
          manuals if they're using the 0:300 area.  But in most
          cases this will work without checking. (*) This is
          redundant if BIOS is shadowed (may be not in very old
          BIOSes).  The RAM area can be verified by checking
          address of int41h and int46h.  These are fixed disk
          parameters blocks. If they point to the BIOS area, BIOS
          made modification of parameters before mapping RAM
          there.

Wait for  If
Any Error           : When the boot sequence encounter an error it
                    asks you to press F1.  Only at 'non-fatal' errors. 
                    If disabled, system print warning and continues to
                    boot without waiting for you to press any keys. 
                    Enabled recommended.

System Boot Up Num
Lock                : Specify if you want the Num Lock key to be
                    activated at boot up.  Some like it, some do not. 
                     MS-DOS (starting with 6.0, maybe earlier)
                    allows a "NUMLOCK=" directive in config.sys,
                    too; if someone turns the BIOS flag off but has
                    NUMLOCK=ON in their configuration file, they
                    may be a bit perturbed.

Numeric Processor
Test                : Enabled if you have a math coprocessor (built in
                    for the 486DX and 486DX2 family).  Disabled if
                    you don't (386SX, 386DX, 486SX, 486SLC and
                    486DLC).  If disabled, your FPU (Floating Point
                    Unit, if present) isn't recognized as present by the
                    system.

Weitek Coprocessor  : If you have Weitek FPU, enable.  If you
                    haven't, disable.  Weitek uses some RAM address
                    space, so memory from this region must be
                    remapped somewhere else.

Floppy Drive Seek at Boot     : Power up your A: floppy drive at boot. 
                              Disabled recommended for faster boot
                              sequence and for reduced damage of heads.

System Boot
Sequence       : What drive the system checks first for an operating
               system.  C:, A: recommended for faster boot sequence,
               or to not allow any user to enter your system by booting
               from the FDD if your autoexec.bat starts with a login
               procedure.  A:, C: if the person who uses the computer
               is someone who don't knows how to setup CMOS. 
               Because if something fails and a boot floppy won't
               work, many users won't know what to do next. 
               However, be careful.  You had better know this setting
               is turned on and be prepared to turn it off if your hard
               disk boot track becomes corrupted, but not obviously
               absent, since you otherwise won't be able to boot from
               floppy.  Also, it's easy to fool yourself into thinking you
               booted from a known virus-free floppy when it actually
               booted from the (virus-infested) hard drive.

System Boot Up
CPU speed : Specify at what processor speed the system will boot
          from. Usual settings are HIGH and LOW. HIGH
          recommended.  If you encounter booting problems, you
          may try LOW.

External Cache
Memory         : Enabled if you have cache memory.  This is a frequent
               error in CMOS setup.  If Disabled when you have cache
               memory, the system performance decreases
               significantly.  Most systems have from 64 to 256KB of
               external cache.  It is a cache between the CPU and the
               system bus.  If Enabled when the system does not have
               cache memory, the system will freeze most of the time.

Internal Cache
Memory         : Enable or disable the internal cache memory of the
               CPU.  Disabled for 386 and Enabled for 486 (1 to 8KB
               of internal CPU cache).  If the CPU does not have
               internal cache, the system may freeze if enabled.

NOTE: In many AMI BIOSes, the two previous options are implemented
either as separate Internal and External Enable/Disable options, or as a
single option (Cache Memory  : Disabled/Internal/Both).

Fast Gate A20 Option     : A20 refers to the first 64KB of extented memory
                         (A0 to A19) known as the "high memory area". 
                         This option uses the fast gate A20 line, supported
                         in some chipsets, to access memory above 1 MB. 
                         Normally all RAM access above 1 MB is handled
                         through the keyboard controller chip.  Using this
                         option will make the access faster than the normal
                         method.  This option is very useful in networking
                         operating systems.

Shadow Memory
Cacheable           : You increase speed by copying ROM to RAM. 
                    Do you want to increase it by cacheing it? Yes or
                    no - see Video BIOS Area cacheable.  Yes
                    recommended.

Password Checking
Option              : Setup password to have access to the system and
                    / or to the setup menu.  Good if the computer is to
                    be shared with several persons and you don't want
                    anyone (friends, sister etc...) to mess up with the
                    BIOS.  Default password: AMI (if you have AMI
                    BIOS).  Award: BIOSTAR (Note: I even know a
                    computer store that kept standard award BIOS
                    configuration with their systems because they
                    didn't know what the award default password
                    was!).

Video ROM Shadow
C000,16K       : Memory hidden under the "I/O hole" from 0x0A0000
               to 0x0FFFFF may be used to "shadow" ROM (Read-
               Only Memory).  Doing so, the contents of the ROM are
               copied into the RAM and the RAM is used instead. 
               Video BIOS is stored in slow EPROM (Erasable
               Programmable Read-Only Memory) chips (120 to 150ns
               of access time).  Also, ROM is 8 or 16 bit while RAM
               32 bit wide access.  With Shadow on, the EPROM
               content is copied to RAM (60 to 80ns of access time
               with 32 bit wide access).  Therefore perfomance
               increases significantly.  Only sensible on EGA/VGA
               systems.  Enabled recommended.  If you have flash
               BIOS, you can disabled it.  Flash BIOS enable access at
               speeds similar to memory access so you can use the
               memory elsewhere.  However, flash BIOS is still only
               accessing it at the speed of the bus (ISA, EISA or
               VLB).  On systems where the BIOS automatically steals
               384k of RAM anyway, it shouldn't hurt to enable
               shadowing even on flash ROM.  One side effect is that
               you will not be able to modify the contents of flash
               ROM when the chip is shadowed.  If you reconfigure an
               adapter which you think might have flash ROM, and
               your changes are ignored, or of course if it gives you an
               error message when you try to change them, you'll need
               to temporarily disable shadowing that adapter.  On
               (S)VGA you should enable both video shadows.  Some
               video cards maybe using different addresses than C000
               and C400.  If it is the case, you should use supplied
               utilities that will shadow the video BIOS, in which case
               you should disable this setting in the CMOS.  Video
               BIOS shadowing can cause software like XFree86 (the
               free X Window System) to hang.  They should be
               probably be disabled if you run any of the 386 unixes.

NOTE: Some cards map BIOS or other memory not only in the usual
a0000-fffff address range, but also just below the 16MB border or at other
places.  The BIOS (for PCI buses only?) now allows to create a hole in the
address range where the card sits.  The hole may be enabled by giving an
address, then a size is requested in power of 2, 64k - 1MB.

Video ROM Shadow C400,16K     : Same than previous, except it is for
                              another segment of video memory. 
                              Enabled recommended.

Adaptor ROM Shadow
C800,16K            : Disabled.  Those addresses (C800 to  EC00) are
                    for special cards, e.g.  network and controllers. 
                    Enable only if you've got an adapter card with
                    ROM in one of these areas.  It is a BAD idea to
                    use shadow RAM for memory areas that aren't
                    really ROM, e.g.  network card buffers and other
                    memory-mapped devices.  This may interfere
                    with the card's operation.  To intelligently set
                    these options you need to know what cards use
                    what addresses.  Most secondary display cards
                    (like MDA and Hercules) use the ROM C800
                    address.  Since they are slow, shadowing this
                    address would improve their performance.  An
                    advanced tip: in some setups it is possible to
                    enable shadow RAM *without* write-protecting
                    it; with a small driver (UMM) it is then possible
                    to use this 'shadow RAM' as UMB (Upper
                    Memory Block) space.  This has speed advantages
                    over UMB space provided by EMM386.

Adaptor ROM Shadow CC00,16K   : Disabled.  Some hard drive adapters
                              use that address.
Adaptor ROM Shadow D000,16K   : Disabled.   D000 is the default
                              Address for most Network Interface
                              Cards.
Adaptor ROM Shadow D400,16K   : Disabled.  Some special controllers
                              for four floppy drives have a BIOS
                              ROM at D400..D7FF.
Adaptor ROM Shadow D800,16K   : Disabled
Adaptor ROM Shadow DC00,16K   : Disabled
Adaptor ROM Shadow E000,16K   : Disabled.   E000 is a good "out of
                              the way" place to put the EMS page
                              frame.  If necessary.
Adaptor ROM Shadow E400,16K   : Disabled
Adaptor ROM Shadow E800,16K   : Disabled
Adaptor ROM Shadow EC00,16K   : Disabled.  SCSI controller cards
                              with their own BIOS could be
                              accalerated by using Shadow RAM. 
                              Some SCSI controllers do have some
                              RAM areas too, so it depends on the
                              brand.

NOTE: Some SCSI adapters do not use I/O-Adresses.  The BIOS address
range contains writable addresses, which in fact are the I/O-ports.  This
means: this address must not be shadowed and even not be cached.

System ROM Shadow F000,64K    : Same thing as Video shadow, but
                              according to the system bios (main
                              computer BIOS).  Enabled
                              recommended for improved
                              performance.  System BIOS
                              shadowing and caching should be
                              disabled to run anything but MSDOS.

NOTE: On some BIOS versions (probably newer ones) the shadow
choices are in 800(hex)-byte increments.  For instance, instead of two
Video ROM Shadow segments of 16K (C400 and C800), you will have
one 32K segment.  Same thing for Adaptor ROM Shadow segments.

BootSector Virus
Protection          : It is not exacly a virus protection.  All it does is
                    whenever your boot sector is accessed for writing, it
                    gives a warning to the screen allowing you to disable the
                    access or to continue.  Extremely annoying if you use
                    something like OS/2 Boot Manager that needs to write
                    to it.  It is completely useless for SCSI or ESDI
                    (Enhanced Small Device Interface) drives as they use
                    their own BIOS on the controller.  Disabled
                    recommended.  If you want virus protection, use a TSR
                    (Terminate and Stay Resident) virus detection (Norton,
                    Central Point, etc...).  Scan by Macfee is also a good
                    idea.  Available on most FTP servers, it is a shareware.

5.0 ADVANCED CHIPSET SETUP
==================================
WARNING: May vary according to your system and your BIOS version. 
Be sure of what you are doing!

Hidden Refresh : Allows the RAM refresh memory cycles to take place
               in memory banks not used by your CPU at this time,
               instead or together with the normal refresh cycles,
               which are executed every time a certain interrupt
               (DRQ0 every 15 msecs) is called by a certain timer
               (OUT1).  Every time it takes 2 to 4 msecs for the
               refresh.  One refresh cycle every ~16 us refreshes 256
               rows in ~ 4ms.  Each refresh cycle only takes the
               equivalent of one memory read or less, as CAS
               (Column Address Strobe) is not needed for a refresh
               cycle.  Some RAMs can do it, some not.  Try.  If the
               computer fails, turn it off.  Enabled recommended.  
               There are typically 3 types of refresh schemes: cycle steal,
               cycle stretch, or hidden refresh.  Cycle steal actually steals
               a clock cycle from the CPU to do the refresh.  Cycle
               stretch actually delays a cycle from the processor to do
               the refresh.  Since it only occurs every say 4ms or so, it's
               an improvement from cycle steal.  We're not really
               stealing a cycle, only stretching one.  Hidden refresh
               typically doesn't stretch or steal anything.  It's usually tied
               to DTACK (Data acknowledge) or ALE (Address Latch
               Enable) or some other signal relating to memory access. 
               Since memory is accessed ALL of the time, ie ram, rom,
               etc. it's easy to synchronize the the refresh on the falling
               edge of this event.  Of course, the system performance is
               at its optimum efficiency, refresh wise sinces we're not
               taking clock cycles away from the CPU.

Slow Refresh   : Causes RAM refresh to happen less often than usual. 
               This increases the performance slightly due to the
               reduced contention between the CPU and refresh
               circuitry, but not all DRAMs necessarily support these
               reduced refresh rates (in which case you will get parity
               errors and crashes).

Concurrent Refresh  : Both the processor and the refresh hardware
                    have acces to the memory at the same time.  If
                    you switch this off, the processor has to wait until
                    the refresh hardware has finished (it's a lot
                    slower).  Enabled recommended.

Single ALE Enable   : ALE (Address Latch Enable) is a pin on your
                    PC-bus that is active each time there is an address
                    on the bus.  May slow the video bus speed is
                    enabled.  Still very obscure???

Keyboard Reset Control   : Enable Ctrl-Alt-Del warm reboot. 
                         Enabled recommended for more control
                         over your system.

AT BUS Clock
Selection : Gives a division of the CPU clock so it can reach the ISA -
          EISA bus clock.  An improper setting may cause significant
          decrease in performance.  The settings are in terms of CLK/x,
          (or CLKIN/x) where x may have values like 2, 3, 4, 5, etc. 
          CLK represents your processor speed, with the exception that
          clock-multiple processors need to use the EXTERNAL clock
          rate, so a 486DX33, 486DX2/66, and 486DX3/99 all count as
          33.  You should try to reach 8.33 Mhz (that's the old bus
          clock of IBM AT; there may be cards which could do higher,
          but it's not highly recommended).  On some motherboards,
          the AT bus speed is 7.15 Mhz.  On new BIOS versions, there
          is an AUTO setting that will look at the clock frequency and
          determine the proper divider.
                    CPU Speed      Appropriate setting
                    16                       CLK/2
                    25 or DX2/50             CLK/3
                    33, DX2/66 or DX3/99     CLK/4
                    40 or DX2/80             CLK/5
                    50 or DX2/100            CLK/6
          You can try other settings to increase performance.  If you
          choose a too small divider (CLK/2 for a DX33) your system
          may hang.  For a too big divider (CLK/5 for a DX33) the
          performance of ISA cards will decrease.  This setting is for
          data exchange with ISA cards, NOT VESA cards which run
          at CPU bus clock speeds: 25Mhz, 33Mhz and higher.  If your
          ISA cards are fast enough to keep up, it is possible to run the
          bus at 12 Mhz.  Note that if you switch crystals to overclock
          your CPU, you are also overclocking the ISA bus unless you
          change settings to compensate.  Just because you can
          overclock the CPU doesn't mean you can get away with
          overclocking the ISA bus.  It might just be one card that
          causes trouble, but one is enough.  It might cause trouble even
          if you aren't using it by responding when it shouldn't.

Fast AT Cycle  : If enabled, may speed up transfer rates with ISA
               cards, notably video.  ???

Fast Decode
Enable    : Refers to some hardware that monitors the commands sent
          to the keyboard controller chip.  The original AT used special
          codes not processed by the keyboard itself to control the
          switching of the 286 processor back from protected mode to
          real mode.   The 286 had no hardware to do this, so they
          actually have to reset the CPU to switch back.  This was not
          a speedy operation in the original AT, since IBM never
          expected that an OS might need to jump back and forth
          between real and protected modes.  Clone makers added a few
          PLD chips to monitor the commands sent to the keyboard
          controller chip, and when the "reset CPU" code was seen, the
          PLD chips did an immediate reset, rather than waiting for the
          keyboard controller chip to poll its input, recognize the reset
          code, and then shut down the CPU for a short period.  This
          "fast decode" of the keyboard reset command allowed OS/2
          and Windows to switch between real and protected mode
          faster, and gave much better performance.  (early 286 clones
          with Phoenix 286 BIOS had this setting to enable/disable the
          fast decode logic.) On 386 and newer processors, the fast
          decode is probably not used, since these CPUs have hardware
          instructions for switching between modes.  There is another
          possible definition of the "Fast Decode Enable" command. 
          The design of the original AT bus made it very difficult to mix
          8-bit and 16-bit RAM or ROM within the same 128K block of
          high address space.  Thus, an 8-bit BIOS ROM on a VGA
          card forced all other peripherals using the C000-Dfff range to
          also use 8 bits.  By doing an "early decode" of the high
          address lines along with the 8/16 bit select flag, the I/O bus
          could then use mixed 8 and 16 bit peripherals.  It is possible
          that on later systems, this BIOS flag controls the "fast decode"
          on these address lines.

Extended I/O Decode : The normal range of I/O addresses is 0-0x3ff;
                    10 bits of I/O address space.  Extended
                    I/O-decode enables wider I/O-address bus.  The
                    CPU(s) support a 64K I/O space, 16 address
                    lines.  Most motherboards or I/O adapters can be
                    decoded only by 10 address bits.

(*)I/O Recovery Time     : When enabled, more I/O wait states are
                         inserted.  A transfer from IDE harddrive to
                         memory happens without any handshaking,
                         meaning the data has to be present (in the cache
                         of the harddisk) when the CPU wants to read
                         them from an I/O Port.  This is called PIO
                         (Programmed I/O) and works with a REP INSW
                         assembler instruction.  Now I/O Recovery Time
                         enabled adds some wait states to this instruction. 
                         When disabled, the harddrive is a lot faster.  Note
                         that there is a connection between I/O Recovery
                         Time and AT BUS Clock Selection.  For
                         example, if the AT BUS Clock is set to 8 MHZ
                         and you have a normal harddisk, I/O Recovery
                         Time can be turned off, resulting in a higher
                         transfer rate from harddisk.

Memory Read
Wait State          : Wait states is for RAM which aren't fast enough for
                    the computer.  On a 486, 1 or more wait states are often
                    required for RAM with 80ns or higher access time. 
                    And, depending on the processor and motherboard, also
                    for lower than 80ns access time.  The less wait states,
                    the better.  Consult your manual.  If wait states are too
                    low, a parity error will occur.  For 386 or 486
                    non-burst memory access cycle takes 2 clock ticks.  A
                    *rough* indication of RAM speed necessary for 0 wait
                    states is 2000/Clock[MHz] - 10 [ns].  For a 33Mhz
                    processor, this would give 50ns of access time required. 
                    The number of wait states necessary is *approximately*
                    (RamSpeed[ns] +10) * Clock[MHz] /1000 - 2.  For
                    70ns RAM and a 33Mhz processor (very standard
                    configuration), this would give roughly 1 wait state. 
                    But this really is dependent on chipset, motherboard and
                    cache design, CPU type and whether we talk about
                    reads or writes.  Take these formulas with a large grain
                    of salt.  You can find out the access time of your RAM
                    chips by looking at their product numbers.  Mostly at
                    the end there is a 70, 80, 90, or even 60.  If 10 stands
                    there, it means 100 ns.  Some RAM chips also have an
                    explicitly written speed in ns.  The RAM you buy these
                    days mostly have 70ns or 60ns.

Memory Write Wait State  : Same as above.

Note: In some BIOSes, these two options are combined as 'DRAM Wait
State'.   In that case, the number of read & write wait states is necessarily
equal.

Post Write Control  : ???

CAS Pulse Width     :  Column Address Strobe.  A DRAM parameter. 
                    ???

RAS Precharge Time  : Row Address Strobe.  ???

RAS to CAS Delay    : ???

Cache Read Option   : Often also "SRAM Read wait state", (SRAM:
                    Static Random Access Memory) taking simple
                    integer values, or "SRAM Burst", taking 2-1-1-1,
                    3-1-1-1 or 3-2-2-2.  This determines the number
                    of wait states for the cache RAM in normal and
                    burst transfers (the latter for 486 only).  The
                    lower you computer can support, the better.

Cache Write Option  : Same thing as memory wait states, but according
                    to cache ram.

Non-Cacheable
Block-1 Size   : Disabled.  The Non-Cacheable region is intended for
               a memory-mapped I/O device that isn't supposed to be
               cached.   For example, some video cards can present all
               video memory at 15 meg - 16 meg so software doesn't
               have to bank-switch.  If the non-cacheable region covers
               actual RAM memory you are using, expect a significant
               performance decrease for accesses to that area.  If the
               non-cacheable region covers only non-existent memory
               addresses, don't worry about it.  If you dont want to
               cache some memory you can exclude 2 regions of
               memory.  There are *good* reasons not to cache some
               memory areas.  For example, if the memory area
               corresponds to some kind of buffer memory on a card
               so that the card may alter the contents of this buffer
               without warning the cache to invalidate the
               corresponding cache lines.  Some BIOSes take more
               options than enabled /disabled, namely Nonlocal
               /Noncache /Disabled (VLB only?).

Non-Cacheable Block-1 Base    : 0KB.  Enter the base address of the
                              area you don't want to cache.  
Non-Cacheable Block-2 Size         : Disabled.
Non-Cacheable Block-2 Base    : 0KB.  
Cacheable RAM
Address Range  : Usually chipsets allow memory to be cached just up to
               16 or 32 MB.  This is to limit the number of bits of a
               memory address that need to be saved in the cache
               together with its contents.  If you only have 4MB of
               RAM, select 4MB here.  The lower the better, don't
               enter 16MB if you only have 8MB installed!

Video BIOS Area
Cacheable      : To cache or not to cache video BIOS.  You should try
               what is better - video access is faster with 'enabled', but
               cache has its size.  With an "accelerated" video card it
               may be necessary to make the video RAM region
               non-cacheable so the CPU can see any changes the
               drawing engine makes in the frame buffer.

6.0 AUTO CONFIGURATION WITH BIOS DEFAULTS
==================================
The BIOS defaults are the ones that are tuned for your
motherboard/chipset, but give a reasonable chance of getting into POST. 
Usually these settings are a good start to fine tune your system.  If you did
something wrong and don't know what, select this.  It will replace your
BIOS settings by default values.  You will have to start all over again.  Be
sure to know your system's configuration.  This option does *not* alter
the date and harddisk & floppy disk configuration in the Standard CMOS
setup, so in general you can expect your system to boot without problems
after selecting this.

7.0 AUTO CONFIGURATION WITH POWER-ON DEFAULTS
==================================
When powering on, the BIOS puts the system in the most conservative
state you can think of.  Turbo off, all caches disabled, all wait states to
maximum, etc...  This is to make sure that you can always enter BIOS
setup.  Useful if the settings obtained by selecting AUTO
CONFIGURATION WITH BIOS DEFAULTS fail.  If the system does
not work with these values, it's time to panic: the problem maybe
hardware related (DIP switches, cards not inserted properly or worst,
something broken).

8.0 CHANGE PASSWORD
==================================
Enable you to change the active password.  The default is no password.
WARNING: Remember your password!!! Write it down somewhere!!!
Ask yourself: Do I really need to set a password to access my system
and/or the BIOS? (is your brother/sister/kid/employee that dangerous?) If
security is of some minor concern to you, disabled recommended.    Why
not only password protect (or encrypt) some critical files (personal
finances, juicy love letters, client information databases, etc...)?  If you
lose your password, you will have to erase your CMOS memory (see
FAQ).

9.0 HARD DISK UTILITY
==================================
9.1 Hard Disk Format
------------------------------
Will format your hard disk so it can receive new partitions.  WARNING:
IT WILL SMASH EVERYTHING ON YOUR HARD DISK!!! USE
WITH CAUTION.  I lot of inexperienced users have lost their sanity with
this one.  Several computer stores have made extra money with it! 
There's no need to do this unless you experience errors or if you want to
change the interleave.  DON'T TOUCH THIS IF YOU'VE GOT AN IDE
DRIVE.  It will perform a low level format and probably SCRAP your
IDE hard drive.  IDE means AT-Bus, the standard drive type nearly
everyone has now.  Also SCSI or ESDI drives shouldn't be low-level
formatted.  The new drives actually don't perform the low level format,
but some old AT-Bus (IDE) drives you can scratch with this...  This entry
is only sensible for old MFM or RLL hard disks! Please refer to your hard
disk manual to see how or if your hard disk can be low level formatted. 
Don't tell us we did not warn you.
Many manufacturers provide utilities to low level format their IDE drives
(or any other types).  Please refer to the
comp.sys.ibm.pc.hardware.storage FAQ for more technical information
about this procedure.  If normal (high level) hard disk formatting is
required, you can use DOS FDISK to first erase and create partitions and
then use FORMAT.  It is also a good idea when you hard disk becomes
unaccessible to see if it is just the system files that are corrupted.  Most of
the time, it is the case.  SYS will do the job of replacing system files. 
Several packages (PC-Tools, Norton, etc...) provide utilities for repairing
"damaged" HDD and FDD. Therefore, low level format is always of
LAST RESORT when you encounter HDD problems.

9.2 Auto Detect Hard Disk
------------------------------
Handy when you "forgot" the specs of your hard drive.  The BIOS will
detect the number of cylinders, heads and sectors on your hard disk.
NOTE: In some BIOS versions, this option in the main SETUP menu.

9.3 Auto Interleave
------------------------------
Determines the optimum interleave factor for older hard disks.  Some
controllers are faster than others, and you don't want the sectors laid out
so reading consecutive sectors usually results in just missing the sector you
wanted and having to wait a whole disk rotation for it to come around
again.  On modern ones, it's always 1:1 (and even if it wasn't, you cannot
reformat anyway).
Interleaving is specified in a ratio, n:1, for small positive integers n. 
Basically, it means that the next sector on the track is located n positions
after the current sector.  The idea is that data on a hard drive might spin
past the heads faster than the adapter can feed it to the host.  If it takes you
more than a certain amount of time to read a sector, by the time you're
ready for the next sector, the heads will have passed it already.  If this is
the case, the interleave is said to be "too tight".  The converse, where the
CPU spends more time than necessary waiting for the next sector to spin
under the heads, is too "loose" of an interleave.  Clearly, it is better to
have too loose an interleave than too tight, but the proper interleave is
better still.  Especially since any controller with read-ahead cacheing can
pull the whole track into its buffer, no matter how slow the CPU is about
fetching the data down.
The 1:1 interleave arranges the sectors on a track as follows:
 0 1 2 3 4 5 6 7 8 9 a b c d e f g (17-sectors, using base 17 for
convenience, this is clearly the in-order arrangement, one after another)
This is 2:1 interleaving:
 0 9 1 a 2 b 3 c 4 d 5 e 6 f 7 g 8
The CPU has a whole sector's worth of time to get the a sector's data
taken care of before the next sector arrives.  It shows which logical sector
goes in each physical sector.
Anyway, an n:1 interleave restricts the transfer rate to 1/n the speed of a
1:1 interleave (which is better than 1 revolution per sector if the interleave
is too tight!).  No modern PC should require interleaving.  Only MFM and
RLL (maybe also ESDI) and floppy drives which are capable of it (you
could format a 1.44 meg floppy to 21 sectors/track, which would require
a 2:1 interleave to not exceed the 500 mbps speed of the controller...but
why?).

9.4 Media Analysis.
------------------------------
Scan the hard disk for bad blocks.  It is performing a LOW LEVEL
FORMAT on the track where bad sector is encountered to mark that
sector as a bad.  It could cause damage on user data, even if scanning
itself is non-destructive (also on MFM, RLL disks).  Therefore, DON'T
USE this option to on AT-Bus (IDE), SCSI or ESDI drives.  These drives
store the bad block data themselves, so you don't have to tell them or scan
the media!  Recommendation: use a media analysis program provided by
an utility package or your hard drive manufacturer.

10.0 WRITE TO CMOS AND EXIT
==================================
Save the changes you made in the CMOS.  You must do that to
permanently keep your configuration.

11.0 DO NOT WRITE TO CMOS AND EXIT
==================================
If you are not sure of the changes you made in the CMOS settings, use this
option to exit safely.

12.0 FREQUENTLY ASKED QUESTIONS (FAQ)
==================================
1) How do I clear the BIOS memory?
a) Disconnect battery.
b) Insert appropiate jumper (see mainboard documentation, near battery).
Sometimes this is possible with DIP switches on the motherboard. 
Sometimes (if not), you will have to remove the battery.  And sometimes
(if no DIP's and no removable battery, and not willing to desolder the
battery), you can short the battery with a resistor to lower the current
available for the CMOS.
This is only recommendable as a very last option.  The NiCad cells often
employed have a very low internal resistance, so that the resistor will have
to be of very low value for the voltage to drop significantly.  The
corresponding current would be quite high, which is not very good for
battery life.  A better option would be to use a resistor to discharge the
battery.  Obviously, this only makes sense when you have a NiCad cell
(which will be recharged every time you turn the computer on) as opposed
to a lithium cell (which cannot be recharged).  In the former case, a
resistor of 39 Ohm will discharge the battery in under half an hour
relatively safely.
Another good way to discharge the NiCad is to put a 6 volt lantern lamp
across it, and let it discharge completely.  Not only does it provide an
effective load, it also gives a visual indication of the charge state.  It's a good
way to prevent "ghost memory" that's so common to NiCads.  Metal Nickel
Hydride batteries are now being seen in some systems.  They don't have this
problem and they are more $$.

2) Can I upgrade my BIOS?
Most BIOSes are specifically designed for a motherboard and its chipset. 
Therefore, on rare occasions you can upgrade your BIOS for a newer
version.  It is often less troublesome to buy a new motherboard that comes
with its own BIOS and transfer your CPU (memory, cache memory and
adaptor cards...) than start hunting around for a new BIOS chip.  I know
very few computer stores who sell BIOS chips separately.  However, it is
possible to upgrade your BIOS so it may support new hardware.  By
browsing in computer magazines (like Computer Shopper, PC Magazine,
etc...) you will find adds on companies that specialize on that sort of
thing.  The information they need is the Serial Number for the BIOS chip. 
It is the *long* number that prints out when you boot up.  It includes the
BIOS date, the chipset, etc. (see section 2.0).  The price tag can vary
greatly (from $10 to $80), so are the BIOS upgrades offered.  (Does
anyone have supplementary information on this, like good-bad experiences
with BIOS upgrade? I already had 2 feedbacks on this, and they all aggree
it is a little tricky, but it works).

Note: I (sdw@dfw.net) did not write this survival guide. Refer to the contributors or the editor (or post your question to usenet) if you have any questions. Thanks..
Send Comments or Suggestion to --- sdw@dfw.net