Commit Graph

  • 30b478cd30 Added setjmp.h Tom-on 2024-10-19 16:21:08 +02:00
  • 617675f1ee Added limits.h Tom-on 2024-10-19 15:50:39 +02:00
  • b2e24fb097 Improved errno.h Tom-on 2024-10-19 15:39:05 +02:00
  • 13f1d60946 Added a basic errno.h Tom-on 2024-10-19 15:21:41 +02:00
  • 3c20633acb Added most of ctype.h (missing toupper & tolower) Tom-on 2024-10-19 15:11:54 +02:00
  • 77e16e9605 Added assert.h skeleton Tom-on 2024-10-19 15:11:23 +02:00
  • 64b4e47d73 Changed libc structure, shouldn't've added anything new Tom-on 2024-10-19 15:11:00 +02:00
  • e2e24d3853 Minor changes Tom-on 2024-10-19 12:09:06 +02:00
  • a2a21d0272 Added a whole lot of todos :) Tom-on 2024-10-18 20:39:08 +02:00
  • 1071e9604a Moved libk/terminal to libk/tty (also changed terminal.h to tty.h) Tom-on 2024-10-18 20:08:21 +02:00
  • 958625b798 Makefile refactorin' Tom-on 2024-10-18 17:18:24 +02:00
  • 63ecaec569 Some file restructuring Tom-on 2024-10-10 10:03:58 +02:00
  • 886a802cc1 I forgor about makedisk 💀 Tom-on 2024-10-10 09:49:18 +02:00
  • 6369c29773 Moved header files into their lib directory Tom-on 2024-10-10 09:48:54 +02:00
  • 8deefad48d Updated screenshots Tom-on 2024-10-09 16:56:42 +02:00
  • 4ee3940807 Added ports/serial.h header for serial console stuff Tom-on 2024-10-09 16:50:56 +02:00
  • 95d32f025a Implemented a proper libk Tom-on 2024-10-09 16:45:37 +02:00
  • 9ff817b935 Imporved text.h Tom-on 2024-10-05 15:13:36 +02:00
  • 1b1276f89f Bird from egypt Tom-on 2024-10-05 14:46:30 +02:00
  • 5a5ea4ea59 Implemented a proper libc Tom-on 2024-10-05 13:34:24 +02:00
  • a6445ebcb6 Removed unused filetable.asm Tom-on 2024-09-10 13:40:26 +02:00
  • 597e82e78f Updated config Tom-on 2024-09-09 11:17:57 +02:00
  • af1d9d6da7 Added config Tom-on 2024-09-09 08:18:15 +02:00
  • 9f975080b7 Updated todo with The Big Refactor Tom-on 2024-09-08 14:34:27 +02:00
  • 589bef42af ye Tom-on 2024-09-08 10:36:01 +02:00
  • b88f84b4cd Improved printf() Tom-on 2024-08-27 15:17:42 +02:00
  • f79603c778 Added stdarg.h Tom-on 2024-08-26 21:15:35 +02:00
  • 2ca858465c Got shell file reading to work! Tom-on 2024-08-26 17:22:47 +02:00
  • 7886fd5599 Added the 'n' functions (ie. strNcpy) to string.h and some minor changes Tom-on 2024-08-26 17:01:19 +02:00
  • d6c4682f52 Fragmented stdio.h header Tom-on 2024-08-26 14:54:47 +02:00
  • 9388457774 Made Open() syscall work (badly) Tom-on 2024-08-26 14:43:12 +02:00
  • 105b58a684 Some changes, syscalls use reg structs and have return values Tom-on 2024-08-25 19:40:10 +02:00
  • da1171983b Fixed sleep() function being weird Tom-on 2024-08-25 15:39:46 +02:00
  • 6d9b807fe6 Made fonts not have to be assembled every time and made open file table Tom-on 2024-08-16 18:42:42 +02:00
  • f0edcb0459 Changed header guards to include path to include file (ie. PATH_TO_EXAMPLE_H) Tom-on 2024-08-16 12:00:12 +02:00
  • a40490d6a8 Cleaned and slightly refactored stdio.h and file I/O syscalls Tom-on 2024-08-16 11:48:54 +02:00
  • 823cd1761f OS now displays info about file when it's name is typed in Tom-on 2024-08-16 08:40:08 +02:00
  • 1257ecc1cc Made 'ls' real and not just a bunch of hardcoded printf calls Tom-on 2024-08-16 08:19:01 +02:00
  • 3134c6196e Update syscall.h Tom-on 2024-08-15 14:11:21 +02:00
  • bab4b308f9 Began working on file I/O through stdio.h. Wrote most of the code needed in stdio.h. Next up is writing the syscall handlers. Tom-on 2024-08-14 14:32:44 +02:00
  • 40e84e5b70 Finished custom filesystem and got it to boot normally Tom-on 2024-08-14 10:43:12 +02:00
  • d37abb7b65 Moved bigError() Tom-on 2024-08-13 15:20:13 +02:00
  • f8e03d9024 Added bigError() Tom-on 2024-08-13 15:13:17 +02:00
  • be6b65863f Implemented custom filesystem and got it to compile. It seems that it isn't loading the 3rd stage bootloader though Tom-on 2024-08-12 16:30:45 +02:00
  • 044b1eceac Added Filesystem Specification Tom-on 2024-07-31 13:05:16 +02:00
  • 16046a306d Modified Makefile Tom-on 2024-07-30 21:16:58 +02:00
  • 105076a8ce Commited some old changes, idk what they were Tom-on 2024-07-30 21:07:05 +02:00
  • 8e004221e1 Added a regs command to print register values Tom-on 2024-06-03 10:18:52 +02:00
  • 07e946221f Minor Makefile changes Tom-on 2024-06-03 09:33:57 +02:00
  • 9c96636436 Got the OS to boot from new disk image - Pretty much rewrote stage1.asm - Changed some addresses in stage2.asm and in memory/adresses.h - Changed stage3.c to read root INode and it's dirEntries to find kernel.bin and term16n.fnt - Made a fake ls command in kernel.c, just so it prints something - Fixed makedisk.c to make the disk image properly - Changed Makefile to compile makedisk.c and then run makedisk - Added makedisk executable to .gitignore Tom-on 2024-06-02 19:09:33 +02:00
  • 2a9d33d733 Rename makeDisk.c to makedisk.c Tom-on 2024-06-02 15:25:09 +02:00
  • d689361b7b Fixed makedisk.c Tom-on 2024-06-02 15:24:42 +02:00
  • d8fd8c0a29 Added fs/fs.h header for new filesystem and added a utility that builds it. The filesystem is not in use though Tom-on 2024-06-01 12:25:32 +02:00
  • 573299b799 Added an editor program. It doesn't edit anything yet :/ Tom-on 2024-05-31 10:22:08 +02:00
  • 13bac619fc Added int argc and char** argv Tom-on 2024-05-31 10:19:05 +02:00
  • eef7bf1aa2 After all this time, I FINALLY implemented the calculator! Tom-on 2024-05-30 17:46:05 +02:00
  • 75410d3a6c Made printf() good! Tom-on 2024-05-30 10:30:39 +02:00
  • f4e8435603 Some printf() bug fixes Tom-on 2024-05-29 12:00:02 +02:00
  • ed18f4ac4b IMPLEMENTED printf()!!!!!!! It's kinda bad :/ Tom-on 2024-05-29 11:35:10 +02:00
  • f4f89dd8ba Removed disk command, because it was half broken we don't need that Tom-on 2024-05-29 09:57:06 +02:00
  • 77d7c356e9 Added \ escape code support in echo command! Tom-on 2024-05-28 20:43:30 +02:00
  • 7a2afbd653 Implemented Escape Sequences!!!! Tom-on 2024-05-28 20:42:03 +02:00
  • 74c38342d7 Made memory/addresses.h more organised Also didn't need to add stdio.h to any files so that's good! Tom-on 2024-05-28 17:43:07 +02:00
  • ff07696dc6 Continuing terminal I/O - Made stdio.h work - Moved printFiletable back into kernel.c - TODO: Add stdio.h to all files that should use it (probably next commmit) - Added some more global addresses. There's a memory layout, but i'm not using it - Got cursor to be drawn - Calc program now gets user input Tom-on 2024-05-28 17:08:49 +02:00
  • 536f6b2320 Began work on proper terminal I/O - Chenged Puts() syscall to Write() - Improved syscalls.h - added a new header in terminal/terminal.h - moved gfxMode into screen/gfxmode.h Tom-on 2024-05-27 15:16:07 +02:00
  • eac71f137e FINALLY Made calc.c work properly! Maybe i can now write a calculator app? Tom-on 2024-05-26 18:57:09 +02:00
  • 031744fbc2 Moved clock to top right corner! Tom-on 2024-05-26 18:44:49 +02:00
  • e9abfc2e4a Implemented Higher Half Kernel! - Minor makefile chnages - stage3.c "prekernel", sets up memory stuff and jumps to kernel - kernel is now at 0xC0000000 - 3GB+ "higher half" - Added some global variables in memory/addresses.h Tom-on 2024-05-26 15:49:48 +02:00
  • 01323c5874 Used filesys.h in kernel Tom-on 2024-05-26 14:13:46 +02:00
  • dd3b5c000f Added filesys.h header for better file r/w api Tom-on 2024-05-25 10:08:06 +02:00
  • 31469084d0 Updated screenshots Tom-on 2024-05-24 18:37:21 +02:00
  • 8245187356 Slighly changed everything :) - Makefile changes - Linker script updates - Made it comply with C17 - Removed entry.asm (finally) Tom-on 2024-05-24 18:25:26 +02:00
  • f879ca122f Made malloc() and free()! They're in header stdlib.h as syscalls 3 & 4. Tom-on 2024-05-24 18:08:33 +02:00
  • f009bbdac9 Started using virtual memory manager in kernel. Also changes read() function to accept a char* to write to Tom-on 2024-05-24 15:47:45 +02:00
  • 978ada55ca Merge branch 'master' of https://github.com/Tom-on64/kern Made some changes from my phone and needed to merge it to the main branch Tom-on 2024-05-23 20:54:20 +02:00
  • e728571393 Finished Virtual Memory Manager!!! Paging etc. now works perfectly* Tom-on 2024-05-23 20:53:15 +02:00
  • 2072c8fe53 Began work in Virtual Memory Manager! Tom-on 2024-05-23 17:26:56 +02:00
  • cc175be392 Added recent changes in the todo.txt Tom-on 2024-05-21 08:27:00 +02:00
  • dcbf24beae Added pcspk.h for PC Speaker and notes.h that contains notes and their frequencies Tom-on 2024-05-19 17:05:53 +02:00
  • 347bf17586 Added a very bad stdio.h Tom-on 2024-05-19 17:04:39 +02:00
  • 2b9148abee Added temporary Gets() Syscall Tom-on 2024-05-19 14:05:20 +02:00
  • 00ad779e27 Modified the displayed Real Time Clock Tom-on 2024-05-19 11:23:37 +02:00
  • d22536423c Fixed read() being able to backspace even if there's nothing to backspace Tom-on 2024-05-19 10:56:17 +02:00
  • 9812f3f58d Improved keyboard IRQ handler, added getc() function, improved read() Tom-on 2024-05-15 20:06:38 +02:00
  • dba9e5889b Changed todo.txt Tom-on 2024-05-08 16:57:24 +02:00
  • daa6d35045 Added Real Time Clock. Time is now being shown at the top Tom-on 2024-05-08 16:54:25 +02:00
  • a97ac11d70 Minor documentation change Tom-on 2024-05-08 09:41:07 +02:00
  • b6d1d42ed2 Added temporary Puts() syscall to print a string. I use it in calc to print a message Tom-on 2024-05-08 09:09:31 +02:00
  • 7826b9b7d4 Include file restructure! - include/ now has subdirs - standard C headers will be in 'include/c'. Any program can include these - all other header shall only be used by the kernel Tom-on 2024-05-07 21:01:50 +02:00
  • 41e0b93f52 Reimplemented PIT Timer. Sleep is now a syscall. Also made docs/ that contains some info so i don't forget. Tom-on 2024-05-07 20:25:48 +02:00
  • e617f4fe69 Moved kernel from 0x1000 to 0x50000 Tom-on 2024-05-07 17:11:44 +02:00
  • e39bc2cabc Minor fix Tom-on 2024-05-06 20:09:28 +02:00
  • b2248f1a7d Changed every include for using '#include "header.h"' to use '#include <header.h>', also got the keyboard and timer working again Tom-on 2024-05-06 19:57:53 +02:00
  • 1d71a4e384 [ BIG CHANGE ] Properly Implemented IDT - New include files: idt.h, pic.h, syscall.h and exceptions.h - Proper exception handling (still could be improved - PIC properly initiated and irqs all masked - BREAKS Keyboard - The keyboard IRQ is not handled anymore - convertColor() is kinda broken :/ (More in README.md) Tom-on 2024-05-05 21:03:21 +02:00
  • 29418eb46b Minor printing optimizations Tom-on 2024-05-02 20:20:51 +02:00
  • 9a2d0484b1 Minor change Tom-on 2024-05-02 17:51:53 +02:00
  • b19400fe33 Made clear() faster! Tom-on 2024-05-02 17:49:29 +02:00
  • 906ce6d160 Made scrolling substantually faster Tom-on 2024-05-02 17:37:58 +02:00
  • 5d67e12fe2 Removed hardcoded resolution Tom-on 2024-05-02 14:47:23 +02:00
  • 0fbb5aae07 ADDED SCROLLING!!!!!\n(It's so fucking slow) Tom-on 2024-05-02 14:41:12 +02:00