2025-04-27 07:49:33 -04:00

47 lines
860 B
PHP
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

;/*
; * Microsoft Confidential
; * Copyright (C) Microsoft Corporation 1991
; * All Rights Reserved.
; */
CallInstall MACRO name,mpx,fn,save,restore
BREAK MACRO subtitle
SUBTTL subtitle
PAGE
ENDM
.xcref break
IF Installed
IFNB <save>
SaveReg <save>
ENDIF
MOV AX,(mpx SHL 8) + fn
INT 2Fh
IFNB <restore>
RestoreReg <restore>
ENDIF
ELSE
Invoke name
ENDIF
ENDM
BREAK <SaveReg - save a set of registers>
SaveReg MACRO reglist ;; push those registers
IRP reg,<reglist>
?stackdepth = ?stackdepth + 1
PUSH reg
ENDM
ENDM
.xcref SaveReg
BREAK <RestoreReg - unsave some registers>
RestoreReg MACRO reglist ;; pop those registers
IRP reg,<reglist>
?stackdepth = ?stackdepth - 1
POP reg
ENDM
ENDM
.xcref RestoreReg