Hi...

> I'm 684 lines of new code into a EMM386 revision to support dynamic 
> EMS/VCPI pool-sharing with XMS, with probably more than that many new lines 
> of code left, plus at least several hours debugging.  I'm not too 
> interested in coding up much of anything else in EMM386 right now...

I think a very convincing point here is that debugging gets much easier
if EMM386 shows proper error messages for "caused by emm386 itself"
exceptions instead of just crashing. In particular, a minimalistic
implementation would not be overly complex:

@@PROTECTED:
        MOV     AX,[ESP+12]          ; Put new Interrupt-Nr (= return-
        MOV     [ESP+24],AX          ; address) in the correct Pos.
...
would be replaced by moving [ESP+12] (and so on) to [V86_TOS-...] instead
of moving [ESP+12] (and so on) to [ESP+24...] (which makes risky assumpt-
ions like "the exception has no error code and emm386 itself did not push
extra registers").

But as usual, I could be totally wrong with that. The only thing about
which I am sure is that the "the exception has no error code" assumption
is wrong for things like page faults, while "emm386 ... push extra
registers..." might end up on another stack anyway.


Eric

PS: The above "V86_TOS-... instead of ESP+24" would only fix the
crash, not improve the error message, of course, but much better
than nothing.

PPS: I wonder who and how convinced you to start the tedious task
of implementing XMS/EMS/VCPI pool sharing. Wow. Somebody will be
happy and thankful about this...



-------------------------------------------------------
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://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_______________________________________________
Freedos-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freedos-devel

Reply via email to