Commit Graph

  • b80b400c19 fixed interrupts (temporary, we need to do a real fix for this) unified zxq5 2025-03-10 15:40:38 +00:00
  • 31f14e8aec Get rid of warning nullndvoid 2025-03-10 13:35:27 +00:00
  • 91e5602e82 Don't enable APIC yet nullndvoid 2025-03-10 13:29:07 +00:00
  • a83108a08e Clean up dead code nullndvoid 2025-03-08 18:43:43 +00:00
  • da6690fd8b Save failed stack trace code for future reference. nullndvoid 2025-03-08 18:39:27 +00:00
  • 4b8388c66d Update boot prints to be a little less noisy. nullndvoid 2025-03-06 20:32:46 +00:00
  • 1d192adde0 Removed messy debug logging, added print_oneshot!() nullndvoid 2025-03-06 20:11:54 +00:00
  • 4bf31e653b Merge remote-tracking branch 'refs/remotes/origin/unified' into unified zxq5 2025-03-06 01:22:53 +00:00
  • 5aad3e6096 Fixed stack unwind bugs (works!) nullndvoid 2025-03-06 01:22:17 +00:00
  • c06425949a Merge remote-tracking branch 'refs/remotes/origin/unified' into unified zxq5 2025-03-06 01:21:02 +00:00
  • ecdc76b068 Merge remote-tracking branch 'origin' into unified dev zxq5 2025-03-06 01:18:43 +00:00
  • f197149d80 Forced unwind tables - still bugged nullndvoid 2025-03-06 01:01:04 +00:00
  • bc51f3ec43 Force rustc to generate unwind-tables - infinite loop :( nullndvoid 2025-03-05 22:37:19 +00:00
  • b26dc6de01 Wrote stack unwinder. NEEDTO: fix NoUnwindInfo nullndvoid 2025-03-05 22:21:38 +00:00
  • 8ee4af1a48 someone broke a mod.rs so i fixed it. zxq5 2025-03-05 21:10:36 +00:00
  • 03c07cb5c4 Merging with origin/unified zxq5 2025-03-05 21:04:58 +00:00
  • ef70bcf51e - heap allocator now makes sure virtual memory pages are mapped before using them. this means we no longer have to use page faults to allocate frames, it is done automatically. - fixed the apic code that caused a page fault. it now writes the correct values at the correct physical address - improved startup logging including displaying how much RAM is installed. zxq5 2025-03-05 20:49:21 +00:00
  • 2fb1741100 Begin setting up stack unwinding/tracing. nullndvoid 2025-03-05 20:44:09 +00:00
  • af995d1d76 Tried and failed to use unwinding crate: shall do it myself tomorrow. nullndvoid 2025-03-05 03:24:26 +00:00
  • 014ec5310c Some more clippy fixes, warnings are noisy nullndvoid 2025-03-05 00:57:06 +00:00
  • d53661b9a0 Ran cargo fmt, clippy fixes, suppressed some warns nullndvoid 2025-03-04 23:06:47 +00:00
  • 8704b5d249 FIXED THE APIC HELL YEAH zxq5 2025-03-04 12:44:42 +00:00
  • 2186b829aa - made improvements to memory code (refactored) - started on improvements to the page frame allocator. it should be able to provide a usable page for any given virtual memory address requested. zxq5 2025-03-04 01:28:39 +00:00
  • f502104a6e changes zxq5 2025-03-04 00:53:38 +00:00
  • 48dcde0c02 minor changes & work on threading zxq5 2025-03-04 00:53:06 +00:00
  • 6e913b15d7 Update macro to use relative working dirs, Spans nullndvoid 2025-03-03 15:57:16 +00:00
  • 0a5269eeb0 Fix clippy errors nullndvoid 2025-03-03 15:51:39 +00:00
  • a0f5ce8797 reorganised memory. starting on threads zxq5 2025-03-03 15:50:58 +00:00
  • 2d3bc56962 Fix some clippy errors nullndvoid 2025-03-03 14:53:30 +00:00
  • 5703032f87 Fix module inception nullndvoid 2025-03-03 14:47:24 +00:00
  • 3966e697da refactor mega-commit. - reorganised the entire project so that the entire kernel is a single codebase rather than a kernel and a libk. zxq5 2025-03-03 02:49:56 +00:00
  • e8237f4610 run_debug.sh now checks if it running on wsl and disables boot_flags if it is since it was causing issues with qemu aha480 2025-03-01 12:49:42 +00:00
  • 9ed3b73df8 Add HAL/abstractions to TODOs huge_refactor nullndvoid 2025-02-28 23:07:16 +00:00
  • ad5edb57db Move serial driver to arch::x86_64::dev::serial nullndvoid 2025-02-28 23:03:12 +00:00
  • 394e932b9c Update some docs and add a little more code to main nullndvoid 2025-02-28 22:45:31 +00:00
  • fdd556f742 Fix more clippy errors, missing safety docs nullndvoid 2025-02-28 22:21:51 +00:00
  • 4bad44e475 Supressed clippy errors and add some rust docs nullndvoid 2025-02-28 21:12:41 +00:00
  • 096a66adbb Start refactoring code. No rush to merge anything. nullndvoid 2025-02-28 17:21:44 +00:00
  • 53d325749d Fix incorrect target name in config nullndvoid 2025-02-28 16:15:26 +00:00
  • 8a3e9e3afc - implemented a custom allocator (fixed size block) with a fallback (linked list allocator) for larger block sizes - apic code still not working (commented out, check lib.rs) zxq5 2025-02-28 04:18:35 +00:00
  • e38c20dbd3 Merge pull request 'editor' (#6) from editor into dev zxq5 2025-02-28 03:05:38 +00:00
  • c8bb85364c - updated to-dos - removed unnecessary debugging code - moved x86_64-kernel.json to the project root zxq5 2025-02-28 03:05:10 +00:00
  • 92fe618a99 Megacommit to move some memory code into kernel crate pmm nullndvoid 2025-02-28 02:13:50 +00:00
  • fe18004f7d Merge remote-tracking branch 'origin' into editor merging into dev zxq5 2025-02-27 23:58:01 +00:00
  • 192100be7a changed page allocation to happen on page fault for performance reasons zxq5 2025-02-27 23:57:23 +00:00
  • 2915d0c879 Add tips on debugging/disassembling kernel sources nullndvoid 2025-02-27 23:32:05 +00:00
  • 9852cb14eb updated build scripts zxq5 2025-02-27 22:58:10 +00:00
  • db8dbff9f2 added memory allocation flag to run command ``VM_MEMORY=<amount>G cargo run`` zxq5 2025-02-27 21:57:58 +00:00
  • 2178215a01 fixed triple fault zxq5 2025-02-27 16:52:31 +00:00
  • 821759ec63 apic broken pushing to debug zxq5 2025-02-27 16:19:43 +00:00
  • 0b3dbed4be updated documentation zxq5 2025-02-27 02:30:48 +00:00
  • 3b6e272fd2 not working zxq5 2025-02-27 01:16:07 +00:00
  • ac0b47a45c merge zxq5 2025-02-26 04:00:00 +00:00
  • 15f59e68d5 initial apic implementaion (Commented out / NOT WORKING) zxq5 2025-02-26 03:48:11 +00:00
  • b7397d8a1b Remove unused clippy lints nullndvoid 2025-02-25 03:20:05 +00:00
  • 4fe6109e5b Rename scheduling to 'async_io', general cleanup nullndvoid 2025-02-25 03:18:12 +00:00
  • e294a13a91 Cleanup the README a little more nullndvoid 2025-02-25 02:59:55 +00:00
  • 752800a3ca Merge UEFI support for qemu into our runner scripts/build system nullndvoid 2025-02-25 02:56:48 +00:00
  • 177fddcf7d Add warnings to hardware script (dd implies 'doubly dangerous') nullndvoid 2025-02-25 02:55:52 +00:00
  • 375c5aa561 Update limine.conf to boot up faster nullndvoid 2025-02-25 02:54:19 +00:00
  • b945416665 Add qemu UEFI firmware support. nullndvoid 2025-02-25 02:53:28 +00:00
  • 27ee8226d8 implemented stdin methods for reading a string (async) and reading keystrokes (sync + async). added a very basic shell on top of it for debugging zxq5 2025-02-25 02:16:01 +00:00
  • 00d3a1de72 fb: Added support for typing backspaces. nullndvoid 2025-02-24 23:24:03 +00:00
  • f7723a3944 making the keyboard module more flexible, still needs work zxq5 2025-02-24 18:24:21 +00:00
  • 438ef7a748 stop banning mod.rs zxq5 2025-02-24 16:30:38 +00:00
  • 2f7ab8fe6b Merge remote-tracking branch 'refs/remotes/origin/dev' into dev zxq5 2025-02-24 16:29:58 +00:00
  • ca1c695e32 created stdio module, added hardware script zxq5 2025-02-24 16:28:56 +00:00
  • 1c147dd933 Ban module inception, this is annoying. nullndvoid 2025-02-24 15:34:29 +00:00
  • 1c22f89665 reverted dumb change zxq5 2025-02-24 15:34:46 +00:00
  • 91044f5fad merged dumb change zxq5 2025-02-24 15:33:59 +00:00
  • d5b15826e2 adding std io idk zxq5 2025-02-24 15:33:42 +00:00
  • 39f1f4905d Ban mod.rs. nullndvoid 2025-02-24 15:29:39 +00:00
  • 03a3469d20 Formatting changes to task.rs nullndvoid 2025-02-24 15:19:01 +00:00
  • 2cbe9641aa Use prelude lol. nullndvoid 2025-02-24 15:14:12 +00:00
  • e303ecf5a4 fixed merge commit tomfoolery. zxq5 2025-02-24 15:14:21 +00:00
  • 2f08835d69 merge commit. probably broken tbh zxq5 2025-02-24 15:10:58 +00:00
  • 8d57540566 Fix clippy errors nullndvoid 2025-02-24 15:02:44 +00:00
  • 03290e52a3 fixed a dumb error about me hardcoding paths zxq5 2025-02-24 13:07:11 +00:00
  • 8908a6a281 Update README.md zxq5 2025-02-24 03:45:02 +00:00
  • aefc368d41 updated readme for more comprehensive build instructions zxq5 2025-02-24 03:44:22 +00:00
  • 76ec29b7ec changed #usage back to being a tag zxq5 2025-02-24 03:36:28 +00:00
  • d9bbdff08c - added a new libary libm containing procedural macros for the kernel. these should be used to include external files and resources in the kernel binary at compile time. - libm currently supports loading psf-1 formatted fonts - added two fonts that are included in the binary at compile time - refactored libk to make the crate structure more organised and maintainable in future. new structure: - drivers (hardware interaction) - resources (consts and statics included either manually or via macros) - std (standard functions for higher level interaction with the os, for example creating windows) - added geometry.rs - provides the Vec2<T> struct for use with dimensions, coordinates etc. - added window.rs - provides the Window struct for rendering the state of an application to the screen - added application.rs - provides the Application trait for custom programs to implement in order to run zxq5 2025-02-24 03:26:49 +00:00
  • 7ff33659fe async works! zxq5 2025-02-23 19:27:13 +00:00
  • efe3034ad0 Merge pull request 'libk now replaces the plethora of lib crates' (#5) from nullndvoid/FoundryOS:dev into dev zxq5 2025-02-23 17:07:25 +00:00
  • d9b66f8008 Update README to remove refs to submodules. nullndvoid 2025-02-23 12:06:50 +00:00
  • 2be5b63af7 Fix some more clippy lints. nullndvoid 2025-02-23 11:58:52 +00:00
  • 7e62bdae35 Make rust-analyzer use clippy as the check command. nullndvoid 2025-02-23 11:53:42 +00:00
  • b8aa203c05 Bump edition to now stable 2024 edition (shiny!). nullndvoid 2025-02-23 11:52:54 +00:00
  • 9f83c5f295 Merge GDB support (and updated runner scripts) into dev. nullndvoid 2025-02-23 11:47:51 +00:00
  • 914cb4e409 Enable support for $USE_GDB when running in debug mode. nullndvoid 2025-02-23 11:43:26 +00:00
  • 43b1db41ca Introducing the hottest library crate in town (libk!) nullndvoid 2025-02-23 04:42:30 +00:00
  • c763f512f1 Accidentally forgot to add lib alloc lol nullndvoid 2025-02-23 03:16:22 +00:00
  • 5dc73e7000 Update Cargo.toml to use new registry nullndvoid 2025-02-23 03:15:19 +00:00
  • ca906767db Update docs (markdown fail) and checkout libraries again nullndvoid 2025-02-23 02:19:38 +00:00
  • ef8d028211 Update liballoc and libapplication. nullndvoid 2025-02-23 02:15:44 +00:00
  • 2886fe5ecf Update nullndvoid 2025-02-23 02:07:01 +00:00
  • c2c552ef25 Fixed most of the clippy warnings/suggestions. nullndvoid 2025-02-23 02:05:13 +00:00
  • e722874cee Formatting and fixing warnings nullndvoid 2025-02-23 01:38:21 +00:00
  • 27b0ed634c setup but not working zxq5 2025-02-22 23:12:46 +00:00
  • 72fe78cbc6 Merge pull request 'dev' (#4) from dev into main main zxq5 2025-02-22 21:32:27 +00:00