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
To build the project the following packages are required, along with either gcc or clang
git make cmake xorriso
Then run the following
./setup.sh
cmake -B build
cmake --build build
-
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