SAMPLE: Reading the Boot Sector of a Drive

ID: Q102870

The information in this article applies to:

SUMMARY

BOOTSEC demonstrates how to use Interrupt 25h (absolute disk read) to read the boot sector (the first sector on head 0, cylinder 0) off of a drive (either a floppy disk drive or hard disk).

BOOTSEC checks to see whether the drive is one of the following:

   Drive            Detection Method
   ---------------------------------
   CD-ROM           Interrupt 2F calls to MSCDEX.
   Net drive        Windows API WNetGetConnection().
   RAM drive        Checks the boot sector to see if there is one FAT.
   Hard disk        Checks the media BYTE of the boot sector. If it is
                    equal to 0xF8h then it is a hard disk.
   Floppy disk      Checks the media BYTE of the boot sector. If it is
                    not equal to 0xF8h and it is not a RAM drive, net
                    drive, or CD-ROM drive, then it is a floppy disk drive.

BOOTSEC also shows how to implement a dialog box as a main window using a private dialog class.

MORE INFORMATION

The following file is available for download from the Microsoft Software Library:

 ~ LSTDDX.EXE (size: 44838 bytes) 

For more information about downloading files from the Microsoft Software Library, please see the following article in the Microsoft Knowledge Base:

   ARTICLE-ID: Q119591
   TITLE     : How to Obtain Microsoft Support Files from
               Online Services

The following information is contained in the boot sector: NOTE: The information contained in the boot sector was changed in MS-DOS 5.0. If this program is run on a disk that was formatted with a previous version of MS-DOS, then some of the fields in the structure will not be filled out, and the program may display garbage. The elements of the structure that were not changed will be displayed correctly.

Additional query words: INT softlib BOOTSEC.EXE KBFILE

Keywords          : kbsample kb16bitonly kbWinOS310 KrFileIO 
Version           : 3.10
Platform          : WINDOWS

Last Reviewed: December 12, 1998