summaryrefslogtreecommitdiff
path: root/v4.0/src/MAPPER/DELETE.ASM
diff options
context:
space:
mode:
Diffstat (limited to 'v4.0/src/MAPPER/DELETE.ASM')
-rw-r--r--v4.0/src/MAPPER/DELETE.ASM70
1 files changed, 70 insertions, 0 deletions
diff --git a/v4.0/src/MAPPER/DELETE.ASM b/v4.0/src/MAPPER/DELETE.ASM
new file mode 100644
index 0000000..c9dae66
--- /dev/null
+++ b/v4.0/src/MAPPER/DELETE.ASM
@@ -0,0 +1,70 @@
1;
2page 80,132
3;
4title CP/DOS DosDelete mapper
5;
6dosxxx segment byte public 'dos'
7 assume cs:dosxxx,ds:nothing,es:nothing,ss:nothing
8;
9; ************************************************************************* *
10; *
11; * MODULE: DosDelete
12; *
13; * FILE NAME: DOS012.ASM
14; *
15; * FUNCTION: This module removes a directory entry associated with a
16; * filename.
17; *
18; *
19; * CALLING SEQUENCE:
20; *
21; * PUSH@ ASCIIZ FileName ; FileName path
22; * PUSH@ DWORD 0 ; Reserved (must be zero)
23; * CALL DosDelete
24; *
25; * RETURN SEQUENCE:
26; *
27; * IF ERROR (AX not = 0)
28; *
29; * AX = Error Code:
30; * o Invalid file path name
31; *
32; * MODULES CALLED: DOS int 21H function 41H
33; *
34; *
35; *
36; *************************************************************************
37
38 public DosDelete
39 .sall
40 .xlist
41 include macros.inc
42 .list
43
44str struc
45old_bp dw ?
46return dd ?
47dtrm12 dd ? ; reserved, always 0
48asc012 dd ? ; file name path pointer
49str ends
50
51DosDelete proc far
52 Enter DosDelete ; push registers
53
54 lds dx,dword ptr [bp].asc012 ; file path name
55
56 mov ah,041h
57 int 21h ; delete the file
58 jc err012 ; jump if no error
59
60 sub ax,ax ; set good return code
61
62err012:
63 mexit ; pop registers
64 ret size str - 6 ; return
65
66DosDelete endp
67
68dosxxx ends
69
70 end