Date: Wed, 2 Jun 1999 10:01:21 +0300 (IDT) From: Eli Zaretskii X-Sender: eliz AT is To: Davin McCall cc: djgpp AT delorie DOT com Subject: Re: DJGPP - real mode procedures. In-Reply-To: <3753714e.1113378@newsserver.cc.monash.edu.au> Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Reply-To: djgpp AT delorie DOT com X-Mailing-List: djgpp AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk On Tue, 1 Jun 1999, Davin McCall wrote: > >iret > > This will pop half the return address. Apart of the fact that the code needs to do a RETF instead of IRET, is there anything else behind the ``half the return address'' remark? If so, could you please explain? > >I then call the function > >__dpmi_simulate_real_mode_procedure_retf_stack(&r, 4, &stack); > > I suspect the 4 should be 1, or possibly 2. The DPMI spec is rather > unclear. But the library reference clearly says "bytes" (and the source works with "REP MOVSB"). So 1 is definitely incorrect, as the RM code pops a 16-bit word.