Format of DOS device driver header |
| Offset | Size | Description | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
00h |
DWORD |
pointer to next driver, offset=FFFFh if last driver | ||||||||||||||
|
04h |
WORD |
device attributes (see #01647,#01648) | ||||||||||||||
|
06h |
WORD |
device strategy entry point
|
||||||||||||||
|
08h |
WORD |
device interrupt entry point | ||||||||||||||
|
---character device--- |
||||||||||||||||
|
0Ah |
8 BYTEs |
blank-padded character device name | ||||||||||||||
|
---block device--- |
||||||||||||||||
|
0Ah |
BYTE |
number of subunits (drives) supported by driver | ||||||||||||||
|
0Bh |
7 BYTEs |
normally unused; sometimes contains signature to indicate
specific drivers:
|
||||||||||||||
|
---DoubleSpace/DriveSpace--- |
||||||||||||||||
|
12h |
2 BYTEs |
signature ",." (2Ch 2Eh) | ||||||||||||||
|
14h |
var |
preloading API entry point | ||||||||||||||
|
---CD-ROM--- |
||||||||||||||||
|
12h |
WORD |
reserved, must be 0000h appears to be another device chain |
||||||||||||||
|
14h |
BYTE |
drive letter, 01h=A:, etc. (must initially be 00h; this byte is set by MSCDEX when it loads) | ||||||||||||||
|
15h |
BYTE |
number of units | ||||||||||||||
|
16h |
6 BYTEs |
signature 'MSCDnn' where 'nn' is version (currently '00') (this field does not exist in most drivers) | ||||||||||||||
|
See Also: |