1 typedef struct Cursor Cursor; 2 typedef struct Vctlr Vctlr; 3 typedef struct Video Video; 4 typedef struct Thc Thc; 5 6 #define FSVSLOT 2 /* MrCoffee Hard Coded FB Location */ 7 8 struct Cursor 9 { 10 Point offset; 11 uchar clr[2*16]; 12 uchar set[2*16]; 13 }; 14 15 struct Vctlr { 16 char* name; 17 Vctlr* (*init)(Vctlr*, int, int, int); 18 void (*page)(int); 19 int (*setcolor)(ulong, ulong, ulong, ulong); 20 21 void (*enable)(void); 22 void (*disable)(void); 23 void (*move)(int, int); 24 void (*load)(Cursor*); 25 int (*isloaded)(void); 26 int (*cursorintersectsoff)(Rectangle*); 27 28 int x; 29 int y; 30 int d; 31 32 Vctlr* link; 33 34 int hidecount; 35 int loaded; 36 Cursor cursor; 37 Lock l; 38 }; 39 40 41 struct Video 42 { 43 /* Brooktree 458/451 */ 44 ulong addr; /* address register */ 45 ulong color; /* color palette */ 46 ulong cntrl; /* control register */ 47 ulong ovrl; /* overlay palette */ 48 }; 49 50