|
|
1.1 root 1: /*
2: * UAE - The Un*x Amiga Emulator
3: *
4: * Interface to the graphics system (X, SVGAlib)
5: *
6: * (c) 1995 Bernd Schmidt
7: */
8:
9: typedef long int xcolnr;
10:
1.1.1.2 ! root 11: typedef int (*allocfunc_type)(int, int, int, xcolnr *);
1.1 root 12:
13: extern xcolnr xcolors[4096];
14:
15: extern int buttonstate[3];
16: extern int newmousecounters;
17: extern int lastmx, lastmy;
18:
19: extern int graphics_init(void);
20: extern void graphics_leave(void);
21: extern void handle_events(void);
22: extern void setup_brkhandler(void);
23:
24: extern void flush_line(int);
25: extern void flush_block(int, int);
26: extern void flush_screen(int, int);
27:
28: extern int debuggable(void);
29: extern int needmousehack(void);
30: extern void togglemouse(void);
31: extern void LED(int);
32:
33: extern unsigned long doMask(int p, int bits, int shift);
1.1.1.2 ! root 34: extern void setup_maxcol(int);
1.1 root 35: extern void alloc_colors256(int (*)(int, int, int, xcolnr *));
36: extern void alloc_colors64k(int, int, int, int, int, int);
37: extern void setup_greydither(int bits, allocfunc_type allocfunc);
1.1.1.2 ! root 38: extern void setup_greydither_maxcol(int maxcol, allocfunc_type allocfunc);
1.1 root 39: extern void setup_dither(int bits, allocfunc_type allocfunc);
40: #ifndef X86_ASSEMBLY
1.1.1.2 ! root 41: extern void DitherLine(UBYTE *l, UWORD *r4g4b4, int x, int y, WORD len, int bits);
1.1 root 42: #else
43: extern void DitherLine(UBYTE *l, UWORD *r4g4b4, int x, int y, UWORD len, int bits) __asm__("DitherLine");
44: #endif
45:
46: struct vidbuf_description
47: {
1.1.1.2 ! root 48: char *bufmem; /* Pointer to either the video memory or an area as large which is used as a buffer. */
! 49: int rowbytes; /* Bytes per row in the memory pointed at by bufmem. */
! 50: int pixbytes; /* Bytes per pixel. */
! 51: int maxlinetoscr; /* Number of pixels to draw per line. */
! 52: int maxline; /* Number of lines in the area pointed to by bufmem. */
! 53: int maxblocklines; /* Set to 0 if you want calls to flush_line after each drawn line, or the number of
! 54: * lines that flush_block wants to/can handle (it isn't really useful to use another
! 55: * value than maxline here). */
1.1 root 56: };
57:
58: extern struct vidbuf_description gfxvidinfo;
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.