diff --git a/ChangeLog b/ChangeLog index 37aabfb92..0e216e470 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,9 @@ 2009-07-15 Pavel Roskin + * boot/i386/pc/boot.S (kernel_segment): Remove. + (copy_buffer): Use GRUB_BOOT_MACHINE_KERNEL_ADDR in segment 0 + for destination. + * boot/i386/pc/boot.S (boot_version): Remove. * include/grub/i386/pc/boot.h (GRUB_BOOT_MACHINE_VER_MAJ): Remove. diff --git a/boot/i386/pc/boot.S b/boot/i386/pc/boot.S index e5685dc5e..15d02e503 100644 --- a/boot/i386/pc/boot.S +++ b/boot/i386/pc/boot.S @@ -94,8 +94,6 @@ cylinder_start: kernel_address: .word GRUB_BOOT_MACHINE_KERNEL_ADDR -kernel_segment: - .word GRUB_BOOT_MACHINE_KERNEL_SEG . = _start + GRUB_BOOT_MACHINE_KERNEL_SECTOR kernel_sector: @@ -372,13 +370,6 @@ setup_sectors: movw %es, %bx copy_buffer: -#ifdef APPLE_CC - kernel_segment_abs = ABS (kernel_segment) - movw (kernel_segment_abs), %es -#else - movw ABS(kernel_segment), %es -#endif - /* * We need to save %cx and %si because the startup code in * kernel uses them without initializing them. @@ -389,7 +380,8 @@ copy_buffer: movw $0x100, %cx movw %bx, %ds xorw %si, %si - xorw %di, %di + movw $GRUB_BOOT_MACHINE_KERNEL_ADDR, %di + movw %si, %es cld