mirror of
https://github.com/Tom-on64/kern.git
synced 2026-11-03 18:22:22 +00:00
Added a whole lot of todos :)
This commit is contained in:
@@ -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)
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user