From: jpdelprat AT teaser DOT fr (JP) Newsgroups: comp.os.msdos.djgpp Subject: Re: How to determine the physical address from a DPMI descriptor Date: Tue, 18 Aug 1998 19:26:20 GMT Organization: Guest of France-Teaser Lines: 41 Message-ID: <35d9d505.4345933@news.teaser.fr> References: NNTP-Posting-Host: ppp2816-ft.teaser.fr NNTP-Posting-Date: 18 Aug 1998 19:17:47 GMT To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Precedence: bulk Eli Zaretskii wrote: > >On Sun, 16 Aug 1998, JP wrote: > >> I've allocated a large array, locked it and set a descriptor to this >> array. I would like to know the physical address of this array. Can it >> be determined from the descriptor ? > >In general, you can't. You can only find the logical address, not the >physical one. > >Please explain why do you need the physical address, then it would be >possible to advise about any available solutions. > My need is to create and lock a 2Mo continuous buffer (under Windows 95), and determine its physical address to give it to a video capture card. Determining the physical address shouldn't be a problem since there are solutions to explore the entire physical memory, but I can find any solution to create a continuous buffer. With DPMI functions (under Windows 95), I allocate my buffer then lock it, but despite the call to dpmi_lock_linear_region, the buffer is still mixed and partially swapped out. I've tried everything I could think of. I've even tried to allocate and lock an XMS buffer in my autoexec.bat (before Windows 95 loads), but Windows 95 refuses to start then. Thanks very much for your answer, JP Jeepy (Jean-Pierre Delprat) jpdelprat AT teaser DOT fr www.teaser.fr/~jpdelprat (JPTUI home page)