section .asm extern int21h_handler extern default_int_handler global int21h global default_handler global idt_load idt_load: push ebp mov ebp, esp mov ebx, [ebp + 8] lidt [ebx] pop ebp ret int21h: cli pushad ; Push all general-purpose registers to the stack call int21h_handler popad sti iret default_handler: cli pushad ; Push all general-purpose registers to the stack call default_int_handler popad sti iret