|
|
Copyright 1991 David Jurgens |
INT 13,8 - Get Current Drive Parameters (XT & newer)
AH = 08
DL = drive number (0=A:, 1=2nd floppy, 80h=drive 0, 81h=drive 1)
on return:
AH = status (see INT 13,STATUS)
BL = CMOS drive type
01 - 5¼ 360K 03 - 3½ 720K
02 - 5¼ 1.2Mb 04 - 3½ 1.44Mb
CH = cylinders (0-1023 dec. see below)
CL = sectors per track (see below)
DH = number of sides (0 based)
DL = number of drives attached
ES:DI = pointer to 11 byte Disk Base Table (DBT)
CF = 0 if successful
= 1 if error
Cylinder and Sectors Per Track Format
│F│E│D│C│B│A│9│8│7│6│5│4│3│2│1│0│ CX
│ │ │ │ │ │ │ │ │ │ └─┴─┴─┴─┴─┴── sectors per track
│ │ │ │ │ │ │ │ └─┴────────── high order 2 bits of cylinder count
└─┴─┴─┴─┴─┴─┴─┴────────── low order 8 bits of cylinder count
- the track/cylinder number is a 10 bit value taken from the 2 high
order bits of CL and the 8 bits in CH (low order 8 bits of track)
- many good programming references indicate this function is only
available on the AT, PS/2 and later systems, but all hard disk
systems since the XT have this function available
- only the disk number is checked for validity
|
|
Esc or Alt-X to exit |
int 13,8 |
Home/PgUp/PgDn/End ←↑↓→ |