Skip to content

Latest commit

 

History

History
44 lines (41 loc) · 1.72 KB

TODO.md

File metadata and controls

44 lines (41 loc) · 1.72 KB

Todo

Stuff that needs to be/has been done.

Feel free to make a Pull Request if you have any improvements to the OS.

Pending

  • Paging
    • 4GiB identity map.
    • Improve (Add map functions, allocate pages, etc.).
  • Multitasking.
    • Non-preemptive with no priority.
    • Improve. Add priority, etc.
  • Port tinylisp interpreter.
  • Consistent arrow key support (getchar, curses.h, etc.).
  • Global framebuffer cursor.
    • Editable getchar line buffer with arrows.
  • Scrollable help (like the less command) if it gets too long. Use curses.
  • Devices (Framebuffer, disks, etc.).
    • stdin, stdout, stderr.
      • Per process.
  • Filesystems.
    • FAT.
    • Ext2.
  • Load executables from disk.

Done

  • Newline support for VGA terminal.
  • Scrolling support for VGA terminal (for excess lines).
  • Sysroot and similar file structure to this.
  • Add allocation functions and heap.
  • Framebuffer support.
    • Add framebuffer console array with char and color info.
    • Replace vga functions (vga.c) with framebuffer console.
  • Sleep functions (Link).
  • GDT and IDT.
  • Keyboard.
    • getchar system.
    • Control backspace in getchar.
    • Control backspace so you can only delete what you wrote.
  • Port ncurses lib to framebuffer console.