Colin Watson [Thu, 25 Feb 2010 13:30:50 +0000 (13:30 +0000)]
2010-02-25 Jordan Uggla <jordan.uggla@gmail.com>
* util/grub-mkconfig.in (GRUB_SAVEDEFAULT): Export new variable.
* util/grub-mkconfig_lib.in (save_default_entry): Only save a new
default entry if GRUB_SAVEDEFAULT=true. This allows using
GRUB_DEFAULT=saved on its own to let grub-reboot work, without
saving a new default on every boot.
Samuel Thibault [Sun, 14 Feb 2010 17:14:16 +0000 (18:14 +0100)]
2010-02-14 Samuel Thibault <samuel.thibault@ens-lyon.org>
* commands/i386/pc/play.c (grub_cmd_play): If grub_file_open fails,
parse arguments as inline tempo and notes. Move code for playing notes
to...
(play): ... new function.
Samuel Thibault [Sun, 14 Feb 2010 16:25:52 +0000 (17:25 +0100)]
2010-02-14 Samuel Thibault <samuel.thibault@ens-lyon.org>
* commands/i386/pc/play.c (T_REST, T_FINE, struct note, beep_on): Use
grub_uint16_t instead of short.
(grub_cmd_play): Use grub_uint32_t instead of int, convert data from
disk from little endian to cpu endianness.
2010-02-13 Vladimir Serbinenko <phcoder@gmail.com>
Fix over-4GiB seek on sparc64.
* include/grub/ieee1275/ieee1275.h (grub_ieee1275_seek):
Replace pos_i and pos_lo with pos. All users updated.
* include/grub/powerpc/ieee1275/ieee1275.h (GRUB_IEEE1275_CELL_SIZEOF):
New constant.
* include/grub/sparc64/ieee1275/ieee1275.h (GRUB_IEEE1275_CELL_SIZEOF):
Likewise.
* kern/ieee1275/ieee1275.c (grub_ieee1275_seek): Split pos into pos_hi
and pos_lo.
2010-02-10 Vladimir Serbinenko <phcoder@gmail.com>
Pass SIMPLE framebuffer size in bytes and not 64K blocks.
* loader/i386/efi/linux.c (grub_linux_setup_video): Don't divide by 64K.
* loader/i386/linux.c (grub_linux_setup_video): Likewise.
(grub_linux_boot): Divide by 64K when on VESA.
2010-02-10 Vladimir Serbinenko <phcoder@gmail.com>
* script/execute.c (grub_script_execute_cmdline): Use grub_print_error
to show messages instead of discarding them.
Process errors after executing command and not before. Keep old method
too as precaution.
2010-02-07 Vladimir Serbinenko <phcoder@gmail.com>
Fix warnings in grub-emu when compiling with maximum warning options.
* util/grub-emu.c (ENABLE_RELOCATABLE): New definition.
(grub_arch_modules_addr): Return 0 and not NULL.
* util/misc.c (ENABLE_RELOCATABLE): New definition.
(xstrdup): USe newstr instead of dup.
2010-02-06 Vladimir Serbinenko <phcoder@gmail.com>
Agglomerate scrolling in gfxterm.
* term/gfxterm.c (grub_virtual_screen): New member 'total_screen'.
(grub_virtual_screen_setup): Initialise 'total_screen'.
(write_char): Split to ...
(paint_char): ... this ...
(write_char): ... and this.
(paint_char): Handle delayed scrolling.
(draw_cursor): Likewise.
(scroll_up): Split to ...
(real_scroll): ... this ...
(scroll_up): ... and this.
(real_scroll): Handle multi-line scroll and draw below-the-bottom
characters.
(grub_gfxterm_refresh): Call real_scroll.
2010-02-06 Colin D Bennett <colin@gibibit.com>
* include/grub/misc.h (grub_iscntrl): New inline function.
(grub_isalnum): Likewise.
(grub_strtol): Likewise.
2010-02-06 Colin D Bennett <colin@gibibit.com>
* normal/menu_text.c (get_entry_number): Move from here ...
* normal/menu.c (get_entry_number): ... moved here.
* include/grub/menu.h (grub_menu_get_default_entry_index):
New prototype.
* normal/menu.c (grub_menu_get_default_entry_index): New function.
* normal/menu_text.c (run_menu): Use grub_menu_get_default_entry_index.
* include/grub/menu_viewer.h (grub_menu_viewer_init): New prototype.
(grub_menu_viewer_should_return): Likewise.
* normal/main.c (GRUB_MOD_INIT (normal)): Call grub_menu_viewer_init.
* normal/menu_text.c (run_menu): Enable menu switching.
* normal/menu_viewer.c (should_return): New variable.
(menu_viewer_changed): Likewise.
(grub_menu_viewer_show_menu): Handle menu viewer changes.
(grub_menu_viewer_should_return): New function.
(menuviewer_write_hook): Likewise.
(grub_menu_viewer_init): Likewise.
2010-02-06 Colin D Bennet <colin@gibibit.com>
2010-02-06 Vladimir Serbinenko <phcoder@gmail.com>
Support for gfxterm in a window.
* include/grub/gfxterm.h: New file.
* include/grub/video.h (struct grub_video_rect): New declaration.
(grub_video_rect_t): Likewise.
* term/gfxterm.c (struct grub_gfxterm_window): New type.
(refcount): New variable.
(render_target): Likewise.
(window): Likewise.
(repaint_callback): Likewise.
(grub_virtual_screen_setup): Use 'render_target'.
(init_window): New function.
(grub_gfxterm_init_window): Likewise.
(grub_gfxterm_init): Check reference counter.
Use init_window.
(destroy_window): New function.
(grub_gfxterm_destroy_window): Likewise.
(grub_gfxterm_fini): Check reference counter.
Use destroy_window.
(redraw_screen_rect): Restore viewport.
Use 'render_target' and 'window'.
Call 'repaint_callback'.
(write_char): Use 'render_target'.
(draw_cursor): Likewise.
(scroll_up): Restore viewport.
Use 'render_target' and 'window'.
Call 'repaint_callback'.
(grub_gfxterm_cls): Likewise.
(grub_gfxterm_refresh): Use 'window'.
(grub_gfxterm_set_repaint_callback): New function.
(grub_gfxterm_background_image_cmd): Use 'window'.
(grub_gfxterm_get_term): New function.
(GRUB_MOD_INIT(term_gfxterm)): Set 'refcount' to 0.
2010-02-06 Colin D Bennett <colin@gibibit.com>
Bitmap scaling support.
* conf/common.rmk (pkglib_MODULES): Add bitmap_scale.mod.
(bitmap_scale_mod_SOURCES): New variable.
(bitmap_scale_mod_CFLAGS): Likewise.
(bitmap_scale_mod_LDFLAGS): Likewise.
* include/grub/bitmap_scale.h: New file.
* term/gfxterm.c (BACKGROUND_CMD_ARGINDEX_MODE): New definiton.
(background_image_cmd_options): New variable.
(grub_gfxterm_background_image_cmd): Support bitmap stretching.
(cmd): Rename and change type to ...
(background_image_cmd_handle): ... this. All users updated.
(GRUB_MOD_INIT(term_gfxterm)): Make background_image extended command.
* video/bitmap_scale.c: New file.
2010-02-06 Vladimir Serbinenko <phcoder@gmail.com>
SDL support.
* Makefile.in (LIBSDL): New variable.
(enable_grub_emu_sdl): Likewise.
* conf/i386-pc.rmk (grub_emu_SOURCES): Add video files.
(grub_emu_SOURCES) [enable_grub_emu_sdl]: Add util/sdl.c.
(grub_emu_LDFLAGS) [enable_grub_emu_sdl]: Add $(LIBSDL).
* configure.ac: Detect SDL availability and add --enable-grub-emu-sdl
* util/sdl.c: New file.
2010-02-06 Colin D Bennett <colin@gibibit.com>
2010-02-06 Vladimir Serbinenko <phcoder@gmail.com>
Double buffering support.
* commands/i386/pc/videotest.c (grub_cmd_videotest): Swap doublebuffers.
* include/grub/video.h: Update comment.
* include/grub/video_fb.h (grub_video_fb_doublebuf_update_screen_t):
New type.
(grub_video_fb_doublebuf_blit_init): New prototype.
* term/gfxterm.c (scroll_up): Support double buffering.
(grub_gfxterm_refresh): Likewise.
* video/fb/video_fb.c (doublebuf_blit_update_screen): New function.
(grub_video_fb_doublebuf_blit_init): Likewise.
* video/i386/pc/vbe.c (framebuffer): Remove 'render_target'. Add
'front_target', 'back_target', 'offscreen_buffer', 'page_size',
'displayed_page', 'render_page' and 'update_screen'.
(grub_video_vbe_fini): Free offscreen buffer.
(doublebuf_pageflipping_commit): New function.
(doublebuf_pageflipping_update_screen): Likewise.
(doublebuf_pageflipping_init): Likewise.
(double_buffering_init): Likewise.
(grub_video_vbe_setup): Enable doublebuffering.
(grub_video_vbe_swap_buffers): Implement.
(grub_video_vbe_set_active_render_target): Handle double buffering.
(grub_video_vbe_get_active_render_target): Likewise.
(grub_video_vbe_get_info_and_fini): Likewise. Free offscreen_buffer.
(grub_video_vbe_adapter): Use grub_video_vbe_get_active_render_target.
(grub_video_vbe_enable_double_buffering): Likewise.
(grub_video_vbe_swap_buffers): Use update_screen.
(grub_video_set_mode): Use double buffering.
2010-02-03 Vladimir Serbinenko <phcoder@gmail.com>
* util/hostdisk.c (open_device): Don't use partition device when reading
before the partition.
(grub_util_biosdisk_read): Don't read from partition and before the
partition in single operation.
(grub_util_biosdisk_write): Don't write to partition and before the
partition in single operation.
2010-01-31 Vladimir Serbinenko <phcoder@gmail.com>
* font/font.c (find_glyph): Check that bmp_idx is available before
using it.
(grub_font_get_string_width): Never call grub_font_get_glyph_internal
with (font == NULL).
Robert Millan [Thu, 28 Jan 2010 15:27:41 +0000 (15:27 +0000)]
2010-01-28 Robert Millan <rmh.grub@aybabtu.com>
* Makefile.in (check): Exit with fail status when one of the tests
fails.
* tests/example_functional_test.c (example_test): Fix reversed assert.
* tests/example_unit_test.c (example_test): Likewise.