I own a VIA EPIA800ML, with unichrome graphic adapter. I am using Ubuntu 7.04 with mesa 6.5.2. Dri is installed and works.
The problem appears when using blender or winehq with 3D OpenGL software :
there seems to be an address (offset ???) wrong calculation or clipping when positionning the 3D window on the screen.
Let me explain with ascii graphics :
The big rectangle is the screen, the small one inside is a 3D window. The application tries to draw something inside the window, I can only see the part marked with V. The right and bottom part stays blank.
|xxxx|VVVVV | |
|xxxx|VVVVV | |
| | | |
| +--------+ |
The 3D scene should be fully visible inside the window BUT seems to be clipped by the area marked xxx, which has the same size than the window. So I can only see the part marked VVV - but its origins is correctly in the upper left corner of the window : it is not drawn in the screen coordinates.
When I move the window, the clipping area stays in (0,0), masking a larger amount if I move to the right or bottom.
The only way to see the full 3D view is to move the window at screen(0,0).
There is also a same problem with the menus, for instance in blender. Every menu or widget appears corrupt or blank. I suspect the same problem : the menu would be cleanly displayed only if at screen(0,0) (?).
Is this a problem with the stencil buffer, the clipping area, the hardware driver ?
I was thinking of the hardware because :
1) there is generally a lot of noisy pixels around the 3D area : the border of the window is very dirty, with random lines and pixel patterns (there is no segmentation failure).
2) the mouse cursor (image) is draw very badly : I can see a white square around the previous position in the menus
Very surprisingly, there is no problem with glxgears : I can move its window without any problem (560 fps). Does it use stencils or scissors ?
I would be very interested to help in finding this bug, but I can find no explanations on the internals of mesa and dri/drm.
Many thanks for all,
pierre.nerzic domain free.fr (replace domain by at)
You might try a newer mesa or mesa from git. IIRC, there were some via fixes for similar sounding problems.