boot ---- Simple bootloader, loading in two phases and loading the kernel itself * boot.bin - boot sector (stage 1 and 2, total 2k), offset 0x7c00 * boot.asm - the main boot sector code using: * kernel.bin - linked kernel with fix start offset 0x8800 * boot_gdt.asm - the early GDT, flat memory model, no protection * stage1_functions.asm - real mode functions of the bootloader (stage 1 and 2) * stage2_real_functions.asm - real mode functions for stage 2 * stage2_a20.asm - various methods to enable the A20 address line * stage2_check_magic.asm - function to make sure the image contains a magic marker * stage2_switch_mode.asm - early GTD loading and switching from real to protected mode * stage2_pm_functions.asm - protected mode helper functions for stage 2 * magic.bin (512 bytes magic marker sector) * magic.asm kernel ------ Kernel main and utility routines like early consoles. * entry.c - the kernel entry from the bootloader 'kernel_entry' (starting at 0x8800) * kernel.c - kernel helper functions * console.c - the kernel console, can use VGA or serial port for now * vga.c - VGA basic output routines for early kernel output * serial.c - serial output to COM1 (only sequential ASCII chars, no terminal) * tasks.c - task switching * memorymanagement.c - heap memory manager hardware -------- Hardware abstraction layer. * port.c, port.asm - I/O ports * interrupts.c, interrups.asm - interrupt handlers * pci.c - PCI introspection and driver initialization drivers ------- Driver framework and specific drivers. * driver.c - generic driver manager * keyboard.c - PS/2 keyboard * mouse.c - PS/2 mouse * vga.c - standard VGA video driver gui --- Small GUI library, should be completly independend on the video driver. * widget.c - basic GUI widget definining the interface of all GUI objects * composite_widget.c - a widget which is composed of a set of widgets * text_widget.c - a widget showing text * window.c - a clickable, focusable, closable, etc. window * desktop.c - the top-level composite widget covering the whole desktop libc ---- Stub C library implementation. C library routines * string.c - string, memory functions * stdlib.c - UNIX standard library functions * stdio.c - I/O functions, printing * setjmp.asm - setjmp/longjmp implementation (in assembly)