IBM AT 5170 Technical Reference page 244

Table of Contents

Advertisement

IBM Pereona I Computer MACRO Assemb I.r
Vera
i
on 2.00
1-15
TEST2 ---- 06/10/85
POST TESTS AND
INITIALIZATION ROUTINES
06-10-85
1549 082C 24 02
AND
AL,002H
STR
I
P OFC- OTHER 8 [TS
1550 082E 3A C4
CMP
AL,AH
DOES CMOS MATCH HAROWARE
7
1551
0830 74 08
JE
OK_287
SK I P IF EQU I PMENT FLAG CORRECT
1552
1553 0832 80 36 00 lOR 02
XOR
8YTE PTR $EQUIP FLAG,2H
ELSE SET 80287 81T TO CORRECT VALUE
1554 0837 E8 0000 E
CALL
CONFIG_BAD
-
AND SET THE CONFIGURATION ERROR FLAG
1555 083A
1556
SET KEYBOARD STATE FLAGS
1557
1558 083A
C7
06 0017 R 0000
MOV
RESET ALL KEYBOARD STATUS FLAGS
1559
1560
ENABLE KEYBOARD
I
T I MER
INTERRUPTS
1561
1562 0840 E4 21
IN
AL,INTAOI
1563 0842 24 FC
AND
AL.OFCH
ENABLE T I MER AND KEY80ARD INTERRUPTS
1564 0844 EB 00
JMP
I/O DELAY
1565 0646 E6 21
OUT
INTAO \ ,AL
I·'
15660848 C6 06 0015 R 00
MDV
<lIMFG_ERR_FLAG,O
CLEAR MFG ERROR FLAG
1561
1568
READ KEYBOARD 10 TO
INITIALIZE KEYBOARD TYPE AND NUM LOCK STATE
1569
1510 0840 C6 06 0096 R AO
MOV
<lIKB FLAG 3. RD
ID+SET NUM LK
;
SET READ 10 COMMAND FOR KSX
1571
0852 BO F2
MOV
AL, KB READ 10-
-
I
GET TH I S SYSTEMS KEYBOARD
I D REQUEST
1512 0854 E8 0000 E
CALL
SND DATA
-
;
USE KEYBOARD TRANSMISSION ROUTINE
1513 0857 B9 067A
MOV
ex,
T
658
;
SET DELA
Y
COUNT TO 25 MILL! SECONDS
1514 085A E8 0000
E
CALL
WAITF
; WAIT FOR READ 10 RESPONSE
120 MSI
1515 085080 26 0096 R IF
AND
OK8_FLAG_3,NOT RD_ID+LC_AB+SET_NUM_LK
: RESET READ 10 COMMAND
1516
1517
CHECK FOR SECOND F I XED 0 I SK PRESENT BUT NOT DEF I NED
1518
1579 0862 80 3E 0075 R 02
eMP
<lIHF NUM,2
CHECK FOR TWO DR I VES DEF I NED BY CMOS
1580 0867 14 13
JE
FI5G
SKIP TEST IF TWO DRIVES DEFINED
1581
1582 0869 84
10
MDV
AH,OIOH
GET TEST DR I VE READY COMMAND
158308688281
MOV
DL,061H
POINT TO SECOND FIXED DISK
15M
0860 FE 06 0015
R
INC
4tHF NUM
TELL BIOS IT HAS TWO DRIVES
15850871 CO
13
INT
13H­
CHECK READY THROUGH BIOS
1586 0873 FE OE 0075
R
DEC
i:lHF NUM
RESTORE CORRECT COUNT
(RETAIN CYI
1581 0877 72 03
JC
FISC
SK I P I F SECOND DR I VE NOT READY
1588
SECOND DR I VE NOT DEF I NED
1589 0879 E8 0000 E
CALL
SET CONFIGURATION BAD
1590 D87C
FISC:
1591
;
- - - - --- - - -
-
-- - -- -------------- - - - -­
1592
;
TEST FOR ANY ERRORS
(BP NOT ZERO)
1593
1594
1595 081C OB ED
DR
CHECK
(BP)= NON-ZERO
(ERROR HAPPENED)
1596 087E 74 55
JE
SK
I
P PAUSE
I F NO ERROR
1597
1598 0880 80 3E 0072 R 64
CMP
BYTE PTR <lIRESET FLAG,64H; MFG RUN IN MODE?
1599 0885 BA 0002
MOV
DX,2
-
;
2 SHORT BEEP COUNT FOR ERROR(S)
1600 0888 15 OE
.JNZ
ERR_WAIT
; GO IF NOT
160 I
1602
MFG RUN
I
N MODE
->
SET ERROR FLAG
1603
1604 088A C6 06 0015
R AA
MDV
<lIMFG ERR FLAG, OAAH
I NO I CATE ERROR
1605 D88F E4 64
IN
AL ,STATUS PORT
CHECK KEY LOCK STATUS
1606 0891
24
10
AND
AL,KYBD INH
1 S THE KEYBOARD LOCKED
1601 0893 75 40
JNZ
F15A_0 -
CONT I NUE MFG MODE I F NOT LOCKED
1608
ELSE
1609 0895 SA 0005
MDV
OX,S
5 SHORT BEEPS FOR MFG SETUP ERROR
1610 0898
ERR WAIT:
1611
0898 E8 0000 E
-
CALL
ERR 8EEP
BEEPS FOR ERROR ( S I
1612 089880 OE
MDV
AL,CMOS 0 I AG
ADDRESS CMOS
1613 0890 E8 0000 E
CALL
CMOS READ
GET THE DIAGNOSTIC STATUS BYTE
\614 08AO A8 20
TEST
AL,BAD CONFIG
CHECK FOR BAD HARDWARE CONFIGURATION
1615 08A2 14 OC
JZ
ERR_WKEY
SKIP IF NOT SET
1616
1617 08A4 Fl C5 8000
TEST
BP,08000H
ELSE CHECK FOR E I 61/E 162 pOSTED
1618 08A8 75 06
JNZ
ERR_WKEY
SKIP IF 01 SPLAYED BEFORE NOW
1619
1620 08AA BE 0000 E
MOV
51 ,OFFSET EI62
ELSE DISPLAY
~OPTIONS
NOT SET"
1621 08AD E8 0000 E
CALL
P _MSG
WITH NON HALTING ROUTINE
1622
1623
CHECK FOR "UNLOCK SYSTEM UNIT KEYLOCK"
MESSAGE REQUIRED
1624
1625 0880
ERR WKEY:
1626 08BO E4
-
IN
AL,STATUS PORT
CHECK
IF RESUME MESSAGE NEEDED
1621 08B2 24
10
AND
AL,KYBD INH
1 S THE KEYBOARD LOCKED
1628 0884 75 06
IN'
ERR_WAIT2
SK IP LOCK MESSAGE IF NOT
1629
1630 08B6 BE 0000 E
MDV
S I ,OFFSET F3Dl
ERROR MESSAGE FOR KEYBOARD LOCKED
1631
0889 E8 0000 E
CALL
P
_Io4SG
1632
1633
DISPLAY
'(RESUME
=
"Fl" KEY)' FOR ERRORS
1634
1635 08BC
ERR WAIT2;
1636 08BC BE 0000 E
SI,OFFSET F3D
; RESUME ERROR MESSAGE
-
MOV
1637 08BF E8 0000 E
CALL
P_MSG
1638
1639
INITIALIZE PRINTER
(ALTERNATE DISPLAY DEVICE)
1640
1641
08C2 B4 01
MOV
AH,
I
1642 08C4 28 02
SUB
DX,OX
FIRST PRINTER
1643
D8C6
CD
17
INT
I7H
1644 08C8
ERR WAIT1:
1645 08C8 80 3F
-
MOV
AL ,3FH
<> <><><><><><><><> <><><>
1646 08CA E6 80
OUT
MFG PORT ,AL
<> <>
CHECK PO I NT
3F
<> <>
1647
OBCC
84 00
MOV
AH,OO
1648 08CE CD
16
INT
16H
WAIT
'FI' KEY
1649 0800 80 Fe 3B
eMp
AH,38H
1650 0803 75 F3
JNE
ERR_WA I T I
1651
0805
FI5A 0:
16520805 F6 06 0012 R 20
TEST
"MFG TST, MFG LOOP
MFG BURN
I N MODE
1653 08DA 15 03
JNZ
FI5A-
-
GO IF NOT
1654 080C E9 0000 E
JMP
START I
; GO LOOP POST
1655 080F 80 3E 0072 R 64
FI5A:
CMP
1656 08E4 74 06
JZ
~i6~
PTR
~RESET
fLAG, 64H;
~~~A~~NB~~;
I F YES
1657
1658 08E6 BA 0001
I
1 SHORT BEEP
I NO ERRORS)
1659 08E9 E8 0000 E
1660
1661
1662
5-72
TEST2

Advertisement

Table of Contents
loading

Table of Contents