Dismiss
InnovationQ will be updated on Sunday, Oct. 22, from 10am ET - noon. You may experience brief service interruptions during that time.
Browse Prior Art Database

Real To Protected Mode Call in a DOS/Extender Environment

IP.com Disclosure Number: IPCOM000122148D
Original Publication Date: 1991-Nov-01
Included in the Prior Art Database: 2005-Apr-04
Document File: 1 page(s) / 45K

Publishing Venue

IBM

Related People

Shao, SM: AUTHOR [+2]

Abstract

A method to allow real mode procedures to call protected mode procedures in a DOS Extender environment is disclosed.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 71% of the total text.

Real To Protected Mode Call in a DOS/Extender Environment

      A method to allow real mode procedures to call protected
mode procedures in a DOS Extender environment is disclosed.

      Programs written in high level languages usually pass
parameters through stacks or registers.  To provide a "call-up"
interface, the caller must be able to pass parameters to the
protected mode procedure using either or both.  The called procedure
expects not only the parameters but the flag states to be the same as
what the caller had set up at the time of the call.

      To accomplish this, the DOS/Extender Execution Manager defines
an interrupt as a "passup" interrupt to be used for this purpose.
The real mode caller calls the DOS/Extender Execution Manager to pass
control to the protected mode routine.  The DOS/Extender Execution
Manager issues the "passup" interrupt and gets control in protected
mode.  It then translates the segment registers to selectors pointing
at the same physical address.  This allows pointers to be passed in
registers.  The real mode stack frame is copied into the protected
mode stack so when the procedure gets control the stack is exactly
what it expects.  The real mode flag state is retrieved and set to
ensure that the protected mode procedure is running in the
environment set up by the real mode caller.  The DOS/Extender
Execution Manager then passes control to the protected procedure via
a far call. The called procedure would see the par...