Commit Graph

  • b315fdc27f Kernel: Finally managed to get 64-bit working Bananymous 2023-01-25 19:05:47 +0200
  • c4670f49d4 Kernel: Refactor some IDT code Bananymous 2023-01-25 19:05:23 +0200
  • 48348c9e57 Kernel: Cleanup APIC code. Remove unnecessary defines and add consts Bananymous 2023-01-25 19:00:41 +0200
  • ba53582f23 Kernel: Rewrite APIC and PIC more OOP friendly Bananymous 2023-01-23 20:13:57 +0200
  • b50bb03ed4 Kernel: Panic now halts machine even if we get spurious irqs Bananymous 2023-01-23 18:25:48 +0200
  • 54043288cb Kernel: Move CPUID out of arch/ Bananymous 2023-01-23 18:12:52 +0200
  • 7c6d474a3a BAN: Add basic ScopeGuard Bananymous 2023-01-23 17:41:34 +0200
  • 1b9f7aa815 Kernel: Rewrite the whole VESA driver Bananymous 2023-01-23 13:07:52 +0200
  • 10c7ef7baa Kernel: MMU rename weird variable Bananymous 2023-01-22 20:16:44 +0200
  • b67bbab083 Kernel: fix dump_stacktrace Bananymous 2023-01-22 20:05:24 +0200
  • 62469c529f Kernel: IDT now allocates descriptors with kmalloc_eternal Bananymous 2023-01-22 03:15:48 +0200
  • 026fdc251c Kernel: Add kmalloc_eternal back Bananymous 2023-01-22 03:10:48 +0200
  • cdd27ae3db Kernel: rename MMU::m_page_directory_pointer_table -> m_highest_paging_stuct Bananymous 2023-01-22 03:03:01 +0200
  • 6ec4ba3dc9 Kernel: Move dump_backtrace() out of arch. Bananymous 2023-01-22 03:00:13 +0200
  • fbfb3d6b70 Kernel: IDT cleanup GateDesctiptor usage Bananymous 2023-01-22 02:03:43 +0200
  • 558374a47c Kernel: IDT flush only once in initialization Bananymous 2023-01-22 01:36:21 +0200
  • 6e24ef8323 Kernel: IDT cleanup Kernel panic messages Bananymous 2023-01-22 01:35:54 +0200
  • 3e8fbbaabd Kernel: Fix small typos in IDT Bananymous 2023-01-22 01:08:00 +0200
  • 491610db2c Kernel: move GDT initialization to boot.S Bananymous 2023-01-22 00:47:25 +0200
  • aac7595a47 Kernel: cleanup boot.S code and enable SSE Bananymous 2023-01-21 23:44:23 +0200
  • fdbc04f29d Kernel: kmalloc now uses the actual kernel end location Bananymous 2023-01-21 22:40:23 +0200
  • 9088f7b305 Kernel: kmalloc prints addresses on panic Bananymous 2023-01-21 22:29:44 +0200
  • b5453fad5c Kernel: dump_stacktrace uses now "\r\n" line endings for bochs Bananymous 2023-01-21 22:21:38 +0200
  • bb051604a1 Kernel: Move dump_stacktrace() to arch folder Bananymous 2023-01-21 22:16:31 +0200
  • 9e092c80c0 Kernel: Cleanup boot.S Bananymous 2023-01-21 22:16:01 +0200
  • c9e32b1b5b BAN: Cleanup Queue AddressOf functions Bananymous 2023-01-18 17:19:57 +0200
  • 64f0cc0d42 BAN: fix Vector code Bananymous 2023-01-18 17:16:19 +0200
  • dd607ce86f BAN: Add basic lambda support for BAN::Function Bananymous 2023-01-18 14:39:31 +0200
  • ef2e8f1a2f BAN: Move RemoveReference and IsLValueReference to their own header Bananymous 2023-01-18 13:38:35 +0200
  • 59fa4055a6 BAN: Add Queue::Emplace() Bananymous 2023-01-17 12:02:59 +0200
  • 1340e26148 BAN: Add Vector::Emplace and EmplaceBack() and fix insert assignment Bananymous 2023-01-17 11:59:36 +0200
  • cf63552b2a BAN: Cleanup includes Bananymous 2023-01-17 11:38:16 +0200
  • a7a55cd0fb BAN: Rename Forward.h -> ForwardList.h to avoid confusion with BAN::Forward() Bananymous 2023-01-17 11:21:21 +0200
  • 53a5ad3cf9 BAN: Function now properly forward arguments Bananymous 2023-01-17 11:16:46 +0200
  • 124afbecaa BAN: Add Forward() Bananymous 2023-01-17 11:15:57 +0200
  • b9a4530e54 Kernel: Kernel::Panic now dumps stacktrace to com1 Bananymous 2023-01-16 21:50:50 +0200
  • 7540fa0385 Kernel: Shell now 'properly' parses commandline Bananymous 2023-01-16 20:08:13 +0200
  • fd16c1cf58 LibC: Add is*() functions to libc Bananymous 2023-01-16 19:13:11 +0200
  • 5122d27f89 BAN: Add Front() and Back() to StringView Bananymous 2023-01-16 18:56:51 +0200
  • e307db47eb Kernel: Kernel::Panic() will now always print to serial output Bananymous 2023-01-16 15:44:27 +0200
  • 73abc3b2ee fixup! Kernel: Move GDT to its own namespace and cleanup Bananymous 2023-01-16 15:24:59 +0200
  • 46e5b3f3d6 Kernel: Move GDT to its own namespace and cleanup Bananymous 2023-01-16 15:24:10 +0200
  • b46fa0d116 Kernel: Shell can now dump kmalloc info Bananymous 2023-01-16 15:17:00 +0200
  • 8881c1e117 Kernel: Shell is no longer singleton Bananymous 2023-01-16 15:16:39 +0200
  • 1545850be3 Kernel: Input callbacks use the new BAN::Function Bananymous 2023-01-16 15:15:02 +0200
  • 3561257286 BAN: Add basic Function for function pointers and member functions Bananymous 2023-01-16 14:59:33 +0200
  • d5e162b1ea Kernel: fix kmalloc header Bananymous 2023-01-16 12:10:50 +0200
  • a02d4c59ed BAN: Vector and Queue replace Address() with AddressOf and correct const Bananymous 2023-01-16 12:08:22 +0200
  • c62d512d68 BAN: Add Iterator and ConstIterator to Vector Bananymous 2023-01-13 17:48:19 +0200
  • 689338b506 Kernel: kmalloc can now dump current memory usage Bananymous 2023-01-13 17:42:19 +0200
  • f547a788f2 Kernel: Add support for arrow keys in Shell Bananymous 2023-01-13 15:07:24 +0200
  • bf4b26d1fd Kernel: kmalloc now returns nullptr if you try to allocate over kmalloc size Bananymous 2023-01-13 15:02:28 +0200
  • 32453daf66 Kernel: actually dont map page 0 Bananymous 2023-01-13 14:45:45 +0200
  • 416a41745f Kernel: Kernel::Panic now checks that TTY is initialized instead of VESA Bananymous 2023-01-13 14:41:29 +0200
  • 77e82de51e Kernel: Make IDT exceptions use a single Kernel:Panic Bananymous 2023-01-13 14:39:49 +0200
  • af8d486893 Kenrel: TTY fix cursor position with ANSI escapes Bananymous 2023-01-13 14:19:15 +0200
  • 57cbd728db BAN: Rewrite Queue with move semantics Bananymous 2023-01-13 14:11:02 +0200
  • 0f4e95acc5 BAN: Rewrite vector with move semantics Bananymous 2023-01-13 13:50:47 +0200
  • 065e23d307 BAN: fix include Bananymous 2023-01-13 13:50:12 +0200
  • 82a25f9035 BAN: implement placement new Bananymous 2023-01-13 13:49:34 +0200
  • 61de71e0d5 BAN: Properly allocate/deallocate elements in Vector/Queue Bananymous 2023-01-13 01:09:40 +0200
  • 6ed542d6bf BAN: Queue and Vector now default initialize newly allocated elements Bananymous 2023-01-13 00:56:38 +0200
  • c35181a92f BAN: ASSERT now prints the condition Bananymous 2023-01-13 00:56:16 +0200
  • 53d1d12c12 BAN: String add operator=(StringView) Bananymous 2023-01-13 00:55:58 +0200
  • c33c6c5785 BAN: memcpy only if we already have a buffer Bananymous 2023-01-13 00:15:40 +0200
  • 75ee592fb5 Kernel: remove debug print from MMU Bananymous 2023-01-13 00:04:50 +0200
  • 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