EasyManua.ls Logo

IBM 5150 - Page 232

IBM 5150
393 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
LOt
OBJ
LINE
SOURCE
fFOZ
E605
fF04
8;'C4
EFOb
E60S
EFDa
59
EF09
58
EFOA
03Cl
fFoe
S9
EFOD
B002
EFOF
E60A
EFll
C3
EFI2
Eft2:
E81EOO
EFlS
7214
EFI?
8408
Ef19
E828FF
EFtC
EMCOD
EFIF
720A
EF21
A04200
EF24
2460
EF26 3e60
EF2:6
7<+02
EFlA
Fe
EF2B
EF2B C3
EF2:C
EF2C
800E410040
Enl
F9
EF32
C3
EF33
EF33
FB
EF34
53
Ens
51
EFl6
8302
EF38
33C9
EnA
EF3A
F6063E0080
EF3F
750C
EF41
E2F7
EF43
FECB
EF45 7SF3
EF47
800E410080
EF4C
F9
EF40
EF40 9C
EF4E
80263E007F
EF53
9D
EF54
59
EF55
58
EF56
C3
OUT
DNA+5,Al
MOV
AL,AH
OUT
DMA+5,AL
POP
CX
POP
AX
ADO
Ax.ex
POP
CX
2800
MOV
Al,2
;
MODf
FOR
8Z37
2801
OUT
DMA+IO
,AL ;
IUITIAlIZE
THE
DISKETTE
CHANNEL
2:802
RET
;
RETURN
TO
CALLER.
eFl
SET
BY
ABOVE
IF
ERROR
,e03
DNA_SETUP ENIlP
2804
;
---------------
------------------
-
----------
2805
j CHK_STAT_2
2806
THIS
ROUTINE HANDLES
THE
INTERRUPT RECEIVED AFTER
2607
A RECALIBRATE. SEEK,
OR
RESET
TO
THE
ADAPTER.
2606
THE
ItITERRUPT
IS
WAITED FOR.
THE
INTERRUPT STATUS SENSED.
2609
AUQ
THE
RESULT
RETUR~IED
TO
THE
CALLER.
2810
INPUT
2&11
NONE
2612
; OUTPUT
2813
ty
; a
SUCCESS
2814
CY
; 1 FAILURE
--
ERROR
IS
IN
DISKETTE_STATUS
2815
(AX)
DESTROYED
2816
;
---
---------
----------------
------
----------
2817
CHK_STAT_,
PROC
NEAR
2818
CALL
WAIT_INT
;
WAIT
FOR
THE
INTERRUPT
2819
JC
J34
;
IF
ERROR, RETURN
IT
2820
MOV
AH,OBH
;
SENSE
INTERRUPT STATUS
COMMAND
2521
CALL NEC_OUTPUT
2822
CALL RESULTS ;
READ
IN
THE
RESULTS
2523
JC
J34
; CHK2_RETURN
2824
MOV
Al,t4EC_STATUS
;
GET
THE
FIRST
STATUS BYTE
2825
ANO
AL,060H
; ISOLATE
THE
SITS
2826
CHP
AL,060H
; TEST
FOR
CORRECT
VALUE
2827
JZ
J3S
i
IF
ERRO~.
GO
MARK
IT
28,8
CLC
;
GOOD
RETURN
2829
J34:
2830
RET
; RETURN
TO
CALLER
2831
J35:
; CHK,_ERROR
2832
OR
o
ISKETTE_ST
A
TUS,
BAD_SEEK
2833
STC
;
ERROR
RETURN
CODE
2834
RET
2835
CHK_STAT_2
ENDP
2836
;
----
----------------------------------------
2837
;
WAIT_INT
2838
nils
ROUTINE WAITS
FOR
AN
INTERRUPT
TO
OCCUR
2839
A
TIME
OUT
ROUTINE TAKES PLACE OU;;!WG
THE
WAIT,
SO
2840
THAT
AN
ERROR
MAY
BE
RETURUED
IF
THE
DRIVE
IS
NOT
READY
2841
;
INPUT
2842
~lONE
2843
OUTPUT
2844
CY
; 0
SUCCESS
2845
CY
= 1 FAILURE
--
DISKETTE_STATUS
IS
SET ACCORDINGLY
2846
2847
(AX I
DESTROYED
J--------------------------------------------
2848
WAIT_INT
PROC'
NEAR
2849
STI
;
TURN
ON
INTERRUPTS, JUST
IN
CASE
2850
PUSH
ax
2851
PUSH
CX
; SAVE REGISTERS
2852
MOV
BL,2
; CLEAR
THE
COUNTERS
2853
XOR
ex,cx ;
FOR
2
SECOND
WAIT
Z554
J36:
2855
TEST
SEEK_STATUS,
HITJlAG
; TEST
FOR
INTERRUPT OCCURRING
2856
JHZ
J37
2857
LOOP
J3'
COUNT
DOWN
WHILE
WAITING
2858
DEC
BL
SECOND
LEVEl
COUNTER
2859
Jt~Z
J36
2860
OR
DISKETTE_STATUS, TIME_OUT I NOTHWG HAPPENED
2861
STC
ERROR
RETURN
2862
J37:
2863
PUSHF
; SAVE
CURRENT
CARRY
2864
Arm
SEEK_STATUS,NOT
INTJLAG
;
TURN
OFF INTERRUPT
FLAG
2865
POPF
;
RECOVER
CARRY
2866
POP
cx
2867
POP
ax
j
RECOVER
REGISTERS
2868
RET
;
GOOD
RETURN
CODE
COMES
FROM
TEST
INST
2869
WAlT_1NT
ENDP
A-39

Table of Contents

Other manuals for IBM 5150

Related product manuals