IBM Personal Computer MACRO Assembler
Version 2.00
DSKETTE - -
0 I 110/86
0 I SKETTE ADAPTER B I OS
1-2
01-10-86
I
I
I
RESERVED
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
5-24
(AH)=16 DISK CHANGE LINE STATUS
OUTPUT REG I STERS
(AH)
-
00 - 0 I SK CHANGE LI NE NOT ACTI VE
06 - 0 I SK CHANGE LI NE ACT I VE
&
CARRY BIT ON
( DL ) - DR I VE NUMBER
(0 - I ALLOWED, V ALUE CHECKED)
(AH) = 11 SET DASD TYPE FOR FORMAT
I NPUT REG I STERS
(ALl
-
00 -
NOT USED
01
-
DISKETTE 320/360K IN 360K DRIVE
02 -
DISKETTE 360K IN 1 .2M DRIVE
03 -
0 I SKETTE I. 2M I N I. 2M DR I VE
04 -
0 I SKETTE 720K
IN 120K DR I VE
( DL I
- DR I VE NUMBER
(0 - 1 ALLOWED, VALUE CHECKED;
DO NOT USE WHEN 0 I SKETTE ATTACH CARD USED)
(AHI = 18 SET MED I A TYPE FOR FORMAT
I NPUT REG I STERS
(CH I
- LOW ORDER 8 OF lOB I TS MAX I MUM NUMBER OF TRACKS
(CLl
- BITS 1
&
6 - HIGH ORDER TWO BITS OF MAXIMUM TRACKS
-
BITS 5 THRU 0 - MAX I MUM SECTORS PER TRACK
( DL I
- DR I VE NUMBER
(0 - 1 ALLOWED, VALUE CHECKED)
OUTPUT REG I STERS
(ES:DI)
- POINTER TO DRIVE PARAMETERS TABLE FOR THIS MEDIA TYPE,
UNCHANGED IF (AH)
I S NON- ZERO
(AHI
-
OOH, CY = 0, TRACK AND SECTORS/TRACK COMBINATION IS SUPPORTED
-
01H, CY = 1, FUNCTION IS NOT AVAILABLE
-
OCH, CY = I, TRACK AND SECTORS /TRACK COMB I NA TI ON I S NOT SUPPORTED
- -
-----
- -- - -
- -
-
-
-
-
-- --
- -
--
- - -
-------
----- - - - -
- -
- - - -
-
- - - -
----
-
- - -
--
--
-
- -------
DISK CHANGE STATUS IS ONLY CHECKED WHEN A MEDIA SPECIFIED IS OTHER
THAN 360 KB DR I VE.
I F THE 0 I SK CHANGE LINE I S FOUND TO BE
ACT I VE THE FOLLOW I NG ACT IONS TAKE PLACE:
ATTEMPT TO RESET 0 I SK CHANGE LI NE TO I NACT I VE STATE.
I F ATTEMPT SUCCEEDS SET DASD TYPE FOR FORMAT AND RETURN 0 I SK
CHANGE ERROR CODE
IF ATTEMPT FAILS RETURN TIMEOUT ERROR CODE AND SET DASD TYPE
TO A PREDETERMINED STATE INDICATING MEDIA TYPE UNKNOWN.
I F THE 0 I SK CHANGE LINE I N I NACT I VE PERFORM SET DASD TYPE FOR FORMAT.
DATA VAR I ABLE -- (110 I SK PO INTER
DOUBLE WORD PO I NTER TO THE CURRENT SET OF 0 I SKETTE PARAMETERS
OUTPUT FOR ALL FUNCT IONS
AH = STATUS OF OPERATION
STATUS BITS ARE DEF I NED I N THE EQUATES FOR (110 I SKETTE STATUS
VAR I ABLE I N THE OAT A SEGMENT OF TH I S MODULE
-
CY = 0
SUCCESSFUL OPERATION (AH=O ON RETURN, EXCEPT FOR READ DASD
TYPE AH= ( 15) ) •
CY = 1
FA I LED OPERAT I ON (AH HAS ERROR REASON)
FOR READIWR I TEIVER IFY
OS, BX, OX, CX PRESERVED
NOTE:
I F AN ERROR I S REPORTED BY THE 0 I SKETTE CODE, THE APPROPR I ATE
ACT I ON I S TO RESET THE 0 I SKETTE, THEN RETRY THE OPERAT I ON.
ON READ ACCESSES, NO MOTOR START DEL A Y I S TAKEN,
SO THAT
THREE RETRIES ARE REQUIRED ON READS TO ENSURE THAT THE
PROBLEM I S NOT DUE TO MOTOR START-UP.
LIST
; DISKETTE STATE MACHINE -
ABSOLUTE ADDRESS 40:90
(DRIVE Al
&
91
(DRIVE B)
.LlST
I
I
PRESENT STATE
000:
360K
IN 360K DRIVE UNESTABLISHED
001: 360K
IN 1.2M DRIVE UNESTABLISHED
010:
1.2M IN 1.2M DRIVE UNESTABLISHED
011: 360K
IN 360K DRIVE ESTABLISHED
100: 360K
IN 1.2M DRIVE ESTABLISHED
101:
1.2M IN 1 .2M DRIVE ESTABLISHED
I 10: RESERVED
1 I 1: NONE OF THE ABOVE
------>
MEDI AIDR I VE ESTABLI SHED
-------------->
DOUBLE STEPPING REQUIRED (360K IN 1.2M
DRIVE)
------------------------------>
DATA TRANSFER RATE FOR THIS DRIVE:
00: 500 KBS
01: 300 KBS
10: 250 KBS
1 1: RESERVED
LIST
STATE OPERATION STARTED -
ABSOLUTE ADDRESS 40:92
(DRIVE A)
&
93
(DRIVE B)
PRESENT CYLI NDER NUMBER -
ABSOLUTE ADDRESS 40: 94
(DR I VE A)
&
95
(DR I VE B)
DISKETTE (01/10/86)