Function 18, subfunction 11 - get information on the disk subsystem.
Parameters:
- eax = 18 - function number
- ebx = 11 - subfunction number
- ecx = type of the table:
- 1 = short version, 10 bytes
- 2 = full version, 65536 bytes
- edx = pointer to the buffer (in the application) for the table
Returned value:
- function does not return value
Format of the table: short version:
- +0: byte: information about FDD's (drives for floppies),
AAAABBBB, where AAAA gives type of the first drive, BBBB -
of the second regarding to the following list:
- 0 = there is no drive
- 1 = 360Kb, 5.25''
- 2 = 1.2Mb, 5.25''
- 3 = 720Kb, 3.5''
- 4 = 1.44Mb, 3.5''
- 5 = 2.88Mb, 3.5'' (such drives are not used anymore)
For example, for the standard configuration from one 1.44-drive
here will be 40h, and for the case 1.2Mb on A: and 1.44Mb on B:
the value is 24h.
- +1: byte: information about hard disks and CD-drives, AABBCCDD,
where AA corresponds to the controller IDE0, ..., DD - IDE3:
- 0 = device is absent
- 1 = hard drive
- 2 = CD-drive
For example, in the case HD on IDE0 and CD on IDE2
this field contains 48h.
- +2: 4 db: number of the retrieved partitions on hard disks
at accordingly IDE0,...,IDE3.
If the hard disk on IDEx is absent, appropriate byte is zero,
otherwise it shows number of the recognized partitions, which
can be not presented (if the drive is not formatted or if
the file system is not supported). Current version of the kernel
supports only FAT16, FAT32 and NTFS for hard disks.
- +6: 4 db: reserved
Format of the table: full version:
- +0: 10 db: same as for the short version
- +10: 100 db: data for the first partition
- +110: 100 db: data for the second partition
- ...
- +10+100*(n-1): 100 db: data for the last partition
The partitions are located as follows: at first sequentially all
recoginzed partitions on HD on IDE0 (if present),
then on HD on IDE1 (if present) and so on up to IDE3.
Format of the information about partition
(at moment only FAT is supported):
- +0: dword: first physical sector of the partition
- +4: dword: last physical sector of the partition
(belongs to the partition)
- +8: byte: file system type:
16=FAT16, 32=FAT32, 1=NTFS
- other data are dependent on file system, are modified with
kernel modifications and therefore are not described
Remarks:
- The short table can be used for obtaining the information about
available devices.