This is a doc I plan to add to the GRX web site, it is a list of problems or things that are not problems, but must to be done (I'm not sure if it is well expresed), please make commnets (or better pick one :-)
------------------- GRX problems and things that must to be done
Linux console framebuffer driver:
Try to change modes if the underlaying framebuffer driver allow it.
Hide the text cursor.
Working mouse (this is not trivial), GRX linux console mouse is handled by svgalib functions, but obviously this not work with the framebuffer driver, a new mouse driver is necesary, but Linux don't have a real mouse driver, and the user program must handle all the possible mouse types.
Win32 drivers:
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).
Support for all logical operations in drawpixel, drawblock and putscanline.
Implement getiscanline for 8 and 24 bpp.
Implement bltv2r for 24 bpp.
Implement full screen mode when maximum resolution is required.
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 the next lines to the /etc/X11/XF86Config-4 file, in the Device section:
Option "BackingStore"
Option "SaveUnders"
SVGALIB driver:
The default mouse aceleration is too fast.
VGA DOS driver:
It can be improved a lot, replacing the generic funtions it uses.