www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2000/11/04/18:45:11

From: Jerzy Klejnowski <dziabol AT polbox DOT com>
Newsgroups: comp.os.msdos.djgpp
Subject: Buffers and physical addresses
Date: Sun, 05 Nov 2000 01:28:07 +0100
Organization: samotnik w swoim zamku
Lines: 26
Message-ID: <3A04A997.D8194D69@polbox.com>
NNTP-Posting-Host: pc101.wroclaw.ppp.tpnet.pl
Mime-Version: 1.0
X-Trace: news.tpi.pl 973380490 6870 212.160.40.101 (4 Nov 2000 23:28:10 GMT)
X-Complaints-To: usenet AT tpi DOT pl
NNTP-Posting-Date: 4 Nov 2000 23:28:10 GMT
X-Mailer: Mozilla 4.07 [en] (X11; I; Linux 2.0.36 i686)
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp
Reply-To: djgpp AT delorie DOT com

Hi

I have a PCI card that does DMA to a buffer in memory at given
physical location (anywhere in 32-bit address space). This buffer
should hold multiple TV images, so it's too large to be located in
memory below 1MB. As DPMI "hides" physical locations entirely, I've
tried to use locked XMS memory. But when I call 'himem.sys' from
djgpp program, it says: "I am here, but I have 0 bytes of memory
available".

At present I use real mode program to allocate and lock buffer in
memory via XMS interface and pass buffer's address, size and handle
to protected mode program, that uses it, but I hope that there is better

method to accomplish this task. Could anybody help?

The program will be run under plain DOS, under DPMI server of my
choice, so I think I can also express the above question as follows:
is it possible to tell cwsdpmi or pmode/dj: "leave x MB of memory,
take the rest"?

Thanks in advance.

  HARY


- Raw text -


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