1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
|
PAGE 55,132
.LIST
;
; Interrupt 2Eh Call
;
; From information originally published in
; PC magazine, April 28, 1987. Requires
; MASM 5.1 or later.
;
; Adapted by Bob Stout.
;
; NOTES: INT 2Eh passes a formatted command line
; directly to the resident portion of
; COMMAND.COM for execution. It functions
; similarly to the 'EXEC' function in DOS
; but is generally quicker. This is an
; undocumented DOS function and is subject
; to change in future releases of DOS. It
; also aborts any .BAT file which invokes
; a program which uses it. Use with care!
;
; Assemble with: MASM /Mx /z ...
; TASM /jMASM /mx /z ...
;
% .MODEL memodel,C ;Add model support via
;command line macros, e.g.
;MASM /Mx /Dmemodel=LARGE
.CODE
PUBLIC _Int_2E
_Int_2E PROC USES SI DI DS ES, command:PTR
Mov CS:SaveSP,SP
Mov CS:SaveSS,SS
IF @DataSize
Lds SI,command
ELSE
Mov SI,command
Endif
Int 2Eh
Mov AX,CS:SaveSS
Mov SS,AX
Mov SP,CS:SaveSP
Ret
SaveSS Dw ?
SaveSP Dw ?
_Int_2E ENDP
End
|