System BIOS Usage
The basic
input/output
system (BIOS) resides in
ROM
on the
system board and provides device level control for the major
I/O
devices in the system. Additional
ROM
modules may
be
located
on
option adapters to provide device level control for
that
option
adapter. BIOS routines enable the assembler language
programmer to perform block (disk and diskette) or
character-level
I/O
operations without concern for device address
and operating characteristics. System services, such as
time-of-day and memory size determination, are provided by the
BIOS.
The goal
is
to provide an operational interface to the system and
relieve the programmer
of
the concern about the characteristics
of
hardware devices. The BIOS interface insulates the user from the
hardware, thus allowing new devices to be added to the system,
yet retaining the BIOS level interface to the device. In this
manner, user programs become transparent to hardware
modifications and enhancements.
The IBM Personal Computer
MACRO
Assembler manual and the
IBM Personal Computer
Disk Operating System (DOS) manual
provide useful programming information related to this section.
A complete listing of the BIOS
is
given in this section.
Access to the BIOS
is
through the 8088 software interrupts.
Each BIOS entry point
is
available through its own interrupt.
The software interrupts, hex
10 through hex 1A, each access a
different BIOS routine.
For
example, to determine the amount
of
memory available in
the
system,
INT
12"
invokes the BIOS routine for determining memory size and
returns the value to the caller.
System
BIOS
5-3