| plan 9 kernel history: overview | file list | diff list |
2001/0527/pc/screen.h (diff list | history)
| pc/screen.h on 1999/0119 | ||
| 1999/0119 | typedef struct Cursor Cursor; | |
| 1997/1101 | typedef struct Cursorinfo Cursorinfo; struct Cursorinfo { | |
| 1994/0414 | Cursor; Lock; }; | |
| 1997/1101 | /* devmouse.c */ | |
| 2001/0527 | extern void mousetrack(int, int, int, int); | |
| 1997/1101 | extern Point mousexy(void); | |
| 1997/0327 | ||
| 1999/0225 | extern void mouseaccelerate(int); | |
| 1999/0320 | extern int m3mouseputc(Queue*, int); extern int mouseputc(Queue*, int); | |
| 1997/1101 | extern Cursorinfo cursor; | |
| 1998/0209 | extern Cursor arrow; | |
| 1997/0327 | /* | |
| 1997/1101 | * Generic VGA registers. | |
| 1997/0327 | */ | |
| 1997/1101 | enum { MiscW = 0x03C2, /* Miscellaneous Output (W) */ MiscR = 0x03CC, /* Miscellaneous Output (R) */ Status0 = 0x03C2, /* Input status 0 (R) */ Status1 = 0x03DA, /* Input Status 1 (R) */ FeatureR = 0x03CA, /* Feature Control (R) */ FeatureW = 0x03DA, /* Feature Control (W) */ Seqx = 0x03C4, /* Sequencer Index, Data at Seqx+1 */ Crtx = 0x03D4, /* CRT Controller Index, Data at Crtx+1 */ Grx = 0x03CE, /* Graphics Controller Index, Data at Grx+1 */ Attrx = 0x03C0, /* Attribute Controller Index and Data */ PaddrW = 0x03C8, /* Palette Address Register, write */ Pdata = 0x03C9, /* Palette Data Register */ Pixmask = 0x03C6, /* Pixel Mask Register */ PaddrR = 0x03C7, /* Palette Address Register, read */ Pstatus = 0x03C7, /* DAC Status (RO) */ Pcolours = 256, /* Palette */ Pred = 0, Pgreen = 1, Pblue = 2, Pblack = 0x00, Pwhite = 0xFF, | |
| 1997/0327 | }; | |
| 1997/1101 | #define vgai(port) inb(port) #define vgao(port, data) outb(port, data) | |
| 1997/0327 | ||
| 1997/1101 | extern int vgaxi(long, uchar); extern int vgaxo(long, uchar, uchar); /* */ typedef struct VGAdev VGAdev; typedef struct VGAcur VGAcur; typedef struct VGAscr VGAscr; struct VGAdev { char* name; void (*enable)(VGAscr*); void (*disable)(VGAscr*); void (*page)(VGAscr*, int); ulong (*linear)(VGAscr*, int*, int*); | |
| 1999/1005 | void (*drawinit)(VGAscr*); int (*fill)(VGAscr*, Rectangle, ulong); | |
| 1997/1101 | }; struct VGAcur { char* name; void (*enable)(VGAscr*); void (*disable)(VGAscr*); void (*load)(VGAscr*, Cursor*); int (*move)(VGAscr*, Point); | |
| 1999/1005 | int doespanning; | |
| 1997/1101 | }; /* */ struct VGAscr { Lock devlock; VGAdev* dev; VGAcur* cur; ulong storage; Cursor; int useflush; ulong aperture; /* physical address */ int isupamem; int apsize; | |
| 1998/0507 | ulong io; /* device specific registers */ | |
| 1997/1101 | ulong colormap[Pcolours][3]; | |
| 1999/1005 | int palettedepth; | |
| 1997/1101 | ||
| 1999/1005 | ulong *mmio; | |
| 1997/1101 | Memimage* gscreen; Memdata* gscreendata; Memsubfont* memdefont; | |
| 1999/1005 | int (*fill)(VGAscr*, Rectangle, ulong); int (*scroll)(VGAscr*, Rectangle, Rectangle); | |
| 2000/0326 | void (*blank)(VGAscr*, int); | |
| 1999/1005 | ulong id; /* internal identifier for driver use */ | |
| 1997/1101 | }; | |
| 1999/1005 | ||
| 1997/1101 | extern VGAscr vgascreen[]; enum { | |
| 1999/1005 | Backgnd = 0, /* black */ | |
| 1997/1101 | }; | |
| 1998/0319 | /* mouse.c */ | |
| 1998/0417 | extern void mousectl(char*[], int); | |
| 1998/0319 | /* screen.c */ | |
| 1999/1006 | extern int hwaccel; /* use hw acceleration; default on */ | |
| 2000/0326 | extern int hwblank; /* use hw blanking; default on */ | |
| 2001/0527 | extern uchar* attachscreen(Rectangle*, ulong*, int*, int*, int*); | |
| 1998/0319 | extern void flushmemscreen(Rectangle); extern int cursoron(int); extern void cursoroff(int); extern void setcursor(Cursor*); | |
| 1999/1005 | extern int screensize(int, int, int, ulong); | |
| 1998/0319 | extern int screenaperture(int, int); | |
| 1999/1005 | extern Rectangle physgscreenr; /* actual monitor size */ | |
| 2000/0326 | extern void blankscreen(int); | |
| 1999/1009 | /* devdraw.c */ | |
| 1999/1005 | extern void deletescreenimage(void); | |
| 1999/1009 | extern int drawhasclients(void); | |
| 2000/0522 | extern ulong blanktime; | |
| 1998/0319 | /* vga.c */ extern void vgascreenwin(VGAscr*); | |
| 1999/1005 | extern void vgaimageinit(ulong); extern ulong vgapcilinear(VGAscr*, int*, int*, int, int); extern void drawblankscreen(int); | |
| 2000/0330 | extern void vgablank(VGAscr*, int); | |