EasyManua.ls Logo

IBM XT 5160

IBM XT 5160
420 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...
IBM
P~rsonal
Computer
MACRO
Assembler
Version
2.00
OSKETTE
- - 0 I
110/86
0 I
SKETTE
ADAPTER B I
OS
1-8
01-10-86
·--
--
----------------------------------------
--
--
----
-------
--
---
DISK
CHANGE PROC NEAR
-
TEST
OHF
CNTRL,OUAL
TEST
CONTROLLER
1.0.
JNZ
DC1-
..IMP
FNC_ERR
ERROR FOR
TH
I
SKI
NO
OF
CONTROLLER
DEC S I CHECK FOR
SET
DASD
TYPE
04
JNZ
FS_ERR
BAD
COMMAND
EXIT
IF
NOT
VALID
TYPE
TEST
ODSK
STATE[DI),DRV
DET
DRIVE
DETERMINED?
JZ
ASSUME -
IF
ST I
LL
NOT DETERM I NED ASSUME
MOV
AL,MED
DET+RATE
300
TEST
ODSK
STATE[DI)
,FMT
CAPA
MULTIPLE
FORMAT
CAPABILITY?
JNZ
OR_IT_IN
-
IF
1.2
M THEN
DATA
RATE
300
; I
NO
I
CATE
MED I A REMOVED
SET UP
TRANSLATE
STATE
TO
COMPATIBLE
MODE
VAR
IOUS
CLEANUPS
GET SAVED
AL
TO
BL
PUT
BACK FOR RETURN
;
SET
TIMEOUT,
NO
DR
I VE
TRANSLATE
STATE
TO
COMPATIBLE
MODE
VAR
10US
CLEANUPS
GET
SAVED
AL
TO
BL
PUT
BACK FOR RETURN
TRANSLATE
STATE
TO
PRESENT
ARCH.
GET
MEDIA
STATE
INFORMATION
DR
I VE
PRESENT
?
JUMP
IF
NO
DRIVE
80
TRACK
DR
I VE ?
I F
SO
, CHECK CHANGE
LINE
GO
CHECK S
TATE
OF 0 I SK CHANGE
LI
NE
CHANGE
LINE
NOT ACT I VE
I
OR
IN
THE
CORRECT
STATE
ODSKETTE
STATUS,BAD
CMD
I UNKNOWN
STATE,BAD
COMMAND
SHORT
SO-
-
ENDP
ODSK_STATE[DI)
,AL
XLAT
OLD
SETUP
END
BX -
AL,BL
S I ; CHECK FOR
1.
2M
MED
I A I N
1.
2M DR I VE
NOT
12
I
BYPASS
I F NOT
ODSK
STATE[DI)
,MEO
DET+RATE
500
I
SET
STATE
VARIABLE
SHORT
SO
-;
RETURN TO
CALLER
OHF
CNTRL,
DUAL
TEST
CONTROLLER
1.0.
S3
-
MED CHANGE ; CHECK FOR T I ME_OUT
ODSKETTE
STATUS,
T I
ME
OUT
SO
- -
1FT
I
ME
OUT
TELL
CALLER
SI
; CHECK FOR
320/360K
IN
1
.2M
DRIVE
NOT
320
12
I
BYPASS
I F NOT
ODSK
STATE[D
I)
,MED
DET+DBL
STEP+RATE
300
I
SET
STATE
SHORT
SO
- - -
ODSKETTE
STATUS,
T I
ME
OUT
SHORT
FIN
I S -
ENDP
AH
=
OOSKETTE
STATUS
00
- 0 I
SK
CHANGE
LI
NE I
NACTI
VE,
CY = 0
06
- 0 I
SK
CHANGE
LI
NE ACT I
VE,
CY
= 1
XLAT
OLD
SETUP
END
BX,SI-
AL,BL
XL
AT
NEW
AL,OOSK
STATE[DI)
AL,AL
-
DC
NON
AL-;TRK
CAPA
SETIT
-
READ DSKCHNG
FINIS
MOV
..IMP
CALL
CALL
POP
MOV
RET
MOV
DEC
JNZ
OR
..IMP
ASSUME:
OR
IT
IN:
- -
OR
SO:
FORMAT_SET
S3:
NOT
320
12:
-
-DEC
JNZ
OR
..IMP
.----------------------------------------------------------------
SET
MEDI
A
-
TH
I S ROUT I NE
SETS
THE
TYPE
OF MED I A AND OATA
RATE
TO
BE
USED FOR
THE
FOLLOW I
NG
FORMAT OPERAT I
ON.
ON
ENTRY:
;
[BP)
= SECTOR PER TRACK
;
[BP+l)
= TRACK #
01
=
DRIVE
#
ON
EXIT:
ODSKETTE
STATUS
REFLECTS
STATUS
;
IF
NO
ERROR:
NOT
320:
-
TEST
JZ
CALL
CMP
JZ
·--------------------------
---
-----------
---
--
----
-
-------
-------
FORMAT
SET
PROC NEAR
-
CALL
XLAT
NEW
;
TRANSLATE
STATE
TO
PRESENT
ARCH.
PUSH S I - ; SAVE DASD
TYPE
MOV
AX,SI
;
AH
= ? ,
AL
= DASD
TYPE
XOR
AH,AH
;
AH
= 0 ,
AL
= DASD
TYPE
MOV
S I
,AX
; S I = DASD
TYPE
AND ODSK
STATE[DI)
,NOT
MED
DET+DBL
STEP+RATE
MSK I
CLEAR
STATE
DEC S I - - I CHECK FOR
320/360K
MED I A &
DR
I
VE
JNZ
NOT
320
I
BYPASS
I F NOT
OR
ODSK
STATE[DI)
,MED
DET+RATE
250
I
SET
TO
320/360
..IMP
SHORT
SO
- -
;
ON
EXIT:
·-------------
----
-----------------------------------------------
FORMAT
SET
TH
I S ROUT I NE I S USED TO
ESTABLI
SH
THE
TYPE
OF
MED I A TO
BE
USED FOR
THE
FOLLOW I
NG
FORMAT OPERAT I
ON
ON
ENTRY:
S I
LOW
= DASD
TYPE
FOR FORMAT
01
=
DRIVE
#
ON
EX
IT:
ODSKETTE
STATUS
REFLECTS
STATUS
;
AH
=
ODSKETTE
STATUS
CY
= 1
IF
ERROR
DCl
:
CALL
MOV
OR
JZ
TEST
JZ
DCO:
CALL
JZ
SETIT:
MOV
FINIS:
CALL
CALL
MOV
MOV
RET
DC_NON:
OR
..IMP
DISK_CHANGE
185
186
181
188
189
02BO
190
02BO
F6
06
008F
R 0 I
191
02B5
15
03
192
02B1
E9
0110
R
193
02BA
194
02BA
E8
0404
R
195
02BO
8A
85
0090
R
196
02C
1
OA
CO
191
02C3
14
19
198
02C5
A8
01
199
02C1
14
05
800
801
02C9
E8
OB21 R
802
Oj2CC
14
05
803
804
02CE
C6
06
0041
R
06
805
806
0203
E8
0432
R
801
0206
E8
0832
R
808
0209
8B
DE
809
020B
8A
C3
810
0200
C3
811
812
020E
813
020E
80
OE
0041
R
80
814
02E3
EB EE
815
02E5
816
811
818
819
820
821
822
823
824
825
826
821
828
829
02E5
830
02E5
E8
0404
R
831
02E8
56
832
02E9
8B
C6
833
02EB
32
E4
834
02EO
8B
FO
835
02EF
80
AS
0090
R
OF
836
02F4
4E
831
02F5
15
01
838
02F1
80
80
0090
R
90
839
02FC
EB
3E
840
841
02FE
842
02FE
F6
06
008F
R 01
843
0303
14
OA
844
0305
E8
05F5
R
845
0308
80
3E
0041
R
80
846
0300
14
20
841
848
030F
4E
849
0310
15
01
850
0312
80
80
0090
R
10
851
0311
EB
23
852
853
0319
854
03194E
855
031A
15
01
856
031
C
80
80
0090
RIO
851
032
I
EB
19
858
859
0323
860
0323
4E
861
0324
15
20
862
863
0326
F6
85
0090
R
04
864
032B
14
09
865
0320
BO
50
866
032F
F6
85
0090
R
02
861
0334
15
02
868
869
0336
810
0336
BO
90
811
812
0338
813
0338
08
85
0090
R
814
815
033C
816
033C
E8
0432
R
811
033F
E8
0832
R
818
0342
5B
819
0343
8A
C3
880
0345
C3
881
882
0346
883
0346
C6
06
0041
R 01
884
034B
EB
EF
885
886
0340
881
888
889
890
891
892
893
894
895
896
891
898
5-30
DISKETTE
(01/10/86)

Table of Contents

Related product manuals