CPIM-86 Bootstrap and Adaptation Procedures
The
standard
LDBIOS
has been field-altered for the
APC
hardware using the same
entry points described in
Chapter
5 for BIOS modification. The organization
of
LOADER
is
shown in Figure 8-1.
GD#l]OV
III
I I
IIII
I
II
CS DS
ES
SS
OOOOH:
JMP
1200H
I
(LDCPM)
I
JMPF
CPM
0400H:
(
LDBDOS)
1200H:
JMP
INIT
.......
JMP
SETIOB
INIT:
..
JMP
0003H
(LDBIOS)
1700H:
Figure
8-1
LOADER Organization
Byte offsets from the base registers
are
shown
at
the left
of
the diagram. GD#1
is
the
Group
Descriptor for the
LOADER
code group described above, followed imme-
diately by a "0"
group
terminator. The entire
LOADER
program
is
read by the
BOOT
ROM, excluding the header record, starting
at
byte location 04000H as given
by
the A-Field.
Upon
completion
of
the read, the
BOOT
ROM passes control to
location 04000H where the
LOADER
program
begins execution. The
JMP
1200H
instruction
at
the base
of
LDCPM
transfers control
to
the beginning
of
the LDBIOS
where control then transfers
to
the
INIT
subroutine. The subroutine starting
at
INIT
performs device initialization, prints a sign-on message,
and
transfers
back
to
the
LDCPM
program
at
byte offset 0003H. The
LDCPM
module opens the
CPM.SYS file, loads the
CP/M-86
system into memory
and
transfers control to
CP/M-86
through the
JMPF
CPM
instruction
at
the end
of
LDCPM
execution,
thus completing the cold
start
sequence.
8-3