Mail Archives: djgpp/1999/08/10/17:47:33
Neil Goldberg wrote:
> > > Therefore I wrote a function that returns the (absolute) adress that
> > > has to be accessed. Usually it is around 0xFFFFF000 .
> > > I used __djgpp_map_physical_memory (mappedBAR, NoBytes, BaseAdr) for
> > > mapping the device to a created memory block named 'mappedBAR'; the
> > > number of bytes to map (NoBytes) is a multiple of a mem-page found
> > > with __dpmi_get_page_size(&NoBytes) (4096 bytes) and the base adress
> > > (BaseAdr) is equal the absolute address of the BAR.
> > Wow... FFFFF000 is pretty near the 4 gig limit. Unless you have
> > 4 gig of ram, I think the PCI controller is lying to you.
> Note that __djgpp_map_physical_memory requires a DPMI 1.0 server, and
> only of the two commonly used ones (windows, cwsdpmi) is 1.0, while the
> other is .9. I can't remember which is which, but to check, try running
> the program in the OTHER environment to see if that works.
Neither one is fully DPMI 1.0 complient. CWSDPMI is partially 1.0, but I
don't think even that has implimented the __djgpp_map_physical_memory
function. [I may be wrong, this is just from memory].
--
-Rolf Campbell (39)3-6318
- Raw text -