INT 31H 0301H: Simulate Real Mode FAR CALL
Compatibility: DPMI 0.9+
Expects: AX 0301H
BH flags: must be 00H
CX number of words to copy to the real-mode stack
ES:DI (or ES:EDI) address of a DpmiRegRec structure.
──────────────────────────────────────────────────────────────────
Returns: CF NC (clear) if successful; else AX = DPMI Error Code
ES:DI (or ES:EDI) structure contains returned data
──────────────────────────────────────────────────────────────────
Info: Simulates a FAR CALL to a real-mode procedure. The called
procedure must return via RETF.
The DPMI host switches to real mode, loads the registers,
performs a FAR CALL to the CS:IP in the register structure,
switches back to protected mode, copies the returned registers
into the caller's structure and returns the status.
ES:DI (or ES:EDI, when in 32-bit mode) points to a DpmiRegRec structure
that sets up the registers on entry and will contain the modified
register values upon return.
The address of the far procedure must be in the wRegCS and wRegIP
fields of the DpmiRegRec structure.
CX is used when you are expected to push data onto the stack before
calling int procedure. When CX is non-zero, the host copies that
many 2-byte words from the protected mode onto the real-mode
stack before invoking the interrupt.
See Also: DPMI API
INT 2fH: Multiplex Interrupt
DOS Functions
-♦-