www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1995/06/15/11:14:19

Xref: news-dnh.mv.net comp.os.msdos.djgpp:386
Path: news-dnh.mv.net!mv!news.sprintlink.net!howland.reston.ans.net!news.cac.psu.edu!news.pop.psu.edu!hudson.lm.com!godot.cc.duq.edu!nntp.club.cc.cmu.edu!cantaloupe.srv.cs.cmu.edu!das-news2.harvard.edu!oitnews.harvard.edu!news.sesqui.net!rice!news!sandmann
From: Charles Sandmann <sandmann AT clio DOT rice DOT edu>
Newsgroups: comp.os.msdos.djgpp
Subject: Re: Converting linear addresses to physical?
Date: Tue, 13 Jun 1995 22:17:26 CDT
Organization: Rice University, Houston, Texas
Lines: 14
References: <3rilhd$n1r AT caesar DOT ultra DOT net>
Reply-To: sandmann AT clio DOT rice DOT edu
Nntp-Posting-Host: clio.rice.edu
To: djgpp AT sun DOT soe DOT clarkson DOT edu
Dj-Gateway: from newsgroup comp.os.msdos.djgpp

> to dump a frame buffer in the PC's memory to the copier.  The frame
> buffer is up to 48M bytes, so I can't use DOS memory, but I can use
> DJGPP to malloc the necessary memory.  The problem is I can't seem
> to convert the linear address that DJGPP uses to the physical address
> the DMA controller needs.  Does anyone have any suggestions?

You can use DPMI services to get the base of the DS selector and then
add the offset to get the virtual address.  I would guess you would then
have to look at the page tables to get the physical address from the 
virtual translation - (is this needed?) but the pages might not be 
sequential.

I have seen mention of VDS (? Virtual DMA services?) which is supposed to
help in this, but I don't know anything about it.

- Raw text -


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