DOS/16M

Tenberry Home

Consulting Services

DOS/16M FAQ

Release Notes

DPMI Spec

* * *

DOS/4GW

DOS/4G

DOS/16M FAQ:
DMA Addressing


[Previous Section] * [Index of FAQ]
  1. My TSR currently uses 26K of conventional memory. I can reduce this number even more by allocating the sound card DMA buffer from extended memory. Is this worth the effort?

1. My TSR currently uses 26K of conventional memory. I can reduce this number even more by allocating the sound card DMA buffer from extended memory. Is this worth the effort?

Probably not. 26KB sounds like a fairly small low memory footprint already, and using extended memory for DMA buffers is not easy.

The problem is that DMA buffers have to be contiguous memory addresses in the hardware - the memory has to be physically contiguous. However, extended memory is almost always paged -- contiguous virtual addresses are not necessarilyphysically configuous. You can get around this problem, but it is not easy. We have had customers who needed to use extended memory DMA buffers, usually because they needed 1MB or bigger DMA buffers, and they have been able to make it work, but it took a lot of effort and we cannot advise you on exactly how to do it.

If your footprint is already only 26KB we would seriously advise against trying to lower it by using an extended memory DMA buffer. However, if you're really determined to do this, get the 'Virtual DMA Services' specification from Microsoft. It is (or was) Microsoft part # 098-10869. Get it by writing to: Microsoft Corporation, Box 97017, Redmond, WA 98073. .


[Previous Section] * [Index of FAQ]
Last modified 2003.02.07. Your questions, comments, and feedback are welcome.