2008-01-21 Robert Millan <rmh@aybabtu.com>

* conf/i386-pc.rmk (GRUB_MEMORY_MACHINE_LINK_ADDR): New variable.
        (kernel_img_LDFLAGS): Use `GRUB_MEMORY_MACHINE_LINK_ADDR' as link
        address.
        (grub_mkimage_CFLAGS): Propagate `GRUB_MEMORY_MACHINE_LINK_ADDR' as
        a C macro.
        * include/grub/i386/pc/memory.h (GRUB_MEMORY_MACHINE_UPPER): New macro.
        Indicates start of upper memory.
        * util/i386/pc/grub-mkimage.c: Include `<grub/machine/memory.h>'.
        (generate_image): Abort when image size is big enough to corrupt
        upper memory.

        * include/grub/i386/pc/vga.h: Include `<grub/machine/memory.h>'.
        (GRUB_MEMORY_MACHINE_VGA_ADDR): Alias for `GRUB_MEMORY_MACHINE_UPPER'.
        * term/i386/pc/vga.c (VGA_MEM): Use `GRUB_MEMORY_MACHINE_VGA_ADDR'
        instead of hardcoding 0xA0000.
        * video/i386/pc/vbe.c: Include `<grub/machine/vga.h>'.
        (grub_vbe_set_video_mode): Use `GRUB_MEMORY_MACHINE_VGA_ADDR'
        instead of hardcoding 0xA0000.
This commit is contained in:
robertmh 2008-01-21 15:48:27 +00:00
parent f970b55e43
commit 261bd4bc56
8 changed files with 48 additions and 8 deletions

View file

@ -18,6 +18,7 @@
#include <grub/err.h>
#include <grub/machine/memory.h>
#include <grub/machine/vga.h>
#include <grub/machine/vbe.h>
#include <grub/machine/vbeblit.h>
#include <grub/machine/vbefill.h>
@ -193,7 +194,7 @@ grub_vbe_set_video_mode (grub_uint32_t mode,
if (mode < 0x100)
{
/* If this is not a VESA mode, guess address. */
framebuffer.ptr = (grub_uint8_t *) 0xA0000;
framebuffer.ptr = (grub_uint8_t *) GRUB_MEMORY_MACHINE_VGA_ADDR;
framebuffer.index_color_mode = 1;
}
else