Commit graph

246 commits

Author SHA1 Message Date
Vladimir 'phcoder' Serbinenko
91d135a12c Support variable speed 2010-07-18 15:00:50 +02:00
Vladimir 'phcoder' Serbinenko
1da07b142b some serial config support 2010-07-18 14:43:23 +02:00
Vladimir 'phcoder' Serbinenko
8c8e269906 Encapsulate serial config in dedicated structure 2010-07-18 13:40:48 +02:00
Vladimir 'phcoder' Serbinenko
34364df689 usbserial basic support. Works in qemu 2010-07-18 12:53:35 +02:00
Vladimir 'phcoder' Serbinenko
7b5502f30b Remove debug comment-out 2010-07-18 01:41:08 +02:00
Vladimir 'phcoder' Serbinenko
75eb7d1116 Restructure serial in order to prepare for usbserial. As a byproduct simultaneous serial consoles are possible 2010-07-18 01:37:19 +02:00
Vladimir 'phcoder' Serbinenko
3a25376967 Detect usb keyboard properly, support keyboard hotpluanad multiple keyboards 2010-07-17 03:57:59 +02:00
Colin Watson
f7bf0918aa * term/gfxterm.c (grub_gfxterm_background_image_cmd): Fix
indentation.
2010-07-07 14:12:16 +01:00
Colin Watson
1e54546914 * term/gfxterm.c (repaint_schedulded): Rename to ...
(repaint_scheduled): ... this.  Update all callers.
(repaint_was_schedulded): Rename to ...
(repaint_was_scheduled): ... this.  Update all callers.
2010-07-06 18:31:45 +01:00
Vladimir 'phcoder' Serbinenko
e8d0a8f85c Merge mainline into bidi 2010-07-02 19:35:07 +02:00
Vladimir 'phcoder' Serbinenko
b7e79e8a6a Merge mainline into yeeloongfw 2010-06-30 02:30:05 +02:00
Vladimir 'phcoder' Serbinenko
8e50ec9f05 Merge mainline into cirrus 2010-06-21 02:15:49 +02:00
Vladimir 'phcoder' Serbinenko
5410ebd1f6 Don't read outside of VGA screen 2010-06-21 02:08:48 +02:00
Vladimir 'phcoder' Serbinenko
d246fc0368 Improve macroification of VGA registers. 2010-06-21 00:58:43 +02:00
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
Aleš Nesrsta
7d4873c26a Merge Aleš' latest patch 2010-06-01 02:10:19 +02:00
Vladimir 'phcoder' Serbinenko
2226d68df1 merge mainline into yeeloongfw 2010-05-23 14:50:11 +02:00
Vladimir 'phcoder' Serbinenko
5f2316c1fe * gfxmenu/gfxmenu.c (grub_gfxmenu_try): Change viewport on both buffers.
* term/gfxterm.c (real_scroll): Likewise.
2010-05-23 13:42:16 +02:00
Vladimir 'phcoder' Serbinenko
6e198650e9 Enable serial in simulcast with local terminal on yeeloong 2010-05-22 23:36:44 +02:00
Vladimir 'phcoder' Serbinenko
e34b610d49 merge mainline into yeeloongfw 2010-05-22 16:58:45 +02:00
Vladimir 'phcoder' Serbinenko
967828eb5a macroify and share VGA registers 2010-05-17 02:25:37 +02:00
Vladimir 'phcoder' Serbinenko
232dbbe509 Rename 'VGA' character set to CP-437 2010-05-09 13:26:52 +02:00
Vladimir 'phcoder' Serbinenko
d7fd78dc3d macroify EFI characters mapping 2010-05-09 13:20:35 +02:00
Vladimir 'phcoder' Serbinenko
7dcef22cd3 merge mainline into bidi 2010-05-09 11:03:03 +02:00
Vladimir 'phcoder' Serbinenko
c6e5caab1d Transform (broken) vga terminal into (working) vga video driver.
* conf/i386-pc.rmk (vga_mod_SOURCES): Change term/i386/pc/vga.c to
	video/i386/pc/vga.c.
	* include/grub/video.h (grub_video_driver_id):
	Add GRUB_VIDEO_DRIVER_VGA.
	* term/i386/pc/vga.c: Renamed to ...
	* video/i386/pc/vga.c: ...this
	(DEBUG_VGA): Removed.
	(CHAR_WIDTH): Likewise.
	(CHAR_HEIGHT): Likewise.
	(TEXT_WIDTH): Likewise.
	(TEXT_HEIGHT): Likewise.
	(DEFAULT_FG_COLOR): Likewise.
	(DEFAULT_BG_COLOR): Likewise.
	(colored_char): Likewise.
	(xpos): Likewise.
	(ypos): Likewise.
	(cursor_state): Likewise.
	(fg_color): Likewise.
	(bg_color): Likewise.
	(text_buf): Likewise.
	(page): Likewise.
	(font): Likewise.
	(framebuffer): New variable.
	(set_read_map): Disabled.
	(setup): New variable.
	(is_target): Likewise.
	(grub_vga_mod_init): Likewise.
	(grub_vga_mod_fini): Likewise.
	(check_vga_mem): Likewise.
	(write_char): Likewise.
	(write_cursor): Likewise.
	(scroll_up): Likewise.
	(grub_vga_putchar): Likewise.
	(grub_vga_getcharwidth): Likewise.
	(grub_vga_getwh): Likewise.
	(grub_vga_getxy): Likewise.
	(grub_vga_gotoxy): Likewise.
	(grub_vga_cls): Likewise.
	(grub_vga_setcolorstate): Likewise.
	(grub_vga_setcursor): Likewise.
	(grub_video_vga_init): New function.
	(grub_video_vga_setup): Likewise.
	(grub_video_vga_fini): Likewise.
	(update_target): Likewise.
	(grub_video_vga_blit_bitmap): Likewise.
	(grub_video_vga_blit_render_target): Likewise.
	(grub_video_vga_set_active_render_target): Likewise.
	(grub_video_vga_get_active_render_target): Likewise.
	(grub_video_vga_swap_buffers): Likewise.
	(grub_video_vga_set_palette): Likewise.
	(grub_video_vga_get_info_and_fini): Likewise.
	(grub_vga_term): Removed.
	(grub_video_vga_adapter): New variable.
	(GRUB_MOD_INIT): Register a video driver instead of terminal.
	(GRUB_MOD_FINI): Unrefister a video driver instead of terminal.
2010-05-09 11:00:21 +02:00
Vladimir 'phcoder' Serbinenko
3c151d94af simplify setcolor/getcolor 2010-05-08 01:06:22 +02:00
Vladimir 'phcoder' Serbinenko
d8e9099811 Move serial encoding handling to terminfo.c 2010-05-08 00:17:23 +02:00
Vladimir 'phcoder' Serbinenko
710d05aa8c Support serial colors 2010-05-07 18:07:05 +02:00
Vladimir 'phcoder' Serbinenko
bf8733749b merge common serial and ofconsole code into terminfo 2010-05-07 15:44:43 +02:00
Vladimir 'phcoder' Serbinenko
58664b94b7 pass pointer to term to term functions 2010-05-07 02:30:44 +02:00
Vladimir 'phcoder' Serbinenko
82e32bc310 make serial use ANSI code recognition in terminfo.mod 2010-05-06 21:32:58 +02:00
Vladimir 'phcoder' Serbinenko
e903ddec1c move ANSI code recognition to terminfo.mod 2010-05-06 21:11:59 +02:00
Vladimir 'phcoder' Serbinenko
42d2c16b39 merge mainline in bidi 2010-05-06 15:18:46 +02:00
Vladimir 'phcoder' Serbinenko
a7fc080b56 * term/ieee1275/ofconsole.c (grub_ofconsole_getkey): Fix off-by-one
error.
2010-05-05 18:44:02 +02:00
Vladimir 'phcoder' Serbinenko
2bf6012d7f * term/ieee1275/ofconsole.c (grub_ofconsole_readkey): Support C0 code. 2010-05-05 18:42:33 +02:00
Vladimir 'phcoder' Serbinenko
99bfe57386 merge mainline into bidi 2010-05-05 16:28:52 +02:00
Vladimir 'phcoder' Serbinenko
d8b5cd4011 * commands/hashsum.c (GRUB_MOD_INIT): Remove duplication of command
name and add N_.
	* commands/i386/pc/drivemap.c (GRUB_MOD_INIT): Likewise.
	* commands/iorw.c (GRUB_MOD_INIT): Likewise.
	* commands/password_pbkdf2.c (GRUB_MOD_INIT): Likewise.
	* commands/regexp.c (GRUB_MOD_INIT): Likewise.
	* commands/setpci.c (GRUB_MOD_INIT): Likewise.
	* commands/terminal.c (GRUB_MOD_INIT): Likewise.
	* efiemu/main.c (GRUB_MOD_INIT): Likewise.
	* font/font_cmd.c (GRUB_MOD_INIT): Likewise.
	* kern/corecmd.c (GRUB_MOD_INIT): Likewise.
	* mmap/mmap.c (GRUB_MOD_INIT): Likewise.
	* normal/context.c (GRUB_MOD_INIT): Likewise.
	* normal/main.c (GRUB_MOD_INIT): Likewise.
	* term/gfxterm.c (GRUB_MOD_INIT): Likewise.
	* term/serial.c (GRUB_MOD_INIT): Likewise.
	* term/terminfo.c (GRUB_MOD_INIT): Likewise.
2010-05-01 20:28:07 +02:00
Vladimir 'phcoder' Serbinenko
9130433353 Enable USB compilation on Yeeloong 2010-04-16 19:46:22 +02:00
Vladimir 'phcoder' Serbinenko
5d7e744525 * term/efi/console.c (grub_console_checkkey): Macroify key contants. 2010-04-09 21:35:52 +02:00
EFI Coder
25f4e25287 * normal/menu_text.c (print_message): Clean up the message and show
the Fn information when on EFI
	* term/efi/console.c (grub_console_checkkey): Add F4 support.
2010-04-09 21:16:17 +02:00
Vladimir 'phcoder' Serbinenko
1d383404e3 compile fixes and cleanups 2010-04-09 19:30:57 +02:00
Vladimir 'phcoder' Serbinenko
a6132b9f3f Merge mainline into yeeloongfw 2010-04-05 17:35:03 +02:00
Vladimir 'phcoder' Serbinenko
34fac099a5 Make grub_console_real_putchar grub_console_putchar 2010-03-17 08:37:48 +01:00
Vladimir 'phcoder' Serbinenko
84f8180158 Merge mainline into bidi 2010-03-17 08:24:12 +01:00
Vladimir 'phcoder' Serbinenko
ed0e3d30cd * term/i386/pc/vesafb.c: Removed (orphaned, deprecated and broken). 2010-03-17 08:22:45 +01:00
Vladimir 'phcoder' Serbinenko
703cbe63d6 Remove trivial getcharwidth (now implicit) 2010-03-16 21:33:23 +01:00
Vladimir 'phcoder' Serbinenko
6c363dfd54 Fix doublewidth character handling 2010-03-16 21:29:15 +01:00
Vladimir 'phcoder' Serbinenko
8a0b074f39 Fix combining characters messing with width counter 2010-03-16 19:56:33 +01:00
Vladimir 'phcoder' Serbinenko
50186d826d Fix combining characters messing with width counter 2010-03-16 19:55:09 +01:00
Vladimir 'phcoder' Serbinenko
bf17ef45d6 Rename UCS4 to glyph description 2010-03-16 19:23:21 +01:00