X-Git-Url: https://git.artsoft.org/?a=blobdiff_plain;f=src%2Finit.c;h=0dc30c653d58cb24389d2824db335b13d14322aa;hb=7b61c9f3ee0fb13b190dba016923ebcd547c4f27;hp=522b1b40110374ac2e5fe93d399ef8a7e55f53bc;hpb=f58e776feec767136f4a8f4b62e0103d13c0a910;p=rocksndiamonds.git diff --git a/src/init.c b/src/init.c index 522b1b40..0dc30c65 100644 --- a/src/init.c +++ b/src/init.c @@ -1753,14 +1753,6 @@ static void InitGraphicInfo() int num_images = getImageListSize(); int i; -#if defined(TARGET_X11_NATIVE_PERFORMANCE_WORKAROUND) - static boolean clipmasks_initialized = FALSE; - Pixmap src_pixmap; - XGCValues clip_gc_values; - unsigned int clip_gc_valuemask; - GC copy_clipmask_gc = None; -#endif - /* use image size as default values for width and height for these images */ static int full_size_graphics[] = { @@ -1771,6 +1763,7 @@ static void InitGraphicInfo() IMG_BACKGROUND_ENVELOPE_2, IMG_BACKGROUND_ENVELOPE_3, IMG_BACKGROUND_ENVELOPE_4, + IMG_BACKGROUND_REQUEST, IMG_BACKGROUND, IMG_BACKGROUND_TITLE_INITIAL, @@ -1785,11 +1778,15 @@ static void InitGraphicInfo() IMG_BACKGROUND_INFO_MUSIC, IMG_BACKGROUND_INFO_CREDITS, IMG_BACKGROUND_INFO_PROGRAM, + IMG_BACKGROUND_INFO_VERSION, IMG_BACKGROUND_INFO_LEVELSET, IMG_BACKGROUND_SETUP, + IMG_BACKGROUND_PLAYING, IMG_BACKGROUND_DOOR, IMG_BACKGROUND_TAPE, IMG_BACKGROUND_PANEL, + IMG_BACKGROUND_PALETTE, + IMG_BACKGROUND_TOOLBOX, IMG_TITLESCREEN_INITIAL_1, IMG_TITLESCREEN_INITIAL_2, @@ -1802,6 +1799,17 @@ static void InitGraphicInfo() IMG_TITLESCREEN_4, IMG_TITLESCREEN_5, + IMG_BACKGROUND_TITLEMESSAGE_INITIAL_1, + IMG_BACKGROUND_TITLEMESSAGE_INITIAL_2, + IMG_BACKGROUND_TITLEMESSAGE_INITIAL_3, + IMG_BACKGROUND_TITLEMESSAGE_INITIAL_4, + IMG_BACKGROUND_TITLEMESSAGE_INITIAL_5, + IMG_BACKGROUND_TITLEMESSAGE_1, + IMG_BACKGROUND_TITLEMESSAGE_2, + IMG_BACKGROUND_TITLEMESSAGE_3, + IMG_BACKGROUND_TITLEMESSAGE_4, + IMG_BACKGROUND_TITLEMESSAGE_5, + -1 }; @@ -1819,22 +1827,6 @@ static void InitGraphicInfo() graphic_info[full_size_graphics[i]].use_image_size = TRUE; #endif -#if defined(TARGET_X11_NATIVE_PERFORMANCE_WORKAROUND) - if (clipmasks_initialized) - { - for (i = 0; i < num_images; i++) - { - if (graphic_info[i].clip_mask) - XFreePixmap(display, graphic_info[i].clip_mask); - if (graphic_info[i].clip_gc) - XFreeGC(display, graphic_info[i].clip_gc); - - graphic_info[i].clip_mask = None; - graphic_info[i].clip_gc = None; - } - } -#endif - /* first set all graphic paramaters ... */ for (i = 0; i < num_images; i++) set_graphic_parameters(i); @@ -1927,41 +1919,7 @@ static void InitGraphicInfo() graphic_info[i] = graphic_info[fallback_graphic]; } - -#if defined(TARGET_X11_NATIVE_PERFORMANCE_WORKAROUND) - /* currently we only need a tile clip mask from the first frame */ - getFixedGraphicSource(i, first_frame, &src_bitmap, &src_x, &src_y); - - if (copy_clipmask_gc == None) - { - clip_gc_values.graphics_exposures = False; - clip_gc_valuemask = GCGraphicsExposures; - copy_clipmask_gc = XCreateGC(display, src_bitmap->clip_mask, - clip_gc_valuemask, &clip_gc_values); - } - - graphic_info[i].clip_mask = - XCreatePixmap(display, window->drawable, TILEX, TILEY, 1); - - src_pixmap = src_bitmap->clip_mask; - XCopyArea(display, src_pixmap, graphic_info[i].clip_mask, - copy_clipmask_gc, src_x, src_y, TILEX, TILEY, 0, 0); - - clip_gc_values.graphics_exposures = False; - clip_gc_values.clip_mask = graphic_info[i].clip_mask; - clip_gc_valuemask = GCGraphicsExposures | GCClipMask; - - graphic_info[i].clip_gc = - XCreateGC(display, window->drawable, clip_gc_valuemask, &clip_gc_values); -#endif } - -#if defined(TARGET_X11_NATIVE_PERFORMANCE_WORKAROUND) - if (copy_clipmask_gc) - XFreeGC(display, copy_clipmask_gc); - - clipmasks_initialized = TRUE; -#endif } static void InitGraphicCompatibilityInfo() @@ -2003,6 +1961,10 @@ static void InitGraphicCompatibilityInfo() } #if 1 + InitGraphicCompatibilityInfo_Doors(); +#endif + +#if 0 struct { int graphic; @@ -5247,15 +5209,11 @@ void Execute_Command(char *command) } else if (strPrefix(command, "create images ")) { -#if defined(TARGET_SDL) global.create_images_dir = getStringCopy(&command[14]); if (access(global.create_images_dir, W_OK) != 0) Error(ERR_EXIT, "image target directory '%s' not found or not writable", global.create_images_dir); -#else - Error(ERR_EXIT, "command only available for SDL target"); -#endif } #if DEBUG @@ -5544,7 +5502,11 @@ void InitGfxBuffers() ReCreateBitmap(&bitmap_db_cross, WIN_XSIZE, WIN_YSIZE, DEFAULT_DEPTH); ReCreateBitmap(&bitmap_db_field, FXSIZE, FYSIZE, DEFAULT_DEPTH); ReCreateBitmap(&bitmap_db_panel, DXSIZE, DYSIZE, DEFAULT_DEPTH); +#if 0 ReCreateBitmap(&bitmap_db_door, 3 * DXSIZE, DYSIZE + VYSIZE, DEFAULT_DEPTH); +#endif + ReCreateBitmap(&bitmap_db_door_1, 3 * DXSIZE, DYSIZE, DEFAULT_DEPTH); + ReCreateBitmap(&bitmap_db_door_2, 3 * VXSIZE, VYSIZE, DEFAULT_DEPTH); ReCreateBitmap(&bitmap_db_toons, FULL_SXSIZE, FULL_SYSIZE, DEFAULT_DEPTH); /* initialize screen properties */ @@ -5620,7 +5582,7 @@ void InitGfx() font_height = getFontHeight(FC_RED); -#if 1 +#if 0 DrawInitTextAlways(getWindowTitleString(), 20, FC_YELLOW); #else DrawInitTextAlways(getProgramInitString(), 20, FC_YELLOW);