Am Montag, 31. Jänner 2022, 20:45:38 EAT schrieb Fabian Maurer:
Hello Stefan,
Of course it couldn't be easy..
Netscape 4 is the application where I came across the problem. Microsoft has some floating point sample applications that also show the issue.
Do we have a bugreport for those already?
None that I know of, but I also didn't search extensively. I came across it when toying around with dosemu2 for fun: https://github.com/dosemu2/dosemu2/ issues/976 .
https://stackoverflow.com/questions/10511506/old-16-bit-application-causing-... talks about the issues with modern CPUs.
The correct thing would be to bring the Win16 float exception handling code from winevdm back to Wine.
Their implementation actually isn't too different from Wine's, unless you mean the part where they use the MAME emulator.
They added quite a chunk of code Wine does not have re x87 exceptions. https://github.com/otya128/winevdm/blob/master/win87em/win87em.c#L199 is the most obvious tip of the iceberg, but I guess there is more stuff hidden in their DPMI interrupt code.