zxq5
b80b400c19
fixed interrupts (temporary, we need to do a real fix for this)
2025-03-10 15:40:38 +00:00
zxq5
4bf31e653b
Merge remote-tracking branch 'refs/remotes/origin/unified' into unified
2025-03-06 01:22:53 +00:00
zxq5
c06425949a
Merge remote-tracking branch 'refs/remotes/origin/unified' into unified
2025-03-06 01:21:02 +00:00
zxq5
ecdc76b068
Merge remote-tracking branch 'origin' into unified
2025-03-06 01:18:43 +00:00
zxq5
8ee4af1a48
someone broke a mod.rs so i fixed it.
2025-03-05 21:10:36 +00:00
zxq5
03c07cb5c4
Merging with origin/unified
2025-03-05 21:04:58 +00:00
zxq5
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.
2025-03-05 20:49:21 +00:00
zxq5
8704b5d249
FIXED THE APIC HELL YEAH
2025-03-04 12:44:42 +00:00
zxq5
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.
2025-03-04 01:28:39 +00:00
zxq5
f502104a6e
changes
2025-03-04 00:53:38 +00:00
zxq5
48dcde0c02
minor changes & work on threading
2025-03-04 00:53:06 +00:00
zxq5
a0f5ce8797
reorganised memory. starting on threads
2025-03-03 15:50:58 +00:00
zxq5
3966e697da
refactor mega-commit.
...
- reorganised the entire project so that the entire kernel is a single codebase rather than a kernel and a libk.
2025-03-03 02:49:56 +00:00
zxq5
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)
2025-02-28 04:18:35 +00:00
zxq5
e38c20dbd3
Merge pull request 'editor' ( #6 ) from editor into dev
...
Reviewed-on: OsDev/FoundryOS#6
2025-02-28 03:05:38 +00:00
zxq5
c8bb85364c
- updated to-dos
...
- removed unnecessary debugging code
- moved x86_64-kernel.json to the project root
2025-02-28 03:05:10 +00:00
zxq5
fe18004f7d
Merge remote-tracking branch 'origin' into editor
...
merging into dev
2025-02-27 23:58:01 +00:00
zxq5
192100be7a
changed page allocation to happen on page fault for performance reasons
2025-02-27 23:57:23 +00:00
zxq5
9852cb14eb
updated build scripts
2025-02-27 22:58:10 +00:00
zxq5
db8dbff9f2
added memory allocation flag to run command ``VM_MEMORY=<amount>G cargo run``
2025-02-27 21:57:58 +00:00
zxq5
2178215a01
fixed triple fault
2025-02-27 16:52:31 +00:00
zxq5
821759ec63
apic broken pushing to debug
2025-02-27 16:19:43 +00:00
zxq5
0b3dbed4be
updated documentation
2025-02-27 02:30:48 +00:00
zxq5
3b6e272fd2
not working
2025-02-27 01:16:07 +00:00
zxq5
ac0b47a45c
merge
2025-02-26 04:00:00 +00:00
zxq5
15f59e68d5
initial apic implementaion (Commented out / NOT WORKING)
2025-02-26 03:48:11 +00:00
zxq5
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
2025-02-25 02:16:01 +00:00
zxq5
f7723a3944
making the keyboard module more flexible, still needs work
2025-02-24 18:24:21 +00:00
zxq5
438ef7a748
stop banning mod.rs
2025-02-24 16:30:38 +00:00
zxq5
2f7ab8fe6b
Merge remote-tracking branch 'refs/remotes/origin/dev' into dev
2025-02-24 16:29:58 +00:00
zxq5
ca1c695e32
created stdio module, added hardware script
2025-02-24 16:28:56 +00:00
zxq5
1c22f89665
reverted dumb change
2025-02-24 15:34:46 +00:00
zxq5
91044f5fad
merged dumb change
2025-02-24 15:33:59 +00:00
zxq5
d5b15826e2
adding std io idk
2025-02-24 15:33:42 +00:00
zxq5
e303ecf5a4
fixed merge commit tomfoolery.
2025-02-24 15:14:21 +00:00
zxq5
2f08835d69
merge commit. probably broken tbh
2025-02-24 15:10:58 +00:00
zxq5
03290e52a3
fixed a dumb error about me hardcoding paths
2025-02-24 13:07:11 +00:00
zxq5
8908a6a281
Update README.md
2025-02-24 03:45:02 +00:00
zxq5
aefc368d41
updated readme for more comprehensive build instructions
2025-02-24 03:44:22 +00:00
zxq5
76ec29b7ec
changed #usage back to being a tag
...
(was not a markdown fail, it's an obsidian tag)
2025-02-24 03:36:28 +00:00
zxq5
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
2025-02-24 03:26:49 +00:00
zxq5
7ff33659fe
async works!
2025-02-23 19:27:13 +00:00
zxq5
efe3034ad0
Merge pull request 'libk now replaces the plethora of lib crates' ( #5 ) from nullndvoid/FoundryOS:dev into dev
...
Reviewed-on: OsDev/FoundryOS#5
2025-02-23 17:07:25 +00:00
zxq5
27b0ed634c
setup but not working
2025-02-22 23:12:46 +00:00
zxq5
72fe78cbc6
Merge pull request 'dev' ( #4 ) from dev into main
...
Continuous integration / build (push) Failing after 2m12s
Reviewed-on: OsDev/FoundryOS#4
2025-02-22 21:32:27 +00:00
zxq5
f9bc75c4f3
added boot messages
2025-02-22 21:30:13 +00:00
zxq5
494d00c53b
Update .gitea/workflows/rust.yml
2025-02-22 21:18:14 +00:00
zxq5
114c70ffe9
updated submodules
Continuous integration / build (push) Failing after 2m7s
2025-02-22 21:03:17 +00:00
zxq5
361c67764d
totally didn't import an allocator...
2025-02-22 21:02:29 +00:00
zxq5
36cb118933
paging done, starting on allocation.
Continuous integration / build (push) Failing after 1m51s
2025-02-22 16:56:01 +00:00
zxq5
7b3ba170f0
changes to submodules
Continuous integration / build (push) Failing after 1m56s
2025-02-22 15:43:06 +00:00
zxq5
49880fa9d7
Merge remote-tracking branch 'refs/remotes/origin/dev' into dev
...
merging into dev
2025-02-22 15:41:54 +00:00
zxq5
0bbbf653f8
setup GDT & fixed a deadlock
2025-02-22 15:41:41 +00:00
zxq5
28afe25cca
check boot was successful else panic
Continuous integration / build (push) Has been cancelled
2025-02-22 03:52:32 +00:00
zxq5
90faace7a2
changed name to snake case
Continuous integration / build (push) Has been cancelled
2025-02-22 03:50:13 +00:00
zxq5
5b1f04c1da
changed some code order
Continuous integration / build (push) Has been cancelled
2025-02-22 03:47:54 +00:00
zxq5
3a232c8023
Merge remote-tracking branch 'refs/remotes/origin/dev' into dev (and add cargo fmt on save)
Continuous integration / build (push) Has been cancelled
2025-02-22 03:39:22 +00:00
zxq5
5eaf0d7c69
Merge remote-tracking branch 'refs/remotes/origin/dev' into dev
Continuous integration / build (push) Has been cancelled
2025-02-22 03:36:32 +00:00
zxq5
b4d0b05e13
updated submodule
2025-02-22 03:35:02 +00:00
zxq5
5c9717d384
cargo fmt
Continuous integration / build (push) Has been cancelled
2025-02-22 03:33:19 +00:00
zxq5
bb5bf9115b
fixed weird merge issues
Continuous integration / build (push) Has been cancelled
2025-02-22 03:29:33 +00:00
zxq5
ae82e9c24b
idk
2025-02-22 03:27:08 +00:00
zxq5
ab0ec35094
updated submodules
Continuous integration / build (push) Has been cancelled
2025-02-22 03:24:48 +00:00
zxq5
2ee21dea05
did interrupts stuff
2025-02-22 03:19:05 +00:00
zxq5
d12160c5d0
setup TSS
2025-02-22 03:16:13 +00:00
zxq5
a88059c5ff
workflow builds nightly
Continuous integration / build (push) Has been cancelled
2025-02-22 02:13:38 +00:00
zxq5
68c3d2fa0e
workflow changes
Continuous integration / build (push) Failing after 1m37s
2025-02-22 01:55:36 +00:00
zxq5
af3215d887
changed order of steps in rust.yml
Continuous integration / build (push) Failing after 23m3s
2025-02-22 01:28:31 +00:00
zxq5
11d63535e9
added submodule cloning to rust.yml
Continuous integration / build (push) Has been cancelled
2025-02-22 01:27:08 +00:00
zxq5
ee8dae4981
added rust.yml workflow, probably wont work.
Continuous integration / build (push) Failing after 7m45s
2025-02-22 01:12:15 +00:00
zxq5
650f34f354
removed redundant script
2025-02-22 01:08:07 +00:00
zxq5
1b313c67e0
first interrupt handler + setup IDT
2025-02-22 01:06:55 +00:00
zxq5
cb77883f4c
done
2025-02-22 01:06:27 +00:00
zxq5
16d94f37cb
moving libs to submodules
2025-02-22 01:05:18 +00:00
zxq5
d9f6b4b69a
e
2025-02-22 00:58:51 +00:00
zxq5
cc56dc8072
idk
2025-02-22 00:58:40 +00:00
zxq5
f0e25c7a5d
started work on lib_application - progress limited as requires alloc support to make further progress
2025-02-21 16:13:06 +00:00
zxq5
e626a3bcf2
working on colour support
2025-02-21 16:13:27 +00:00
zxq5
34b960c20a
println works
2025-02-20 22:59:24 +00:00
zxq5
ee8de361dc
Merge remote-tracking branch 'refs/remotes/origin/dev' into dev
...
merge
2025-02-20 17:13:57 +00:00
zxq5
60efcf39b6
started setting up support for C code in the kernel
2025-02-20 17:13:40 +00:00
zxq5
b028a97a44
vscode workspace setup
2025-02-20 17:12:25 +00:00
zxq5
294e6f0e33
created example lib for sake of testing
2025-02-20 15:52:42 +00:00
zxq5
76f070af8b
idk
2025-02-20 02:54:01 +00:00
zxq5
2f0e09b9bc
it compiles!
2025-02-20 02:47:18 +00:00
zxq5
0df671c3fc
started setting up
2025-02-19 16:49:10 +00:00
zxq5
501d1ac494
Initial commit
2025-02-17 23:46:23 +00:00