Rev 3984 | Rev 4015 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 3984 | Rev 3985 | ||
---|---|---|---|
Line 102... | Line 102... | ||
102 | mov %bx, KA2PA(vesa_bpp) |
102 | mov %bx, KA2PA(vesa_bpp) |
103 | #endif |
103 | #endif |
104 | 104 | ||
105 | call map_kernel # map kernel and turn paging on |
105 | call map_kernel # map kernel and turn paging on |
106 | 106 | ||
107 | movl grub_eax, %eax |
- | |
108 | movl grub_ebx, %ebx |
- | |
109 | cmpl $MULTIBOOT_LOADER_MAGIC, %eax # compare GRUB signature |
- | |
110 | je valid_boot |
- | |
111 | - | ||
112 | xorl %ecx, %ecx # no memory map available |
- | |
113 | movl %ecx, e820counter |
- | |
114 | - | ||
115 | jmp invalid_boot |
- | |
116 | - | ||
117 | valid_boot: |
- | |
118 | - | ||
119 | movl grub_eax, %eax |
- | |
120 | movl grub_ebx, %ebx |
- | |
121 | - | ||
122 | # ia32_boot(grub_eax, grub_ebx) |
107 | # ia32_cboot(grub_eax, grub_ebx) |
123 | pushl %ebx |
108 | pushl grub_ebx |
124 | pushl %eax |
109 | pushl grub_eax |
125 | call ia32_cboot # Does not return. |
110 | call ia32_cboot # Does not return. |
126 | 111 | ||
127 | # Not reached. |
112 | # Not reached. |
128 | 113 | ||
129 | invalid_boot: |
- | |
130 | - | ||
131 | cli |
114 | cli |
132 | hlt |
115 | hlt |
133 | 116 | ||
134 | .global map_kernel |
117 | .global map_kernel |
135 | map_kernel: |
118 | map_kernel: |