Virtual Devices (3.1) (vdag31qh.hlp) (Table of Contents; Topic list)
Important Notice
The pages on this site contain documentation for very old MS-DOS software, purely for historical purposes. If you're looking for up-to-date documentation, particularly for programming, you should not rely on the information found here, as it will be woefully out of date.
Exec_VxD_Int
                                                     Up Next Previous
────────────────────────────────────────────────────────────────────────────
 
include vmm.inc
 
push    dword ptr Interrupt     ; number of interrupt to execute
VMMcall Exec_VxD_Int
 
The Exec_VxD_Int service executes the specified software interrupt. Virtual
devices uses this service to call MS-DOS or BIOS functions outside the
context of a nested execution block.
 
Parameter  Description
────────────────────────────────────────────────────────────────────────────
 
Interrupt  Specifies the number of the interrupt to execute.
 
Return Value
 
One or more registers may contain return values depending the function of
the specified interrupt.
 
Comments
 
Before calling this service, a virtual device must set registers to values
that are appropriate for the specified software interrupt. This service
supports all MS-DOS and BIOS functions that are supported in protected mode
programs.
 
This service does not change the client registers and flags, so there is no
need for the virtual device to save and restore the client register
structure. This service also pops the interrupt number from the stack.
 
Example
 
The following examples calls the MS-DOS function Get Version (Interrupt 21h,
Function 30h):
 
mov     ax, 3000h
push    dword ptr 21h
VMMcall Exec_VxD_Int
mov     [Major], al     ; major MS-DOS version
mov     [Minor], al     ; minor MS-DOS version
 
See Also
 
VxDint