At 08:53 PM 12/9/2004 +1300, Bart Oldeman wrote:
The low level disk device driver also contains code that forces buffering if the segment of the address is >= 0xa000, using a different (internal to the device driver) buffer.
So if you can force buffering in the int21-calling software by reading/writing <= 511 bytes or using an UMB or HMA transfer address but not globally.
Okay, stick with me on this for a bit longer. Since, as everyone seems to be saying, UMB address disk transfers are always buffered, why does EMM386 need to capture DMA ports and try to do its own buffering for remapped memory when INT 13h and INT 40h are invoked?
Does anything use those two interrupts in an unbuffered state for UMB space?
I mean, DMA-based applications would have to run a heckuva lot faster without those exceptions going off all the time when the ports are hit, unless the built-in DMA overhead swamps out exception-handling overhead.
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now. http://productguide.itmanagersjournal.com/
_______________________________________________
Freedos-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-devel
