en:docs:dos:api:int21:39

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
en:docs:dos:api:int21:39 [2021/03/24 01:55] – created prokusheven:docs:dos:api:int21:39 [2025/07/12 16:20] (current) prokushev
Line 13: Line 13:
 ===== Family API ===== ===== Family API =====
  
 +[[en:docs:fapi:DosMkDir]]
  
 ===== Input ===== ===== Input =====
  
-        AH = 39h +  * AH = 39h 
-        DS:DX -> ASCIZ pathname+  DS:DX -> ASCIZ pathname (maximum length 67 or 260 characters)
  
 ===== Return ===== ===== Return =====
  
- CF clear if successful +  * CF clear if successful 
-            AX destroyed +    AX destroyed 
-        CF set on error +  CF set on error 
-            AX = error code (03h,05h) (see #01680 at AH=59h/BX=0000h)+    AX = error code (03h,05h) (see #01680 at AH=59h/BX=0000h)
  
 ===== Notes ===== ===== Notes =====
  
-  all directories in the given path except the last must exist +all directories in the given path except the last must exist fails if the parent directory is the root and is full 
-        fails if the parent directory is the root and is full +         
-        DOS 2.x-3.3 allow the creation of a directory sufficiently deep that +DOS 2.x-3.3 allow the creation of a directory sufficiently deep that it is not possible to make that directory the current directory because the path would exceed 64 characters 
-          it is not possible to make that directory the current directory + 
-          because the path would exceed 64 characters +DOS 4+ checks for 67 path length (64 + driveletter + ':" + '\'
-        under the FlashTek X-32 DOS extender, the pointer is in DS:EDX+ 
 +OS/2 2.0+ MVDM checks for 260 path length (257 + driveletter + ':" + '\'
 +           
 +under the FlashTek X-32 DOS extender, the pointer is in DS:EDX
                      
 ===== See also ===== ===== See also =====
  
- AH=3Ah,AH=3Bh,AH=6Dh,AX=7139h,AH=E2h/SF=0Ah,AX=43FFh/BP=5053h +AH=[[en:docs:dos:api:int21:3a|3Ah - Remove directory]],AH=[[en:docs:dos:api:int21:3b|3Bh - Change directory]],AH=[[en:docs:dos:api:int21:6d|6Dh]],AX=[[en:docs:dos:api:int21:71:39|7139h - LFN Create directory]],AX=[[en:docs:dos:api:int21:43:ff|43FFh - LFN (bare DOS) Create directory]]/BP=5053h 
- INT 2F/AX=1103h,INT 60/DI=0511h+ INT 2F/AX=1103h
  
 ===== Note ===== ===== Note =====