DOS Function Index - by Number
This index lists all INT 21H functions, organized by function number,
and identifying the DOS versions under which they are available.
See DOS Function Index - by DOS Version to see functions in the
chronological order in which they were added to DOS.
See DOS Function Index - Quick Reference Subset for a one-screen summary.
Versions DOS Function
┌────┐ ───────────────────────────────────────────────────────────────────
│1.0+│ 00H Terminate a Program
│1.0+│ 01H Keyboard Input
│1.0+│ 02H Display Output
│1.0+│ 03H Auxiliary Input
│1.0+│ 04H Auxiliary Output
│1.0+│ 05H Printer Output
│1.0+│ 06H Console I/O
│1.0+│ 07H No Echo Unfiltered Console Input
│1.0+│ 08H No Echo Console Input
│1.0+│ 09H Display String
│1.0+│ 0aH Buffered String Input
│1.0+│ 0bH Check Input Status
│1.0+│ 0cH Clear & Input
│1.0+│ 0dH Reset Disk
│1.0+│ 0eH Select DOS Default Disk
│1.0+│ 0fH Open File via FCB
│1.0+│ 10H Close File via FCB
│1.0+│ 11H Find 1st Matching File via FCB
│1.0+│ 12H Find Next Matching File via FCB
│1.0+│ 13H Delete File via FCB
│1.0+│ 14H Read Sequential File via FCB
│1.0+│ 15H Write Sequential File via FCB
│1.0+│ 16H Create File via FCB
│1.0+│ 17H Rename File via FCB
│?.? │ 18H (unknown) ◄obsolete►
│1.0+│ 19H Query DOS Default Disk
│1.0+│ 1aH Set Disk Transfer Address (DTA)
│1.0+│ 1bH Get Drive Info (current disk)
│2.0+│ 1cH Get Drive Info (any disk)
│?.? │ 1dH (unknown) ◄obsolete►
│?.? │ 1eH (unknown) ◄obsolete►
│2.0+│ 1fH Get Drive Parameter Block (current disk) ◄wasUndoc►
│?.? │ 20H (unknown) ◄obsolete►
│1.0+│ 21H Read Random File Record
│1.0+│ 22H Write Random File Record
│1.0+│ 23H Query File Size via FCB
│1.0+│ 24H Set Random File Block Address
│1.0+│ 25H Set Interrupt Vector
│1.0+│ 26H Create Program Segment Prefix
│1.0+│ 27H Read Random File Block
│1.0+│ 28H Write Random File Block
│1.0+│ 29H Parse Filename
│1.0+│ 2aH Query DOS Date
│1.0+│ 2bH Set DOS Date
│1.0+│ 2cH Query DOS Time
│1.0+│ 2dH Set DOS Time
│1.0+│ 2eH Set/Reset Verify Switch
│2.0+│ 2fH Query Disk Transfer Address (DTA)
│2.0+│ 30H Get DOS Version Number
│2.0+│ 31H Terminate & Stay Resident
│2.0+│ 32H Get DPB (Drive Parameter Block) ◄wasUndoc►
│2.0+│ 3300H Query Break-Check Flag
│2.0+│ 3301H Set Break-check level
│2.0+│ 3305H Get Boot Drive ◄wasUndoc►
│5.0+│ 3306H Get DOS Version Info (and HMA use)
│2.0+│ 34H Get InDOS Address (DOS Reentrancy Status) ◄wasUndoc►
│2.0+│ 35H Get Interrupt Vector
│2.0+│ 36H Get Disk Free Space
│?.? │ 3700H Query Switchar ◄obsolete►
│?.? │ 3701H Set Switchar ◄obsolete►
│2.0+│ 38H Get/Set Country-dependent Info
│2.0+│ 39H Create a New Directory -- MKDIR
│2.0+│ 3aH Delete a Directory -- RMDIR
│2.0+│ 3bH Set DOS Default Directory -- CHDIR
│2.0+│ 3cH Create a File via Handle
│2.0+│ 3dH Open a File via Handle
│2.0+│ 3eH Close a File Handle
│2.0+│ 3fH Read from File via Handle
│2.0+│ 40H Write to File via Handle
│2.0+│ 41H Delete File
│2.0+│ 42H Set File Pointer
│2.0+│ 4300H Query File Attribute
│2.0+│ 4301H Set File Attribute
│2.0+│ 4400H IOCTL Query Device/File Flags
│2.0+│ 4401H IOCTL Set Device/File Flags
│2.0+│ 4402H IOCTL Receive Control Data from Char Device
│2.0+│ 4403H IOCTL Send Control Data to Character Device
│2.0+│ 4404H IOCTL Receive Control Data from Block Device
│2.0+│ 4405H IOCTL Send Control Data to Block Device
│2.0+│ 4406H IOCTL Query Handle Input Status
│2.0+│ 4407H IOCTL Query Handle Output Status
│3.0+│ 4408H IOCTL Does Drive Use Removable Media
│3.1+│ 4409H IOCTL Is Drive Remote
│3.1+│ 440aH IOCTL Is File/Device Remote
│3.1+│ 440bH IOCTL Set Sharing Retry Count
│3.3+│ 440cH 45H IOCTL Set Retry Iteration Count
│3.3+│ 440cH 4AH IOCTL Select Code Page
│3.3+│ 440cH 4CH IOCTL Start Code Page Prepare
│3.3+│ 440cH 4DH IOCTL End Code Page Prepare
│4.0+│ 440cH 5Fh IOCTL Set Display Mode
│3.3+│ 440cH 65H IOCTL Query Retry Iteration Count
│3.3+│ 440cH 6AH IOCTL Query Current Code Page
│3.3+│ 440cH 6BH IOCTL Query Code Page List
│4.0+│ 440cH 7Fh IOCTL Query Display Mode
│3.2+│ 440dH 40H IOCTL Set Device Parameters
│3.2+│ 440dH 41H IOCTL Write Track on Logical Drive
│3.2+│ 440dH 42H IOCTL Format Track on Logical Drive
│4.0+│ 440dH 46H IOCTL Set Media ID
│3.2+│ 440dH 47H IOCTL Set Access Flag
│3.2+│ 440dH 60H IOCTL Query Device Parameters
│3.2+│ 440dH 61H IOCTL Read Track on Logical Drive
│3.2+│ 440dH 62H IOCTL Verify Track on Logical Drive
│5.0+│ 440dH 66H IOCTL Query Media ID
│4.0 │ 440dH 67H IOCTL Query Access Flag
│3.2+│ 440dH 68H IOCTL Sense Media Type
│3.2+│ 440eH IOCTL Query Logical Drive Map
│3.2+│ 440fH IOCTL Set Logical Drive Map
│5.0+│ 4410H IOCTL Query IOCTL Support for Handle
│5.0+│ 4411H IOCTL Query IOCTL Support for Device
│2.0+│ 45H Duplicate a File Handle
│2.0+│ 46H Redirect a Handle
│2.0+│ 47H Query Default Directory
│2.0+│ 48H Allocate Memory / Query Free Memory
│2.0+│ 49H Free Allocated Memory Block
│2.0+│ 4aH Shrink or Expand a Memory Block
│2.0+│ 4b00H Execute a Program -- EXEC
│2.0+│ 4b01H Load Program ◄wasUndoc►
│2.0+│ 4b03H Load Overlay
│5.0+│ 4b05H Set Execution State
│2.0+│ 4cH Terminate Program
│2.0+│ 4dH Get Program Exit Code
│2.0+│ 4eH Find 1st Matching File
│2.0+│ 4fH Find Next Matching File
│2.0+│ 50H Set PSP ◄wasUndoc►
│2.0+│ 51H Query Current PSP ◄wasUndoc►
│????│ 52H Get DOS Variables ◄undoc►
│????│ 53H Convert BPB to DPB ◄undoc►
│2.0+│ 54H Get DOS Verify State
│2.0+│ 56H Rename/Move a File
│2.0+│ 5700H Query File Time/Date
│2.0+│ 5701H Set File Time/Date
│3.0+│ 5800H Query Memory Allocation Strategy
│3.0+│ 5801H Set Memory Allocation Strategy
│5.0+│ 5802H Query Upper-Memory Link State
│5.0+│ 5803H Set Upper-Memory Link State
│3.0+│ 59H Get Extended Error Info
│3.0+│ 5aH Create Unique Temporary File
│3.0+│ 5bH Create New File
│3.1+│ 5c00H Lock File Access
│3.1+│ 5c01H Unlock File Access
│4.0+│ 5d0aH Set Extended Error
│3.1+│ 5e00H Query Network Node Name
│3.1+│ 5e02H Set Network Printer Setup
│3.1+│ 5e03H Query Network Printer Setup
│3.1+│ 5f02H Network Query Assign-List Entry
│3.1+│ 5f03H Make Network Connection
│3.1+│ 5f04H Delete Network Connection
│????│ 60H Query TrueName ◄undoc►
│2.0+│ 62H Query Current PSP ◄wasUndoc►
│3.3+│ 6501H Get Extended Country Information
│3.3+│ 6504H Get Uppercase Table
│3.3+│ 6505H Get Filename Character Table
│3.3+│ 6506H Get Collating Sequence Table
│3.3+│ 6507H Get Double-Byte Character Set
│3.3+│ 6520H Upshift Character
│3.3+│ 6521H Upshift String
│3.3+│ 6522H Upshift ASCIIZ String
│3.3+│ 6601H Query Active Code Page
│3.3+│ 6602H Activate Code Page
│3.3+│ 67H Set File Handle Count
│3.3+│ 68H Commit File
│4.0+│ 6cH Extended Open/Create
└────┘
See Also: Superseded DOS Functions
Obsolete DOS Functions
DOS Versions (summary of differences from version to version)
-♦-