8.2.6 Input/Output Control (IOCTL) Functions

The MS-DOS input/output control (IOCTL) functions provide a consistent and expandable interface between programs and device drivers.

Following are the MS-DOS IOCTL functions. Minor codes associated with Generic IOCTL for Character Devices (Function 440Ch) and Generic IOCTL for Block Devices (Function 440Dh) are indented.

Function Description Version

4400h Get Device Data 2.0
4401h Set Device Data 2.0
4402h Receive Control Data from Character Device 2.0
4403h Send Control Data to Character Device 2.0
4404h Receive Control Data from Block Device 2.0
4405h Send Control Data to Block Device 2.0
4406h Check Device Input Status 2.0
4407h Check Device Output Status 2.0
4408h Does Device Use Removable Media 3.0
4409h Is Drive Remote 3.1
440Ah Is File or Device Remote 3.1
440Bh Set Sharing Retry Count 3.0
440Ch Generic IOCTL for Character Devices  
45h Set Iteration Count 3.3
4Ah Select Code Page 3.3
4Ch Start Code-Page Prepare 3.3
4Dh End Code-Page Prepare 3.3
5Fh Set Display Mode 4.0
65h Get Iteration Count 3.3
6Ah Query Selected Code Page 3.3
6Bh Query Code-Page Prepare List 3.3
7Fh Get Display Mode 4.0
440Dh Generic IOCTL for Block Devices  
40h Set Device Parameters 3.2
41h Write Track on Logical Drive 3.2
42h Format Track on Logical Drive 3.2
46h Set Media ID 4.0
60h Get Device Parameters 3.2
61h Read Track on Logical Drive 3.2
62h Verify Track on Logical Drive 3.2
66h Get Media ID 4.0
68h Sense Media Type 5.0
440Eh Get Logical Drive Map 3.2
440Fh Set Logical Drive Map 3.2
4410h Query IOCTL Handle 5.0
4411h Query IOCTL Device 5.0