:: limine / common / protos / multiboot_32.asm_x86 427 B raw

1
bits 32
2
3
section .text
4
global multiboot_spinup_32:
5
multiboot_spinup_32:
6
    sub esp, 6
7
    mov word [esp], 0x3ff
8
    mov dword [esp+2], 0
9
    lidt [esp]
10
    add esp, 6
11
12
    add esp, 4 ; return address
13
14
    pop ebx ; reloc_stub
15
    pop esi ; magic
16
    pop edi ; protocol_info
17
    pop ecx ; entry_point
18
    pop eax ; elf_ranges
19
    pop edx ; elf_ranges_count
20
21
    jmp ebx
22
23
section .note.GNU-stack noalloc noexec nowrite progbits
tab: 248 wrap: offon