1*9a747e4fSDavid du Colombier typedef struct Cursor Cursor; 2*9a747e4fSDavid du Colombier typedef struct Cursorinfo Cursorinfo; 3*9a747e4fSDavid du Colombier struct Cursorinfo { 4*9a747e4fSDavid du Colombier Cursor; 5*9a747e4fSDavid du Colombier Lock; 6*9a747e4fSDavid du Colombier }; 7*9a747e4fSDavid du Colombier 8*9a747e4fSDavid du Colombier extern Cursorinfo cursor; 9*9a747e4fSDavid du Colombier extern Cursor arrow; 10*9a747e4fSDavid du Colombier extern Memimage *gscreen; 11*9a747e4fSDavid du Colombier extern int cursorver; 12*9a747e4fSDavid du Colombier extern Point cursorpos; 13*9a747e4fSDavid du Colombier 14*9a747e4fSDavid du Colombier Point mousexy(void); 15*9a747e4fSDavid du Colombier int cursoron(int); 16*9a747e4fSDavid du Colombier void cursoroff(int); 17*9a747e4fSDavid du Colombier void setcursor(Cursor*); 18*9a747e4fSDavid du Colombier void flushmemscreen(Rectangle r); 19*9a747e4fSDavid du Colombier Rectangle cursorrect(void); 20*9a747e4fSDavid du Colombier void cursordraw(Memimage *dst, Rectangle r); 21*9a747e4fSDavid du Colombier 22*9a747e4fSDavid du Colombier void drawactive(int); 23*9a747e4fSDavid du Colombier void drawlock(void); 24*9a747e4fSDavid du Colombier void drawunlock(void); 25*9a747e4fSDavid du Colombier int candrawlock(void); 26*9a747e4fSDavid du Colombier void getcolor(ulong, ulong*, ulong*, ulong*); 27*9a747e4fSDavid du Colombier int setcolor(ulong, ulong, ulong, ulong); 28*9a747e4fSDavid du Colombier #define TK2SEC(x) 0 29*9a747e4fSDavid du Colombier extern void blankscreen(int); 30*9a747e4fSDavid du Colombier void screeninit(int x, int y, char *chanstr); 31*9a747e4fSDavid du Colombier void mousetrack(int x, int y, int b, int msec); 32*9a747e4fSDavid du Colombier uchar *attachscreen(Rectangle*, ulong*, int*, int*, int*); 33*9a747e4fSDavid du Colombier 34*9a747e4fSDavid du Colombier void fsinit(char *mntpt, int x, int y, char *chanstr); 35