Vladimir 'phcoder' Serbinenko
05e5187978
Cirrus 5446 and Bochs video cards support.
* conf/i386.rmk (pkglib_MODULES): Add video_cirrus.mod and
video_bochs.mod
(video_cirrus_mod_SOURCES): New variable.
(video_cirrus_mod_CFLAGS): Likewise.
(video_cirrus_mod_LDFLAGS): Likewise.
(video_bochs_mod_SOURCES): Likewise.
(video_bochs_mod_CFLAGS): Likewise.
(video_bochs_mod_LDFLAGS): Likewise.
* include/grub/vga.h: New file.
* include/grub/video_fb.h (grub_video_fb_doublebuf_blit_init): Removed.
(grub_video_fb_set_page_t): New type.
(grub_video_fb_setup): New prototype.
(grub_video_fb_swap_buffers): Likewise.
(grub_video_fb_get_info_and_fini): Likewise.
* term/i386/pc/vga_text.c (CRTC_ADDR_PORT): Moved to include/grub/vga.h.
(CRTC_DATA_PORT): Likewise.
(CRTC_CURSOR): Likewise.
(CRTC_CURSOR_ADDR_HIGH): Likewise.
(CRTC_CURSOR_ADDR_LOW): Likewise.
(CRTC_CURSOR_DISABLE): Likewise.
(update_cursor): Use grub_vga_cr_write.
(grub_vga_text_setcursor): Likewise.
* video/bochs.c: New file.
* video/fb/video_fb.c (render_target): Moved into framebuffer variable.
(palette): Likewise.
(palette_size): Likewise.
(framebuffer): New variable.
(grub_video_fb_init): Use 'framebuffer'.
(grub_video_fb_fini): Likewise.
(grub_video_fb_get_info): Likewise.
(grub_video_fb_get_palette): Likewise.
(grub_video_fb_set_palette): Likewise.
(grub_video_fb_set_viewport): Likewise.
(grub_video_fb_get_viewport): Likewise.
(grub_video_fb_map_color): Likewise.
(grub_video_fb_map_rgb): Likewise.
(grub_video_fb_map_rgba): Likewise.
(grub_video_fb_unmap_color): Likewise.
(grub_video_fb_unmap_color_int): Likewise.
(grub_video_fb_fill_rect): Likewise.
(grub_video_fb_blit_bitmap): Likewise.
(grub_video_fb_blit_render_target): Likewise.
(grub_video_fb_scroll): Likewise.
(grub_video_fb_create_render_target): Likewise.
(grub_video_fb_doublebuf_blit_init): Likewise.
(grub_video_fb_set_active_render_target): Handle doublebuffering.
(doublebuf_pageflipping_update_screen): New function.
(doublebuf_pageflipping_init): Likewise.
(grub_video_fb_setup): Likewise.
(grub_video_fb_swap_buffers): Likewise.
(grub_video_fb_get_info_and_fini): Likewise.
* video/i386/pc/vbe.c (framebuffer): Remove all doublebuffering fields.
All users updated.
(doublebuf_pageflipping_commit): Restructured into ...
(doublebuf_pageflipping_set_page): ... this.
(doublebuf_pageflipping_update_screen): Removed.
(doublebuf_pageflipping_init): Likewise.
(double_buffering_init): Likewise.
(grub_video_vbe_setup): Use grub_video_fb_setup.
(grub_video_vbe_swap_buffers): Removed.
(grub_video_vbe_set_active_render_target): Likewise.
(grub_video_vbe_get_active_render_target): Likewise.
(grub_video_vbe_get_info_and_fini): Use grub_video_fb_get_info_and_fini.
(grub_video_vbe_adapter): Use grub_video_fb_swap_buffers,
grub_video_fb_set_active_render_target and
grub_video_fb_get_active_render_target.
* video/i386/pc/vga.c (SEQUENCER_ADDR_PORT): Move to include/grub/vga.h.
(SEQUENCER_DATA_PORT): Likewise.
(MAP_MASK_REGISTER): Likewise.
(CRTC_ADDR_PORT): Likewise.
(CRTC_DATA_PORT): Likewise.
(START_ADDR_HIGH_REGISTER): Likewise.
(START_ADDR_LOW_REGISTER): Likewise.
(GRAPHICS_ADDR_PORT): Likewise.
(GRAPHICS_DATA_PORT): Likewise.
(READ_MAP_REGISTER): Likewise.
(INPUT_STATUS1_REGISTER): Likewise.
(INPUT_STATUS1_VERTR_BIT): Likewise.
(get_map_mask): Use grub_vga_sr_read.
(set_map_mask): Use grub_vga_sr_write.
(set_read_map): Use grub_vga_gr_write.
(set_start_address): Use grub_vga_cr_write.
* video/sm712.c (framebuffer): Remove leftover fields.
2010-06-20 14:15:20 +02:00
..
2010-06-11 22:15:35 +01:00
2009-09-02 13:34:40 +02:00
2010-06-07 22:41:55 +01:00
2010-06-12 12:17:28 +01:00
2010-05-05 18:52:13 +02:00
2009-05-04 20:06:05 +00:00
2010-05-31 13:58:18 +02:00
2010-04-26 21:11:16 +02:00
2010-04-26 21:11:16 +02:00
2010-04-27 20:55:12 +05:30
2010-04-26 21:11:16 +02:00
2007-07-21 23:32:33 +00:00
2009-06-10 21:04:23 +00:00
2010-02-13 16:26:50 +01:00
2009-12-25 22:29:47 +00:00
2009-10-11 18:18:18 +02:00
2009-12-24 23:53:05 +01:00
2009-12-18 03:57:32 +01:00
2010-02-25 15:10:18 +01:00
2010-02-25 15:10:18 +01:00
2007-07-21 23:32:33 +00:00
2010-02-06 18:43:37 +01:00
2010-02-25 15:10:18 +01:00
2010-02-07 00:52:31 +01:00
2009-12-24 15:34:33 +01:00
2009-12-11 22:14:09 +01:00
2010-03-26 19:32:21 +01:00
2009-12-23 17:33:35 +01:00
2010-05-31 13:58:18 +02:00
2010-02-07 23:49:49 +01:00
2007-07-21 23:32:33 +00:00
2010-05-31 20:49:42 +02:00
2010-06-11 22:31:16 +02:00
2010-04-26 19:11:38 +02:00
2009-10-16 17:40:59 +02:00
2009-12-20 02:52:39 +01:00
2009-12-20 02:52:39 +01:00
2010-02-07 00:46:09 +01:00
2009-03-21 08:39:59 +00:00
2009-08-28 13:54:20 +00:00
2009-08-18 17:26:35 +00:00
2009-08-18 17:26:35 +00:00
2009-11-22 12:50:46 +00:00
2010-02-25 15:10:18 +01:00
2010-01-26 20:16:08 +00:00
2010-06-12 14:33:09 +01:00
2009-04-05 20:19:05 +00:00
2009-12-26 01:49:57 +01:00
2009-12-26 16:41:54 +01:00
2010-02-25 15:10:18 +01:00
2009-11-20 16:02:58 +01:00
2009-04-19 20:38:46 +00:00
2009-12-29 17:31:02 +01:00
2010-05-13 03:56:14 +02:00
2007-07-21 23:32:33 +00:00
2009-12-16 15:40:31 +01:00
2010-05-21 20:12:41 +02:00
2009-11-20 16:02:58 +01:00
2010-04-26 21:11:16 +02:00
2010-04-11 01:14:31 +02:00
2010-04-19 15:15:59 +05:30
2010-04-10 01:56:51 +02:00
2010-03-26 20:20:52 +01:00
2009-04-27 16:48:58 +00:00
2009-06-10 21:04:23 +00:00
2009-09-02 02:52:10 +02:00
2009-09-02 02:52:10 +02:00
2009-06-10 21:04:23 +00:00
2009-12-26 16:39:16 +01:00
2009-12-29 23:01:12 +01:00
2010-04-11 21:24:21 +02:00
2010-03-26 17:06:36 +01:00
2010-02-06 18:43:37 +01:00
2007-07-25 00:44:03 +00:00
2010-05-01 14:06:53 +02:00
2009-06-10 21:04:23 +00:00
2010-04-09 21:07:24 +02:00
2010-01-03 22:05:07 +00:00
2010-04-26 21:11:16 +02:00
2010-03-27 00:19:42 +01:00
2010-06-12 14:33:09 +01:00
2009-06-10 21:04:23 +00:00
2010-05-31 13:58:18 +02:00
2009-10-14 18:17:18 +02:00
2009-07-31 14:25:19 +00:00
2009-12-24 00:37:11 +01:00
2010-04-09 22:35:32 +02:00
2008-08-27 15:05:00 +00:00
2010-06-02 16:45:43 +02:00
2010-02-07 15:17:26 +01:00
2009-11-23 21:15:44 +01:00
2009-10-10 20:59:18 +02:00
2007-07-21 23:32:33 +00:00
2010-05-31 13:58:18 +02:00
2010-01-03 22:05:07 +00:00
2010-03-27 00:19:42 +01:00
2009-12-24 23:20:43 +01:00
2010-02-09 15:32:42 +01:00
2010-02-07 02:47:18 +01:00
2007-07-21 23:32:33 +00:00
2009-11-14 23:11:55 +01:00
2010-06-12 14:50:07 +02:00
2010-06-01 02:10:19 +02:00
2009-06-10 21:04:23 +00:00
2010-06-01 02:10:19 +02:00
2010-05-17 02:25:37 +02:00
2010-05-16 15:01:54 +02:00
2010-06-20 14:15:20 +02:00
2009-12-25 21:32:46 +01:00