delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1998/03/26/12:41:00

Date: Thu, 26 Mar 1998 09:40:16 -0800 (PST)
From: "Ben N. Shadwick" <bshadwic AT clark DOT edu>
Reply-To: "Ben N. Shadwick" <bshadwic AT clark DOT edu>
To: Eli Zaretskii <eliz AT is DOT elta DOT co DOT il>
cc: djgpp AT delorie DOT com
Subject: Re: passing & retrieving buffer thru interrupt
In-Reply-To: <Pine.SUN.3.91.980326110430.29215M-100000@is>
Message-ID: <Pine.HPP.3.96.980326092508.26188A-100000@csci.clark.edu>
MIME-Version: 1.0

On Thu, 26 Mar 1998, Eli Zaretskii wrote:

> Are you sure you are using the latest FAQ version 2.10?  As far as I
> could see, sections 18.3 and 18.4 in the latest version deal
> extensively with this issue, including sample code and pointers to
> library functions which should be used; you can have further info by
> looking up those functions in the libc reference.

I am using whatever version the HTML version on DJ's server is. The only
example code pertaining to passing the address of a buffer shown is how to
stuff the address of the DPMI transfer buffer into the es:di register pair.

> If the info in the FAQ is still unclear and confusing, please describe
> what parts are unclear and confusing, and/or suggest how to change
> them.

I can't tell you what to say when I don't understand what you're already
saying in the FAQ. Perhaps I'll get back to you on it when I figure it
out...

> Please bear in mind that the FAQ cannot be a tutorial.  So it cannot
> include too many examples.  I usually put an example where it allows
> me to describe succinctly what would otherwise take too many words.

I understand that. In response, I'd like to say two things:
1) perhaps the amount of feedback you have received on certain areas of
   the FAQ might indicate that some improvements to those areas would be
   helpful.

2) if a "tutorial" is what is required to find out how to do what I am
   asking, please point me to one.

> > Here is a summary of what I want to do (in order):
> > 
> > - Store the buffer address in es:di registers
> > - Assign proper values to other registers for calling the function
> > - Call the function
> > - Examine the contents of the buffer
> 
> These are all discussed and explained in sections 18.3 and 18.4 of the
> FAQ.  If you have more specific questions about some aspects of these,
> please ask them explicitly.

I don't see anything on how to access the contents of the DPMI transfer
buffer after passing its linear address to an interrupt service. I will
get a copy of v2.10 of the FAQ and look for it. That is, I think, the only
step that I am really missing at this point, although it only overs
passing buffers via __dpmi_int and not the usual int86x method.

As for the int86x function, what are the SREGS for? Could someone give me
an example of how I would pass the address of a variable via the es:di
register pair to an interrupt service via the int86x function?

Thanks


- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019