summaryrefslogtreecommitdiff
path: root/src/kernel.c
AgeCommit message (Collapse)Author
2025-10-07mm: enable paging and add some test codeCarlos Maiolino
Enable paging in the CPU and add some testing code to check virtual addresses are being redirected. Signed-off-by: Carlos Maiolino <[email protected]>
2025-09-14Enable interrupts only after IDT is setCarlos Maiolino
So far we've been playing a dangerous game... We enabled interrupts before we actually had the interrupt descriptor table setup. Fix this so we prevent IRQs to fire before the table is initialized and attempt to run garbage instead of code Signed-off-by: Carlos Maiolino <[email protected]>
2025-09-14Add a kernel heapCarlos Maiolino
Use the heap API to implement a 100MiB heap to be used by the kernel code. Add example usage to src/kernel.c Signed-off-by: Carlos Maiolino <[email protected]>
2025-08-01Setup interrupt handlingCarlos Maiolino
Remap master PIC to IOAddress 0x20 to avoid collisions with CPU exceptions. Setup a default interrupt handler and map all interrupts to this handler by default. Setup a Keyboard interrupt handler for testing purposes Wire everything up in the Makefile Signed-off-by: Carlos Maiolino <[email protected]>
2025-08-01Implement interrupt descriptor tableCarlos Maiolino
Signed-off-by: Carlos Maiolino <[email protected]>
2025-07-26Move include files to a subdirectoryCarlos Maiolino
Move the include files to the toxic/ subdirectory, so it gets a bit more organized. Ah, yeah, OS name will be renamed to ToxicOS Signed-off-by: Carlos Maiolino <[email protected]>
2025-07-25Build vga and string libsCarlos Maiolino
Also add a small test to the kernel code Signed-off-by: Carlos Maiolino <[email protected]>
2025-07-20Add kernel.cCarlos Maiolino
Create the kernel.c file and its initial start_kernel(), and jump to it from the ASM. Also setup the build system to actually build it Signed-off-by: Carlos Maiolino <[email protected]>