===============================================================================
     Date: 01-22-94    Time: 09:47p     Number: 28762  
     From: RODRIGUJ@ERE.UMONTREAL.CA     Refer: 0       
       To: ALL                        Board ID: MPOLI           Recvd: No 
  Subject: <FAQ>: The BIOS survival        687: s.pc.hardwar   Status: Public 
-------------------------------------------------------------------------------
SUBJECT:<FAQ>: The BIOS survival guide v2.4                          
Message-ID: <rodriguj.759268063@mistral.ERE.UMontreal.CA>
Newsgroup: comp.sys.ibm.pc.hardware,comp.sys.ibm.pc.hardware.chips
Organization: Universite de Montreal


The BIOS Survival Guide

Edited by Jean-Paul Rodrigue
rodriguj@mistral.ere.umontreal.ca

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)
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, 1.1, 1.2 and 1.3: December 1993 (Initial postings)
Version 2.0: 03-01-94 (The first "complete" version)
Version 2.1: 07-01-94 (Minor modifications)
Version 2.2: 12-01-94 (Again...)
Version 2.3: 16-01-94 (History repeats itself)
Version 2.4: 22-01-94 (New, improved flavour!)

Crossposted in:
==================================
comp.sys.ibm.pc.hardware & comp.sys.ibm.pc.hardware.chips

What is the 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 know) 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 community. You
may distribute it freely as long as the contents are not altered, no charge 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: 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 or
comp.sys.ibm.pc.hardware), 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 part3) posted regularly. It contains a wealth of
information about computer hardware. 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 e-mailed. Before doing so, please look in this newsgroup for a
regular posting of this guide.
If you want in depth technical information about AMI BIOS, you can find
it at the FTP site MEGATRENDS.COM (Note: Since middle december this
site is unavailable to anonymous users for unknown reasons). 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 in the
/systems/ibmpc/msdos/sysutil directory. The file name is AMISE254.ZIP.

One last thing...
==================================
I would like to thank the contributors (and several other persons) 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 (so far, 7 revisions). I am sorry if I
cannot answer to everyone or add everything that is send to me.
Since Pentium CPU and PCI buses are starting to come out, I would be
interested in information regarding BIOS settings for those systems. If
someone who has knowledge on Pentium and PCI could review this guide...

TABLE OF CONTENT
==================================
1.0 DEFINITIONS
     1.1 BIOS
     1.2 CMOS
     1.3 Chipset
2.0 ENTERING SETUP
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 PC and PC/XT this information is supplied by setting the
DIP (Dual-In-line Package) switches at the motherboard or peripheral cards.

1.3 Chipset: A PC consists of different functional parts on its motherboard:
ISA (Industry Standard Architecture), EISA (Enhanced Industry Standard
Architecture) and VESA (Video Enhanced Standards Association) 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 ENTERING 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 (and holding it) after pressing the Reset key or powering up the
computer.

If there is a booting problem and the BIOS cannot proceed with POST, you
will hear a sequence of beeps:

Beep Code      Meaning
1              DRAM refresh failure
2              Parity Circuit failure
3              Base 64K RAM failure
4              System Timer failure
5              Processor failure
6              Keyboard Controller Gate A20 error
7              Virtual Mode Exception error
8              Display Memory R/W Test failure
9              ROM-BIOS Checksum failure

If you encounter any of these, there is a good chance that it is an
HARDWARE related problem. (Could someone provide more explanation
on each of these errors?)

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 tendancy 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.

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.

Hard disk D:
type           : The number of your secondary (slave) hard drive. Same
               procedure than above. Juppers must be setted 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 or 1.2 MB, 5 1/4, 3.5"
               or 1.2 MB, 5.25" (inches).

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 not, RESET and DEL the
computer permantly. 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.

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.

Memory Test Tick Sound        : Enabled recommended. It gives an
                              audio record that the boot sequence is
                              working properly.

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 Mascable
               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, 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.

Wait for <F1> 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.

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 floppy disk 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.

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.

N.B.: 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     : ???

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.

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
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
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.

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.

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 or Mcaffee are also a good idea.
                         Available on most ftp servers, they are sharewares.

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 msec) is called by
                    a certain timer (OUT1). Every time it takes 2 to 4
                    msecs for the refresh. Some RAMs can do it, some
                    not. Try. If the computer fails, turn it off. Enabled
                    Recommended.

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). Try it.

Concurrent Refresh  : ???


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.
                    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 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. (How many address
                    lines?) ???

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.

N.B.: 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     : ???

RAS Precharge Time  : ???

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  : 16 MB. Usually chipsets allow memory to be cached just
               up to 16 or 32 Mbyte. 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. If you lose it, 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.
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
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. SYS will do the job of replacing system files. Several packages
(PC-Tools, Norton, etc...) provide utilities for repairing "damaged" HDD
and FDD.

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.
Sometimes option from main 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. Once bad blocks are detected, their
addresses are stored in the FAT (File Allocation Table) so the operating
system will skip them. 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!

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.

11.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.
===============================================================================
