Known GRX problems and things that must be improved
General:
- The memory driver allocates all planes in one chunk instead
of using real planes.
- Printing in 1200dpi on Laserjet supporting PCL6 doesn't work.
Linux console framebuffer driver:
- Try to change modes if the underlaying framebuffer driver allow it.
- Complete the alternate direct mouse driver (now it only handles
PS/2 mouses) to have a svgalib free GRX.
- When in graphics mode, the virtual console switching is disabled
by default, so some code is necesary to enable it.
- Only 15, 16 and 24bpp framedrivers are provided.
Win32 driver:
- There is a general design problem. The video driver is initiated
at the begining instead when the user program call GrSetDriver (usually
indirectly by calling GrSetMode), this makes difficult the use the
memory driver.
- Logical operations for 8 bpp are wrong implemented, they must operate
with color indices instead of colors.
- Drawline must paint the last point (not trivial).
- Add support for all logical operations in drawpixel, drawblock and
putscanline.
- Implement getiscanline for 8 and 24 bpp.
- Implement bltv2r for 24 bpp.
- The printing code doesn't work correctly.
X11 driver:
- Investigate why bccbgi test program doesn't restart when it switchs to
text mode.
- Try to make GrPixel faster.
- The driver can't respond to PAINT events, so it has problems with
XFree86 v4 because the backing-store is not enabled by default. The
best solution is to have a context to save the actual window (and
the GrPixel problem can be solved too). Te workaround is to add
next lines to the /etc/X11/XF86Config-4 file, in the Device section:
Option "BackingStore"
Option "SaveUnders"
SVGALIB driver:
- The mouse jumps more than one pixel.
VGA DOS driver:
- It can be improved a lot, replacing the generic funtions it uses.
- BitBlt to screen doens't work in 4bpp modes if the screen is not
set as the default context.