[<<Previous Entry]
[^^Up^^]
[Next Entry>>]
[Menu]
[About The Guide]
Int 21 Fn 69 U - DOS 4+ Internal - Get/set Disk Serial Number [D]
AH = 69h
AL = subfunction
00h get serial number
01h set serial number
BL = drive (0=default, 1=A, 2=B, etc)
DS:DX -> disk info (see below)
Return: CF set on error
AX = error code (see AH=59h)
CF clear if successful
AX destroyed
(AL = 00h) buffer filled with appropriate values from extended BPB
(AL = 01h) extended BPB on disk set to values from buffer
Notes: does not generate a critical error; all errors are returned in AX
error 0005h given if no extended BPB on disk
does not work on network drives (error 0001h)
buffer after first two bytes is exact copy of bytes 27h thru 3Dh of
extended BPB on disk
this function is supported under Novell NetWare versions 2.0A through
3.11; the returned serial number is the one a DIR would display,
the volume label is the NetWare volume label, and the file system
is set to "FAT16".
the serial number is computed from the current date and time when the
disk is created; the first part is the sum of the seconds/hundredths
and month/day, the second part is the sum of the hours/minutes and
year
the volume label which is read or set is the one stored in the extended
BPB on disks formatted with DOS 4.0+, rather than the special root
directory entry used by the DIR command in COMMAND.COM (use AH=11h
to find that volume label)
See Also: AX=440Dh
Format of disk info:
Offset Size Description
00h WORD info level (zero)
02h DWORD disk serial number (binary)
06h 11 BYTEs volume label or "NO NAME " if none present
11h 8 BYTEs (AL=00h only) filesystem type--string "FAT12 " or "FAT16 "
This page created by ng2html v1.05, the Norton guide to HTML conversion utility.
Written by Dave Pearson