Eric Auer wrote:

...
I agree that device drivers should not modify any register when you call
them, but I admit that I do not remember WHERE I have read that device
drivers MUST not modify any registers. In particular, fixing EMM386 would
...

Well PC-DOS tech reference states regarding the The Interrupt Routines, "It is the responsibility of the device driver to preserve the system state. For example, the device driver must save all registers on entry and restore them on exit." So I agree the kernel should not have to save FS,GS,etc, a device driver should save and restore them if it modifies them, hence my question if others drivers do similar. If emm386 is the only known example that modifies them, then once it is fixed the kernel can remove the push/pops; otherwise even though it uses precious stack space, it should remain if required, but only if required.

Jeremy





-------------------------------------------------------
SF.Net email is sponsored by: Discover Easy Linux Migration Strategies
from IBM. Find simple to follow Roadmaps, straightforward articles,
informative Webcasts and more! Get everything you need to get up to
speed, fast. http://ads.osdn.com/?ad_id=7477&alloc_id=16492&op=click
_______________________________________________
Freedos-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freedos-devel

Reply via email to