I seen a email about hardware cursor support and I have been giving it
alot of thought. It is heavly based on solaris solution and it works
very nice with X windows. The nice thing about this is the state of
the hardware can be changed in one function call. Unlike some of the
problem we see from fb_fix and fb_var being seperate. Here is what I
purpose:
struct fbcurpos {
__u16 x;
__u16 y;
};
#define FB_CUR_SETCUR 0x01
#define FB_CUR_SETPOS 0x02
#define FB_CUR_SETHOT 0x04
#define FB_CUR_SETCMAP 0x08
#define FB_CUR_SETSHAPE 0x10
#define FB_CUR_SETALL 0x1F
struct fbcursor {
__u16 set; /* For above values. We tell fbdev what data to use. */
__u16 enable; /* Turn cursor on/off */
struct fbcurpos pos; /* Where the cursor is */
struct fbcurpos hotspot; /* The cursors hotspot */
struct fbcmap cmap; /* For those colorful cursors */
struct fbcurpos size; /* Its width and height */
char *image; /* Its bitmap */
char *mask; /* Its mask for XORing */
};
So what do you think?
MS: (n) 1. A debilitating and surprisingly widespread affliction that
renders the sufferer barely able to perform the simplest task. 2. A disease.
James Simmons [jsi...@li...] ____/|
fbdev/console/gfx developer \ o.O|
http://www.linux-fbdev.org =(_)=
http://linuxgfx.sourceforge.net U
http://linuxconsole.sourceforge.net
|