IBM AT 5170 Technical Reference page 269

Table of Contents

Advertisement

IBM Personal Computer MACRO Assembler
V.rsion 2.00
1- I
DSKETTE --
06/'0/65
DISKETTE BIOS
06-' 0-65
I
PAGE
" 6 , ' 2 '
2
TITLE DSKETTE -- 06/10/65
DISKETTE BIOS
3
.266C
4
.LIST
5
0000
CODE
SEGMENT BYTE PUBL I C
.
6
7
PUBLIC
DISK
INT I
8
PUBLIC
SEEK-
­
PUBLIC
DSKETTE SETUP
10
PUBLIC
DISKETTE_'O_'
12
13
EXTRN
DDS: NEAR
LOAD
IDS)
WITH DATA SEGMENT SELECTOR
14
EXTRN
0 I SK BASE ,NEAR
DISKETTE PARAMETER TABLE LOCATION
IS
EXTRN
WA ITF:NEAR
FIXED WAIT ROUTINE -
(CX) -'5.066 US
"
EXTRN
CMOS READ1NEAR
READ CMOS LOCATION RDUTINE
..
16
17
INT '3H --- ----------------- -------------------------------------------­
18
DISKETTE
I/O
THIS INTERFACE PROVIDES ACCESS TO THE
5
1/4~
DISKETTE DRIVES
20
320/360K
DISKETTE DRIVES AND
1.2104 DISKETTE DRIVES SUPPORTED
21
INPUT
22
(AH 1= OOH
RESET 0 I SKETTE SYSTEM
23
HARD RESET TO NEC, PREPARE COMMAND, RECALIBRATE REQUIRED
24
ON ALL DR
I
VES
25
26
(AHI= 01H
READ THE STATUS OF THE SYSTEM INTO
(AHI
27
ODSKETTE_STATUS FROM LAST OPERATION IS USED
28
2'
REGISTERS FOR READ/WRITE/VERIFY/FORMAT
30
(DLI
-
DRIVE NUMBER
(0-1
ALLOWED, VALUE CHECKED)
31
(DHI
-
HEAD NUMBER
(0-1
ALLOWED, NOT VALUE CHECKED)
32
(CHI
-
TRACK NUMBER
INOT VALUE CHECKED)
33
MEDIA
DRIVE
TRACK NUMBER
34
320/360
320/360
0-39
35
320/360
1.2M
0-39
36
t.2M
1.2M
0-79
37
720K
72DK
0-79
38
(CL)
-
SECTOR NUMBER
(NOT VALUE CHECKED, NOT US EO FOR FORMAT)
3.
MED
I
A
DR [VE
SECTOR NUMBER
40
320/360
320/360
1-8/9
41
320/360
1.2M
1-8/9
42
1.2M
1.2M
1-15
43
720K
720K
1-9
44
(AL)
-
NUMBER OF SECTORS
(NOT VALUE CHECKED)
45
MEDIA
DRIVE
MAX NUMBER OF SECTORS
46
320/360
320/360
6/9
47
320/360
I.2M
8/9
48
1.2101
'.2104
15
49
720K
720K
9
50
5 I
(ES: BX)
-
ADDRESS OF BUFFER
i
REQU I RED FOR VER I FY
I
52
53
54
(AH) = 02H
READ THE DESIRED SECTORS
INTO MEMORY
55
56
(AH) = 03H
WR I TE THE DES I RED SECTORS FROM MEMORY
57
58
IAH)= 04H
VERIFY THE DESIRED SECTORS
5'
60
(AH)
=
05H
FORMAT THE DES[RED TRACK
61
FOR THE FORMAT OPERATION, THE BUFFER POINTER
(ES,BX)
MUST
62
POINT TO THE COLLECTION OF DESIRED ADDRESS FIELDS FOR THE
63
TRACK.
EACH FIELD
I S COMPOSED OF 4 BYTES,
(C, H, R, N I, WHERE
64
C ;;: TRACK NUMBER, H;;:HEAD NUMBER. R "" SECTOR NUMBER. N;;: NUMBER
65
OF BYTES PER SECTOR
(00=128,
01=256,
02=512.
03=1024,)
66
THERE MUST BE ONE ENTRY FOR EVERY SECTOR ON THE TRACK.
67
THI S INFORMATION IS USED TO FIND THE REQUESTED SECTOR OUR [NG
68
READ/WRITE ACCESS.
6'
PRIOR TO FORMATTING A DISKETTE,
IF THERE EXISTS MORE THAN
70
ONE SUPPORTED MEDIA FORMAT TYPE WITHIN THE DRIVE IN QUESTION,
71
THEN "SET DASD TYPE"
(INT
13H, AH =
17HI MUST BE CALLED TO
72
SET THE
0
I SKETTE TYPE THAT I S TO BE FORMATTED.
IF" SET DASD
73
TYPE"
IS NOT CALLED,
THE FORMAT ROUTINE W[LL ASSUME THE
74
MEDIA FORMAT TO BE THE MAXIMUM CAPACITY OF THE DRIVE.
75
IN' ORDER TO FORMAT 320/360K MEDIA
[N
EITHER A 320/360K OR
76
I
.2M D [SKETTE DR I VE THE GAP LENGTH FOR FORMAT PARAMETER
77
OF DISK BASE MUST BE CHANGE TO 050H.
ALSO THE EOT
78
PARAMETER
(LAST SECTOR ON TRACK) MUST BE SET TO THE
79
DESIRED NUMBER OF SECTORS/TRACK -
8 FOR 320K,
9
FOR 360K.
80
DISK BASE IS POINTED TO BY DISK POINTER LOCATED AT
81
ABSOLUTE ADDRESS 0:78.
82
WHEN 320/360K FORMAT OPERATIONS ARE COMPLETE. THE PARAMETERS
83
SHOULD BE RESTORED TO THEIR RESPECTIVE INITIAL VALUES.
84
85
IAH)= 08H
READ DR[VE PARAMETERS
86
REG I STERS
87
INPUT
88
(DL)
- DRIVE NUMBER
(0-(
ALLOWED.
VALUE CHECKED)
8'
OUTPUT
'0
(ES=DI)
POINTS TO DISK BASE
(CHI
-
LOW ORDER 8 OF 10 BITS MAXIMUM NUMBER OF TRACKS
"
. 2
(CLI
-
BITS 7 & 6 - HIGH ORDER TWO BITS OF MAXIMUM TRACKS
.3
-
81 TS 5 THRU 0 -
MAX I MUM SECTORS PER TRACK
94
(DH)
-
MAX [MUM HEAD NUMBER
95
(DLl
NUMBER OF DISKETTE DRIVES
INSTALLED
.6
(BHl
-
0
97
(BLl
-
B[TS 7 THRU 4 -
0
'8
elTs 3
THRU 0
VALID DRIVE TYPE VALUE IN CMOS
..
(AX)
0
100
UNDER THE FOLLOWING CIRCUMSTANCES:
101
'1)
THE DRIVE NUMBER
IS
I NVA1...I0,
102
(21
THE DRIVE TYPE
IS UNKNOWN AND CMOS IS NOT PRESENT,
103
(31
THE DR I VE TYPE I S UNKNOWN AND CMOS I S BAD,
104
(4) OR THE DRIVE TYPE
IS UNKNOWN AND THE CMOS DR[VE TYPE IS INVALID
105
THEN,ES,AX,BX,CX,DH,DI;;:O ;
DL;;:NUh4BER OF DR[VES.
10.
IF NO DRIVES ARE PRESENT THEN: ES,AX,BX,CX,DX,DI:O.
107
@DSKETTE_STATUS
=
0 AND CY
I S RESET.
DISKETTE
5-97

Advertisement

Table of Contents
loading

Table of Contents