Bananymous
|
9d9a6b2fec
|
Kernel: VESA can now print 8x16 bitmaps
|
2022-12-30 20:47:25 +02:00 |
Bananymous
|
f51ca4b642
|
Kernel: Rewrite IDT exception kernel panic message
|
2022-12-30 20:03:09 +02:00 |
Bananymous
|
fc05642b74
|
Kernel: Make Render from buffer public tty function
|
2022-12-30 19:57:44 +02:00 |
Bananymous
|
ef0b2010e0
|
Kernel: Add basic PS/2 Mouse driver
|
2022-12-30 19:38:21 +02:00 |
Bananymous
|
3c92aa45fb
|
Kernel: 'cpuinfo' command in shell now shows wheter you are running on 64-bit cpu
|
2022-12-28 19:46:37 +02:00 |
Bananymous
|
267367333e
|
Kernel: Move paging code to a helper
|
2022-12-28 19:01:01 +02:00 |
Bananymous
|
5d7a767f8b
|
Kernel: Enable basic paging
|
2022-12-28 04:17:34 +02:00 |
Bananymous
|
3e8590687f
|
Kernel: Cleanup code and move kmalloc initialization to later
|
2022-12-28 04:16:21 +02:00 |
Bananymous
|
9169020ad2
|
Kernel: Remove unnecessary checks from GraphicsPutCharAt()
|
2022-12-27 18:29:51 +02:00 |
Bananymous
|
620b836fc3
|
Kernel: VESA now somewhat handles Cursor in Graphics mode
|
2022-12-27 18:29:02 +02:00 |
Bananymous
|
2d46281c16
|
Kernel: TTY scroll is now done using memmove
This will be faster when memory functions will be optimized
|
2022-12-27 17:45:47 +02:00 |
Bananymous
|
5ae1fc58e9
|
Kernel: Clean code in tty and vesa
|
2022-12-27 17:22:45 +02:00 |
Bananymous
|
2535eb1c4c
|
Kernel: TTY now handles keeping terminal buffer
VESA Driver cannot scroll anymore, this is handled by tty
|
2022-12-27 17:06:33 +02:00 |
Bananymous
|
f7eb85babd
|
Kernel: IDT exceptions print better errors now
|
2022-12-23 15:56:10 +02:00 |
Bananymous
|
d8fd6afd12
|
Kernel: Make TTY a class
|
2022-12-23 15:55:45 +02:00 |
Bananymous
|
3f7a61a4d2
|
Kernel: VESA driver has now second buffer for fast scrolling
This allows us to not read from video memory, since it was very slow
I also implemented fast path for graphics clearing and scrolling if bpp is 32
|
2022-12-20 14:02:44 +02:00 |
Bananymous
|
5e2680cade
|
Kernel: You can now disable APIC from the grub commandline
|
2022-12-20 11:57:09 +02:00 |
Bananymous
|
c82caacbaa
|
Kernel: Cleanup APIC code
APIC seems to work on my main machine, but not on other one
|
2022-12-20 04:45:46 +02:00 |
Bananymous
|
64a5a28ff0
|
Kernel: Add time since boot to Shell
|
2022-12-19 11:46:38 +02:00 |
Bananymous
|
c8866aa88b
|
Kernel: Move GDT and IDT assembly to inline assembly
|
2022-12-19 11:46:38 +02:00 |
Bananymous
|
0bdb01ee04
|
Kernel: Replace PIC with APIC
If APIC/IOAPIC is not found, we fallback to PIC
Interrupts don't seem to work on real hardware (?)
|
2022-12-19 11:46:25 +02:00 |
Bananymous
|
f244728d33
|
Kernel: Add unicode support
|
2022-12-16 03:55:13 +02:00 |
Bananymous
|
6fe0d04f07
|
Kernel: Implement basic VESA Graphics mode driver
We now support VESA Graphics mode with some bitmap fonts
|
2022-12-16 00:47:03 +02:00 |
Bananymous
|
9274c9ee2f
|
Kernel: Abstract TTY to use new VESA
|
2022-12-15 19:05:07 +02:00 |
Bananymous
|
a2d38af37a
|
Kernel: Implement 'cpuid' and enumerations for features
|
2022-12-15 17:28:54 +02:00 |
Bananymous
|
f6def7a747
|
Kernel: initialize every irq handler to nullptr
|
2022-12-13 00:57:48 +02:00 |
Bananymous
|
5f75479861
|
Kernel: zero initialize VGA_MEMORY and fix colors
|
2022-12-13 00:56:30 +02:00 |
Bananymous
|
e1a15a4989
|
Kernel: Add video mode request for bootloader
|
2022-12-10 03:55:24 +02:00 |
Bananymous
|
03e7812cae
|
Kernel: Add basic ANSI support :)
|
2022-12-10 03:53:44 +02:00 |
Bananymous
|
3d3f12bd30
|
Kernel: Add new generic Printer class
kprint is now just a #define to Printer::print<terminal_putc>.
This allows us to use same print formatting for serial output :)
|
2022-12-10 00:57:09 +02:00 |
Bananymous
|
5ba7af2cf6
|
TTY: Treat tabs as spaces
|
2022-12-08 17:50:44 +02:00 |
Bananymous
|
e998615253
|
Kernel: Move GDT and IDT files to architecture specific folder
|
2022-12-08 17:50:04 +02:00 |
Bananymous
|
998184e288
|
Kernel: TTY now handles '\b'
|
2022-12-07 04:35:02 +02:00 |
Bananymous
|
4202c999fa
|
Kernel: IRQs are now working :)
|
2022-12-07 02:48:44 +02:00 |
Bananymous
|
123382eace
|
Fixes :)
|
2022-11-15 21:42:14 +02:00 |
Bananymous
|
7c06c75d6c
|
Move cursor in terminal when writing to it
|
2022-11-15 09:26:14 +02:00 |
Bananymous
|
3bc4d7d39b
|
Rename .s extensions to .S
|
2022-11-15 09:25:18 +02:00 |
Bananymous
|
d289916bc0
|
Changed back to lower half kernel, since im dump.
I dont see the benefit of higher half (and could not get multiboot info)
|
2022-11-15 00:38:33 +02:00 |
Bananymous
|
b185ed4fd3
|
Libc is now written in C++
|
2022-11-14 00:31:24 +02:00 |
Bananymous
|
fd13f74bbf
|
Changed into higher half kernel
https://wiki.osdev.org/Higher_Half_x86_Bare_Bones
|
2022-11-13 02:03:20 +02:00 |
Bananymous
|
61609db228
|
Kernel is now in C++ :)
|
2022-11-12 21:30:26 +02:00 |
Bananymous
|
e6b4866ab0
|
Initial commit. We have a booting kernel
|
2022-11-12 21:04:47 +02:00 |