Changeset dd80fc6 in mainline for arch/ia32/src/boot/boot.S


Ignore:
Timestamp:
2005-09-03T22:26:31Z (20 years ago)
Author:
Martin Decky <martin@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
5eb1379
Parents:
5260478
Message:

GRUB basic booting (IA-32)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • arch/ia32/src/boot/boot.S

    r5260478 rdd80fc6  
    5353        call memmap_arch_init
    5454       
    55         lgdt bsp_bootstrap_gdtr                                 # initialize Global Descriptor Table register
     55        lgdt real_bootstrap_gdtr                                # initialize Global Descriptor Table register
    5656       
    5757        movl %cr0, %eax
     
    9494        rep movsb
    9595       
    96         jmp protected
     96        call main_bsp                   # never returns
     97
     98        cli
     99        hlt
    97100       
    98101multiboot_image_start:
    99         movl BOOTSTRAP_OFFSET - 0x400, %esp             # initialize stack pointer
     102        movl $BOOTSTRAP_OFFSET - 0x400, %esp                    # initialize stack pointer
    100103       
    101         lgdt gdtr                                                               # initialize Global Descriptor Table register
     104        lgdt protected_bootstrap_gdtr - 0x80000000              # initialize Global Descriptor Table register
    102105
    103106        movw $KDATA, %ax
     
    105108        movw %ax, %gs
    106109        movw %ax, %fs
    107         movw %ax, %ds                                                   # kernel data + stack
     110        movw %ax, %ds                                                                   # kernel data + stack
    108111        movw %ax, %ss
    109112       
    110         jmpl $KTEXT, $multiboot_meeting_point
     113        jmpl $KTEXT, $multiboot_meeting_point + BOOT_OFFSET
    111114        multiboot_meeting_point:
    112115       
    113         call map_kernel                                                 # map kernel and turn paging on
     116        call map_kernel                                                                 # map kernel and turn paging on
    114117       
    115 protected:
    116         call main_bsp           # never returns
     118        call main_bsp - BOOT_OFFSET                                             # never returns
    117119
    118120        cli
Note: See TracChangeset for help on using the changeset viewer.