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.
Simulate_Far_Call
                                                     Up Next Previous
────────────────────────────────────────────────────────────────────────────
 
include vmm.inc
 
mov     cx, Segment       ; segment containing procedure to call
mov     edx, Offset       ; offset of procedure to call
VMMcall Simulate_Far_Call
 
The Simulate_Far_Call service simulates a far call to a procedure in the the
current virtual machine. This service sets the Client_CS and Client_IP
registers to the specified procedure address after saving the original
Client_CS and Client_IP registers on the stack of the current virtual
machine. When the virtual machine resumes execution (such as when the
Resume_Exec service is called), the system executes the specified procedure
and returns only when the procedure executes a far ret instruction.
 
Parameter  Description
────────────────────────────────────────────────────────────────────────────
 
Segment    Specifies the segment selector or address of the code segment
           containing the procedure to call.
 
Offset     Specifies the offset, relative to the beginning of the given
           segment, to the procedure to call. If the code segment is a
           16-bit segment, the high word must be zero.
 
Return Value
 
This service has no return value.
 
Uses
 
Client_CS, Client_EIP, Client_SP, Flags
 
See Also
 
Build_Int_Stack_Frame, Simulate_Far_Jmp