* End of BIOS parameter block.
*/
-kernel_address:
+LOCAL(kernel_address):
.word GRUB_BOOT_MACHINE_KERNEL_ADDR
#ifndef HYBRID_BOOT
.org GRUB_BOOT_MACHINE_KERNEL_SECTOR
-kernel_sector:
+LOCAL(kernel_sector):
.long 1
-kernel_sector_high:
+LOCAL(kernel_sector_high):
.long 0
#endif
andw $1, %cx
jz LOCAL(chs_mode)
-lba_mode:
+LOCAL(lba_mode):
xorw %ax, %ax
movw %ax, 4(%si)
movw $0x0010, (%si)
/* the absolute address */
- movl kernel_sector, %ebx
+ movl LOCAL(kernel_sector), %ebx
movl %ebx, 8(%si)
- movl kernel_sector_high, %ebx
+ movl LOCAL(kernel_sector_high), %ebx
movl %ebx, 12(%si)
/* the segment of buffer address */
setup_sectors:
/* load logical sector start (top half) */
- movl kernel_sector_high, %eax
+ movl LOCAL(kernel_sector_high), %eax
orl %eax, %eax
jnz LOCAL(geometry_error)
/* load logical sector start (bottom half) */
- movl kernel_sector, %eax
+ movl LOCAL(kernel_sector), %eax
/* zero %edx */
xorl %edx, %edx
popa
/* boot kernel */
- jmp *(kernel_address)
+ jmp *(LOCAL(kernel_address))
/* END OF MAIN LOOP */
#ifdef HYBRID_BOOT
.org 0x1b0
-kernel_sector:
+LOCAL(kernel_sector):
.long 1
-kernel_sector_high:
+LOCAL(kernel_sector_high):
.long 0
#endif
.org GRUB_BOOT_MACHINE_WINDOWS_NT_MAGIC