delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2001/01/03/11:55:40

Date: Wed, 3 Jan 2001 18:48:26 +0200 (IST)
From: Eli Zaretskii <eliz AT is DOT elta DOT co DOT il>
X-Sender: eliz AT is
To: jvasquez AT getntds DOT com
cc: djgpp AT delorie DOT com
Subject: Re: Linear memory and Physical Memory
In-Reply-To: <3a534e1e.72667312@news.connectnet.com>
Message-ID: <Pine.SUN.3.91.1010103184541.4647F-100000@is>
MIME-Version: 1.0
Reply-To: djgpp AT delorie DOT com
Errors-To: nobody AT delorie DOT com
X-Mailing-List: djgpp AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

On Wed, 3 Jan 2001 jvasquez AT getntds DOT com wrote:

> How do I convert a Linear memory address to physical address?

You don't :-(.

The mapping between linear and physical addresses is inaccessible, except
if you use privileged instructions to read the page tables used by the
CPU's memory-mapping hardware.  Most DPMI servers won't let you use those
privileged instructions. 

> I call __dpmi_allocate_memory() to obtain a linear address for a
> buffer. I now need to program my PCI adapter with the physical memory
> for DMA output. 
> How do I do this?

There are several solutions of this available for DMA.  They are all 
described in section 18.13 of the DJGPP FAQ list.  If something there is 
unclear, please ask specific questions.

- Raw text -


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