At 06:19 AM 8/17/2006 +0400, Arkady V.Belousov wrote:

>       May you explain here and/or, better, in comments in source, why 
> decreasing SP solves issues (and which issues there are)? >>Only 
> plausible explanation: >>THIS BIOS damages (sometimes ?) the 
> flags;      Do you mean "flags, _saved on the stack above given code_"? 
> And, if so, then why flags are damaged, but return value, which was lies 
> on place of flags (relative SP) are not damaged, if you comment out "pushf"?

Could just be hitting one word on the stack, i.e. [sp] at INT entry.  That 
would match the behavior on either of the two patches.  If you the saved 
flag status on the stack gets corrupted, you could have any garbage values 
there, which is definitely a bad thing, possibly even an immediate 
exception on return.

However, there's something suspicious about the fact that this is happening 
in INT 15h, and INT 15h is one of the places where EMM386 code where INT 
handling was recently changed to only set carry flag and use IRET, rather 
than RETF 2 flush the existing flags.  I'm going to double-check there 
isn't a bug in that.

Or, could it be the side-effects of the RETF 2 were masking the existing 
bug in the machine's BIOS, and so only now they were discovered?


-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Freedos-devel mailing list
Freedos-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/freedos-devel

Reply via email to