IBM 5170 Technical Reference page 205

Hide thumbs Also See for 5170:
Table of Contents

Advertisement

01E8
EB 00
JMP
SHORT $+2
10 DELAY
01EA
E4 11
IN
AL, CMOS_PORH1
01EC
A8 10
TEST
AL, 'r,-MEM_S IZE
WAS THE CONFIG=:MEM_SIZE_DETERMINED?
01EE
14 06
JZ
H_OK1A
GO IF YES
;-------- MEMORY SIZE ERROR
01F0
BE 0000 E
MOV
S I, OFfSET E1_A
PRINT SIZE ERROR
01F3
EB 0000 E
CALL
E_MSG
o I SPLAY ERROR
; -------­ CHECK fOR CRT ERROR
07F6
80 3E 0015 R DC
H_OK1A: CMP
MfG_ERR_fLAG,OCH
CHECK FOR MONO CRT ERROR
07FB
BE 0000 E
MOV
Sl,OffSET E1_B
PRELOAD MONO CRT ERROR
DUE
74 OA
JZ
H_OK1B
GO !
F
YES
~
OBOO
OB05
OB07
80 3E 0015 R 00
75 06
BE 0000 E
CMP
JNZ
MOV
MfG_~ERRJLAG,ODH
J
01(
SI, OFFSET El_C
CHECK FOR COLOR CRT ERROR
CONT I NUE
I F NOT
CRT ERROR MSG
oeOA
E8 0000 E
H_OK1B: CALL
E_MSG
: ===
==::
=== == = '"
====="'==""=====:::== =::
= =
=
= =-==
;------- CHECK fOR COMBO HARD fiLE/DISKETTE CARD
0800
0800
ll3 OF
MOV
BL,OFH
OUTTER LOOP COUNT WAIT FOR BUSY OFF
080F
0811
26 C9
6A 01 F7
SUB
MOV
CX,CX
DX,Ol F7H
HARD FILE STATUS PORT
0814
0815
0817
EC
A8 80
74 00
IN
n:ST
JZ
AL,DX
AL,080H
J_OK2
GET THE STATUS
I S THE CONTROLLER BUSY?
CONT I NUE I F NOT
0819
0816
E2 F9
FE C6
LOOP
DEC
J OK1
BI
TRY AGAIN
DECREMENT OUTTER LOOP
0810
75 F5
JNZ
J
OK1
TRY AGAIN I F NOT ZERO
081 F
24 DC
AND
AI:,OCH
BITS2&3=0
t f COMBO CARD
0821
74 1A
JZ
J OK3
GO
I f YES
0823
E6 33 90
JMP
F15C
NO COMBO CARD
0826
0829
BA 01 F4
BO 55
MOV
MOV
OX, 1 F4H
AL,055H
VER I FY COMBO CARD
WRITE TO THE CYL BYTE
082B
082C
EE
E6 00
OUT
JMP
DX,AL
SHORT $+2
10 DELAY
082E
EC
IN
AL,DX
CHECK DATA WRITTEN
=
DATA READ
082F
3C 55
CMP
AL,055H
0831
15 25
JNZ
F15C
GO
I F NOT
0833
80 AA
MOV
AL,OAAH
WR
ITE
ANOTHER PATTERN
0835
E[
OUT
DX,AL
0836
EB 00
JMP
SHORT $+2
10
DELAY
0838
0839
0836
EC
3C AA
75 1B
IN
CMP
JHZ
AL,DX
AL,OAAH
F15C
IS DATA PATTERN THE SAME?
GO
I F NOT
0830
C6 06 008F R 01
J_OK3:
MOV
Hf_CNTRL, DUAL
SET THE HF/FLOPPY SWITCH ON
;------­ INITIALIZE FLOPPY fOR DRIVE TYPE
0842
0844
BO 30
E6 80
MOV
OUT
AL,3DH
MFG_PORT, AL
; <><><><><><><><><> <><><><><><>
; <><><>CHECKPO I NT 30 <><><><><>
0846
E8 0000 E
CALL
OSKETTE_SETUP
;
INITIALIZE FLOPPY
;-------- CHECK fOR 2ND DISKETTE DRIVE
0849
E8 0000 E
CALL
DDS
INSURE DATA SEGMENT
~
084C
80 3E 0091
R 00
CMP
DSK STATE+1,O
IS THERE A DRIVE 2 ATTACHED?
0851
74 05
JZ
F15C
GO I f NOT
0853
80 DE 0010 R 40
OR
BYTE PTR EQU I P _FLAG,40H
SET SECOND DRIVE INSTALLED
;-~---~-
INITIALIZE HARD FILE
085B
OB5A
BO 3E
E6 80
F15C:
MOV
OUT
AL,3EH
MFG_PORT ,AL
; <><><><><><><><><><><><><><><>
; <><><>CHECKPO I NT 3E <><><><><>
085C
BO 8E
MOV
AL, DIAG_STATUS
GET
THE CMOS STATUS
085E
E6 70
OUT
CMOS PORT ,AL
0860
EB 00
JMP
SHORT $+2
0862
E4 71
IN
AL, CMOS_PORT+1
0864
0866
A8 CO
75 OF
TEST
JNZ
AL,OCOH
ROM_SCAN 1
BATTERY/CHECKSUM OK
BYPASS DISK SETUP I F NOT
0868
80 92
MOV
AL, HD FILE TYPE
I
NSURE CMOS OEF I NES THE TYPE OF HARD FILE
086A
E6 70
OUT
CMOS_PORT ,AL
086C
086E
0870
0872
[6
00
E4 71
3C 00
74 03
JMP
IN
CMP
JZ
SHORT $+2
AL, CMOS_ PORT+1
AL,OH
ROM_SCAN1
INSURE TYPE IS DEFINED
BYPASS
0
I SK SETUP
IF NOT
0814
[S 0000 E
CALL
01 SK_SETUP
INITIALIZE HARD
FI
LE
;
------­-­-
---~
-
~
-
­ - -
---­--­-­
-
~
-
­
-­-­----­-­---­-
­
-
­
---- --­
; TEST.22
; CHECK FOR OPTIONAL ROM FROM C800->EQOO IN 2K BLOCKS
:
;
(A VALID MODULE HAS '55AA'
IN THE FIRST
2
LOCATIONS:
LENGTH INDICATOR (LENGTH/512)
IN THE 3RD LOCATION
:
0877
0817
0878
087A
FB
BO 3B
E6 80
AND TEST/IN IT. CODE STARTING IN THE 4TH LOCATION)
:
h~~
-
SC;;N
~ ~
-----­ --­ --­ --------------------- --­ ----------- --­
-
ST I
; ALLOW INTERRUPTS
MOV
AL,3BH
; <><><><><><><><><><><><><><>
OUT
MfG_PORT,AL
;<><><>CHECKPOINT 3B <><><><>
081C
E8 0000 E
CALL
DDS
SET REAL MODE DATA SEGMENT
081F
BO OA
MOV
AL,10
LINE FEED ON CRT
OB81
E8 0000 E
CALL
PRT_HEX
0884
ROM_SCAN:
;------- SET DMA MASK AND REQUEST REGISTERS
0884
2A CO
SUB
AL,AL
0886
E6 02
OUT
oMA18+2,AL
SEND ZERO TO MASK REG
088B
EB 00
JMP
SHORT $+2
~
OSSA
E6
04
OUT
DMA1B+4,AL
SEND ZERO TO REQ REG
088C
BA C800
MOV
oX,ocaOOH
SET BEG I NN I NG ADDRESS
088F
ROM~SCAN2:
088F
8E oA
MOV
DS,DX
0891
0893
0895
2B DB
8B 07
53
SUB
MOV
PUSH
BX,BX
AX,I
BX]
BX
SET
BX""OOOO
GET 1ST WORD fROM MOCULE
0896
0897
089A
5B
3D AA55
75 06
POP
CM'
JNZ
BX
AX,OAA55H
NEXT ROM
BUS
SETTLI~:G
::=
TO 10 WORD?
PROCEED TO 11EXT ROM I
F
NOT
089C
E8 0000 E
CALL
ROM_CHECK
GO CHECK OUT MODULE
089F
EB 05 90
JMP
ARE_WE_DONE
CHECK FOR END OF ROM SPACE
08A2
NEXT_ROM:
08A2
08A6
08A6
8'
C2 0080
8'
FA EOOO
AOO
ARE WE DONE:
-
-
CMP
OX,OOBOH
oX,OEDOOH
PO I NT TO NEXT 2K ADDRESS
AT EDOOO YET?
Test 2 5-63

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents