Commit Graph

  • 6b73547989 All: edit gcc flags Bananymous 2023-01-13 00:04:15 +0200
  • 7f01eaa936 Kernel: Move CPUID feature strings to cpp file Bananymous 2023-01-13 00:03:37 +0200
  • d0aa938b35 Kernel: remove unused function from kmalloc Bananymous 2023-01-13 00:03:10 +0200
  • 4c7950cd3e Kernel: remove unused function from IDT Bananymous 2023-01-13 00:02:39 +0200
  • 61bd9da8e0 BAN: Add [[nodiscard]] to BAN functions returning ErrorOr Bananymous 2023-01-12 23:57:07 +0200
  • 78da037dda BAN: String, Queue and Vector dont use floating point arithmetic Bananymous 2023-01-12 17:00:29 +0200
  • 4ae4ad528a Kernel: APIC use dprintln instead of kprintln Bananymous 2023-01-12 13:51:51 +0200
  • f412c164b3 Kernel: Rename ACPI debug print macro Bananymous 2023-01-12 13:48:05 +0200
  • 5493d1bae1 Kernel: Add debug print to MMU and fix comment Bananymous 2023-01-12 13:46:02 +0200
  • 301ad89783 Kernel: Unallocate RSDT after we are done with it Bananymous 2023-01-12 13:45:01 +0200
  • 087d14fbb7 Kenrel: Remove unnecessary print from kmalloc_initialize() Bananymous 2023-01-12 13:23:14 +0200
  • 3dfe062de1 Kernel: Cleanup TTY code Bananymous 2023-01-12 13:22:15 +0200
  • 33a4fcc662 Kernel: Add helper macro for bochs magic break point Bananymous 2023-01-12 13:21:43 +0200
  • 8fd51fb47d Kernel: Replace Paging{.h,.cpp} with better MMU{.h,.cpp} Bananymous 2023-01-12 13:20:38 +0200
  • 67308c36ad BAN: ErrorOr<void> does not do an heap allocation anymore Bananymous 2023-01-12 00:11:54 +0200
  • 296b6d8529 bochs.sh now launches a seperate terminal to which it redirects com1 Bananymous 2023-01-11 20:18:08 +0200
  • d02e3b19c7 BAN: Move operator new/delete to BAN/Memory.cpp Bananymous 2023-01-10 21:59:40 +0200
  • 64c57ea3d0 Kernel: Remove obsole CPUID::IsAvailable Bananymous 2023-01-10 21:28:59 +0200
  • 7d45b3cbd6 Kernel: Rewrote kmalloc to be much simpler and allow alignment Bananymous 2023-01-10 21:10:36 +0200
  • d89b6aa9ce Kernel: Serial output now gives clickable links Bananymous 2023-01-10 21:09:59 +0200
  • 6f9552d673 BAN: Add math to its own namespace Bananymous 2023-01-10 19:11:27 +0200
  • 181478119e Kernel: Paging is now enabled by boot.S Bananymous 2023-01-10 17:53:29 +0200
  • ee83cd3430 BAN: Implement basic static array Bananymous 2023-01-10 17:52:00 +0200
  • 85068e27d6 BAN: BAN/Memory.h now provides the operator new and delete Bananymous 2023-01-10 17:51:33 +0200
  • c6467b8ebc Kernel: Multiboot data and kernel command lines are now global variables Bananymous 2023-01-10 17:50:24 +0200
  • 1a65ea977d BAN: Better ASSERT() Bananymous 2023-01-10 17:43:18 +0200
  • 73cd08fa51 Kernel: Add script to run bochs debugger Bananymous 2023-01-10 11:28:23 +0200
  • 5106552bfd Kernel: Serial output uses now "\r\n" as line endings Bananymous 2023-01-10 11:24:30 +0200
  • 979a5960e4 Kernel: We don't use floating point arithemtic anymore in kernel Bananymous 2023-01-10 11:10:17 +0200
  • efd8638a96 Kernel: Improve kernel panic message and rename it 'panic'->'Panic' Bananymous 2023-01-09 14:56:20 +0200
  • 531f470132 Kernel: Add helper to map pages with base address and size Bananymous 2023-01-05 03:44:41 +0200
  • 086f0c7cf6 Kernel: Better error reporting from VESA and fix texmode rendering Bananymous 2023-01-05 03:36:20 +0200
  • d6623def32 Kernel: Paging uses now PAE with 2 MiB pages Bananymous 2023-01-05 02:00:18 +0200
  • a12ddfa12a Kernel: Update PS/2 controller Bananymous 2023-01-04 19:22:23 +0200
  • fcec793873 Kernel: Shell now renders a mouse Bananymous 2022-12-30 20:48:15 +0200
  • 9d9a6b2fec Kernel: VESA can now print 8x16 bitmaps Bananymous 2022-12-30 20:47:25 +0200
  • f51ca4b642 Kernel: Rewrite IDT exception kernel panic message Bananymous 2022-12-30 20:03:09 +0200
  • fc05642b74 Kernel: Make Render from buffer public tty function Bananymous 2022-12-30 19:57:44 +0200
  • b60af90538 BAN: Add min, max and clamp Bananymous 2022-12-30 19:52:16 +0200
  • ef0b2010e0 Kernel: Add basic PS/2 Mouse driver Bananymous 2022-12-30 19:38:21 +0200
  • 3c92aa45fb Kernel: 'cpuinfo' command in shell now shows wheter you are running on 64-bit cpu Bananymous 2022-12-28 19:46:37 +0200
  • 267367333e Kernel: Move paging code to a helper Bananymous 2022-12-28 19:01:01 +0200
  • 06a4ef1d87 Kernel: Commandline parsing does not depend on kmalloc anymore Bananymous 2022-12-28 04:17:46 +0200
  • 5d7a767f8b Kernel: Enable basic paging Bananymous 2022-12-28 04:17:06 +0200
  • 3e8590687f Kernel: Cleanup code and move kmalloc initialization to later Bananymous 2022-12-28 04:16:21 +0200
  • 2a65c5fd0f Kernel: Shell now actually prints to its TTY Bananymous 2022-12-27 20:11:49 +0200
  • f0fd62c703 BAN: Strings can now be constructed using BAN::Formatter Bananymous 2022-12-27 20:01:05 +0200
  • fd4fdffd46 BAN::Formatter now takes putc like function as a parameter Bananymous 2022-12-27 19:55:07 +0200
  • 98fc72b0d0 Kernel: kmalloc now aligns everything by alignof(max_align_t) Bananymous 2022-12-27 19:02:34 +0200
  • 9169020ad2 Kernel: Remove unnecessary checks from GraphicsPutCharAt() Bananymous 2022-12-27 18:29:51 +0200
  • 620b836fc3 Kernel: VESA now somewhat handles Cursor in Graphics mode Bananymous 2022-12-27 18:29:02 +0200
  • 2d46281c16 Kernel: TTY scroll is now done using memmove Bananymous 2022-12-27 17:45:47 +0200
  • 5ae1fc58e9 Kernel: Clean code in tty and vesa Bananymous 2022-12-27 17:22:45 +0200
  • 2535eb1c4c Kernel: TTY now handles keeping terminal buffer Bananymous 2022-12-27 17:06:33 +0200
  • f7eb85babd Kernel: IDT exceptions print better errors now Bananymous 2022-12-23 15:56:10 +0200
  • d8fd6afd12 Kernel: Make TTY a class Bananymous 2022-12-23 15:55:45 +0200
  • 3f7a61a4d2 Kernel: VESA driver has now second buffer for fast scrolling Bananymous 2022-12-20 14:01:04 +0200
  • 5e2680cade Kernel: You can now disable APIC from the grub commandline Bananymous 2022-12-20 11:57:09 +0200
  • 6732cabf20 BAN: StringView::Split now accepts a function Bananymous 2022-12-20 11:50:32 +0200
  • 7ae00ac76e BAN: Vector now has a Has() function Bananymous 2022-12-20 11:38:29 +0200
  • 4c559f50a4 BAN: StringView::Split() now precomputes number of elements Bananymous 2022-12-20 11:37:28 +0200
  • d5a068f90c BAN: String and StringView don't have to compute strlen for equality Bananymous 2022-12-20 11:36:01 +0200
  • c82caacbaa Kernel: Cleanup APIC code Bananymous 2022-12-20 04:45:46 +0200
  • 64a5a28ff0 Kernel: Add time since boot to Shell Bananymous 2022-12-19 11:35:24 +0200
  • c8866aa88b Kernel: Move GDT and IDT assembly to inline assembly Bananymous 2022-12-19 11:34:42 +0200
  • 0bdb01ee04 Kernel: Replace PIC with APIC Bananymous 2022-12-19 11:33:07 +0200
  • 7efa5bfb75 Kernel: Shell backspace unicode detection cleanup Bananymous 2022-12-16 11:53:59 +0200
  • f244728d33 Kernel: Add unicode support Bananymous 2022-12-16 03:53:55 +0200
  • 6fe0d04f07 Kernel: Implement basic VESA Graphics mode driver Bananymous 2022-12-16 00:46:10 +0200
  • 9274c9ee2f Kernel: Abstract TTY to use new VESA Bananymous 2022-12-15 19:05:07 +0200
  • 930661619b Kernel: Add more functionality to Shell Bananymous 2022-12-15 17:29:35 +0200
  • a2d38af37a Kernel: Implement 'cpuid' and enumerations for features Bananymous 2022-12-15 17:28:54 +0200
  • 9fa3d891e9 BAN: Vector now has a copy constructor Bananymous 2022-12-15 17:28:12 +0200
  • 7bddcafadd Kernel: Remove a lot of empty lines Bananymous 2022-12-14 21:17:46 +0200
  • c21766760b Add strlen comparing back to StringView since it is not nullterminated Bananymous 2022-12-13 22:45:51 +0200
  • 711ba19a82 Kernel: Add basic Shell to test functionality Bananymous 2022-12-13 21:34:50 +0200
  • f8224e55b1 Kernel: Force strlen compilation so BAN can use it Bananymous 2022-12-13 21:33:54 +0200
  • ced05ff5f2 BAN: use only memcmp when comparing string(view) with const char* Bananymous 2022-12-13 21:32:51 +0200
  • 833a82c8d1 Kernel: Fix keymay brace/bracket to correct way around Bananymous 2022-12-13 21:10:25 +0200
  • bf7a320050 BAN: Fix Time format printing Bananymous 2022-12-13 21:04:09 +0200
  • 5345b6b8c3 BAN: overloaded operator== for more types Bananymous 2022-12-13 20:55:09 +0200
  • fd6e0ed0f7 Kernel: debug printing now show system time correctly Bananymous 2022-12-13 20:44:52 +0200
  • d806778a6d BAN: Formatter now passes arguments as const references Bananymous 2022-12-13 20:43:43 +0200
  • cb6dee9d91 BAN: Implement more basic functionality Bananymous 2022-12-13 20:41:32 +0200
  • 174daa3e02 Kernel: Keyboard event callback can now be registered later Bananymous 2022-12-13 16:14:41 +0200
  • 941238830e BAN: Now actually build libban :D Bananymous 2022-12-13 16:13:38 +0200
  • 57b5e7ecf3 BAN: Add pragma once to String and Vector Bananymous 2022-12-13 15:15:36 +0200
  • b42469efd7 BAN: Vector now has Back() and Front() helpers Bananymous 2022-12-13 15:08:12 +0200
  • b491007eac BAN: Default constructed string is now nullterminated Bananymous 2022-12-13 15:07:35 +0200
  • 07f61d9b82 BAN: Implement basic vector Bananymous 2022-12-13 14:43:58 +0200
  • 171a33bbcd Kernel/BAN: Add weekday to Time structure and get it with RTC Bananymous 2022-12-13 14:34:24 +0200
  • 00f230fcb2 BAN: Add basic String implementation Bananymous 2022-12-13 14:33:38 +0200
  • 19307ce197 BAN: MUST() now returns the underlying value Bananymous 2022-12-13 14:35:09 +0200
  • b49a873d54 BAN: Add allocator/deallocator references for kernel/userspace Bananymous 2022-12-13 13:40:54 +0200
  • 52c793bb5c Kernel/BAN: Make Time a struct in BAN and add formatter to it Bananymous 2022-12-13 12:37:26 +0200
  • 3cda527987 BAN: Rename BAN::Formatter argument overload thing Bananymous 2022-12-13 12:30:48 +0200
  • 334abe6b27 Kernel: lol Bananymous 2022-12-13 12:10:50 +0200
  • 68e88d9413 Kernel: Add clear() command public TTY API Bananymous 2022-12-13 10:45:24 +0200
  • e62a626b39 Kernel: Improve keyboard input by a lot Bananymous 2022-12-13 10:42:49 +0200
  • 7ebe727a29 Kernel: Add RTC to get current time Bananymous 2022-12-13 10:41:36 +0200