IBM 5170 Technical Reference page 250

Hide thumbs Also See for 5170:
Table of Contents

Advertisement

0295
Cl
DB
OCl H
0297
ORG
OFFSET CS: ??001O
0297
04
DB
4
0298
029A
029C
029£
02A2
8C CO
03 Cl
8E CO
81 E3 OOOF
58
110V
ADD
MOV
AND
POP
AX, ES
AX, CX
ES,AX
BX,OOOFH
AX
;
ES;BX CHANGED TO ES:OODX
02A3
59
POP
CX
02A4
2E:
FF A4 01 E8
R
JMP
WORD PTR CS:ISI + OFFSET Ml1
02A9
BAD COMMANO POP:
02A9
58
-
POP­
AX
02AA
58
POP
BX
02AS
02AB
0280
0282
C6 06 0074 R 01
BO
00
C3
BAO_COM~~e:
NOV
RET
01 SK_STATUSl ,BAO_CMO
AL,O
COMMAND ERROR
02B3
01 SK_I D_CDNT
ENOP
RESET THE DISK SYSTEM
(AH
=
OOOH)
02B3
02B3
0284
FA
E4 Al
DISK RESET
-
Cli
IN
PROC
NEAR
AL. I NT CTL PORT+l
**
10 DELAY NOT REQUIRED
**
GET THE MASK REG
02B6
24 BF
AND
AL,OBFH
-
ENABLE HARD FILE INT.
02B8
E6 Al
OUT
I NT_CTL_PORT+l. Al
02BA
FB
STI
START INTERRUPTS
02BB
02BO
02CO
02Cl
02C4
BO 04
BA 03F6
EE
B9 OOOA
49
ORO:
MOV
MOV
OUT
MOV
DEC
AL,04H
ox,
HF_REG_PORT
OX,AL
CX,10
ex
RESET
DELAY COUNT
02C5
02C7
75 FO
AD 0076
R
JNZ
MOV
ORO
Al.CONTROL_BYTE
; WAIT 4.8 MICRO-SEC
02CA
02CC
24 OF
EE
AND
OUT
Al,OFH
OX.AL
SET HEAD OPTION
TURN RESET OFF
02CO
E8 05DF R
CALL
NOT BUSY
0200
75 2F
JNZ
ORERR
TIME OUT ON RESET
0202
SA
01 F1
MOV
oX, Hf
_PORT+l
0205
EC
IN
AL,OX
GET RESET STATUS
0206
3C 01
CMP
AL,l
0208
75 27
JNZ
ORERR
BAD RESET STATUS
020A
02DF
02El
80 26 0047 R EF
2A 02
E8 03EA
R
AND
SUB
CALL
CMO_BlOCK+5,OEFH
DL,DL
INIT ORV
SET TO DR
1
VE
0
SET
MAX
HEADS
02E4
[8 0465
R
CALL
HD I SICRECAl
REGAL TO RESET SEEK SPEED
02E7
80 3E 0075 R 01
CMP
HF _NUM.
1
CHECK FOR DR I VE
1
02EC
76 lJD
JBE
ORE
02EE
02F3
02F5
80 OE 001j.7 R 10
82 01
E8 03EA R
OR
NOV
CALL
CMO_BLOCK+5, 01 OH
Ol,1
INIT_DRV
SET TO DRIVE 1
SET
MAX
HEADS
02F8
02
FB
0300
E8 0465 R
c6 06 0074 R 00
C3
ORE:
CALL
MOV
RET
HOI SI( RECAL
OISK3:TATUS1,0
RECAl TO RESET SEEK SPEED
I
GNORE ANY SET UP ERRORS
0301
0306
c6 06 0074 R 05
C3
DRERR:
MOV
RET
01 SK_STATUSl , BAD_RESET
CARD FAilED
0307
01 SICRESET
ENOP
;
----------- -------- ---------------- --- ------- --­
DISK STATUS ROUTINE
(AH:= 001H)
;
---------
-
--
-- - -- -
---
--
---
-
-----
--
-- -- -- -
--
- - --­
0307
RETURN STATUS
PROC
NEAR
0307
AD 0074 R
- MOV
AL, DISK STATUSl
; OBTAIN PREVIOUS STATUS
030A
C6 06 0074 R 00
MDV
01
SK_STATUS1, 0
; RESET STATUS
030F
C3
RET
0310
RETURN_STATUS
ENDP
;
-
--
-
-----
---
---------------------
--------------­
;
DISK READ ROUTINE
(AH
=
002H)
;
-
-
-
---------
-----------
--
-------
-
------
--------­
0310
PROC
NEAR
o
I SK_REA~OV
0310
c6 06 0048 R
20
CHO BLOCK+6,REAO CMO
0315
E9 04BB
R
JMP
COMMAND I
­
0316
01
SK_READ
ENOP
;
------- ----------------------------
------------­
DISK WRITE ROUTINE
(AH .: D03H)
0318
01 SK_WR I
TE
PROC
NEAR
0318
C6 06 0048 R 30
MOV
CMD_BLOCK+6, WRI TE_CMO
0310
E9 04FB R
JMP
COMMANDO
0320
01 SK_WR I TE
ENOP
:
-
.. --
--
-
-- - --
----
-
------
---
---
----
--
-------
-
----­
DISK VERI FY
(AH"" 004H)
;
---
--
-------
------
--------
--
.. -----
--
-----
-
-----­
0320
01 SK_VERf
PROC
NEAR
0320
c6 06 0048 R 40
MOV
CMD_BLOCK+6, VER I FY_CMD
0325
E8 0544 R
CALL
COMMAND
0328
75
08
JNZ
VERr EXIT
CONTROLLER STilL BUSY
032A
£8 05A5
R
CALL
WAIT­
0320
75 03
JNZ
VERF_EXIT
; TIME OUT
032F
E8 061 E
R
CALL
CHECK.STATUS
0332
VERF_EXIT:
0332
C3
RET
0333
DISK_VERF
ENOP
FORMATT I NG
(AH
:=
005H )
;
--- ---
-----
--- --------------------------- ---- --­
0333
FMT TRK PRoe
NEAR
FORMAT TRACK
(AH:= 005H)
0333
C6 06 0048
R
50
-
MOV
CMO_BLOCK+6, FMTTRK.CMD
0338
06
PUSH
ES
033Y
53
PUSH
BX
033A
E8 06B4 R
CAll
GET_VEC
GET 0 I SK PARMS ADDRESS
0330
26:
SA
47 OE
MOV
Al,ES:IBXj[ 14J
GET SECTORS/TRACI(
0341
A2 0043 R
MOV
CMO_BLOCK+l ,AL
SET SECTOR COUNT I N COMMAND
0344
5B
POP
BX
0345
07
POP
ES
0346
E9 0500 R
JMP
CHO_OF
GO EXECUTE THE COMMAND
0349
FMT TRK ENOP
PAGE
;
READ OASO TYPE
(AH:= 15H)
;
------- ----------------------------------
-- ---
0349
READ_OASD_TYPE
lABEL
NEAR
0349
REAO_O_T
PROC
FAR
; GET DR IVE PARAMETERS
0349
1 E
PUSH
OS
; SAVE REGISTERS
5-108 Disk

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents