IBM AT 5170 Technical Reference page 334

Table of Contents

Advertisement

IBM Person;;,!
COlllputer MACRO Asselllbler
Version 2.00
8105 -----
06/10/85
8105 ROUTINES
101
PACiE
102
;-- HARDWARE INT
02 H -­
I NMI LEVEL)
--------------------------------------­
103
NON-MASKA8L.E INTERRUPT ROUTINE
(REAL MODE)
104
nus
ROUTINE WILL PRINT A "PARITY CHECK 1 OR 2" MESSAGE AND ATTEMPT
105
TO FINO THE STORAGE LOCATION IN 8ASE 640K CONTAINING THE 8AD PARITY.
106
101
108
IF FOUND, THE SEGMENT ADDRESS WILL BE PRINTED.
CAN BE FOUND
(INTERMITTENT READ PR08LEM)
11117
WHERE THE ADDRESS WOULD NORMALLY GO.
IF NO PARITY ERROR
WILL 8E DISPLAYED
109
110
PAR 1 TY CHECK
1
=
PLANAR 80ARD MEMORY
FA I
LURE.
III
PAR I TY CHECK 2
=
OFF PLANAR 80ARD MEMORY FA I LURE.
112
113
114
0014
NM liNT
, PROC
NEAR
115
116
001450
-PUSH
AX
I
SAVE ORIGINAL CONTENTS OF
lAX)
117
0015 E4 61
IN
AL,PORT 8
READ STATUS PORT
1 18
0017 A8 CO
TEST
AL,PARITY ERR
PARITY CHECK OR
I
fO
CHECK?
119
0019 75 07
.JNZ
NMI_'
-
GO TO ERROR HALTS
I F HARDWARE ERROR
120
121
001880 00
MOV
AL,CMOS REG D
ELSE 11
LEAVE NM!
ON
122
0010 E8 0000 E
CALL
CMOS READ
-
TOGGLE NM I US I NG COMMON READ ROUT
J NE
123
0020 58
POP
A X ­
RESTORE ORIGINAL CONTENTS OF (AXI
124
0021
CF
IRET
EX I T NMI
HANDL.ER 8ACK TO PROGRAM
125
126
127
0022
NMI_' :
HARDWARE ERROR
128
0022 50
PUSH
AX
SAVE
INITIAL CHECK MASK
IN
(Al)
129
0023 80 80
"OV
AL, CMOS REG D+NM I
MASK TRAP
INMII
INTERRUPTS OFF
130
0025 E& 70
OUT
CMOS PORT, AL
131
0027 80 AD
MOV
AL.oTs K8D
o
I SABLE THE KEYBOARD
132
0029 E6 0000 E
CALL
C6042 -
SEND COMMAND TO ADAPTER
133
002C E8 0000 E
CALL
DOS
ADORES S OAT A SEGMENT
134
002F 84 00
MOV
AH,O
INITIALIZE AND SET MODE FOR VIDEO
135
136
0031
AD 0049 R
0034 CD 10
MOV
INT
AL, PCRT MODE
10H
-
GET CURRENT MODE
CALL VIDEO_IO TO CLEAR SCREEN
131
138
01
SPLA Y "PAR I TY CHECK
1"
ERROR MESSAGES
139
140
0036 58
POP
AX
RECOVER
I NIT I AL CHECK STATUS
141
0037 8E 0000 E
MOV
SI,DFFSET 01
PLANAR ERROR, ADDRESS "PARITY CHECK
I"
142
003A A8 80
TEST
AL,PAR!TY CHECK
CHECK FOR PLANAR ERROR
143
003C 74 05
JZ
NMI_2
-
SKIP IF NOT
144
145
003E 50
PUSH
AX
SAVE STATUS
146
003F E6 0000 E
CALL
P MSG
DISPLAY "PARITY CHECK
I" MESSAGE
147
0042 5B
POP
AX
AND RECOVER STATUS
148
0043
149
0043 8E 0000 E
MOV
SI,OFFSET 02
ADDRESS OF
~PARITY
CHECK
2~
MESSAGE
150
151
0046 AS 40
0048 74 03
TEST
JZ
AL,IO CHECK
NMI
I/O PAR
I
TY CHECK
?
SK 1 P
J
F CORRECT ERROR D I SPLAYED
152
0041. E8 0000 E
CALL
P
_MSG
DISPLAY "PARITY CHECK 2"
ERROR
153
154
TES T FOR HOT NM I ON PL.ANAR PAR I TY LINE
155
156
0040
NMI
3:
157
0040 E4 61
IN
AL,PORT B
158
004F OC DC
OR
AL,RAM PAR OFF
TOGGLE PAR I TY CHECK ENA8LES
159
0051
E6 61
OUT
PORT
8~AL
­
160
0053 24 F3
AND
AL, RAM PAR ON
TO CLEAR THE PEND
I
NG CHECK
161
0055 E6 61
OU1
PORT_B~AL
­
162
163
0057 FC
CLO
SET 0 I RECT I ON FLAG TO
INCREMENT
164
005B 28 02
SUS
OX.DX
PO I NT
(OX)
AT START OF REAL MEMORY
165
005A 28 F6
SUS
51,51
SET
1511
TO START OF
105:1
166
005C E4 61
IN
AL,PORT 8
READ CURRENT PARITY CHECK LATCH
167
005E A8 CO
TEST
AL,PARITY ERR
CHECK FOR HOT NM
I
SOURCE
168
0060 75
19
JNZ
NMI_5
-
SKIP IF ERROR NOT RESET
10ISPL.AY ??11
169
110
111
;----­
SEE IF LOCATION THAT CAUSED PARITY CHECK CAN BE FOUND IN BASE MEMORY
172
006288
IE 0013 R
"OV
8X,.MEMORY_SIZE
; GET BASE MEMORY SIZE WORD
173
0066
174
0066 BE DA
"OV
DS,DX
PO I NT TO 64K SEGMENT
175
0068 89 8000
MOV
CX,4000H02
SET WORD COUNT FOR 64 KB SCAN
176
0068 F3/ AD
REP
LODSW
READ 64 KB OF MEMORY
I T7
0060 E4 61
IN
AL,PORT 8
READ PARITY CHECK LATCHES
17B
006F A6 CO
TEST
AL,PARITY ERR
CHECK FOR ANY PAR I TY ERROR PEND I NG
179
0071
75
10
JNZ
NMI_6
-
GO PRINT SEGMENT ADDRESS IF ERROR
180
181
0073 80 C6
10
ADO
DH,010H
PO
I
NT TO NEXT 64K BLOCK
182
0076 83 E8 40
5U8
8X, 1&0°4
DECREMENT COUNT OF
1024 8YTE SEGMENTS
183
0079 T7 E8
JA
NM1_4
L.OOP
T1
LL ALL 64K SEGMENTS DONE
184
0078
185
0078 8E 0000 E
MOV
SI,OFFSET D2A
PRINT ROW
OF
11111
IF PARITY
186
007E E8 0000 E
CALL
P _MSG
CHECK COULD NOT BE RE-CREATED
187
OOBI FA
eLi
188
0082 F4
HLT
HALT SYSTEM
189
190
0083
191
0083 E8 0000 E
CALL
PRT SEG
PR 1NT SEGMENT VALUE
liN OX)
192
0086 80 28
"OV
AL,'( ,
PRINT
(51
193
0088 E8 0000 E
CALL
PRT HEX
194
0088 BO 53
HOV
AL,'S'
195
0080 E8 0000 E
CALL
PRT HEX
196
0090 80 29
HOV
AL,') ,
,97
0092 E8 0000 E
CALL
PRT_HEX
198
0095 FA
CLI
HAL T SYSTEM
199
0096 F4
HL 1
200
20 I
0097
NMI
INT_I
ENDP
202
203
0097
CODE
ENDS
204
END
5-162
BIOS

Advertisement

Table of Contents
loading

Table of Contents