IBM AT 5170 Technical Reference page 265

Table of Contents

Advertisement

IBM Persona I Computer MACRO Assemb I er
Vera
j
on 2.00
I-I
TEST6 ---- 06/10/85
POST TESTS AND SYSTEM BOOT STRAP
06-10-85
.
9
10
II
12
13
14
15
16
11
"
1 9
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
10
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
III
112
113
114
0000
0000
0000
0000
0002
0004
0006
0008
OOOA
OOOC
OOOE
00
I
I
0013
00 15
0016
0016
0018
OOIA
001C
00 IE
0020
0022
0025
0027
002A
002C
002E
0030
0032
0034
0036
0038
003A
003C
003E
0040
0042
0044
0047
0049
004C
004C
004E
0050
0052
0054
0056
0058
005A
005A
0058
0050
005F
0061
0063
0065
0061
8B
E4
OC
E6
24
E6
33
89
28
2B
F9
01
89
88
33
EI
75
BA
89
88
88
33
75
89
88
86
8B
33
75
E4
86
E4
22
B8
75
8A
28
2B
88
88
F3/
8B
2B
AD
33
EI
75
E4
86
E4
22
09
61
OC
61
F3
61
02
0010
FF
F6
02
15
05
C2
F6
66
FFOO
05
75 01
05
C2
58
05
35
F2
05
C2
4C
61
C4
81
EO
0000
3F
AA55
FF
F6
CB
C2
AB
CB
F6
C2
FB
21
61
C4
87
EO
PAGE! \8.121
TITLE TEST6 ----
061
to/85
POST TESTS AND SYSTEM BOOT STRAP
.286C
. l \ ST
CODE
SEGMENT BYTE PUBl [C
PUBl I C
BOOT STRAP 1
PU8l I C
POST6
­
PUBLIC
STGTST CNT
PUBl 1 C
ROM ERR
PUBLIC
XMIT_8042
EXTRN
CMOS READ: NEAR
EXTRN
DDStNEAR
EXTRN
DISK BASE:NEAR
EXTRN
E6021NEAR
EXTRN
ERR BEEP: NEAR
EXTRN
E MSG:NEAR
EXTRN
F3A: NEAR
EXTRN
PRT_SEG:NEAR
ASSUME
CS:CODE,DS:DATA
POSH
PROe
NEAR
;
- - - - - - -
-
-
-
---------
- - - - - - - - -
------
- - - - - - - - -- - -
--
------ - - - - - - - - ­
I
THIS SUBROUTINE pERFORMS A READ/WRlTE STORAGE TEST ON A BLOCK
;
OF STORAGE.
ENTRY REQU I REMENTS;
ES = ADDRESS OF STORAGE SEGMENT BEING TESTED
OS ::; ADDRESS OF STORAGE SEGMENT BEING TESTED
CX '" WORD COUNT OF STORAGE BLOCK TO BE TESTED
EX I T PARAMETERS:
ZERO FLAG
=
a
IF STORAGE ERROR
IDATA COMPARE OR PARITY
CHECK I. Al=O DENOTES A PAR I TY CHECK. ELSE AL=XOR' ED
BIT PATTERN OF THE EXPECTED DATA PATTERN
VS THE ACTUAL
DATA READ.
AX.BX.CX,DX,D], AND S I ARE All DESTROYED.
~~~~~~-~~~--
- - -
-;~~~ ----~~~~--
-
MOV
BX,CX
SAVE WORD COUNT OF BLOCK TO TEST
]N
AL,PORT 8
OR
AL ,RAM PAR OFF
TOGGLE PARITY CHECK LATCHES
OUT
PORT
8-;--
Al -
TO RESET ANY PEND 1NG ERROR
AND
AL.RAM PAR ON
OUT
PORT_S-;-Al ­
1-----
ROll A BIT THROUGH THE FIRST WORD
XOR
OX.OX
CLEAR THE
INITIAL DATA PATTERN
MDV
CX,16
ROll
16 81T POSiTiONS
SUB
01,01
START AT BEGINNING OF BLOCK
SUB
S I, S I
INITIALIZE DESTINATION POINTER
STC
SET CARRY FLAG ON FOR F]RST BIT
Cl :
RCl
DX,I
MOVE BIT OVER LEFT TO NEXT POSITION
MOV
[01
J
,OX
STORE DATA PATTERN
MOV
AX, CD]
1
GET THE DATA WRITTEN
XOR
AX,OX
I NSURE DATA AS EXPECTED (CLEAR CARRY)
LOOPZ
CI
LOOP TILL DONE OR ERROR
JNZ
EX IT
I F ERROR
CHECK CAS LINES FOR HIGH BYTE lOW BYTE
MOV
DX,OFFOOH
TEST DATA -
AX= OOOOH
MOV
[DII,AX
STORE DATA PATTERN
'" OOOOH
MOV
[OI+1],DH
WRITE A BYTE OF FFH A.T ODD LOCATION
MOV
AX, [01
J
GET THE DATA -
SHOULD BE OFFOOH
XOR
AX.DX
CHECK THE FIRST WRITTEN
JNZ
CI3
ERROR EX I T I F NOT ZERO
MDV
[01
J
,AX
STORE DATA PATTERN OF OOOOH
MOV
(DI1,DH
WRITE A BYTE OF FFH AT EVEN LOCATION
XCHG
DH,Dl
;
SET DX= OOOFFH AND BUS SETTLE
MOV
AX,
[01]
;
GET THE DATA
XOR
AX,DX
;
CHECK THE FIRST WRITTEN
JNZ
CI3
1 EXIT
IF NOT
CHECK FOR I /0 OR BASE MEMORY ERROR
IN
Al,PORT B
CHECK FOR
] /0 -
PAR I TY CHECK
XCHG
Al,AH
-
SAVE ERROR
IN
AL,DMA PAGE+6
CHECK FOR R / W OR
I /0 ERROR
AND
AH, Al -
MASK FOR ERROR EXPECTED
PARITY ERROR EXIT
MDV
AX,O
RESTORE AX TO 0000
JNZ
C 13
EXIT
IF PARITY ERROR
MOV
oX.OAA55H
WRITE THE INIT]Al DATA PATTERN
C3:
SUB
DJ .0]
START AT BEG]NN]NG OF BLOCK
SUB
S I. S I
INITIALIZE DEST]NAT]ON POINTER
MOV
CX,BX
SETUP BYTE COUNT FOR LOOP
MOV
AX ,OX
GET THE PATTERN
REP
STOSW
STORE 64K BYTES
!
32K
WORDS)
MOV
CX,BX
SET COUNT
SUB
S I. S]
START AT BEG]NN]NG
C6:
lODSW
GET THE FIRST WR]TTEN
XOR
AX,DX
INSURE DATA AS EXPECTED
lOOPZ
C6
LOOP T i l l DONE OR ERROR
CI3
EXIT IF NOT EXPECTED
(ERROR 8llS ONI
CHECK FOR I/O OR BASE MEMORY ERROR
IN
AL,PORT B
CHECK FOR 1 la-PAR
J
TY CHECK
XCHG
AL, AH
-
SAVE ERROR
IN
AL,DMA PAGE+o
CHECK FOR R/W OR
] /0 ERROR
AND
AH, AL ­
TEST6
5-93

Advertisement

Table of Contents
loading

Table of Contents