summaryrefslogtreecommitdiff
path: root/v4.0/src/INC/MSGDCL.INC
diff options
context:
space:
mode:
Diffstat (limited to 'v4.0/src/INC/MSGDCL.INC')
-rw-r--r--v4.0/src/INC/MSGDCL.INC108
1 files changed, 108 insertions, 0 deletions
diff --git a/v4.0/src/INC/MSGDCL.INC b/v4.0/src/INC/MSGDCL.INC
new file mode 100644
index 0000000..52f3d77
--- /dev/null
+++ b/v4.0/src/INC/MSGDCL.INC
@@ -0,0 +1,108 @@
1; This Macro was removed from sysmsg.inc. We had to remove this
2; macro and put it into it's own include file in order to clear up
3; some assembly errors. MS MASM will not allow a public declaration
4; during the second pass of the assembler. IBM MASM will allow this.
5;
6;
7;
8;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
9;; $M_DECLARE Macro
10;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
11 ;
12$M_DECLARE macro numcls ;
13 $M_DCOUNT = 0 ;
14 REPT numcls ;
15 $M_DCOUNT = $M_DCOUNT + 1 ;
16 $M_DECLARE2 %$M_DCOUNT ;
17 ENDM ;
18
19 IF COMR
20 IFNDEF $M_RT2 ; If Resident table is not in this assembly,
21 EXTRN $M_RT2:BYTE ; Must be external
22 ELSE
23 PUBLIC $M_RT2
24 ENDIF ;
25 ELSE
26 IFNDEF $M_RT ; If Resident table is not in this assembly,
27 EXTRN $M_RT:BYTE ; Must be external
28 ELSE
29 PUBLIC $M_RT
30 ENDIF ;
31 ENDIF
32
33 $M_CHECK $M_GET_MSG_ADDRESS ; If this subroutine is not in this assembly,
34 $M_CHECK $M_MSGSERV_1 ; If this subroutine is not in this assembly,
35 $M_CHECK $M_MSGSERV_2 ; If this subroutine is not in this assembly,
36
37ENDM ;
38 ;
39$M_DECLARE2 macro innum ;
40 IF NOT COMR ; IF Not resident COMMAND.COM
41 IF NOT COMT ; IF Not transient COMMAND.COM
42 IFNDEF $M_CLS_&innum ; IF class is not in this assembly,
43 IF FARmsg ;
44 EXTRN $M_CLS_&innum:FAR ; Must be external
45 ELSE ;
46 EXTRN $M_CLS_&innum:NEAR ; Must be external
47 ENDIF ;
48 ELSE ; ELSE
49 PUBLIC $M_CLS_&innum ; Label PUBLIC
50 ENDIF ;
51 ELSE ; ELSE
52 IFDIF <$M_CLS_&innum>,<$M_CLS_1> ; IF NOT $M_CLS_1 or
53 IFDIF <$M_CLS_&innum>,<$M_CLS_2> ; IF NOT $M_CLS_2 then
54 IFNDEF $M_CLS_&innum ; IF class is not in this assembly,
55 IF FARmsg ;
56 EXTRN $M_CLS_&innum:FAR ; Must be external
57 ELSE ;
58 EXTRN $M_CLS_&innum:NEAR ; Must be external
59 ENDIF ;
60 ELSE ; ELSE
61 PUBLIC $M_CLS_&innum ; Label PUBLIC
62 ENDIF ;
63 ENDIF ;
64 ENDIF ;
65 ENDIF ;
66 ELSE ; ELSE
67 IFDIF <$M_CLS_&innum>,<$M_CLS_1> ; IF NOT $M_CLS_1 or
68 IFDIF <$M_CLS_&innum>,<$M_CLS_2> ; IF NOT $M_CLS_2 then
69 IFNDEF $M_CLS_&innum ; IF class is not in this assembly,
70 IF FARmsg ;
71 EXTRN $M_CLS_&innum:FAR ; Must be external
72 ELSE ;
73 EXTRN $M_CLS_&innum:NEAR ; Must be external
74 ENDIF ;
75 ELSE ; ELSE
76 PUBLIC $M_CLS_&innum ; Label PUBLIC
77 ENDIF ;
78 ENDIF ;
79 ENDIF ;
80 ENDIF ;
81ENDM ;
82 ;
83$M_CHECK macro parm ;
84 IFNDEF parm ; IF class is not in this assembly,
85 IF FARmsg ;
86 EXTRN parm:FAR ; Must be external
87 ELSE ;
88 EXTRN parm:NEAR ; Must be external
89 ENDIF ;
90 ELSE
91 IF COMR
92 ELSE
93 PUBLIC parm
94 ENDIF
95 ENDIF ;
96ENDM ;
97 ;
98;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
99;;
100;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
101 ;
102IF1 ;
103 $M_DECLARE %$M_NUM_CLS ; Declare any class not in this assembly
104ENDIF ;
105 ;
106;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
107
108 \ No newline at end of file