IBM Personal Computer MACRO Assembler
Version 2.00
POST ----- 01/10/86
SYSTEM POST AND BIOS PROCEDURES
1-11
01-10-86
:----- SET UP EQUIP FLAG TO INDICATE NUMBER OF PRINTERS AND RS232 CARDS
: - - - - -
RESET THE 0 I SK PARAMETER TABLE VECTOR
TABLE OF VALUES
FOR
I N I TI ALI ZA TI ON
110 BAUD
150
300
600
1200
2400
4800
9600
USE INT 15 H
AH= OCOH
CONFIGURATION TABLE FOR THIS SYSTEM
LENGTH OF FOLLOW I NG TABLE
SYSTEM MODEL BYTE
SYSTEM SUB MODEL TYPE BYTE
BIOS REVISION LEVEL
10000000 = DMA CHANNEL 3 USE BY B I OS
01000000 = CASCADED I NTERRUPT LEVEL 2
00100000 = REAL T I ME CLOCK AVA I LABLE
00010000 = KEYBOARD SCAN CODE HOOK 1AH
RESERVED
RESERVED
RESERVED
RESERVED
RESERVED FOR EXPANS I ON
; GO TO RESIDENT BASIC
:
SET RETRY COUNT
:
IPL SYSTEM
:
SAVE RETRY COUNT
; RESET THE 0 I SKETTE SYSTEM
; 0 I SKETTE I 0
;
IF ERROR7 TRY AGAIN
; READ I N THE SINGLE SECTOR
; TO THE BOOT LOCAT I ON
: ENABLE INTERRUPTS
: ESTABL I SH ADDRESS ING
DR I VE 0, HEAD 0
SECTOR I, TRACK 0
DISKETTE_IO
; RECOVER RETRY COUNT
; CF SET BY UNSUCCESSFUL READ
: DO IT FOR RETRY TIMES
NEAR
18H
WORD PTR 00 I SK PO INTER, OFFSET 0 I SK BASE
WORD PTR ODISK:POINTER+2,CS
-
CX,I
13H
CX,4
: BASE END:
AX,SI
:
SI HAS 2- NUMBER OF RS232
CL,3
:
SHIFT COUNT
AL ,CL
: ROTATE RIGHT 3 POS I T IONS
AL , BL
: OR I N THE PR I NTER COUNT
BYTE PTR OEQU I P FLAG+ I ,AL
:
STORE AS SECOND BYTE
DX,201H
-
AL,DX
CONF E-CONF TBL-2
MODEL BYTE -
SUB MODEL BYTE
BIOS LEVEL
01010000B
AL,OFH
F20
: NO GAME CARD
BYTE PTR OEQU I P FLAG+ I , 16
-
-
-
: NO_GAME_CARD:
BX
oBOOT LOCN
ENDP -
OE129H
00129H
1041
168
384
192
96
48
24
12
CS: CODE, OS: ABSO
OE6F2H
006F2H
PROC
CX
H4
HI
AX,AX
DS,AX
CX
AH,O
13H
H2
AX,201H
DX,DX
ES,DX
BX, OFFSET OBOOT_LOCN
INC
INT
I F THERE I S A HARDWARE ERROR CONTROL IS
TRANSFERRED TO THE ROM BAS I C ENTRY PO I NT •
IN
AL,PORT_B
RESET CHECK ENABLES
OR
AL,30H
OUT
PORT B ,AL
AND
AL,OCFH
OUT
PORT B,AL
MOV
AL,80H
:
ENABLE NMI
INTERRUPTS
OUT
OAOH,AL
LOAD BOOT STRAP:
INT
19H
GO TO THE-BOOT LOADER
ASSUME
ORG
ORG
ORG
ORG
OW
OW
OW
OW
OW
OW
OW
OW
MOV
INT
POP
JNC
LOOP
PUSH
MOV
INT
JC
MOV
SUB
MOV
MOV
LOAD SYSTEM FROM 0 I SKETTE -- CX HAS RETRY COUNT
DB
DB
DB
DB
EQU
MOV
MOV
MOV
MOV
MOV
ROR
OR
MOV
MOV
IN
NOP
NOP
NOP
TEST
JNZ
OR
I PL WAS SUCCESSFUL
I NT 19 - - - --- - - - - - -- ----- -- - - - - -- - -- - -- -- - - - --------
BOOT STRAP LOADER
:
TRACK 0,
SECTOR I
I S READ I NTO THE
:
BOOT LOCATION (SEGMENT 0, OFFSET 1COO)
:
AND CONTROL I S TRANSFERRED THERE.
:
:
:
:
: - - - - -
ENABLE NM I
INTERRUPTS
: - - - - -
UNABLE TO I PL FROM THE 0 I SKETTE
;
;-
AI
CONF TBL:
-
OW
DB
DB
DB
DB
JMP
BOOT_STRAP
H2:
BOOT STRAP
-
STI
SUB
MOV
H3:
HI:
F21 :
H4:
F20:
F19:
1136 061A 43
1131
1138
1139
1140 061B
I 141 061B 8B C6
1142 0610 BI
03
1 143 061F 02 C8
1 144 068 I
OA C3
1 145 0683 A2 00 I 1 R
1 146 0686 BA 020 I
1141 0689 EC
1148 068A 90
1149 068B 90
1150 068C 90
1 151 0680 A8 OF
I
152 068F 75 05
1 153 0691
80 OE 00 I 1 RIO
1154 0696
1155
1156
1151
I 158 0696 E4 6
I
1 159 0698 OC 30
I 160 069A E6 61
1 161 069C 24 CF
1 162 069E E6 61
I 163 06AO BO 80
1 164 06A2 E6 AO
1165 06A4
1166 06A4 CD
1161
1168
1169
1110
1111
1112
1113
1114
1115
1116
1111
1118
1119 06F2
1180
1181 06F2
1182 06F2 FB
1 183 06F3 2B CO
I 184 06F5 8E 08
1185
1186
1181
1188 06F1 C1 06 0018 R OFC1 R
1189 06FD 8C OE 001A R
1190
1191
1192
1193 0101 B9 0004
1194 0104
1195010451
I
196 0105 B4 00
I 191 0101 CD 13
1198 0109 12 OF
1199 010B B8 020 I
1200 010E 2B 02
1201 0110 8E C2
1202 0112 BB 1COO R
1203
1204 0115 B9 0001
1205 0118 CD 13
1206 011A
1201 011A 59
1208 011B 13 04
1209 0110 E2 E5
1210
1211
1212
1213 011F
12 14 011 F CD I 8
1215
1216
1211
1218 0121
1219 0121 EA 1COO ---- R
1220 0126
1221
1222
1223 0129
1224 0129 0411
1225 012B 0300
1226 0120 0180
1221 012F OOCO
1228 0131
0060
1229 0133 0030
1230 0135 0018
1231 0131 OOOC
1232
1233 0139
1234 0139 E9 0000 E
1235
1236 013C
1231 013C 0008
1238 013E FB
1239 013F 00
1240 0140 01
1241 0141
50
1242
1243
1244
1245 0142 00
1246 0143 00
1241 0144 00
1248 0145 00
1249 = 0146
5-94
POST (01/10/86)