IBM 5170 Technical Reference page 217

Hide thumbs Also See for 5170:
Table of Contents

Advertisement

TITLE 01/03/84 TEST6 POWER ON SELF TEST
.lIST
PUBl I C
STCTST CNT
PUBl I CRaM_ERR
PUBLIC
BOOT_STRAP_,
PUBll C
XM I T_8042
PUBLI C
POST6
PUBLIC
HS
I NClUOE SEGMENT. SRC
0000
CODE SEGMENT BYTE PUBLIC
EXTRN
EO: NEAR
EXTRN
E MSG:NEAR
EXTRN
KBD RESET: NEAR
EXTHN
XPC-BYTE: NEAR
EXTRN
F1: NEAR
EXTHN
VECTOR TABLE: NEAR
EXTRN
NMI
INT:NEAR
EXTRN
PRINT SCREEN 1 :NEAR
EXTRN
BLI NK-I NT: NEAR
EXTRN
PRT HEX: NEAR
EXTRN
F3B:NEAR
EXT~N
PRT SEG:NEAR
EX i"RN
XPC-[3YTE:NEAR
EXTRN
El :NEAR
EXTRN
ROM CH[CK:NEAR
EXTRN
ROS- CHECKSUM: NEAR
EXTRN
SEEK: N[AR
EXTRN
F3: NEAR
EXTRN
EI<.R IJE[P:NEAR
EXTRN
P
~1SC:NEAR
[XTRN
START l:NEAR
EXIRN
f4:
NEAR
EXTRN
F4E:NEAR
EXTRN
DOS:NEAR
EXTRN
F3A: NEAR
EXTRN
OISK BASE: NEAR
EXTRN
F3D: NEAR
EXTRN
PROC SHUTOOWN: NEAl{
EXTRN
SYSINIT1 :NEAR
EXTRN
PROT PRT HEX: NEAR
EXTRN
OISK-IO:NEAR
EXTRN
HD
INT: NEAR
EXTRN
ca0
1
12: NEAR
EXTRN
BOOT_I NVA: NEAR
PAGE
ASSUME
CS: CODE
ASSUME
OS:DATA
0000
POST6
PROC
NEAR
;
--­----­---­---­
- - - -
--­--­----
-
--­- -­
-­---­---
­
---
­
-
­ -
---­
--­
TH I S SUBROUT
I
NE PERFORMS A READ/WR I TE STORAGE TEST ON A BLOCK
OF STORACE.
ENTRY REQU I
RE~1ENTS:
[S
ADDRESS OF STORAGE SEGMENT BE I NG TESTED
DS
=
ADDRESS OF STORAGE SEGMENT BE I NG TESTED
CX "" WORD COUNT OF STORAGE BLOCK TO BE TESTED
EX I I PAHAMETEHS:
ZERO FLAG
=
0
I F STORAGE ERROR (DATA COMPARE OR PAR I TV
~
CIIECK). AL:::;;O DENOTES A PARITY CHECK.
ELSE AL:::;;XOR'ED
BIT PATTERN OF THE EXPECTED OATA PATTERN VS THE ACTUAL
DATA READ.
AX, BX, CX, DX, 0 I, AND S I ARE ALL DESTROYED.
;
------­--­-­
-
-
-----­---­----­
--­
--­-
­- - - --
-----
­
--------
­
-­-­
0000
STGTST CNT
PROC
NEAR
0000
8B
09
-
MOV
BX,CX
SAVE WORD COUNT OF BLOCK TO TEST
OOU2
E4 61
IN
Al, PORT B
000
1
1
EB 00
JMP
SI-IORT $+2
10 DELAY
0006
DC DC
OR
AL, RAM PAR
OFF
TOGGLE PAR I TY CHECK LATCHES
0008
E6 61
OUT
PORT_.B-:;-AL -
GGGA
EB
00
JMP
SHORT $+2
10
D[LAY
OOOC
24 F3
AND
Al, RAM_PAR_ON
OOOE
E6 61
DUT
PORT_B,AL
; -------­ ROLL A BIT THfWUCH
rHE F I HST WORD
0010
8A 0001
MDV
DX,
0001 H
WRITE THE INIT DATA PATTERN
0013
89 0010
MOV
CX,16
ROll 16 BIT POSITIONS
0016
2B fF
Cl:
SUB
DI,OI
START AT BEGINING OF BLOCK
0018
2B
f6
SUB
51,
SI
INITIALIZE DESTiNATION POINTER
OOlA
8B C2
MDV
AX, DX
GET THE PATTERN
OOlC
AB
STOSW
STORE DATA PATTERN
001
D
2B
f6
SUB
51, S I
START AT BEGINNING
OOlF
AD
LODSW
GET THE FIRST WRITTEN
0020
33 C2
XDR
AX, OX
I NSURE DATA AS EXPECTED
0022
74 03
JZ
C1 A
0024
E9 00C5 R
JMP
C13
EXIT
I F NOT
0027
D1
E2
SHL
ox, ,
SHIFT BIT TO NEXT BIT POSITION
0029
E2 EB
lOOP
C1
lOOP TILL
~ONE
;-------­ CHECK CAS LINES FOR IIIGH BYTE LOW BYTE
002~
2B fF
SUB
01,01
START AT BEGINI NG OF BLOCK
0020
2B
F6
SUB
51,51
INITIALIZE DESTINATION POINTER
002F
2B
CO
SUB
AX,AX
WR I TE 0
0031
BA FFOD
I-tOV
DX,OFFOOH
0034
AB
STOSW
STORE DATA PATTERN
OU35
BF 0001
MOV
01,1
AT THE FIRST ODD LOCAT I ON
0038
C6 05 FF
MOV
BYTE PTR [01 J,OFFH
I-IRITE A BYTE OF FF
003~
2B FF
SUB
DI,DI
0030
003F
8B 05
33 C2
MOV
XOR
AX, WORD PTR ( DI]
AX,OX
GET THE DATA
CHECK THE FIRST WRITTEN
00 1 11
74 03
JZ
C1
B
0043
E9 DOCS R
JMP
C13
EXIT
I F NOT
~
0046
28 FF
C1
-
B,
SUB
01,01
START AT BEGINING OF BLOCK
0048
28 CO
SUB
AX,AX
WR I TE 0
004A
BA OOFF
MDV
DX,OOOFFH
0040
AB
STOSW
STORE DATA PATTERN
004E
2B FF
SUB
01,01
AT THE FIRST EVEN LOCATiON
0050
C6 05 FF
MOV
BYTE PTR [Dlj,OFFH
WRITE A BYTE OF FF
0053
2B FF
SUB
01, DI
BUS SETTLE
0055
OO~7
8B 05
33 C2
MOV
XOR
AX,WORD PTR [DI]
AX, OX
GET THE DATA
CHECK THE FIRST WRITTEN
0059
75 6A
JNZ
C13
EXIT
I F NOT
;------- TEMP SAVE FOR AX (PUSH NOT ALLOI-IED)
005B
E6 89
OUT
DMA PAGE+8,Al
SAVE AX
0050
86 CII
XCHG
AL,AH
005F
EB 00
JMP
SHORT $+2
0061
E6 SA
OUT
OMA_PAGE+9, AL
Test 6 5-75

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents