Page 1 of 1

Floppy Disk Drive Parameter Table

Posted: Sun Oct 18, 2026 2:38 pm
by Skeletonz33
Does anyone know how to find documentation for the "drive parameter table". I found this when I was reading Ralf Brown's Interrupt List entry for INT 13h/AH=08h (read drive params)
In the return section, es:di being a pointer to a drive parameter table is mentioned, but I don't know how to find it and what format it uses.

The most promising piece of info on that page is
(Table 00242)
Values for diskette drive type:
01h 360K
02h 1.2M
03h 720K
04h 1.44M
05h ??? (reportedly an obscure drive type shipped on some IBM machines).
2.88M on some machines (at least AMI 486 BIOS)
06h 2.88M
10h ATAPI Removable Media Device

But that just says "table 00242", which may not be the drive parameter table, although that table is for floppy disks.

Re: Floppy Disk Drive Parameter Table

Posted: Sun Oct 18, 2026 5:10 pm
by Octocontrabass
Skeletonz33 wrote: ↑Sun Oct 18, 2026 2:38 pmDoes anyone know how to find documentation for the "drive parameter table".
Why do you want it?

Anyway, since floppy disks are ancient, a good place to check is IBM's BIOS Interface Technical Reference. (Newer BIOS functions are usually standardized elsewhere.)
Skeletonz33 wrote: ↑Sun Oct 18, 2026 2:38 pmBut that just says "table 00242", which may not be the drive parameter table, although that table is for floppy disks.
If you're looking in RBIL, you want table 01264.

Re: Floppy Disk Drive Parameter Table

Posted: Sun Oct 18, 2026 9:41 pm
by BenLunt
I too am curious as to why you are looking for this floppy parameter table.

Who has a floppy anymore anyway? Oh wait, I have a few, plus an 8in one wrapped up in plastic. :-)

If you are looking to program the FDC, others may disagree, but I believe the FDC is a great piece of hardware to learn how to communicate with the computer's hardware. You have to learn interrupts, how to set up the DMA, how to send and receive commands, as well as timing of these commands. A proper FDC/DMA driver(s) is a great learning experience so that when you move to more modern hardware, you can see where technology has improved the process, using more hardware/firmware and less software to complete the task.

Anyway, back to the table you are looking for. It was used by the BIOS and for the BIOS to keep track of what type of floppy disk was in the drive. As you might know, or will learn to know, a floppy disk, though physically identical, can be formatted many different ways, needing different timings. For example, the BIOS needs to know how long to wait for the head(s) to move from one cylinder to the next and things like this. This type of information was stored and then modified when a disk change is made, to keep track of these items.

Emulators, such as Bochs and QEMU, still emulate the FDC allowing you to write such a driver without having to have a physical drive to test with.

- Ben
https://www.fysnet.net/osdesign_book_series.htm