edba40b2c6
Implement frame buffer double-buffering
...
This slowed down drawing to video in QEMU/VirtualBox but greatly sped up
doing so on real hardware (no longer reading from video memory).
Despite the speed-up, it is still quite slow though.
2022-11-08 06:19:03 -05:00
71c30fa932
Reclaim bootloader page table pages
2022-11-06 21:59:42 -05:00
b3fb599b25
Move EFER initialization to initialize_cpu()
2022-11-05 22:49:57 -04:00
354555d7f1
Disable AVX and SSE instruction generation for HULK
2022-11-05 22:03:13 -04:00
1b69810e8f
Turn on OSXSAVE
2022-11-05 21:17:30 -04:00
64190b04cb
Add initialize_cpu()
2022-11-05 20:27:48 -04:00
ba9cf30e67
Clean up linker script symbols
2022-11-03 15:41:14 -04:00
476ae7d6fd
Move hos.* modules to hulk.*
2022-10-26 00:16:07 -04:00
c11361d40f
Build new page tables in HULK
2022-10-19 23:59:11 -04:00
41531cf4d2
Rename Hurl to hurl for consistency
2022-10-18 20:59:13 -04:00
b1be5b888f
Add apic module that does not do anything yet
2022-10-18 12:56:02 -04:00
90711adada
Actually calling Hurl.initialize() helps a lot
2022-10-18 12:51:08 -04:00
7d2b535df5
Add hulk.acpi module
2022-10-18 00:48:56 -04:00
b3ca9af48a
Disable PIC
2022-09-06 22:35:41 -04:00
43d945b5e8
Enable interrupts and halt CPU
2022-09-04 23:03:20 -04:00
bc7fd3f2fc
Add idt module and set up IDT
2022-09-04 22:25:46 -04:00
b72c69ef1c
Clear interrupts on HULK startup just in case
2022-09-01 15:50:59 -04:00
66bd51ffb0
Add hulk.gdt module and create our own GDT
2022-09-01 15:43:00 -04:00
53e2e52bbe
Scan for PCI devices
2022-04-13 21:54:28 -04:00
8278c4211b
Add HIPPO module and starting tracking free physical pages
2022-03-29 22:24:14 -04:00
d86745d91d
Move bootinfo into HULK header
2022-03-27 16:14:54 -04:00
cf5956dcd3
Rename Header to HulkHeader
2022-03-27 09:45:09 -04:00
8498de6b62
Add HURL; relocate kernel virtual regions
2022-03-26 10:41:53 -04:00
f761d0a445
Jump to HULK from assembly
2022-03-26 00:36:23 -04:00
f29bd9d00c
Allocate HULK stack region from HELLO, translate memory region types
2022-03-26 00:29:19 -04:00
cb31e36e90
Clean up console
2022-03-25 12:37:18 -04:00
98e992aad0
Convert fb, console, klog to "static instance" namespacing structs
2022-03-25 10:48:32 -04:00
06242a0c9f
Add console, klog, and writef modules.
...
They are not complete, but adding to checkpoint progress.
2022-03-24 17:52:39 -04:00
e214a9c3de
Fix call to fb.blend_alpha_bitmap()
2022-03-24 09:52:26 -04:00
2d7bf5197f
Drawing text working using Framebuffer.blit_alpha_bitmap()
2022-03-22 20:01:08 -04:00
c3ead56582
Add Framebuffer object
2022-03-21 16:32:11 -04:00
15559b0a56
Add HULK header; map virtual memory for HULK bss section
2022-03-21 16:31:01 -04:00
c58284761a
Comment hulk.hulk module a bit
2022-03-20 23:05:10 -04:00
79b34477ed
Reorganize D modules a bit
2022-03-19 22:39:12 -04:00
7c5af33ace
Fix receiving correct argument to hulk_start()
2022-03-19 20:02:49 -04:00
8df1646c61
Add initial HULK source and linker script
2022-03-18 21:55:38 -04:00