[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

DOS4GW address conflict



Hi you out there !

We have developed a pci card with bus master capabilities. We even 
implemented a scatter/gather dma capability (until now a useless
effort).
Our problem is still the one to get the physical address for our
dma transfers.
We are working with the DOS4GW extender.
The 64kB pages in the DOS memory are not big enough ( &*%$'>! ).
Next we tried to limit the memory for the dos extender with the
DOS16M=@x-ym environment variable and use the y-ENDm memory for
our dma transfers. (With DPMI 0x800 for physical to linear address
mapping etc ...).
That works very fine concerning the dma's. The problem is, that the
DOS4GW doesn't care about the environment variable and in applications
that allocate a lot of memory we have address conflicts between our
'dma memory' and the malloc's of the dos extender.
Is there any possiblity to limit the memory range for the DOS4GW or
to patch the memory size which it sees ?
Or even better : Is there in spite of all problems a possibility to
get the physical address (list) of a normal malloc ?

Hope some people still work with that old stuff, too.
Or are we alone ... ?

Any comments would be greatly appreciated !

A nice to all HW people with SW problems (and the others, too)
wishes you

                                        Tobias

=====================================================================
Dipl.-Ing. Tobias Stumber
FV/SLH Hildesheim
Robert Bosch GmbH
Germany
mailto:tobias.stumber@fr.bosch.de
®Œy