Commit Graph

683 Commits

Author SHA1 Message Date
Bananymous 930661619b Kernel: Add more functionality to Shell
commands 'time', 'cpuid', 'random'
2022-12-15 17:29:35 +02:00
Bananymous 711ba19a82 Kernel: Add basic Shell to test functionality 2022-12-13 21:34:50 +02:00
Bananymous f8224e55b1 Kernel: Force strlen compilation so BAN can use it 2022-12-13 21:33:54 +02:00
Bananymous 174daa3e02 Kernel: Keyboard event callback can now be registered later 2022-12-13 16:15:10 +02:00
Bananymous 171a33bbcd Kernel/BAN: Add weekday to Time structure and get it with RTC 2022-12-13 14:37:10 +02:00
Bananymous 52c793bb5c Kernel/BAN: Make Time a struct in BAN and add formatter to it 2022-12-13 12:37:26 +02:00
Bananymous 334abe6b27 Kernel: lol 2022-12-13 12:12:15 +02:00
Bananymous 68e88d9413 Kernel: Add clear() command public TTY API 2022-12-13 10:45:24 +02:00
Bananymous e62a626b39 Kernel: Improve keyboard input by a lot
Seems to work on my 2 computerss
2022-12-13 10:45:06 +02:00
Bananymous 7ebe727a29 Kernel: Add RTC to get current time 2022-12-13 10:41:36 +02:00
Bananymous 79a2bccd21 Kernel: kfree now checks for nullptr 2022-12-13 00:53:19 +02:00
Bananymous ddc28a8c0e Kernel: Rename Printer to Formatter 2022-12-13 00:50:21 +02:00
Bananymous 03e7812cae Kernel: Add basic ANSI support :) 2022-12-10 03:53:44 +02:00
Bananymous 862b32d735 Kernel: Improve kmalloc error messages 2022-12-10 01:08:01 +02:00
Bananymous 3d3f12bd30 Kernel: Add new generic Printer class
kprint is now just a #define to Printer::print<terminal_putc>.

This allows us to use same print formatting for serial output :)
2022-12-10 00:57:09 +02:00
Bananymous 26f1ebe26f Kernel: Implement very basic, but functional kmalloc/kfree 2022-12-09 00:26:24 +02:00
Bananymous 817de9f359 Kernel: Properly handle finnish keyboard layout.
You can now type any basic ascii character from keyboard.
Multimedia keys are not yet handled.
2022-12-08 18:05:48 +02:00
Bananymous e998615253 Kernel: Move GDT and IDT files to architecture specific folder 2022-12-08 17:50:04 +02:00
Bananymous b7a600c86d Kernel: Keyboard is now handeled "properly" 2022-12-07 04:35:38 +02:00
Bananymous 4202c999fa Kernel: IRQs are now working :) 2022-12-07 02:48:44 +02:00
Bananymous c292ef5471 Improve IDT Kernel panic 2022-11-16 20:28:07 +02:00
Bananymous 20f7c18988 kmalloc does not zero initialize kernel memory 2022-11-16 19:51:45 +02:00
Bananymous f2b45ba212 Add GDT and IDT 2022-11-16 19:49:09 +02:00
Bananymous b500a8a7ed kmalloc 2022-11-16 19:48:36 +02:00
Bananymous 550ecbc951 Kernel panic uses kprint with parameters 2022-11-16 19:47:19 +02:00
Bananymous 123382eace Fixes :) 2022-11-15 21:42:14 +02:00
Bananymous d289916bc0 Changed back to lower half kernel, since im dump.
I dont see the benefit of higher half (and could not get multiboot info)
2022-11-15 00:38:33 +02:00
Bananymous 9e933a5ec5 Add kernel panic function 2022-11-14 18:53:00 +02:00
Bananymous b185ed4fd3 Libc is now written in C++ 2022-11-14 00:31:24 +02:00
Bananymous fd13f74bbf Changed into higher half kernel
https://wiki.osdev.org/Higher_Half_x86_Bare_Bones
2022-11-13 02:03:20 +02:00
Bananymous db656fe469 Implement Stack Smashing Protection 2022-11-12 23:46:33 +02:00
Bananymous 61609db228 Kernel is now in C++ :) 2022-11-12 21:30:26 +02:00
Bananymous e6b4866ab0 Initial commit. We have a booting kernel 2022-11-12 21:04:47 +02:00