IBM 5150 Technical Reference page 163

Hide thumbs Also See for 5150:
Table of Contents

Advertisement

LaC OBJ
EE79 IF
EE7.A. 72C5
EE7t C3
EE7D
Ef70 8001
EElF 51
EEeo BACA
EE82 02eo
EE84 59
EE85 64063£00
EE89 7513
EEBB 08063EOO
EE8F 8407
££91 [8ADFF
EE94 8AEZ
££96 [BASFF
[[99 £87600
EE9C 7Z2:9
EE9E
EE9E 840F
EEAO E89EFF
EEAl SAEZ
EEAS £899Ff
EEAS 8A£S
EEAA £894Ff
HAD £86200
EEBO 9C
EEBI B81200
EEB4 E6B5FF
EEB7 51
EEB8
EEB8 B9Z602
EEBB OAE4
[EBD 7406
fEBF
EEBF E2FE
EECI FEce
EEC3 [Bn
EECS
Hes 59
EEC6 90
EECl
EEe7 C3
EEce
EEca 51
LINE
SOURCE
2669
POP
oS
, RESTORE SEGMENT
2670
ASSUNE
DS :DATA
2671
JC
; IF FlAG SET. OUTPlJT TO CON"mOLLER
2872
RET
; RETURN TO CAllER
2873
ENDP
2874
i-~----------------------------------------------------------------------
2675
I SEEK
2876
THIS ROUTINE WILL HOVE THE HEAO ON THE NAMED DR lYE TO THE
2877
NAMED TRACK.
IF THE DRIVE HAS NOT BEEN ACCESSED SINCE THE
2878
DRIVE RESET COMMAND WAS ISSUED, THE DRIVE WIll BE RECAlIBRATED.
2879
INPUT
2880
(Dll
=
DRIVE TO SEEK ON
2881
(CHI
=
TRACK TO SEEK TO
2662
~
OUTPUT
2863
CY
=
0 SUCCESS
2884
CY
=
1 FAILURE -- DISKETTE.STATUS SET ACCORDINGLY
2865
(AX J DESTROYED
2686
1-----------------------------------------------------------------------­
2887
SEEK
PROC
NEAR
2688
HOV
Al,!
1 ESTABLISH MASK FOR RECAl TEST
2869
PUSH
cx
1 SAVE INPUT VALUES
2890
HOV
Cl.DL
~
GET
DRIVE VALUE INTO CL
2891
ROL
AL,CL
I
SHIFT IT BY THE DRIVE VALUE
2892
POP
cx
; RECOVER TRACK VALUE
2893
TEST
AL,SEEK.STATUS
1 TEST FOR RECAl REQUIRED
2894
JNZ
J28
1 NO.RECAl
2895
OR
SEEK.STATUS,AL
; TURN
ON THE
NO RECAL BIT IN flAG
2696
HOV
AH,07H
; RECALIBRATE COMMAND
2897
CAll
NEC.OUTPUT
2898
HOV
AH.Dl
2899
CALL
NEC.OUTPUT
; OUTPUT THE DRIVE tu1BER
2900
CALL
CHK_STAT.2
J GET THE INTERUPT Atm SENSE INT STATUS
2901
JC
J32
; SEEK.ERROR
2902
2903
; ----- DRIVE IS IN SYNCH WITH CONTROLLER, SEEK TO TRACK
2904
2905
J28:
2906
HOV
AH.OFH
1 SEEK COMMAND TO NEC
2907
CALL
NEC.OUTPUT
2908
HOV
AH.OL
; DRIVE NUMBER
2909
CALL
NEC.OUTPUT
2910
HOV
AH,CH
I
TRACK t-U1BER
2911
CALL
NEC.OUTPUT
2912
CALL
CHK.STAT.2
I
GET ENDING INTERRUPT AND
2913
I
SENSE STA!US
2914
2915
;----- NAIT FOR HEAD SETTLE
2916
2917
PUSHF
I
SAVE STATUS FLAGS
2918
HOV
eX,16
; GET
HEAD SETTLE PARAMETER
2919
CALL
GET.PARN
2920
PUSH
cx
1 SAVE REGISTER
2921
J29:
J
HEAD SETTLE
2922
HOV
CX.SSG
; 1 MS lOOP
2923
OR
AH.AH
I
TEST FOR TINE EXPIRED
2924
JZ
J31
2925
J30:
2926
LOOP
J30
; DELAY FOR 1 MS
2927
OEC
Ali
; DECREMENT THE COUNT
2928
JHP
J2,
i
DO IT
SOME MORE
2929
J3l:
2930
POP
ex
; RECOVER STATE
2931
POPF
2932
J32:
I
SEEK.ERROR
2933
RET
; RETURN TO CALLER
2934
SEEK
EHOP
2935
; ------- ------.--- - ------------------ --- -- - -----------------------------­
2937
THIS ROUTINE SETS UP THE
D~
FOR REAO.IWRITE/vERIFY OPERATIONS.
2938
I INPUT
2939
(All
=
MODE BYTE FOR THE DMA
2940
(ES:BXI - ADDRESS TO READ/WRIlE THE DATA
2941
; QlJTPUT
2942
(AX I DESTROYED
2943
i -------------------- - -------------- ------- - - ---------------------------­
2944
2945
PUSH
ex
; SAVE THE REGISTER
5-70 System BIOS

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents