its mat-os again. this time using limine on x86_64 because it does most of the boring work
screenshot of the system as of b8c5541
-
Use C++20 modulesdoesn't work with clangd :( - Use CMake
- Serial output
- Working IDT
- Physical page allocator (very inefficient)
-
- A better Physical page allocator
- Paging (though basic)
- Virtual page allocator (bump allocator, can't free)
-
- A better virtual page allocator
- PS/2 keyboard input
-
- Some way to get key events out of the interrupt
- Working timer (PIT)
-
- Events? Scheduling?
- Working screen
- Basic on screen "terminal"
-
- Proper terminal interface with commands and such
- Drawing to the screen
- Kernel heap allocator
- Begin windowing system
-
- Fix that paint trail bug
-
- Proper GUI system
- PS/2 mouse input
- Threads
- Processes
- A basic in-memory filesystem
- Begin user-space
- Use ELF for apps?
- A simple text editor
- File explorer app
- QOI image support