summaryrefslogtreecommitdiff
path: root/v4.0/src/MAPPER/RMDIR.ASM
diff options
context:
space:
mode:
Diffstat (limited to 'v4.0/src/MAPPER/RMDIR.ASM')
-rw-r--r--v4.0/src/MAPPER/RMDIR.ASM53
1 files changed, 53 insertions, 0 deletions
diff --git a/v4.0/src/MAPPER/RMDIR.ASM b/v4.0/src/MAPPER/RMDIR.ASM
new file mode 100644
index 0000000..4925ac5
--- /dev/null
+++ b/v4.0/src/MAPPER/RMDIR.ASM
@@ -0,0 +1,53 @@
1page 80,132
2
3title CP/DOS DosRmDir mapper
4
5dosxxx segment byte public 'dos'
6 assume cs:dosxxx,ds:nothing,es:nothing,ss:nothing
7
8;**********************************************************************
9;*
10;* MODULE: dosrmdir
11;*
12;* FUNCTION: remove directory
13;*
14;* CALLING SEQUENCE:
15;*
16;* push@ asciiz directory name
17;* push dword reserved (must be zero)
18;* call dosrmdir
19;*
20;* MODULES CALLED: PC-DOS Int 21h, ah=3ah, remove subdirectory
21;*
22;*********************************************************************
23
24 public dosrmdir
25 .sall
26 include macros.inc
27
28str struc
29old_bp dw ?
30return dd ?
31rsrvd dd ? ; reserved
32asciiz dd ? ; directory name pointer
33str ends
34
35dosrmdir proc far
36
37 Enter dosrmdir ; push registers
38
39 lds dx,[bp].asciiz ; set pointer to directory name
40
41 mov ah,3ah ; load opcode
42 int 21h ; remove directory
43 jc exit ; check for error
44
45 sub ax,ax ; set good return code
46exit: Mexit ; pop registers
47 ret size str - 6 ; return
48
49dosrmdir endp
50
51dosxxx ends
52
53 end