1 extern int vxsize,vysize; 2 3 typedef struct surface 4 { 5 unsigned char format; 6 int rgb[256]; 7 unsigned char *pic; 8 int xsize; 9 int ysize; 10 } surface; 11 12 #define FORMAT8 0 13 #define FORMAT16 1 14 #define FORMAT32 2 15 16 #define MYF1 0x180 17 #define MYF2 0x181 18 #define MYF3 0x182 19 #define MYF4 0x183 20 #define MYF5 0x184 21 #define MYF6 0x185 22 #define MYF7 0x186 23 #define MYF8 0x187 24 #define MYF9 0x188 25 #define MYF10 0x189 26 #define MYLEFT 0x190 27 #define MYRIGHT 0x191 28 #define MYUP 0x192 29 #define MYDOWN 0x193 30 #define MYPAGEUP 0x194 31 #define MYPAGEDOWN 0x195 32 #define MYHOME 0x196 33 #define MYEND 0x197 34 #define MYALTL 0x198 35 #define MYALTR 0x199 36 #define MYCTRLL 0x19a 37 #define MYCTRLR 0x19b 38 #define MYSHIFTL 0x19c 39 #define MYSHIFTR 0x19d 40 41 /* mouse events followed by int x,int y */ 42 #define MYMOUSE 0x400 43 #define MYMOUSE1DOWN (MYMOUSE) 44 #define MYMOUSE2DOWN (MYMOUSE|1) 45 #define MYMOUSE3DOWN (MYMOUSE|2) 46 #define MYMOUSE1UP (MYMOUSE|3) 47 #define MYMOUSE2UP (MYMOUSE|4) 48 #define MYMOUSE3UP (MYMOUSE|5) 49 #define MYMOUSEMOVE (MYMOUSE|6) 50 51 #define ENDMARK 0xffffff 52 53 #define MYDELETE 0x7f 54 #define MYSHIFTED 0x40 55 #define MYALTED 0x200 56 #define MYMOUSE 0x400 57 58 extern unsigned char *videomem; 59 extern int stride; 60 extern unsigned char exitflag; 61 62 void updatemap(void); 63 void mapkey(int code,int qual,int *mapped); 64 void markkey(int code,int mod,int status); 65 int ignorable(int code); 66 int nextcode(void); 67 int checkdown(int code); 68 void scaninput(void); 69 void opendisplay(int sx,int sy); 70 void closedisplay(void); 71 void clear(void); 72 void copyup(void); 73 void scrunlock(void); 74 void scrlock(void); 75 void delay(int); 76 int gticks(void); 77 int readpcx(char *name,surface *gs); 78 void gstoback(int destx,int desty,surface *gs,int sourcex,int sourcey,int sizex,int sizey); 79 void rgbdot(unsigned int x,unsigned int y,unsigned char r,unsigned char g,unsigned char b); 80 void eraserect(int x,int y,int sizex,int sizey); 81 void solidrect(int x,int y,int sizex,int sizey,unsigned char r,unsigned char g,unsigned char b); 82 void copytoback(unsigned int n); 83 void copyfromback(unsigned int n); 84 void darkenrect(int x,int y,int sizex,int sizey); 85 void lightenrect(int x,int y,int sizex,int sizey); 86 void transformrect(int x,int y,int sizex,int sizey,unsigned short *trans); 87 void freegs(surface *gs); 88 int maprgb(int r,int g,int b); 89 void applyshadowplane(unsigned char *plane); 90 91 92 // lopan.c 93 void nomem(int code); 94 95