]> wirehaze git hosting - MS-DOS.git/blob - v4.0/src/CMD/NLSFUNC/DOESMAC.INC

wirehaze git hosting

MZ is back!
[MS-DOS.git] / v4.0 / src / CMD / NLSFUNC / DOESMAC.INC
1 CallInstall MACRO name,mpx,fn,save,restore
2 BREAK MACRO subtitle
3 SUBTTL subtitle
4 PAGE
5 ENDM
6 .xcref break
7 IF Installed
8 IFNB <save>
9 SaveReg <save>
10 ENDIF
11 MOV AX,(mpx SHL 8) + fn
12 INT 2Fh
13 IFNB <restore>
14 RestoreReg <restore>
15 ENDIF
16 ELSE
17 Invoke name
18 ENDIF
19 ENDM
20
21 BREAK <SaveReg - save a set of registers>
22
23 SaveReg MACRO reglist ;; push those registers
24 IRP reg,<reglist>
25 ?stackdepth = ?stackdepth + 1
26 PUSH reg
27 ENDM
28 ENDM
29 .xcref SaveReg
30
31 BREAK <RestoreReg - unsave some registers>
32
33 RestoreReg MACRO reglist ;; pop those registers
34 IRP reg,<reglist>
35 ?stackdepth = ?stackdepth - 1
36 POP reg
37 ENDM
38 ENDM
39 .xcref RestoreReg
40 \1a