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.
Call_When_VM_Ints_Enabled
                                                     Up Next Previous
────────────────────────────────────────────────────────────────────────────
 
include vmm.inc
 
mov     edx, OFFSET32 RefData   ; points to reference data
mov     esi, OFFSET32 Callback  ; points to callback procedure
VMMcall Call_When_VM_Ints_Enabled
 
The Call_When_VM_Ints_Enabled service installs a callback procedure that the
system calls whenever the virtual machine enables interrupts. This service
calls the callback procedure immediately if interrupts are already enabled.
Virtual devices use this service to receive notification when the virtual
machines enables interrupts.
 
Parameter  Description
────────────────────────────────────────────────────────────────────────────
 
RefData    Points to reference data to be passed to the callback procedure.
 
Callback   Points to the callback procedure. See the Comments section for
           more information about the procedure.
 
Return Value
 
This service has no return value.
 
Comments
 
It is usually more convenient to use the Call_Priority_VM_Event service
instead of calling this service directly. However, this service is faster.
 
The system calls the callback procedure as follows:
 
mov     ebx, VM                  ; current VM handle
mov     edx, OFFSET32 RefData    ; points to reference data
mov     ebp, OFFSET32 crs        ; points to a Client_Reg_Struc
call    [Callback]
 
The VM parameter is a handle identifying the current virtual machine,
RefData points to the reference data specified when the callback procedure
was installed, and crs points to a Client_Reg_Struc structure containing the
register values for the virtual machine.
 
The callback procedure may use EAX, EBX, ECX, EDX, ESI, EDI, and Flags.
 
Uses
 
Client_Flags, Flags
 
See Also
 
Call_When_Idle, Call_When_Not_Critical, Call_When_Task_Switched