[<<Previous Entry] [^^Up^^] [Next Entry>>] [Menu] [About The Guide]
Int 31 Fn 0300  P - DPMI 0.9+ - Simulate Real Mode Interrupt               [E]

   AX = 0300h
   BL = interrupt number
   BH = flags
       bit 0: reset the interrupt controller and A20 line (DPMI 0.9)
          reserved, must be 0 (DPMI 1.0+)
       others must be 0
   CX = number of words to copy from protected mode to real mode stack
   ES:(E)DI = selector:offset of real mode call structure (see below)

Return: CF clear if successful
       real mode call structure modified (all fields except SS:SP, CS:IP
         filled with return values from real mode interrupt)
   CF set on error
       AX = error code (DPMI 1.0+) (8012h,8013h,8014h,8021h)(see AX=0000h)
   protected mode stack unchanged

Notes: 16-bit programs use ES:DI as pointer, 32-bit programs use ES:EDI
   CS:IP in the real mode call structure is ignored for this call,
     instead, the indicated interrupt vector is used for the address
   the flags in the call structure are pushed on the real mode stack to
     form an interrupt stack frame, and the trace and interrupt flags are
     clear on entry to the handler
   DPMI will provide a small (30 words) real mode stack if SS:SP is zero
   the real mode handler must return with the stack in the same state as
     it was on being called

See Also: AX=0302h,INT 21/AX=2511h,INT 21/AH=E3h"OS/286",INT 2C/AX=0026h

See Also: INT 2F/AX=FB42h/BX=000Dh

Format of real mode call structure:
Offset Size    Description
 00h   DWORD   EDI
 04h   DWORD   ESI
 08h   DWORD   EBP
 0Ch   DWORD   reserved (00h)
 10h   DWORD   EBX
 14h   DWORD   EDX
 18h   DWORD   ECX
 1Ch   DWORD   EAX
 20h   WORD    flags
 22h   WORD    ES
 24h   WORD    DS
 26h   WORD    FS
 28h   WORD    GS
 2Ah   WORD    IP
 2Ch   WORD    CS
 2Eh   WORD    SP
 30h   WORD    SS

This page created by ng2html v1.05, the Norton guide to HTML conversion utility. Written by Dave Pearson