Chapter
6
BIOS
SERVICES
Device
I/O
Services
Introduction
The BIOS (Basic Input/Output System) is the lowest-level inter-
face between other software (application programs and the oper-
ating system itself) and the hardware. The BIOS routines
provide various device input/output services, as well
as
boot strap
and print screen and other services. Some
of
the services that
BIOS provides are not available through the operating system,
such
as
the graphics routines.
All calls
to
the BIOS are made through software interrupts (that
is, by means
of
assembly language “INT x” instructions). Each I/
0
device is provided with
a
software interrupt, which transfers
execution to the routine.
Entry parameters
to
BIOS routines are normally passed in CPU
registers. Similarly, exit parameters are generally returned from
these routines
to
the caller in CPU registers. To insure BIOS
compatibility with other machines, the register usage and con-
ventions are,
for
the most part, identical.
The following pages describe the entry and exit requirements
for
each BIOS routine. To execute a BIOS call, load the registers
as
indicated under the “Entry Conditions.” (Register
AH
will con-
tain the function number in cases where a single interrupt can
perform more than one operation.) Then issue the interrupt
given for the call. The example, the following can be used
to
read
a character from the keyboard:
MOV
AH,
0
INT
16H
Upon return, AL contains the ASCII character and
AH
the key-
board scan code.
Note:
All registers except those used
to
return parameters
to
the caller are saved and restored by the BIOS routines.
191