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
♦