Commit Graph

88 Commits

Author SHA1 Message Date
752f44852b
Remove conflicting static strlen from the process header.
Not necessary per se, but it'll help when we switch over to CPP.
2021-06-18 22:31:51 +01:00
29ab9a5860
Round two. 2021-06-18 22:19:41 +01:00
47c447c5a7
Fighting the Actions build, round one. 2021-06-18 22:18:37 +01:00
e867998352
More drawing optimizations. 2021-06-18 22:15:39 +01:00
2b90ae603b
Fix kernel keyboard listener being derpy with the letter z 2021-06-16 22:57:33 +01:00
da81dfc597
Minor adjustments to the allocator 2021-06-16 22:57:07 +01:00
28a29ecdff
Minor adjustments to the editor 2021-06-16 22:56:46 +01:00
5c4a557755
Add startings of the Chroma Editor. 2021-06-16 21:06:49 +01:00
31fdb462ab
Fixup keyboard handler, add string manipulation to lainlib 2021-06-16 21:06:16 +01:00
49f3afbecb
Add option to postprocessing script to allow skipping VBox integration 2021-06-16 21:05:16 +01:00
439e1d9040
Add keyboard callbacks, with a default for writing to the screen. 2021-06-16 17:24:46 +01:00
9bac0669a3
Move drawing functions to their own header, pending refactor. 2021-06-16 17:23:56 +01:00
e025a723a5
More cleanup. Remove redundant folders 2021-06-15 22:00:30 +01:00
6bba27ce4f
Temp 2021-06-15 21:49:36 +01:00
40bc58b8a4
Cleanup and Actions build (#6)
Thanks dpeter!
2021-06-14 15:41:07 +01:00
5ffa467b7d
Fix paging on >143MB ram.
Add visual printf.
2021-06-14 01:36:46 +01:00
77933c3aa4
Fix paging breaking on VirtualBox. Dynamically figure out the starting location. 2021-06-12 01:49:43 +01:00
54559a977d
Add missing header guards 2021-04-15 16:33:51 +01:00
2c95714d2f
Working on ethernet.
Includes a prototype E1000 driver.
2021-03-19 02:18:39 +00:00
98f3786e8b
Fix paging to completion.
More debug messages, some things are slightly broken. We can recover.
2021-03-18 20:33:15 +00:00
bd9f994648
Adjustments to the virtual memory manager, add Liballoc for kmalloc and kfree. 2021-03-17 01:23:36 +00:00
d3c36a29af
Paging works.
HOLY SHIT PAGING WORKS. THIS HAS BEEN SO MUCH WORK.

ALL IT TOOK WAS A BIT MASKgit add *.c !
2021-03-16 00:13:37 +00:00
51ce7fe132
Rewriting memory management, part one. 2021-03-15 21:48:51 +00:00
5bc7ec5b79
Delete paging. Time for an overhaul. 2021-03-13 21:24:30 +00:00
d4c5b006a3
Move to using the BS toolchain 2021-03-12 23:40:56 +00:00
1c1fce9b13
More attempts to fix paging. Still missing the stack. 2020-12-11 20:51:12 +00:00
6470487f2e
Fix bug in control register writing 2020-12-11 20:50:33 +00:00
3c29c69d14
Increase debugging level 2020-12-11 20:49:48 +00:00
e9c79f1d6a
Adjust bounds for page table filling. Some maths was wrong 2020-12-02 02:37:17 +00:00
69eb6e10c8
Separate out ELF header parsing to another file 2020-12-02 02:37:17 +00:00
Curle
13139779f2 Fix formatting in templates 2020-11-29 21:24:00 +00:00
Curle
2ae1c75019 Update issue templates 2020-11-29 21:22:39 +00:00
Curle
f9a6171f0a
Create LICENSE 2020-11-29 21:12:49 +00:00
986c7816b1
Adjust structure of the image folder
Reduces the kernel initrd size.
2020-11-28 16:52:34 +00:00
2b1d6cca5f
Fixes for memory. Lots of work left.
Mainly, we need to be able to locate the kernel executable physically in memory.
2020-11-28 16:52:17 +00:00
4468cee2e7
Fix embarassing bug in paging impl that caused crashes.. 2020-11-26 04:01:22 +00:00
4e7f8d47a5
Add better output to GPF handler 2020-11-26 03:50:30 +00:00
e2635c8125
Fix ordering of INTERRUPT_FRAME in header 2020-11-26 03:49:54 +00:00
c451afba0d
Add debugging symbols to output.. 2020-11-26 03:48:41 +00:00
3f2ac2db36
Add a memstart symbol to the linkerscript
This replaces the old way of appending the memory bitmap to the end of the kernel, which started causing problems with expansion..

I hardcoded the value to 0x1440, which is the start of the first FREE block of memory given to SeaBIOS in QEMU. This should be changed in the future..
2020-11-09 18:48:47 +00:00
a9c0fcdfde
Adjust the crt0 file to insert a null stack frame before calling the kernel. Provides a solid base for the stack unwinding. 2020-11-09 18:44:42 +00:00
39c1956819
Minimise printing in physmem - turns out serial output is SLOW. 2020-11-09 18:43:59 +00:00
c8c1af3961
Adjust formatting in paging that i missed 2020-11-09 18:43:20 +00:00
63a5bfa4d6
Flailing with Invalid Opcode.. 2020-11-09 18:43:06 +00:00
0de541b069
Add stack unwinding to critical ISRs.
Also adjust the formatting of serial prints..
2020-11-09 18:41:34 +00:00
1cb5c671f7
Add basic stack unwinding functionality 2020-11-09 18:39:34 +00:00
91063e12d2
Add opcode handling.. started debugging memory management. 2020-10-30 22:24:59 +00:00
903b5439ba
Fix building on Windows by dpeter99
Fix CMake invocation that confused it into using Visual Studio build tools..
2020-10-18 18:27:07 +02:00
Curle
162c4def06
Fix pre.sh
I can't spell!
2020-10-18 13:14:15 +01:00
Curle
5421541208
Comment out the post-build script.
More preparation for build server.
2020-10-16 23:28:02 +01:00