IBM 5170 Technical Reference page 218

Hide thumbs Also See for 5170:
Table of Contents

Advertisement

; ----- .. -- CHECK 10 OR BASE RAM
0063
E4 61
IN
AL, PORT_B
CHECK FOR la/PAR CHECK
0065
24 CO
AND
AL, PAR I TY_ERR
STR I P UNWANTED BITS
0067
86 C4
XCHG
AL,AH
SAVE ERROR
0069
Elf 87
IN
AL,oMA_PAGE+6
CHECK FOR R/W OR 10 ERR
006B
22 EO
AND
AH,AL
; ------- RESTORE
AX
0060
E4 8A
IN
AL,oMA_PAGE+9
GET AH
006F
86 CII
XCHG
AL,AH
0071
Ell 89
IN
AL,DMA_PAGE+8
GET AL
;-------- PARITY ERROR EXIT
0073
75 50
JNZ
en
GO I F YES
0075
0078
SA
2B
AA55
FF
C3:
MDV
SUB
oX,OAA55H
01,01
WRITE THE INIT DATA PATTERN
START AT BEGINING OF BLOCK
007A
2B F6
C4:
SUB
51,51
INITIALIZE DESTINATION POINTER
007C
88 CS
MDV
CX,BX
SETUP BYTE COUNT FOR LOOP
007E
88 C2
MDV
AX,OX
GET THE PATTERN
0060
F3/ AB
C5:
REP
STOSW
STORE 6IIK BYTES (32K WORDS)
0082
88 C8
MOV
CX,BX
SET COUNT
0084
28 F6
SUB
Si ,51
START AT BEGINNING
0086
AD
C6:
LODSW
GET THE FIRST WRITTEN
0087
0089
33
75
C2
3A
XDR
JNZ
AX,OX
cn
I NSURE DATA AS EXPECTED
EXIT I F NOT
0088
E2 F9
LOOP
C6
LOOP TILL DONE
; ------- TEMP SAVE FOR
AX
(PUSH NOT ALLOWED)
0060
E6 89
OUT
DMA PAGE+8,AL
SAVE
AX
008F
86 CII
XCHG
AL,AH
0091
EB 00
JMP
SHORT $+2
0093
E6 8A
OUT
DMA_PAGE+9.AL
; -------- CHECK 10 OR BASE RAM
0095
E4 61
IN
AL, PORT_B
CHECK foR t
0/
PAR CHECK
0097
24 CO
AND
AL, PAR I TY_ERR
STRIP UNWANTED BITS
0099
86 c4
XCHG
AL,AH
SAVE ERROR
0098
E4 87
IN
AL,DMA_PAGE+6
CHECK fOR R/W OR 10 ERR
0090
22 EO
AND
AH,AL
; ------- RESTORE AX
009F
E4 8A
IN
AL,DMA_PAGE+9
GET AH
OOAl
86 C4
XCHG
AL,AH
00A3
E4 89
IN
AL,DMA_PAGE+8
GET AL
; -------- PAR I TY ERROR EX I T
00A5
75 1 E
JNZ
cn
GO t
F
YES
; ------- CHECK FOR END OF 64K BLOCK
00A7
23 02
AND
OX, OX
ENDING ZERO PATTERN WRITTEN TO STC
?
00A9
74 lA
JZ
C14
YES -
RETURN TO CALLER WI TH AL=O
; ------- SETUP NEXT PATTERN
OOAB
81
FA 55AA
CMP
OX, 055AAH
CHECK I f
LAST PATTERN =55AA
OOAF
74 OF
JZ
C9
GO
I F
NOT
OOBl
81
FA 0101
eMP
OX,0101H
LAST PATTERN 0101?
00B5
74 OF
JZ
Cl0
GO I F YES
00B7
BA 55AA
MOV
DX,055AAH
WRITE 55AA TO STORAGE
008A
EB BC
JMP
C3
; .. --- .. --- LAST PATTERN
=
0000
OOBC
28 02
C8:
SUB
DX,DX
WR I TE 0000 TO STORAGE
OOBE
E8 B8
JMP
C3
;-----~--
INSURE PARITY BlTS ARE NOT STUCK ON
OOCO
BA 0101
C9:
Mav
aX,0101H
;
WRITE 0101 TO STORAGE
00C3
EB B3
JMP
CJ
;
.~
.. -- .... -
EX I T
00C5
e13:
DOCS
eJ
C14:
RET
; --_ ..--- CHECKER BOARD TEST
00C6
2B FF
Cl0:
SUB
DI,DI
POINT
TO
START OF BLOCK
00C8
8B CB
Mav
CX,
BX
GET, THE BLOCK COUNT
OOCA
01 E9
SHR
CX, ,
DIVIDE BY
2
OOCC
B8 5555
Cll:
Mav
AX,
01
a
101 01 01
01
01
01
B
FIRST CHECKER PATTERN
OOCF
AB
STOSW
WRITE IT
0000
B8 AAAA
Mav
AX,1010101010101010B
SECOND CHECKER PATTERN
0003
AB
srosw
WRITE IT
0004
E2 F6
LOOP
ell
DO
I T
FOR CX COUNT
0006
2B F6
SUB
SI,SI
PO I NT TO START OF BLOCK
0008
8S CB
MOV
CX,BX
GET THE BLOCK COUNT
OODA
01 E9
SHR
CX,1
DIVIDE BY
2
OODC
AD
C12:
LODSW
GET THE DATA
0000
35 5555
xaR
AX, 01 01 0101 0101 01 01 B
CHECK CORRECT
OOEO
75 E3
JNZ
C13
EXIT
I F
NOT
00E2
AD
LODSW
GET NEXT DATA
00E3
35 AAAA
XOR
AX,1010101010101010B
00E6
75 DO
JNZ
C13
GO I F NOT CORRECT
00E8
E2 F2
LOOP
C12
CONTINUE TILL DONE
; ------- TEMP SAVE FOR AX (PUSH NOT ALLOWED)
OOEA
[6 89
OUT
DMA_PAGE+8,AL
SAVE AX
OOEC
86 CII
XCHG
AL,AH
5-76 Test 6

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents