Jump to content

Draft:Diskette Parameter Table

From Wikipedia, the free encyclopedia


Diskette Parameter Table (DPT) is a group of bytes that stores the information about the active floppy disk that bootloader loaded from by BIOS.

It can be achieved using the Interrupt vector table in x86 microprocessor architecture family. The DPT's Interrupt index is 1Eh. The starting address of DPT can be achieved using LDS/LES REG16, [1Eh * 4] instructions in x86 microprocessors. The values in DPT are mostly used to calculate the Cylinder-head-sector address from linear addresses of data in the diskette.

Layout

[edit]

A usual Diskette Parameter Table consists of 11 bytes:

Structure of a DPT
Offset Description
00h bits 7-4 : step rate
bits 3-0 : head unload time
01h bits 7-1 : head load time
bit 0 : non-DMA mode (always 0)
02h Delay until motor turned off. (In clock ticks)
03h Bytes per sector.
00h = 128
01h = 256
02h = 512
03h = 1024
04h Sectors per track. (Maximum if different for different tracks.)
05h length of gap between sectors
2Ah for 5.25"
1Bh for 3.5"
06h Data length (Ignored if bytes-per-sector field nonzero)
07h Gap length when formatting
50h for 5.25"
6Ch for 3.5"
08h Format filler byte (default F6h)
09h Head settle time in milliseconds
0Ah Motor start time in 1/8 seconds
[edit]