1 /*====================================================================== 2 xrot 3 Copyright (C) 1997,1998 Masao Shiraishi 4 e-mail:msiro@cs.meiji.ac.jp 5 ========================================================================*/ 6 7 /* window size */ 8 #define WWIDTH 300 9 #define WHEIGHT 225 10 11 extern Display *dp; 12 extern Window win; 13 extern GC copyGC, titleGC, keysGC, blackGC; 14 extern XImage *ximage[2]; 15 extern char *image[2]; 16 extern int dbl_buf; 17 extern unsigned long black_pixel; 18 extern Colormap cmap; 19 extern int owncmap; 20 21 extern XFontStruct *fn2; 22 extern int ascent2; 23 extern unsigned long tipix[4]; 24 extern unsigned short grad[64]; 25 26 extern GC ballGC[2][2]; 27 extern int ball_x, ball_y, ball_w, ball_h; 28 29 extern int view_x, view_y; 30 31 #define COURSE 7 32 33 #ifdef MITSHM 34 extern int shm; 35 #endif 36 37 /* key state */ 38 extern int key_right, key_left; 39 extern int key_space, jump_key, soft_key; 40 extern int escape; 41 extern int restart; 42 43 extern int num_state; 44 extern char g_pixel; 45 46 /* course data */ 47 48 extern int lx[COURSE]; 49 extern int ly[COURSE]; 50 extern int sdeg[COURSE]; 51 extern int c6_x[3]; 52 extern int c6_y[3]; 53 extern int c6_deg[3]; 54 55 /* function */ 56 void init_X(); 57 void check_ev(); 58 void title(); 59 void set_background(); 60 void free_xres(); 61 void draw_win(); 62 void create_course(); 63 void draw_mesg(); 64 int pre_ev(); 65 void clear_screen(); 66 void draw_result(); 67 void goal_event(); 68 int course_select(); 69 void pre_event(); 70 void change_cmap(); 71 void conv_time(); 72