josh
|
41531cf4d2
|
Rename Hurl to hurl for consistency
|
2022-10-18 20:59:13 -04:00 |
|
josh
|
edbe33bcfa
|
Add ApicRegisters structure
|
2022-10-18 20:48:46 -04:00 |
|
josh
|
747e824dae
|
Fix calcuation of reserved HULK binary pages
|
2022-10-18 16:23:13 -04:00 |
|
josh
|
b1be5b888f
|
Add apic module that does not do anything yet
|
2022-10-18 12:56:02 -04:00 |
|
josh
|
dba58b2277
|
acpi: show APIC address found
|
2022-10-18 12:55:41 -04:00 |
|
josh
|
72b83b0c3c
|
Hurl.debug_lookup(): show page table entry index
|
2022-10-18 12:54:27 -04:00 |
|
josh
|
90711adada
|
Actually calling Hurl.initialize() helps a lot
|
2022-10-18 12:51:08 -04:00 |
|
josh
|
4f98c469b7
|
Add Hurl.debug_lookup()
|
2022-10-18 11:18:19 -04:00 |
|
josh
|
7d2b535df5
|
Add hulk.acpi module
|
2022-10-18 00:48:56 -04:00 |
|
josh
|
2f1a12be81
|
Add Hurl.map_range()
|
2022-10-18 00:48:40 -04:00 |
|
josh
|
5ca95a5662
|
memcpy*() should take const src ptr
|
2022-10-18 00:47:46 -04:00 |
|
josh
|
7471a846ec
|
Locate the ACPI XSDT
|
2022-10-17 21:48:43 -04:00 |
|
josh
|
2ee920fdd2
|
Reset console position on OSOD
|
2022-10-14 17:10:32 -04:00 |
|
josh
|
d24eafbd63
|
Tweak VirtualBox instructions
|
2022-10-14 16:05:35 -04:00 |
|
josh
|
6f94bc3ddd
|
Add VirtualBox instructions and task to create a VMDK
|
2022-10-14 15:57:26 -04:00 |
|
josh
|
777820d471
|
Tell rscons the map files are side-effect files
|
2022-10-14 15:28:38 -04:00 |
|
josh
|
b3ca9af48a
|
Disable PIC
|
2022-09-06 22:35:41 -04:00 |
|
josh
|
43d945b5e8
|
Enable interrupts and halt CPU
|
2022-09-04 23:03:20 -04:00 |
|
josh
|
bc7fd3f2fc
|
Add idt module and set up IDT
|
2022-09-04 22:25:46 -04:00 |
|
josh
|
b72c69ef1c
|
Clear interrupts on HULK startup just in case
|
2022-09-01 15:50:59 -04:00 |
|
josh
|
66bd51ffb0
|
Add hulk.gdt module and create our own GDT
|
2022-09-01 15:43:00 -04:00 |
|
josh
|
16143a727a
|
Avoid using SSE instructions in writef functions
|
2022-08-23 22:48:52 -04:00 |
|
josh
|
63e6fd4bb5
|
Add run-vb task
|
2022-08-20 19:57:10 -04:00 |
|
josh
|
b4a4638a82
|
Create HOS.img with a GPT partition table and EFI partition
|
2022-08-20 19:01:25 -04:00 |
|
josh
|
93763917c1
|
Rename hos.img -> HOS.img
|
2022-08-18 23:03:16 -04:00 |
|
josh
|
743cf9ffef
|
Update to rscons 3.1.0
|
2022-08-11 15:08:49 -04:00 |
|
josh
|
b9f051017c
|
Rename max_physical_address -> physical_address_limit
|
2022-05-03 19:46:46 -04:00 |
|
josh
|
59890868c1
|
Fix efibootmgr command to install HOS to physical machine
|
2022-05-03 16:18:47 -04:00 |
|
josh
|
6b715c9051
|
Add README.md with installation instructions
|
2022-05-01 16:17:11 -04:00 |
|
josh
|
89f7d2120f
|
Add Hurl struct with map() method
|
2022-05-01 09:26:33 -04:00 |
|
josh
|
7515ebdf1c
|
Fix hippo.allocate_page()
|
2022-05-01 09:20:41 -04:00 |
|
josh
|
b0e59b3e26
|
Add hippo.allocate_page()
|
2022-04-26 21:45:17 -04:00 |
|
josh
|
153a8d43f1
|
Add hulk.linker_addresses module
|
2022-04-26 19:37:05 -04:00 |
|
josh
|
bf9a005dbc
|
Launch qemu with a USB XHCI controller and USB tablet device
|
2022-04-13 21:55:06 -04:00 |
|
josh
|
53e2e52bbe
|
Scan for PCI devices
|
2022-04-13 21:54:28 -04:00 |
|
josh
|
12067b8e1a
|
Remove src-old
|
2022-04-13 17:12:16 -04:00 |
|
josh
|
8278c4211b
|
Add HIPPO module and starting tracking free physical pages
|
2022-03-29 22:24:14 -04:00 |
|
josh
|
3bdc5bccdd
|
Pass page table address range to HULK on boot
|
2022-03-28 21:22:10 -04:00 |
|
josh
|
f904ec2b48
|
Convert hello.console to use a namespacing struct
|
2022-03-28 15:18:31 -04:00 |
|
josh
|
bcec23ef89
|
Update hello.scratch to use namespacing struct
|
2022-03-28 15:17:07 -04:00 |
|
josh
|
d86745d91d
|
Move bootinfo into HULK header
|
2022-03-27 16:14:54 -04:00 |
|
josh
|
cf5956dcd3
|
Rename Header to HulkHeader
|
2022-03-27 09:45:09 -04:00 |
|
josh
|
8498de6b62
|
Add HURL; relocate kernel virtual regions
|
2022-03-26 10:41:53 -04:00 |
|
josh
|
f761d0a445
|
Jump to HULK from assembly
|
2022-03-26 00:36:23 -04:00 |
|
josh
|
f29bd9d00c
|
Allocate HULK stack region from HELLO, translate memory region types
|
2022-03-26 00:29:19 -04:00 |
|
josh
|
f236a64b21
|
HELLO: Be more welcoming
|
2022-03-25 13:17:22 -04:00 |
|
josh
|
1225e98276
|
Pass HULK physical memory info to kernel from HELLO
|
2022-03-25 13:16:36 -04:00 |
|
josh
|
cb31e36e90
|
Clean up console
|
2022-03-25 12:37:18 -04:00 |
|
josh
|
0568a813f2
|
HELLO: Zero out HULK bss section
|
2022-03-25 11:53:01 -04:00 |
|
josh
|
37d5621e41
|
HULK console: clear last row when shifting rows up
|
2022-03-25 10:51:52 -04:00 |
|
josh
|
98e992aad0
|
Convert fb, console, klog to "static instance" namespacing structs
|
2022-03-25 10:48:32 -04:00 |
|
josh
|
06242a0c9f
|
Add console, klog, and writef modules.
They are not complete, but adding to checkpoint progress.
|
2022-03-24 17:52:39 -04:00 |
|
josh
|
e214a9c3de
|
Fix call to fb.blend_alpha_bitmap()
|
2022-03-24 09:52:26 -04:00 |
|
josh
|
c259ae4cee
|
Add Framebuffer.copy_rows_up()
|
2022-03-23 22:12:38 -04:00 |
|
josh
|
b4d8707243
|
Rename blending blit methods to blend
|
2022-03-22 22:32:45 -04:00 |
|
josh
|
6b7b14d954
|
Add Framebuffer.character()
|
2022-03-22 22:11:12 -04:00 |
|
josh
|
9e7c3ee676
|
Add Framebuffer.rect(), .hline(), .vline()
|
2022-03-22 21:55:25 -04:00 |
|
josh
|
2d7bf5197f
|
Drawing text working using Framebuffer.blit_alpha_bitmap()
|
2022-03-22 20:01:08 -04:00 |
|
josh
|
7562be585f
|
Add Framebuffer.blit_alpha_bitmap()
|
2022-03-22 20:00:32 -04:00 |
|
josh
|
3d04eec427
|
Compile HULK with large code model
|
2022-03-22 19:29:30 -04:00 |
|
josh
|
5c97acba5f
|
Update fontgen to output D instead of C
|
2022-03-22 13:01:20 -04:00 |
|
josh
|
c3ead56582
|
Add Framebuffer object
|
2022-03-21 16:32:11 -04:00 |
|
josh
|
15559b0a56
|
Add HULK header; map virtual memory for HULK bss section
|
2022-03-21 16:31:01 -04:00 |
|
josh
|
c58284761a
|
Comment hulk.hulk module a bit
|
2022-03-20 23:05:10 -04:00 |
|
josh
|
bd99e429a9
|
Comment hulk.bootinfo a bit
|
2022-03-20 22:58:25 -04:00 |
|
josh
|
d0acf5a718
|
Comment hello.hello module a bit better
|
2022-03-20 22:38:42 -04:00 |
|
josh
|
b40151055c
|
Rework scratch module and use qualified names for function calls
|
2022-03-20 22:21:10 -04:00 |
|
josh
|
1e00d7a9e9
|
Rename hello.output to hello.console
|
2022-03-20 22:12:46 -04:00 |
|
josh
|
79b34477ed
|
Reorganize D modules a bit
|
2022-03-19 22:39:12 -04:00 |
|
josh
|
163ef9f79e
|
Increase scratch buffer size
|
2022-03-19 22:08:35 -04:00 |
|
josh
|
3c549f0838
|
Write size file for HULK/HELLO
|
2022-03-19 22:07:37 -04:00 |
|
josh
|
d8c85ad045
|
Map all memory regions and graphics framebuffer
|
2022-03-19 21:54:30 -04:00 |
|
josh
|
7c5af33ace
|
Fix receiving correct argument to hulk_start()
|
2022-03-19 20:02:49 -04:00 |
|
josh
|
6f3521c576
|
Make sure to rebuild HELLO properly when HULK changes
|
2022-03-19 00:27:10 -04:00 |
|
josh
|
5a5d60abae
|
Fix HULK virtual start address to be addressable
|
2022-03-19 00:04:59 -04:00 |
|
josh
|
9182a83ef2
|
HELLO: Make sure scratch area is page-aligned
|
2022-03-18 23:43:05 -04:00 |
|
josh
|
195b7496f4
|
HELLO: Include EfiLoaderCode and EfiLoaderData memory regions in memory map
|
2022-03-18 23:33:42 -04:00 |
|
josh
|
b1042fd649
|
Jump to HULK
Unfortunately, crashes... :(
|
2022-03-18 23:16:07 -04:00 |
|
josh
|
6beb7da4cd
|
Map HULK virtual address space
|
2022-03-18 23:04:09 -04:00 |
|
josh
|
f27851def9
|
Bundle HULK in HELLO
|
2022-03-18 22:43:37 -04:00 |
|
josh
|
18f1bfc88f
|
Build HELLO after HULK
|
2022-03-18 22:02:07 -04:00 |
|
josh
|
cd6983e2cd
|
Generate HULK binary
|
2022-03-18 22:01:27 -04:00 |
|
josh
|
8df1646c61
|
Add initial HULK source and linker script
|
2022-03-18 21:55:38 -04:00 |
|
josh
|
3e25ab6ae4
|
HELLO: Zero out page tables after allocating, before using
|
2022-03-18 21:21:00 -04:00 |
|
josh
|
05cc2da2e3
|
HULK: Add virtual start address
|
2022-03-18 21:19:06 -04:00 |
|
josh
|
a54536660b
|
HELLO: Create page tables to identity map available RAM prior to jumping to kernel
|
2022-03-18 21:15:58 -04:00 |
|
josh
|
9e3d9b18ea
|
Add write_cr3()
|
2022-03-18 16:40:46 -04:00 |
|
josh
|
ef01239468
|
HELLO: Add scratch module
|
2022-03-18 16:03:50 -04:00 |
|
josh
|
372b7265f1
|
Add src/common/hos/cpu.d
|
2022-03-18 10:51:35 -04:00 |
|
josh
|
1bc8722098
|
Add hos.memory module in src/common
|
2022-03-18 00:07:10 -04:00 |
|
josh
|
cd2f3f9a84
|
Rename kernel to hulk
|
2022-03-17 16:57:18 -04:00 |
|
josh
|
08a35e40d4
|
Rename HEL -> HELLO
|
2022-03-16 16:11:26 -04:00 |
|
josh
|
a855702214
|
Fix checking for EFI_INVALID_PARAMETER
|
2022-03-16 14:37:46 -04:00 |
|
josh
|
706f2c1c5d
|
HEL: Call ExitBootServices
|
2022-03-16 01:12:07 -04:00 |
|
josh
|
704fd15f7b
|
Get memory map; remove heap
|
2022-03-15 23:58:37 -04:00 |
|
josh
|
f054bab5cc
|
Set bootinfo framebuffer fields
|
2022-03-15 23:03:28 -04:00 |
|
josh
|
3fa8e4a24b
|
Set maximum resolution for running in qemu
|
2022-03-15 22:52:56 -04:00 |
|
josh
|
a38f95a7b8
|
Set graphics mode
|
2022-03-14 22:26:55 -04:00 |
|
josh
|
dd57a31d38
|
HEL: Add heap module; locate GOP handle
|
2022-03-14 21:43:40 -04:00 |
|
josh
|
406f17c1db
|
HEL: format hex, decimal, and CHAR16 strings in output module
|
2022-03-14 15:09:02 -04:00 |
|