Simulate_Far_Call


include vmm.inc

mov     cx, Segment       ; segment containing procedure
mov     edx, Offset       ; offset of procedure
VMMcall Simulate_Far_Call

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. Uses Client_CS, Client_EIP, Client_SP, Flags.

Segment

Selector or segment address of the code segment containing the procedure.

Offset

Offset of the procedure to call. If the code segment is a 16-bit segment, the high word must be zero.

See also Build_Int_Stack_Frame, Simulate_Far_Jmp