Added a whole lot of todos :)

This commit is contained in:
2024-10-18 20:39:08 +02:00
parent 1071e9604a
commit a2a21d0272
+56 -7
View File
@@ -12,29 +12,62 @@ Legend:
- [ ] 32-bit (probably) - [ ] 32-bit (probably)
- [ ] Partitioned disk - [ ] Partitioned disk
- [ ] project structure - [ ] project structure
- [ ] system root
- [ ] arch/ - [ ] arch/
- [x] lib/ - [x] lib/
- [x] include/ - [x] include/
- [ ] cross compiler setup
- [x] libc - User space - [x] libc - User space
- [x] libk - Kernel libc - [x] libk - Kernel libc
- [x] kernel - [x] kernel
- [x] use libk - [x] use libk
- [x] makefile - [x] makefile
- [?] probably a full rewrite - [?] probably a full rewrite
- [ ] userspace
- [ ] shell
- [ ] calc
- [ ] editor
- [ ] filesystem - [ ] filesystem
- [ ] sysroot
- [ ] good buildutil
- [ ] proper file organization - [ ] proper file organization
- [X] Makefile refactorin' (finally done!!!) - [X] Makefile refactorin' (finally done!!!)
- [ ] LIBC
- [ ] assert.h
- [ ] ctype.h
- [ ] errno.h
- [ ] fcntl.h
- [ ] float.h
- [ ] limits.h
- [ ] locale.h
- [ ] math.h
- [ ] setjmp.h
- [ ] signal.h (we would need signals first)
- [ ] stdarg.h
- [ ] stddef.h
- [ ] stdint.h
- [ ] stdio.h
- [ ] time.h
- [ ] unistd.h (do we do POSIX?)
- [ ] wchar.h (we would need text support for wide chars ig?)
- [ ] wctype.h (same as above)
- [ ] sys/
- [ ] types.h (syscall types)
- [ ] gfx.h (basic graphics lib)
- [ ] LIBK
- [x] disk - disk r/w
- [ ] error - error handling (bigerr is not enough :( )
- [ ] fs - filesystem
- [x] interrupt - handling and registering interupts
- [ ] input - handle ALL input devices (currently implemented as the keyboard dir)
- [x] memory - memory managing (physical and virtual)
- [x] ports - handles IO ports (eg. serial console)
- [x] screen - everything that displays on the screen
- [x] sound - handles everything related to sound
- [ ] syscall - system calls
- [x] tty - handles terminal output
- [x] Multistage Bootloader - [x] Multistage Bootloader
- [x] Bootloader reads filesystem to find files - [x] Bootloader reads filesystem to find files
- [x] The almighty 'printf()' - [x] The almighty 'printf()'
- [x] Write down where stuff is in memory (in notes.txt) - [x] Write down where stuff is in memory (in notes.txt)
- [ ] "Text" mode (not actually) - [ ] "Text" mode (not actually)
- [x] Scrolling - [x] Scrolling
- [ ] Scroll-back - [ ] Scroll-back
@@ -52,6 +85,7 @@ Legend:
- [x] Multi vbe mode support - [x] Multi vbe mode support
- [x] Setup on boot - [x] Setup on boot
- [ ] Different font size support - [ ] Different font size support
- [x] Graphics - [x] Graphics
- [?] Enter/exit a "graphics" mode (idk if we need this) - [?] Enter/exit a "graphics" mode (idk if we need this)
- [x] Pixel drawing - [x] Pixel drawing
@@ -60,6 +94,7 @@ Legend:
- [x] Rectange :) - [x] Rectange :)
- [x] Circle! - [x] Circle!
- [x] Filled verisons - [x] Filled verisons
- [x] Interrupts - [x] Interrupts
- [x] IDT Setup (idt.h) - [x] IDT Setup (idt.h)
- [x] Exception handling - [x] Exception handling
@@ -69,11 +104,13 @@ Legend:
- [x] IRQ 1 - Keyboard - [x] IRQ 1 - Keyboard
- [x] IRQ 8 - CMOS Real time clock - [x] IRQ 8 - CMOS Real time clock
- [?] Other IRQs (idk which ones) - [?] Other IRQs (idk which ones)
- [ ] Sound - [ ] Sound
- [x] Pc Speaker - [x] Pc Speaker
- [x] Notes (in hertz) - [x] Notes (in hertz)
- [ ] Sound Blaster 16 - [ ] Sound Blaster 16
- [x] MEGALOVANIA - [x] MEGALOVANIA
- [ ] Math - [ ] Math
- [ ] Trigonometry - [ ] Trigonometry
- [ ] Sine - [ ] Sine
@@ -98,6 +135,7 @@ Legend:
- [x] E (eulers number) - [x] E (eulers number)
- [x] PI - [x] PI
- [ ] Floating point macros/functions - [ ] Floating point macros/functions
- [ ] Filesystem - [ ] Filesystem
- [x] Utility for filesystem building (not just an assembly file) - [x] Utility for filesystem building (not just an assembly file)
- [_] Better header for file i/o (disk/filesys.h) - [_] Better header for file i/o (disk/filesys.h)
@@ -114,6 +152,7 @@ Legend:
- [ ] Links?? - [ ] Links??
- [ ] Symbolic - [ ] Symbolic
- [ ] Hard - [ ] Hard
- [ ] System Calls - [ ] System Calls
- [x] Sleep() - [x] Sleep()
- [x] Write() - [x] Write()
@@ -125,6 +164,7 @@ Legend:
- [ ] Seek() - [ ] Seek()
- [ ] Tell() - [ ] Tell()
- [ ] Exit() - [ ] Exit()
- [ ] Shell - [ ] Shell
- [ ] Separate file/program - [ ] Separate file/program
- [ ] ';' separated commands - [ ] ';' separated commands
@@ -145,16 +185,19 @@ Legend:
- [ ] mkdir (add dirs first) - [ ] mkdir (add dirs first)
- [x] reboot - [x] reboot
- [ ] cd - [ ] cd
- [ ] Standard I/O stuff - [ ] Standard I/O stuff
- [ ] stdin - [ ] stdin
- [x] stdout - [x] stdout
- [ ] stderr - [ ] stderr
- [x] Memory manager - [x] Memory manager
- [x] Memory map - [x] Memory map
- [x] Print mem map - [x] Print mem map
- [x] Physical - [x] Physical
- [x] Virtual - [x] Virtual
- [x] Paging - [x] Paging
- [ ] User (or system) programs - [ ] User (or system) programs
- [x] Loading them - [x] Loading them
- [x] Running them - [x] Running them
@@ -162,19 +205,23 @@ Legend:
- [x] Let them use libs - [x] Let them use libs
- [ ] Proper include files (LibC?) - [ ] Proper include files (LibC?)
- [x] argc, argv[] - [x] argc, argv[]
- [ ] Standalone shell program - [ ] Standalone shell program
- [ ] Userspace programs - [ ] Userspace programs
- [x] Calculator - [x] Calculator
- [ ] Calendar - [ ] Calendar
- [ ] Code Editor - [ ] Code Editor
- [ ] Text editor - [ ] Text editor
- [ ] Syntax highlighting - [ ] Syntax highlighting
- [ ] Saving/Loading - [ ] Saving/Loading
- [ ] Hex editor - [ ] Hex editor
- [ ] Assembler/Compiler - [ ] Assembler/Compiler
- [ ] Assembler - [ ] Assembler
- [ ] Compiler (probably C) - [ ] Compiler (probably C)
- [ ] Standard libs - [ ] Standard lib
- [ ] Finish all todos - [ ] Finish all todos
- [ ] Refactoring!!! - [ ] Refactoring!!!
- [ ] Can it run DOOM? - [ ] Can it run DOOM?
@@ -183,3 +230,5 @@ Legend:
- [ ] Solitaire - [ ] Solitaire
- [ ] Tetris - [ ] Tetris
- [ ] Write an OS in kern (The FINAL Todo)