global loader ; symbole d'entrée pour le format ELF ; valeurs pour l'entête de multiboot (https://www.gnu.org/software/grub/manual/multiboot/html_node/Header-magic-fields.html#Header-magic-fields) MAGIC_NUMBER equ 0x1BADB002 ; obligatoire FLAGS equ 0x0 ; configuration de multiboot CHECKSUM equ -MAGIC_NUMBER ; cf. documentation KERNEL_STACK_SIZE equ 4096 section .bss align 4 kernel_stack: resb KERNEL_STACK_SIZE section .text align 4 dd MAGIC_NUMBER dd FLAGS dd CHECKSUM loader: ; écrite la lettre A dans le framebuffer ; mov word [0xB8000], 0x0F41 ; le registre esp contient le pointeur vers la stack mov esp, kernel_stack + KERNEL_STACK_SIZE extern kmain call kmain ;extern fb_write_cell ;push dword 0x00 ;push dword 0x0F ;push dword 0x41 ;call fb_write_cell mov eax, 0xCAFEBABE .loop: jmp .loop