-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Description
What steps will reproduce the problem?
1. Create a Display
2. Do something that requires full precision floating point calculations
What version of the product are you using? On what operating system?
1.4.1 Windows
Code that relies on full floating point precision can break when opening a
pixel toaster display since the D3D function CreateDevice messes with the
FPU flags.
Specifically it means you can't use pixel toaster to display graphics
rendered with Cairo (cairographics.org) since it uses some funky floating
point math to do float to fixed point conversion.
A workaround on the pixel toaster side is to supply the flag
D3DCREATE_FPU_PRESERVE as behaviour flag when creating the d3d device,
however microsoft warns that this might cause undefined behavior!
I have some more info in this thread:
http://lists.cairographics.org/archives/cairo/2009-April/016995.html
I'm not sure whether I want this to be patched, but if this bug report
saves someone the hassle of figuring out why Cairo won't render to pixel
toaster displays I'm glad I could help :)
Original issue reported on code.google.com by laseral...@gmail.com on 24 Apr 2009 at 9:31
Reactions are currently unavailable