Commit graph

36 commits

Author SHA1 Message Date
Felix Queißner
cb806c19ec Refactors io.hpp: Now splits into asm.hpp with namespace ASM and io.hpp which exports the inb,outb function. 2016-05-18 10:31:05 +02:00
Felix Queißner
91b72ceb68 Removes scheduler. 2016-05-18 10:24:36 +02:00
Felix Queißner
02364038bd Some changes in VMM stuff. Mainly a "safe" commit. 2016-05-18 10:12:01 +02:00
Felix Queißner
2ad677e750 Hacks(git add .git add .) multithreading. 2016-05-07 21:49:54 +02:00
Felix Queißner
72c33b4b05 Adds ELF loader to init.cpp 2016-05-07 19:55:59 +02:00
Felix Queißner
98900c9069 Fixes stupid bug.... 2016-05-07 18:51:34 +02:00
Felix Queißner
012cc69edb Adds ultra-simple program loader and executor. Currently yields a Page Fault. 2016-05-07 17:00:08 +02:00
Felix Queißner
455a6db8b5 Adds virtual memory management with paging :) 2016-05-07 14:10:37 +02:00
Felix Queißner
e97921e246 Reworks BSOD into fancy BSOD. 2016-05-06 23:50:45 +02:00
Felix Queißner
245895d7bd Fixes bug in PIC.cpp: I AM STUPID. Data port is always 0x01, not incrementing... m( 2016-05-06 22:53:08 +02:00
Felix Queißner
ae33573513 Doh! 2016-05-06 20:04:25 +02:00
Felix Queißner
09cd19d3c7 Moves base.hpp to driver.hpp. Adds Timer driver. 2016-05-06 19:37:43 +02:00
Felix Queißner
d9d283e5ac PMM::alloc now dies with a BSOD instead of returning an invalid value. Adds stub of scheduler driver. 2016-05-06 12:35:22 +02:00
Felix Queißner
ec8eb4a7d8 Adds keyboard driver stub. 2016-05-06 09:44:02 +02:00
Felix Queißner
8cb13eb9df Adds interrupt handlers. 2016-05-06 09:28:30 +02:00
Felix Queißner
55cdb2050c Removes exception from init.cpp 2016-05-05 19:51:38 +02:00
Felix Queißner
9a8f9e956f Implements BSOD. 2016-05-05 19:51:04 +02:00
Felix Queißner
b31d9164d6 Adds PIC initialization and hardware interrupts. 2016-05-05 19:02:23 +02:00
Felix Queißner
cd4daaab7a First draft of the interrupt handler system. 2016-05-05 15:59:48 +02:00
Felix Queißner
4e21175e8e Adds GDT initialization. 2016-05-05 13:15:29 +02:00
Felix Queißner
dc1166758e Adds memory measurement. 2016-05-05 11:35:08 +02:00
Felix Queißner
3b6bd5ca87 Adds marking the memory used by the kernel as used. 2016-05-04 18:00:16 +02:00
Felix Queißner
0b7b656b01 Adds initialization of PMM with multiboot structure. Adds allocation test. 2016-05-04 17:42:09 +02:00
Felix Queißner
a9ebf0326c Adds some memory map debugging. 2016-05-04 16:33:59 +02:00
Felix Queißner
80a7c9dccf Passes multiboot structure to the system. 2016-05-04 11:51:23 +02:00
Felix Queißner
3ba62396cf Outs multiboot structure to init(), missing correct parameter passing. 2016-05-04 10:40:11 +02:00
Felix Queißner
9c768bb5b5 Changes pointer::invalid to uint32-ammax. Adds multiboot structure. 2016-05-04 10:17:56 +02:00
Felix Queißner
d557bedaa9 Updates PMM to use physical_t instead of void* 2016-05-03 17:49:04 +02:00
Felix Queißner
02d6f683e8 Adds pointer.hpp which provides a wrapper around a simple pointer. 2016-05-03 17:18:30 +02:00
Felix Queißner
167e578276 Adds semi-tested version of PMM. Adds fancy boolean printing. 2016-05-03 17:07:58 +02:00
Felix Queißner
e8666e90ae Fancy fancy numeric module. 2016-05-03 16:11:36 +02:00
Felix Queißner
e45cd0e40e Adds usability methods to Console. 2016-05-02 18:45:03 +02:00
Felix Queißner
df83857843 Adds scrolling. 2016-05-02 18:17:15 +02:00
Felix Queißner
a17b936cfb Adds support for console colors. 2016-05-02 09:32:27 +02:00
Felix Queißner
9e3bfe3f82 Adds basic Console class. 2016-05-02 09:25:08 +02:00
Felix Queißner
f85042a9c7 Adds linker script, C++ support and a simple screen class. 2016-05-01 20:22:12 +02:00