#include .extern _end .extern cckernel_size .extern cckernel_start .section ".header", "ax" .globl setup_info setup_sects: .byte setup_sectors - 1 root_flags: .word 0 syssize: .long KK__ebss / 16 ram_size: .word 0 vid_mode: .word 0 root_dev: .word 0 boot_flag: .word 0xAA55 .globl _start _start: jump: .byte 0xeb .byte -2 // entrylow - 1f 1: signature: .ascii "HdrS" version: .word 0x020f realmode_switch: .word 0, 0 start_sys_seg: .word 0 .word 0 //kernel_version - 512 type_of_loader: .byte 0 loadflags: .byte 0x81 setup_move_size: .word 0x8000 code32_start: .long 0 # .long 0x100000 ramdisk_image: .long 0 ramdisk_size: .long 0 bootsect_kludge: .long 0 heap_end_ptr: .word 0 # _end + 512 ext_loader_ver: .byte 0 ext_loader_type: .byte 0 cmd_line_ptr: .long 0 initrd_addr_max: .long 0x7fffffff kernel_alignment: .long 1 relocatable_kernel: .byte 1 min_alignment: .byte 1 xloadflags: .word 0x13 cmdline_size: .long 512 hardware_subarch: .long 0 hardware_subarch_data: .quad 0 payload_offset: .long _end // cckernel_start payload_length: .long _KKCLEN // cckernel_size setup_data: .quad 0 pref_address: .quad 0 init_size: .long 0x20000 // a bit of space handover_offset: .long 0 // TODO kernel_info_offset: .long 0 // TODO /* .globl entrylow .section ".entrytext", "ax" entrylow: 1: jmp 1b 2: jmp 2b 3: jmp 3b 4: jmp 4b 5: jmp 5b 6: jmp 6b 7: jmp 7b .section ".initdata", "a" kernel_version: .asciz "lcrash 0.1.0"*/