Note: This API call is for DOS personality only. Use Family API for portability.

2018/09/07 07:04 · prokushev

Int 21H, AH=0EH


1 and higher



Family API


      AH = 0Eh
      DL = new default drive (00h = A:, 01h = B:, etc)


AL = number of potentially valid drive letters


under Novell NetWare, the return value is always 32, the number of drives that NetWare supports

under DOS 3.0+, the return value is the greatest of 5, the value of LASTDRIVE= in CONFIG.SYS, and the number of drives actually present on a DOS 1.x/2.x single-floppy system, AL returns 2 since the floppy may be accessed as either A: or B: otherwise, the return value is the highest drive actually present

DOS 1.x supports a maximum of 16 drives, 2.x a maximum of 63 drives, and 3+ a maximum of 26 drives

under Novell DOS 7, this function returns the correct LASTDRIVE value even when the undocumented LASTDRIVE=27..32 directive was used in CONFIG.SYS

“parse FCB” (see AH=29h) can be used to determine whether a drive letter is valid

See also



Process manager INT 20H, INT 21H: 00H, 25H, 26H, 31H, 34H, 35H, 4CH, INT 22H, INT 27H, INT 28H
File manager INT 25H, INT 26H, INT 21H: 0DH, 0EH, 0FH, 10H, 11H, 12H, 13H, 14H, 15H, 16H, 17H, 19H, 1AH, 1BH, 1CH, 21H, 22H, 23H, 24H, 27H, 28H, 29H, 2EH, 2FH, 32H, 3305H, 36H, 39H, 3AH, 3BH
Character Device I/O INT 29H, INT 21H: 01H, 02H, 03H, 04H, 05H, 06H, 07H, 08H, 09H, 0AH, 0BH, 0AH, 0CH
Signals INT 23H, INT 24H, INT 21H: 3300H, 3301H, 3302H
Memory manager
Date and Time INT 21H: 2AH, 2BH, 2CH, 2DH
Misc INT 21H: 30H, 3306H, 3700H, 3701H, 3702H, 3703H
NLS INT 21H: 3303H, 3304H, 3800H, 3801H
2018/09/04 19:23 · prokushev

en/docs/dos/api/int21/0e.txt · Last modified: 2020/12/07 09:56 by prokushev