aboutsummaryrefslogtreecommitdiff
path: root/src/kernel/kernel.c
AgeCommit message (Collapse)Author
2020-04-17Started implementing multiboot2 standardMarvin Borner
2020-04-16Many fix attempts for the divide by zero exceptionMarvin Borner
2020-04-15Added awesome logging colorsMarvin Borner
2020-04-15Used macro magic to implement function-based logsMarvin Borner
2020-04-15Added ext2 filesystemMarvin Borner
2020-04-15Removed filesystemMarvin Borner
SOON: Correct ext2 attempt
2020-04-14Switched to grubMarvin Borner
This really isn't what I wanted because grub is very big and bloaty but my own bootloader was very poorly written and I really want to implement a filesystem like ext2 which wouldn't work with my own bootloader. Furthermore this commit fixes many small issues including the one occurring due to the statically linked user binary (I just removed the linking for now).
2020-04-02Small fixes in the run executableMarvin Borner
The run script is now able to run from any location && exits when the installation test failed
2020-04-01Static address linking approach for userspaceMarvin Borner
Kinda works but loading an statically linked binary into memory via kmalloc seems to create a crash which results in a bootloop.
2020-03-31Seems to work, final caching test revertMarvin Borner
GitHub now finishes the build in 2 Minutes instead of 20 :)
2020-03-31Whaaaat, I still need the shared libs? Well...Marvin Borner
I'm a bit confused thought
2020-03-31OMG, I'm dumb...Marvin Borner
Well, I've messed up the workflow syntax sooo - here we go again!
2020-03-31Some workflow improvements and cache testingMarvin Borner
I've added an empty line so I can test the cross-compiler caching functionality
2020-03-27Added and applied tidy commandMarvin Borner
2020-03-18Applied official linux kernel code style guidelinesMarvin Borner
Due to my change to vim and the clang-format plugin this was needed!
2020-03-18Replaced asm calls with sweet functionMarvin Borner
2020-02-22Well basically nothing really works I guessMarvin Borner
I've worked quite a while on several small things which I didn't commit but I'm going away for a week (holiday) soooo I synced these useless and dumb files :)
2020-02-15Quite many improvementsMarvin Borner
ok.
2020-01-26Nothin' specialMarvin Borner
2020-01-26Magic commitMarvin Borner
Some things work, others don't.
2020-01-20Added pure awesomenessMarvin Borner
Actually quite some days of work but ok
2020-01-16Quite a different approach to userspace pagingMarvin Borner
Hope this works soon!
2020-01-04Removed hardcoded line numbersMarvin Borner
Wasn't that hard after all, eh?
2020-01-04Added dynamic install parameterMarvin Borner
Pure awesomeness
2019-12-21Many debugging/serial improvementsMarvin Borner
Sorry for the little information, but I did many things :)
2019-12-21Some userspace improvementsMarvin Borner
GAS is bad, NASM is awesome.
2019-12-08Added very basic network and PCI driverMarvin Borner
2019-12-08Working text input!Marvin Borner
2019-12-07Added userspace libc and began userspace based shellMarvin Borner
2019-12-05Fixed mouse cursor glitchingMarvin Borner
2019-12-05Added userspace support in non-installed statesMarvin Borner
2019-12-01Semi-working C-based userspace syscallsMarvin Borner
2019-11-30Working userspace!Marvin Borner
2019-11-30Replaced vesa print functions with printfMarvin Borner
2019-11-28Made font external moduleMarvin Borner
2019-11-25Added basic control key supportMarvin Borner
2019-11-24Major coding style reformatting -> Kernighan & RitchieMarvin Borner
This project now (hopefully) uses the same style recommended by Kernighan and Ritchie and used in the Linux Kernel
2019-11-23Fixed vesa, acpi and installation!Marvin Borner
2019-11-23Tried implementing memory based paging...Marvin Borner
Also did many other fixes/improvements. While I think I did most things correct, the ACPI doesn't work anymore (triple fault) and the resolution detection fails with 0x2... :c
2019-11-20Began two-stage hdd bootloader and os installerMarvin Borner
2019-11-10Fixed some strange bugs and reimplemented mode detectionMarvin Borner
2019-11-10Added semi-working bootloaderMarvin Borner
2019-11-08Began implementation of non-grub bootloaderMarvin Borner
2019-11-05Added basic PS/2 mouse supportMarvin Borner
2019-11-03Began system management bios implementation and fixed thingsMarvin Borner
2019-10-31Some user mode improvementsMarvin Borner
2019-10-31Implemented basic syscalls and user modeMarvin Borner
Doesn't completely work right now
2019-10-30Added kind of working initrd supportMarvin Borner
2019-10-30Started implementation of initrd based vfsMarvin Borner
2019-10-29Some minor improvementsMarvin Borner
2019-10-28Added cmos based rtc date & timeMarvin Borner
2019-10-28Added support for more color types (bpp)Marvin Borner
Somehow the text is inverted and things are strange but the colors may be correct.
2019-10-27Improved boot process and color schemeMarvin Borner
2019-10-26Using compiler-based include methodsMarvin Borner
2019-10-26Removed VGA driver supportMarvin Borner
2019-10-25Rewrite of paging and alloc functionsMarvin Borner
Still not working though :/
2019-10-24Added basic VESA keyboard supportMarvin Borner
2019-10-21Some optimizingMarvin Borner
2019-10-16Added some VGA fallback featuresMarvin Borner
2019-10-15No more errors!Marvin Borner
Still not working
2019-10-14A different approach to mode settingMarvin Borner
2019-10-14Trying some thingsMarvin Borner
2019-10-13Fixed all compiler warningsMarvin Borner
2019-10-12Paging and heap rewriteMarvin Borner
VESA drawing causes a Page fault because it tries to use a pointer to the framebuffer which was created before the paging has been initialized. If the resolution is set after the paging has been initialized the CPU throws a triple fault because the int32 call can not happen with paging turned on. To be fixed soon!
2019-10-12Fixed text writing!Marvin Borner
It probably didn't work before because I used the bits per pixel wrong :)
2019-10-12Testing vesa text displayMarvin Borner
I absolutely don't know why it doesn't work :(
2019-10-03Improved some thingsMarvin Borner
2019-10-03Began replacement of VGA functionsMarvin Borner
Why does VGA/VESA not work when running on real hardware?
2019-10-02Finally fixed VESA auto resolution finderMarvin Borner
This was quite hard and strange but it works now!
2019-09-30Added paging and fixed several bugsMarvin Borner
2019-09-26Added higher half kernel with pagingMarvin Borner
2019-09-25Fixed several TTY bugs and improved VESA detectionMarvin Borner
2019-09-25Started integrating vesa resolution finderMarvin Borner
2019-09-24Added working VESA driverMarvin Borner
Note to myself: Use Real/Protected mode correctly :)
2019-09-24First successful VESA attemptMarvin Borner
2019-09-22Added faster keyboard rateMarvin Borner
Needs a fix for Qemu though
2019-09-21Added ACPI based shutdown commandMarvin Borner
2019-09-19Started development of vesa graphic driverMarvin Borner
2019-09-19Moved source to kernel directoryMarvin Borner