free hit counter

IBM XT 5160 Technical Reference page 289

Hide thumbs Also See for XT 5160:
Table of Contents

Advertisement

LOC OBJECT
LINE
SOURCE
(BIOS FOR THE IBM PERSONAL COMPUTER XT)
1 1 /08/82
SEEK
;----- DRIVE
IS IN SYNCH WITH CONTROLLER,
SEEK TO TRACK
J28:
TH I S ROUT I NE WILL MOVE THE HEAD ON THE NAMED DR I VE TO THE
NAMED TRACK.
I F THE DR I VE HAS NOT BEEN ACCESSED SINCE THE
DR I VE RESET COMMAND WAS
ISSUED, THE DR I VE WILL BE RECALIBRATED.
INPUT
( DL )
=
DR I VE TO SEEK ON
(CH)
=
TRACK TO SEEK TO
OUTPUT
CY
=
0 SUCCESS
CY
=
1 FA I LURE - - 0 I SKETTE STATUS SET ACCORD I NGL Y
(AX)
DESTROYED
-
OUTPUT THE DR I VE NUMBER
GET THE I NTERUPT AND SENSE I NT STATUS
SEEK_ERROR
ESTABL I SH MASK FOR RECAL TEST
SAVE I NPUT VALUES
GET DR I VE VALUE
INTO CL
SH I FT
I T BY THE DR I VE VALUE
RECOVER TRACK VALUE
TES T FOR RECAL REQU I RED
NO RECAL
TURN ON THE NO RECAL BIT
I N FLAG
RECAL IBRATE COMMAND
SAVE SEGMENT
ZERO TO AX
I F FLAG SET, OUTPUT TO CONTROLLER
RETURN TO CALLER
PO I NT TO BLOCK
o
I V I DE BX BY 2, AND SET FLAG
FOR EX IT
GET THE WORD
RESTORE SEGMENT
AH,
[S I
+BX]
OS
DS:DATA
NEC_OUTPUT
ENDP
MOV
AH,OFH
SEEK COMMAND TO NEC
CALL
NEC OUTPUT
MOV
AH,i5L
DR I VE NUMBER
CALL
NEC OUTPUT
MOV
AH,CH
TRACK NUMBER
CALL
NEC OUTPUT
CALL
CHK::::STAT 2
GET ENDING I NTERRUPT AND
SENSE STATUS
; ----- WA IT FOR HEAD SETTLE
PUSHF
SAVE STATUS FLAGS
MOV
BX,18
GET HEAD SETTLE PARAMETER
CALL
GET_PARM
PUSH
CX
SAVE REG I STER
J29:
HEAD SETTLE
MOV
CX,550
1 MS-LOOP
OR
AH,AH
TEST FOR Tl ME EXP I RED
JZ
J31
J30:
LOOP
J30
DELAY FOR
I
MS
DEC
AH
DECREMENT THE COUNT
JMP
J29
DO I T SOME MORE
J31 :
POP
CX
RECOVER STATE
POPF
J32:
SEEK ERROR
RET
RETURN TO CALLER
SEEK
ENDP
.------------------------------------------------------------------------
SEEK
PROC
NEAR
MOV
AL, I
PUSH
CX
MOV
CL ,DL
ROL
AL,CL
POP
CX
TEST
AL,SEEK STATUS
JNZ
J28
-
OR
SEEK STATUS,AL
MOV
AH,01H
CALL
NEC OUTPUT
MOV
AH,i5L
CALL
NEC OUTPUT
CALL
CHK-STAT 2
JC
J32
GET PARM
-
TH I S ROUT I NE FETCHES THE I NDEXED PO I NTER FROM THE 0 I SK BASE
BLOCK PO I NTED AT BY THE OAT A VAR I ABLE 0 I SK PO INTER. A BYTE FROM
THAT TABLE I S THEN MOVED INTO AH, THE I NOEX OF THAT BYTE BE I NG
THE PARM IN BX
ENTRY --
BX
=
I NDEX OF BYTE TO BE FETCHED • 2
I F THE LOW BI T OF BX
I S ON, THE BYTE
I S I MMED I ATEL Y OUTPUT
TO THE NEC CONTROLLER
EXIT --
AH
=
THAT BYTE FROM BLOCK
MOV
POP
ASSUME
JC
RET
GET _PARM
e
_
GET PARM
PROC
NEAR
-
PUSH
OS
SUB
AX, AX
MOV
DS,AX
ASSUME
OS: ABSO
LOS
S I ,0 I SK PO INTER
SHR
BX, I
-
2724
2725
2726
2727
2728
2729
2730
2731
2732
2733
2734
2735
2736
2737
2738
2739
2740
2741
2742
2743
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764
2765
2766
2767
2768
2769
2770
2771
2772
2773
2774
2775
2776
2777
2778
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
2795
2796
2797
2798
2799
2800
280 I
2802
2803
2804
2805
2806
2807
2808
2809
2810
2811
EEBO 9C
EEBI
BBI200
EEB4 E8B5FF
EEB7 51
EEB8
EEB8 B92602
EEBB OAE4
EEBD 7406
EEBF
EEBF E2FE
EEC I FECC
EEC3 EBF3
EEC5
EEC5 59
EEC6 90
EEC7
EEC7 C3
EE9E
EE9E B40F
EEAO E89EFF
EEA3 8AE2
EEA5 E899FF
EEA8 8AE5
EEAA E894FF
EEAD E86200
EE7D
EE7D BOO 1
EE7F 51
EE80 8ACA
EE82 D2CO
EE84 59
EE85 84063EOO
EE89 7513
EE8B 08063EOO
EE8F B407
EE91
E8ADFF
EE94 8AE2
EE96 E8A8FF
EE99 E87600
EE9C 7229
EE7 A 72C5
EE7C C3
EE77 8A20
EE79
IF
EE71
C5367800
EE75 01 EB
EE6C
EE6C
1E
EE6D 2BCO
EE6F 8ED8
5-142
PC-XT System BIOS (11/08/82)

Hide quick links:

Advertisement

Table of Contents
loading

Table of Contents