1. 26 Feb, 2015 1 commit
  2. 08 Nov, 2013 1 commit
    • Vladimir Testov's avatar
      * grub-core/gfxmenu/gui_box.c: Updated to work with area status. · 4db22500
      Vladimir Testov authored
              * grub-core/gfxmenu/gui_canvas.c: Likewise.
              * grub-core/gfxmenu/view.c: Likewise.
              * grub-core/video/fb/video_fb.c: Introduce new functions:
              grub_video_set_area_status, grub_video_get_area_status,
              grub_video_set_region, grub_video_get_region.
              * grub-core/video/bochs.c: Likewise.
              * grub-core/video/capture.c: Likewise.
              * grub-core/video/video.c: Likewise.
              * grub-core/video/cirrus.c: Likewise.
              * grub-core/video/efi_gop.c: Likewise.
              * grub-core/video/efi_uga.c: Likewise.
              * grub-core/video/emu/sdl.c: Likewise.
              * grub-core/video/radeon_fuloong2e.c: Likewise.
              * grub-core/video/sis315pro.c: Likewise.
              * grub-core/video/sm712.c: Likewise.
              * grub-core/video/i386/pc/vbe.c: Likewise.
              * grub-core/video/i386/pc/vga.c: Likewise.
              * grub-core/video/ieee1275.c: Likewise.
              * grub-core/video/i386/coreboot/cbfb.c: Likewise.
              * include/grub/video.h: Likewise.
              * include/grub/video_fb.h: Likewise.
              * include/grub/fbfill.h: Updated render_target structure.
              grub_video_rect_t viewport, region, area
              int area_offset_x, area_offset_y, area_enabled
              * include/grub/gui.h: New helper function
              grub_video_bounds_inside_region.
              * docs/grub-dev.texi: Added information about new functions.
      4db22500
  3. 05 Nov, 2013 1 commit
  4. 26 Oct, 2013 1 commit
  5. 28 Sep, 2013 1 commit
  6. 31 May, 2013 2 commits
  7. 05 May, 2013 1 commit
  8. 04 May, 2013 1 commit
  9. 03 May, 2013 2 commits
  10. 19 Jun, 2012 1 commit
    • Vladimir 'phcoder' Serbinenko's avatar
      Avoid unnecessary memcpy of whole video buffer. · 52f0f643
      Vladimir 'phcoder' Serbinenko authored
      	* grub-core/video/fb/video_fb.c (dirty): New struct.
      	(framebuffer): Add members current_dirty and previous_dirty.
      	(dirty): New function.
      	(grub_video_fb_fill_rect): Update dirty.
      	(common_blitter): Likewise.
      	(grub_video_fb_scroll): Likewise.
      	(doublebuf_blit_update_screen): Copy only dirty part.
      	(doublebuf_pageflipping_update_screen): Likewise.
      	(grub_video_fb_doublebuf_blit_init): Init dirty.
      	(doublebuf_pageflipping_init): Likewise.
      	(grub_video_fb_setup): Likewise.
      52f0f643
  11. 16 Jun, 2012 1 commit
    • Vladimir 'phcoder' Serbinenko's avatar
      Avoid slow read-back from VRAM. · ba67e2c6
      Vladimir 'phcoder' Serbinenko authored
      	* include/grub/video_fb.h (grub_video_fb_doublebuf_update_screen_t):
      	Move from here ...
      	* grub-core/video/fb/video_fb.c
      	(grub_video_fb_doublebuf_update_screen_t): ... here. Remove arguments.
      	* grub-core/video/fb/video_fb.c (framebuf_t): New type.
      	(front_target): Remove front_target. Add pages.
      	(grub_video_fb_init): Skip setting front_pages.
      	(grub_video_fb_fini): Likewise.
      	(doublebuf_blit_update_screen): Use pages.
      	(grub_video_fb_doublebuf_blit_init): Likewise.
      	(doublebuf_pageflipping_init): Allocate offscreen buffer.
      	(doublebuf_pageflipping_update_screen): Use offscreen buffer.
      	(grub_video_fb_setup): Prefer doublebuffing.
      ba67e2c6
  12. 08 Feb, 2012 1 commit
  13. 14 Dec, 2011 1 commit
    • Vladimir 'phcoder' Serbinenko's avatar
      Fix video on platforms where unaligned access is forbidden. · 12e9d4d1
      Vladimir 'phcoder' Serbinenko authored
      	Make several optimisations while on it.
      
      	* grub-core/video/fb/fbblit.c (grub_video_fbblit_replace_directN):
      	Optimise and use GRUB_VIDEO_FB_ADVANCE_POINTER.
      	(grub_video_fbblit_replace_32bit_1bit): Likewise.
      	(grub_video_fbblit_replace_24bit_1bit) [!GRUB_HAVE_UNALIGNED_ACCESS]:
      	Disable.
      	(grub_video_fbblit_replace_16bit_1bit):
      	Optimise and use GRUB_VIDEO_FB_ADVANCE_POINTER.
      	(grub_video_fbblit_replace_8bit_1bit): Likewise.
      	(grub_video_fbblit_replace_BGRX8888_RGBX8888): Likewise.
      	(grub_video_fbblit_replace_BGRX8888_RGB888): Likewise.
      	(grub_video_fbblit_replace_BGR888_RGBX8888): Likewise.
      	(grub_video_fbblit_replace_BGR888_RGBX8888): Likewise.
      	(grub_video_fbblit_replace_BGR888_RGB888): Likewise.
      	(grub_video_fbblit_replace_RGBX8888_RGB88): Likewise.
      	(grub_video_fbblit_replace_RGB888_RGBX888): Likewise.
      	(grub_video_fbblit_replace_RGB888_RGBX8888): Likewise.
      	(grub_video_fbblit_replace_index_RGBX8888): Likewise.
      	(grub_video_fbblit_replace_index_RGB888): Likewise.
      	(grub_video_fbblit_blend_BGRA8888_RGBA8888): Likewise.
      	(grub_video_fbblit_blend_BGR888_RGBA8888): Likewise.
      	(grub_video_fbblit_blend_RGBA8888_RGBA8888): Likewise.
      	(grub_video_fbblit_blend_RGB888_RGBA8888): Likewise.
      	(grub_video_fbblit_blend_index_RGBA8888): Likewise.
      	(grub_video_fbblit_blend_XXXA8888_1bit): Likewise.
      	(grub_video_fbblit_blend_XXX888_1bit) [!GRUB_HAVE_UNALIGNED_ACCESS]:
      	Disable.
      	(grub_video_fbblit_blend_XXX565_1bit):
      	Optimise and use GRUB_VIDEO_FB_ADVANCE_POINTER.
      	* grub-core/video/fb/fbfill.c (grub_video_fbfill_direct32): Likewise.
      	* grub-core/video/fb/fbutil.c (grub_video_fb_get_video_ptr): Return
      	void *.
      	* grub-core/video/fb/video_fb.c (common_blitter)
      	[!GRUB_HAVE_UNALIGNED_ACCESS]: Skip disabled blitters.
      	(grub_video_fb_create_render_target_from_pointer)
      	[!GRUB_HAVE_UNALIGNED_ACCESS]: Check alignment.
      	* include/grub/fbutil.h (grub_video_fb_get_video_ptr): Return void *.
      	* include/grub/i386/types.h (GRUB_HAVE_UNALIGNED_ACCESS): New
      	definition.
      	* include/grub/x86_64/types.h (GRUB_HAVE_UNALIGNED_ACCESS): Likewise.
      12e9d4d1
  14. 12 Apr, 2011 1 commit
  15. 06 Apr, 2011 1 commit
  16. 25 Mar, 2011 1 commit
  17. 06 May, 2010 1 commit