* Move path canonicalization from API to kernel
* Add api::fs::read_exact
* Add read-bytes to lisp
* Add str function to lisp
* Rename fs::read to fs::read_to_bytes
* Rename fs::read_exact to fs::read
* Add bytes fonction to lisp
* Add progn special form to lisp
* Fix failing test
* Add calc doc
* Link doc from readme
* Rename stdnil to stdnull
* Add items to the TODO list in the README
* Update instructions in the README
* Improve feature list in README
* Add link to doc in README
* Disable unused show command
* Add colors to chess perf command
* Improve identify data parsing
* Read status from alternate status register
* Update identify command
* Fix overflow in disk size printing
* Rewrite ATA PIO driver according to ATA-4 spec
* Add 'disk erase' command
* Fix issue with shell redirection in diskless mode
* Check for existence of passwords file during login
* Add IdentifyResponse enum
* Refactor lba match
* Disable debug output on command aborted
* Refactor code
* Pin specific compiler version
* Add spec in comment
* Rewrite Lisp parser
* Parse special symbols
* Add eval for calculator
* Replace original parser with the new one
* Handle escaped chars in strings
* Add more special characters to parser
* Refactor eval
* Add operations on files
* Refactor more of eval
* Add number parsing
* Refactor eval
* Improve error messages
* Use .lsp for lisp files
* Refactor eval
* Add ensure_len macro
* Add default-run attribute
* Use f64 instead of f32 in calc
* Allow empty line in REPL
* Check that FS is mounted before reading superblock
* Add cmd env var
* Update changelog
* Add process table
* Add exit syscall
* Update binaries
* Make pid mutable
* Use RW lock for the process table
* Change pid atomic ordering
* Fix return code
* Fix lock issue
* Add debug print
* Add exit to sleep binary
* Enable asm_sym feature
* Use the end of code area for stack area
* Add debug macro
* Use array instead of vec for process
* Refactor process data clone
* Increase max file handles to 32
* Increase sleep to 5 seconds
* Fix MAX_PID calculation
* Revert max file handle value to fix crash
* Close file handle after dup syscall
* Remove init
* Run the test in release mode
* Refactor debug
* Refactor debug output of syscall
* Remove NULL syscall
* Save and restore stack frame
* Fix install
* Save only scratch registers to the stack
* Add write volatile to registers
* Overwrite rax register on exit
* Set pid back to 0 after exit
* Add alloc_page function
* Remove debug output
* Unmap pages after exit
* Allocate memory after kernel heap
* Hide unmap error
* Add support for Extended ASCII to VGA
* Read multibyte chars
* Fix deletion of extended ascii chars
* Add UTF-8 support to Prompt
* Refactor vec char
* Add unicode support to text editor
* Refactor code
* Update changelog
* Enable cursor after boot
* Remove unused time attribute on file
* Fix compilation warning
* Clear screen after vga init
* Add disable_blinking function
* Set palette registers at boot
* Set default palette
* Fix attribute control registers initialization
* Clear palette address source bit when setting palette
* Refactor code
* Remove index from palette
* Update comment
* Update changelog
* Add sys::ata::Drive struct
* Add fs size to superblock
* Add missing usage option to disk command
* Update changelog
* Store ata::Drive in AtaBlockDevice
* Store allocated block count in superblock
* Rename Superblock to SuperBlock
* Add superblock to memfs
* Use Block instead of LinkedBlock for BlockBitmap
* Rename BlockBitmap to BitmapBlock
* Fix removed const
* Remove some hardcoded constants
* Fix BitmapBlock::free_all
* Allocate the whole remaining disk space
* Use memory size to alloc memfs
* Dynamically use half of the memory for the heap
* Add SuperBlock::check_ata
* Move init to mod.rs
* Update python fuse
* Add BITMAP_SIZE constant
* Fix available space computation
* Limit the heap to 8 GB max
* Fix memfs size
* Add ELF loader
* Add elf reader
* Fix jump to entry point
* Update mapping code
* Update kernel data segment in GDT
* Refactor wrap macro
* Remove debug from process
* Remove jump to entry point
* Update hello binary
* Improve comments on asm code
* Rename Process#entry to Process#entry_point
* Use cli directly
* Add pic::init()
* Disable again interrupts after halt if needed
* Allow keyboard and serial events during memory init
* Update changelog
* Testing userspace code
* Update program example
* Refactor code
* Read bin from dsk/bin at compile time
* Create mapper and frame allocator during process creation
* Read bin from disk at runtime
* Add missing file
* Add missing bin
* Add src bin
* Replace debug output by a test syscall+binary
* Remove comments from asm files
* Rewrite sleep
* Replace test by hello
* Refactor hello example
* Translate address from user code segment
* Rename entry label
* Update readme and changelog
* Use entry_name for DirEntry
* Increase stack size
* Add file syscalls
* Change syscalls return type
* Add stat syscall
* Add file creation
* Use api::fs::read_to_string in more user programs
* Use syscalls in fs api
* Move some functions from sys::fs to api::fs
* Add FileIO for generic read and write
* Write to stdout
* Add stdout test
* Disable output
* Move FileIO to API
* Add io::stdin and io::stdout to API
* Add a real /dev/random
* Fix test
* Add missing device file
* Refactor stdin read
* Truncate read_line result if larger than buf
* Use fs::read and fs::write to copy files
* Use fs::read for user password database
* Use fs::read for vga command
* Use api::syscall::stat instead of sys::fs::File::open
* Use fs::read and fs::write in httpd
* Add RNG to API
* Add fs::open_dir and fs::create_dir
* Add fs::exists