Reply 20 of 28, by Falcosoft
- Rank
- l33t
laios67 wrote on 2024-05-10, 11:32:Hmm yes indeed same issue although in this case is windows xp . I'll see what is running in the background […]
Curiously I found a similar question about Max Payne 2 in an archived post at 3DRealms forum:
Hmm yes indeed same issue although in this case is windows xp . I'll see what is running in the background
after a while...
I closed almost everything of background but the same
Separate background applications cannot cause such a problem since the x87 FPU precision settings are per-thread settings (the control word is saved/restored at context switches).
This error must be caused by a library that is loaded into the address space of the game's process either directly or indirectly and the library changes the x87 FPU precision settings.
Typically Direct3D changes the FPU precision to 24-bit all the time to speed up fsqrt/fdiv but games that use Direct3D expect this behavior.
So you should investigate about audio/video codecs and multimedia drivers that are loaded by the game's process instead of separate apps to find the problematic component.
According to this webpage Process Explorer 10/11 does work under Win9x so you can use it to determine what components are loaded by the game.
https://eternallybored.org/misc/procexp/
http://www.oldversion.com/windows/process-explorer-11-11
When you get the error message and the messagebox is not closed yet the game's process must be active so you can open Process Exolorer, look for the game's executable and select it.
Then check that View menu -> Show Lower Pane and View menu -> Lower Pane View -> DLLs are selected. Then at the lower pane look for libraries that are not from Microsoft and can be changed/uninstalled.