43 Commits

Author SHA1 Message Date
xamidev eb8a03facd Load raw C binary + docs 2026-05-08 12:38:16 +02:00
xamidev c061da4d81 sys_read/open/close 2026-05-06 13:29:35 +02:00
xamidev ccb6ca89f1 Load TAR archive + run raw user program 2026-05-04 20:24:18 +02:00
xamidev 0240220796 Scheduler fix, User RR 2026-04-03 19:18:08 +02:00
xamidev 11a9dd4adb Load limine module + alloc user stack 2026-04-01 15:51:04 +02:00
xamidev 2f1eef9e15 UBSan conditional compilation 2026-03-29 09:38:24 +02:00
xamidev 3cd38f654c Undefined Behavior Sanitization 2026-03-28 21:09:08 +01:00
xamidev 89259ec9b2 Stack Smashing Protection 2026-03-26 20:14:56 +01:00
xamidev 3607a7179c printf spinlock + remove DEPRECATED stuff + begin separating x86 stuff 2026-03-20 09:01:57 +01:00
xamidev f7735eb3a4 Move headers to include/ 2026-03-18 11:48:33 +01:00
furtest b02a4b5284 Fix build-iso prerequisites 2026-03-15 18:05:24 +01:00
furtest 32f3889565 Move PHONY tags and fix clean
Move the PHONY tags to make them clearer to read.
Fix the clean rule so it deletes the build directory.
2026-03-15 18:01:35 +01:00
furtest 803ac0879b Auto find source files check for changes
Previously the build process removed everything and did all the build
again on each make invocation.
This fixes this behaviour with two changes.
First dynamically find the list of files to build using find instead of
a manually written list.
Then use implicit rules to only build files that need to be built again
instead of recompiling everything.
2026-03-15 17:56:26 +01:00
furtest 9fc55f98d8 Use variables for build and pepperk and rename build target.
Instead of hardcoding the names set them using a variable.
Also rename the target build to the name of the file it builds which is
in the ELFFILE variable.
2026-03-15 16:58:04 +01:00
furtest 11bd628821 Extract CC and LD to variables.
This allows to change the name of the compiler or linker when calling
make.
2026-03-15 16:57:29 +01:00
xamidev af3a9e27fd Switch to nanoprintf + good spinlock (rflags) = no more FLANTERM ISSUES??? 2026-03-15 09:34:17 +01:00
xamidev 1dd4e728d4 Build folder + coding style guidelines 2026-03-11 14:59:20 +01:00
xamidev 90dc26ee11 Flanterm support OK from kmain. No kbd. Writing from process = PF 2026-03-08 09:14:21 +01:00
xamidev c8a72244b1 remove old term support + PSFv1 font 2026-03-05 09:10:06 +01:00
xamidev a7d9e70a61 Flanterm can write to fb but page fault before process creation. (BEFORE KHEAP UPDATE) 2026-03-04 12:21:20 +01:00
xamidev 1f055ab31c Flanterm integration? but page fault in flanterm_fb_double_buffer_flush 2026-02-22 18:27:57 +01:00
xamidev 9470dedb61 Stack trace with double linking to get symbol names 2026-02-21 19:28:17 +01:00
xamidev 4cf4fb0dda Task switching fix? but doesnt exit process gracefully 2026-02-20 16:01:34 +01:00
xamidev ac7216d84a Setup kernel stack; but process is failing 2026-02-17 23:01:32 +01:00
xamidev 8aad1235c3 A bit of cleaning 2026-02-06 14:39:19 +01:00
xamidev 7f997f6611 alloc_stack ok (HHDM mapped from mmap) 2026-02-05 21:18:21 +01:00
xamidev c46157fad0 Process linked list 2026-01-31 14:13:48 +01:00
xamidev b469952d91 scroll kinda works but keyboard is random 2026-01-10 11:32:27 +01:00
xamidev e18b73c8a0 Small kernel heap for VMM internals, kmalloc/kfree 2026-01-03 13:48:10 +01:00
xamidev bb5fb9db33 Cleaner include paths + some paging definitions 2026-01-02 11:24:24 +01:00
xamidev 05a862e97a PMM: init (find biggest usable region) 2025-12-31 12:02:41 +01:00
xamidev 8f5e2eae3e First steps: getting memory map from Limine request and looking at it 2025-12-30 21:33:38 +01:00
xamidev ead0ed6ae1 Folder restructuration 2025-12-28 11:39:39 +01:00
xamidev cc36c768cf Shitty broken keyboard driver BUT azerty-compatible 2025-12-28 10:28:17 +01:00
xamidev 54f26c506e 1000Hz PIC timer working + IDT dispatch/handler fixes 2025-12-27 13:52:05 +01:00
xamidev d0b4da0596 IDT: set entry, load into IDTR, interrupt stub + dispatcher for common faults 2025-12-22 19:38:50 +01:00
xamidev 0031c2fe03 Woops.. it wasnt nonsense after all 2025-12-22 11:27:39 +01:00
xamidev 6fc7266716 GDT init (load + flush) 2025-12-22 11:20:24 +01:00
xamidev 62302e03d5 Add: init serial + getting text out of it 2025-12-21 20:33:48 +01:00
xamidev e6f4200ae9 rename stuff + add GDB debug rule 2025-12-21 15:59:14 +01:00
xamidev ef5f658a62 Portable printf added 2025-12-21 15:34:45 +01:00
xamidev b41b6e2369 Hello, world! in linear framebuffer 2025-12-21 14:56:19 +01:00
xamidev 634cf699dc First steps: include Limine, kernel entry point, framebuffer request 2025-12-20 10:57:36 +01:00