Vladimir 'phcoder' Serbinenko
0a239a8211
bidi works in terminal in grub-emu
2010-03-15 21:14:11 +01:00
Vladimir 'phcoder' Serbinenko
dfed5c6bb4
Removed grub_putchar
2010-03-15 11:49:27 +01:00
Vladimir 'phcoder' Serbinenko
dae79b6b05
Merge mainline into emu-mod
2010-03-14 16:27:54 +01:00
Vladimir 'phcoder' Serbinenko
9a1e70432b
Merge mainline into ofwfb
2010-03-14 15:43:22 +01:00
Vladimir 'phcoder' Serbinenko
313df2f552
Merge mainline into sparc-mkimage
2010-03-14 15:21:04 +01:00
Vladimir 'phcoder' Serbinenko
d078036308
2010-03-04 Vladimir Serbinenko <phcoder@gmail.com>
...
* kern/main.c (grub_load_modules): Handle errors from init functions of
embeded modules.
2010-03-04 21:32:11 +01:00
Vladimir 'phcoder' Serbinenko
14532662ee
merge mainline into sparc-mkimage
2010-03-03 11:24:36 +01:00
Vladimir 'phcoder' Serbinenko
f17d332e49
Remove trailing spaces in kern/device.c
2010-02-24 11:29:11 +01:00
Vladimir 'phcoder' Serbinenko
13b6d963ea
Fix yeeloong compilation
2010-02-15 19:03:07 +01:00
Vladimir 'phcoder' Serbinenko
a3334e79e8
Revert gratuituos change of alias.name
2010-02-14 20:03:19 +01:00
Vladimir 'phcoder' Serbinenko
320dd174b5
Increase stack size on sparc
2010-02-14 14:32:21 +01:00
Vladimir 'phcoder' Serbinenko
0b4ab8e54a
Merge mainline int sparc-mkimage-unify
2010-02-13 16:49:21 +01:00
Vladimir 'phcoder' Serbinenko
904935c3ef
2010-02-13 Vladimir Serbinenko <phcoder@gmail.com>
...
Merge grub_ieee1275_map_physical into grub_map and rename to
grub_ieee1275_map
* include/grub/ieee1275/ieee1275.h (grub_ieee1275_map): New proto.
* include/grub/sparc64/ieee1275/ieee1275.h (grub_ieee1275_map_physical):
Remove.
* kern/ieee1275/openfw.c (grub_map): Rename to ...
(grub_ieee1275_map): ... this. All users updated. Add phys_lo when
necessary.
* kern/sparc64/ieee1275/ieee1275.c (grub_ieee1275_map_physical): Remove.
2010-02-13 16:48:22 +01:00
Vladimir 'phcoder' Serbinenko
a49217cff7
aout image support
2010-02-13 16:26:50 +01:00
Vladimir 'phcoder' Serbinenko
17cec782c4
2010-02-13 Vladimir Serbinenko <phcoder@gmail.com>
...
* kern/sparc64/ieee1275/crt0.S (codestart): Move modules backwards.
2010-02-13 16:23:20 +01:00
Vladimir 'phcoder' Serbinenko
ca62070b69
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-13 16:13:28 +01:00
Vladimir 'phcoder' Serbinenko
62509f0434
2010-02-07 Vladimir Serbinenko <phcoder@gmail.com>
...
* kern/ieee1275/openfw.c (grub_halt): Try executing "poweroff".
2010-02-07 22:49:45 +01:00
Vladimir 'phcoder' Serbinenko
56e33364c5
Fix yeeloong compilation
2010-02-07 19:59:19 +01:00
Vladimir 'phcoder' Serbinenko
2083672af1
Remove -DGRUB_UTIL when compiling grub-emu
2010-02-07 04:23:44 +01:00
Vladimir 'phcoder' Serbinenko
8f891adc6f
2010-02-07 Vladimir Serbinenko <phcoder@gmail.com>
...
* include/grub/cache.h (grub_arch_sync_caches) [i386 || x86_64]: Inline.
* kern/i386/coreboot/init.c (grub_arch_sync_caches): Remove.
* kern/i386/efi/init.c (grub_arch_sync_caches): Likewise.
* kern/i386/ieee1275/init.c (grub_arch_sync_caches): Likewise.
* kern/i386/pc/init.c (grub_arch_sync_caches): Likewise.
* util/misc.c (grub_arch_sync_caches) [i386 || x86_64]: Likewise.
2010-02-07 00:52:31 +01:00
Vladimir 'phcoder' Serbinenko
007d0695e2
2010-02-07 Vladimir Serbinenko <phcoder@gmail.com>
...
* include/grub/i18n.h (grub_gettext_dummy): Removed.
* kern/misc.c (grub_gettext_dummy): Make static.
2010-02-07 00:36:18 +01:00
Vladimir 'phcoder' Serbinenko
b6c0d9c201
2010-02-06 Vladimir Serbinenko <phcoder@gmail.com>
...
* kern/misc.c (grub_utf8_to_ucs4): Don't eat valid characters preceeded
by non-valid ones.
* kern/term.c (grub_putchar): Likewise.
2010-02-06 23:39:14 +01:00
Vladimir 'phcoder' Serbinenko
e190e3d2cc
merge mainline into ofwfb
2010-02-06 15:54:01 +01:00
Vladimir 'phcoder' Serbinenko
7b5d0fe444
Increase heap limit
2010-02-06 15:53:39 +01:00
Vladimir 'phcoder' Serbinenko
7cc192d9f2
2010-02-06 Colin D Bennett <colin@gibibit.com>
...
* conf/common.rmk (pkglib_MODULES): Add gfxmenu.mod.
(gfxmenu_mod_SOURCES): New variable.
(gfxmenu_mod_CFLAGS): Likewise.
(gfxmenu_mod_LDFLAGS): Likewise.
* include/grub/term.h (grub_term_set_current_output): Declare
argument as const.
* docs/gfxmenu-theme-example.txt: New file.
* gfxmenu/gfxmenu.c: Likewise.
* gfxmenu/gui_box.c: Likewise.
* gfxmenu/gui_canvas.c: Likewise.
* gfxmenu/gui_circular_progress.c: Likewise.
* gfxmenu/gui_image.c: Likewise.
* gfxmenu/gui_label.c: Likewise.
* gfxmenu/gui_list.c: Likewise.
* gfxmenu/gui_progress_bar.c: Likewise.
* gfxmenu/gui_string_util.c: Likewise.
* gfxmenu/gui_util.c: Likewise.
* gfxmenu/icon_manager.c: Likewise.
* gfxmenu/model.c: Likewise.
* gfxmenu/named_colors.c: Likewise.
* gfxmenu/theme_loader.c: Likewise.
* gfxmenu/view.c: Likewise.
* gfxmenu/widget-box.c: Likewise.
* include/grub/gfxmenu_model.h: Likewise.
* include/grub/gfxmenu_view.h: Likewise.
* include/grub/gfxwidgets.h: Likewise.
* include/grub/gui.h: Likewise.
* include/grub/gui_string_util.h: Likewise.
* include/grub/icon_manager.h: Likewise.
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-06 Robert Millan <rmh.grub@aybabtu.com>
* maintainance/gentrigtables.py: Remove.
* lib/trig.c: Likewise.
* gentrigtables.c: New file. C rewrite of gentrigtables.py.
* conf/common.rmk (trig_mod_SOURCES): Replace `lib/trig.c' with
`trigtables.c'.
(trigtables.c): New rule.
(gentrigtables): Likewise.
(DISTCLEANFILES): Add `trigtables.c' and `gentrigtables'.
2010-02-06 Robert Millan <rmh.grub@aybabtu.com>
* maintainance/gentrigtables.py: Avoid duplicate hardcoding of
integer constants.
2010-02-06 Colin D Bennet <colin@gibibit.com>
Trigonometry support.
* include/grub/trig.h: New file.
* lib/trig.c: Likewise.
* maintainance/gentrigtables.py: Likewise.
* conf/common.rmk (pkglib_MODULES): Add trig.mod.
(trig_mod_SOURCES): New variable.
(trig_mod_CFLAGS): Likewise.
(trig_mod_LDFLAGS): Likewise.
2010-02-06 14:40:57 +01:00
Vladimir 'phcoder' Serbinenko
5562834e18
2010-02-06 Vladimir Serbinenko <phcoder@gmail.com>
...
* kern/ieee1275/openfw.c (grub_ieee1275_encode_devname): Support whole
disk devices.
2010-02-06 00:32:07 +01:00
Vladimir 'phcoder' Serbinenko
4f8528fc2b
2010-02-06 Vladimir Serbinenko <phcoder@gmail.com>
...
* kern/ieee1275/openfw.c (grub_devalias_iterate): Stop iterating on
error.
2010-02-06 00:30:25 +01:00
Vladimir 'phcoder' Serbinenko
1f534b6908
Merge mainline into gfxmenu
2010-02-03 01:24:07 +01:00
Torsten Landschoff
399f6e4d9c
2010-02-03 Torsten Landschoff <torsten@debian.org>
...
* kern/disk.c (grub_disk_read): Fix offset computation when reading
last sectors.
2010-02-03 00:46:55 +01:00
Vladimir 'phcoder' Serbinenko
fbab7b0794
Framebuffer on PowerPC-based macs
2010-01-31 01:57:17 +01:00
Vladimir 'phcoder' Serbinenko
989e1f934b
2010-01-27 Vladimir Serbinenko <phcoder@gmail.com>
...
* kern/disk.c (grub_disk_read): Fix offset computation when reading
last sectors.
2010-01-27 17:30:03 +01:00
Robert Millan
67667b9ced
2010-01-27 Robert Millan <rmh.grub@aybabtu.com>
...
* kern/disk.c (grub_disk_read): Fix bug that would cause infinite
loop when using read hooks on files whose size isn't sector-aligned.
2010-01-27 03:15:03 +00:00
Robert Millan
3973a59a34
2010-01-26 Robert Millan <rmh.grub@aybabtu.com>
...
* include/grub/i386/pc/boot.h (GRUB_BOOT_MACHINE_PXE_DL): New macro.
* boot/i386/pc/pxeboot.S: Include `<grub/machine/boot.h>'.
(_start): Macroify `0x7F'.
* kern/i386/pc/init.c: Include `<grub/machine/boot.h>'.
(make_install_device): Use "(pxe)" as fallback prefix when booting
via PXE.
2010-01-26 16:39:37 +00:00
Robert Millan
566863ca19
2010-01-22 Robert Millan <rmh.grub@aybabtu.com>
...
Use generic grub_reboot() for i386-efi.
* kern/efi/efi.c [__i386__] (grub_reboot): Remove.
* kern/i386/efi/startup.S: Include `"../realmode.S"'.
* kern/i386/realmode.S: Include `<grub/i386/pc/memory.h>'.
2010-01-22 17:12:40 +00:00
Vladimir 'phcoder' Serbinenko
bf86e59a76
2010-01-22 Vladimir Serbinenko <phcoder@gmail.com>
...
* kern/ieee1275/init.c (grub_machine_set_prefix): Don't check for
presence of "prefix" variable as it breaks when normal.mod is
embedded.
2010-01-22 00:33:07 +01:00
Vladimir 'phcoder' Serbinenko
61c501a941
merge mainline into newenv
2010-01-20 21:31:39 +01:00
Vladimir 'phcoder' Serbinenko
61eb45eee7
Rename asprint into xasprintf and avsprintf into xvasprintf
2010-01-20 09:12:47 +01:00
Vladimir 'phcoder' Serbinenko
2d49abe9e7
merge mainline into asprintf
2010-01-20 07:36:17 +01:00
Colin Watson
917dd37040
2010-01-20 Dan Merillat <debian@dan.merillat.org>
...
* kern/device.c (grub_device_iterate): Allocate new part_ent
structure based on sizeof (*p) rather than sizeof (p->next), to
account for structure padding.
* util/grub-probe.c (probe_raid_level): Return -1 immediately if
disk is NULL, which might happen for LVM physical volumes with no
LVM signature.
2010-01-20 02:11:07 +00:00
Robert Millan
d4a4ee5765
Merge mips branch
2010-01-20 01:55:41 +00:00
Robert Millan
e3538adaea
2009-12-20 Robert Millan <rmh.grub@aybabtu.com>
...
* kern/mips/yeeloong/init.c (grub_video_sm712_init)
(grub_video_video_init, grub_video_bitmap_init)
(grub_font_manager_init, grub_term_gfxterm_init)
(grub_at_keyboard_init): New extern declarations.
(grub_machine_init): Initialize gfxterm and at_keyboard.
* kern/main.c (grub_main): Revert grub_printf delay kludge.
* util/grub-install.in: Revert embed of `at_keyboard.mod' and
`gfxterm.mod' into core image.
* conf/mips.rmk (pkglib_IMAGES, kernel_img_SOURCES)
(kernel_img_CFLAGS, kernel_img_ASFLAGS, kernel_img_LDFLAGS)
(kernel_img_FORMAT): Copy to ...
* conf/mips-qemu-mips.rmk (pkglib_IMAGES, kernel_img_SOURCES)
(kernel_img_CFLAGS, kernel_img_ASFLAGS, kernel_img_LDFLAGS)
(kernel_img_FORMAT): ... here, and ...
* conf/mips-yeeloong.rmk (pkglib_IMAGES, kernel_img_SOURCES)
(kernel_img_CFLAGS, kernel_img_ASFLAGS, kernel_img_LDFLAGS)
(kernel_img_FORMAT): ... here.
(kernel_img_SOURCES): Add files necessary for output (gfxterm)
and input (at_keyboard) terminals in kernel.
(kernel_img_CFLAGS): Add `-DUSE_ASCII_FAILBACK'.
(pkglib_MODULES): Remove `pci.mod'.
(pci_mod_SOURCES, pci_mod_CFLAGS, pci_mod_LDFLAGS)
(sm712_mod_SOURCES, sm712_mod_CFLAGS, sm712_mod_LDFLAGS)
(at_keyboard_mod_SOURCES, at_keyboard_mod_CFLAGS)
(at_keyboard_mod_LDFLAGS): Remove variables.
2010-01-20 01:19:53 +00:00
Robert Millan
e022a2d667
Sync with trunk
2010-01-18 20:51:35 +00:00
Robert Millan
88d170128f
2010-01-18 Robert Millan <rmh.grub@aybabtu.com>
...
Fix annoying UI bug in rescue mode. Thanks to Tristan Gingold for
spotting it back in 2008. Shame on me for forgetting he did.
* kern/rescue_reader.c (grub_rescue_run): Skip zero-length lines.
2010-01-18 13:45:40 +00:00
carles
ba2f6848e0
2010-01-14 Carles Pina i Estany <carles@pina.cat>
...
* gettext/gettext.c (grub_gettext_translate): Push and pop
grub_errno.
(grub_gettext_delete_list): Change comment style.
* kern/err.c (grub_error): Gettextizze.
(grub_fatal): Gettextizze.
2010-01-14 22:31:06 +00:00
Robert Millan
0a46429a55
2010-01-14 Robert Millan <rmh.grub@aybabtu.com>
...
* include/grub/i386/loader.h (grub_linux16_boot): Renamed to ...
(grub_linux16_real_boot): ... this.
* kern/i386/loader.S: Likewise.
* loader/i386/pc/linux.c: Include `<grub/video.h>' and `<grub/mm.h>'.
(grub_linux16_boot): New function. Switches to text mode and calls
grub_linux16_real_boot().
* loader/i386/bsd.c: Include `<grub/video.h>'.
(grub_freebsd_boot, grub_openbsd_boot, grub_netbsd_boot): Switch to
text mode before calling grub_unix_real_boot().
* loader/i386/multiboot.c: Include `<grub/video.h>'.
(grub_multiboot_boot): Switch to text mode before calling
grub_relocator32_boot().
* loader/i386/pc/chainloader.c: Include `<grub/video.h>'.
(grub_chainloader_boot): Switch to text mode before calling
grub_chainloader_real_boot().
2010-01-14 21:08:31 +00:00
Vladimir 'phcoder' Serbinenko
17383dfe96
2010-01-13 Vladimir Serbinenko <phcoder@gmail.com>
...
* kern/efi/init.c (grub_efi_fini): Don't call grub_efi_mm_fini as
it would result in module crash.
2010-01-13 22:53:12 +01:00
Vladimir 'phcoder' Serbinenko
85a2cf749f
merge mainline into mips
2010-01-10 13:34:48 +01:00
Vladimir 'phcoder' Serbinenko
fc054c9cb8
Various cleanups
2010-01-07 22:18:59 +01:00
Robert Millan
c1d2f1d81b
Merge from trunk
2010-01-07 00:58:54 +00:00
carles
e7730de786
2010-01-06 Carles Pina i Estany <carles@pina.cat>
...
* kern/err.c: Include `<grub/i18n.h>'.
(grub_print_error): Add full stop. Gettextizze.
* loader/i386/bsd.c (grub_netbsd_boot): Change grub_error description.
(grub_bsd_load_elf): Capitalise ELF.
(grub_cmd_freebsd_loadenv): Add `s' in error string.
(grub_cmd_freebsd_module): Likewise.
(grub_cmd_freebsd_module_elf): Likewise.
* loader/i386/bsdXX.c (SUFFIX): Capitalise ELF.
2010-01-06 22:00:57 +00:00