352 Commits

Author SHA1 Message Date
b40151055c Rework scratch module and use qualified names for function calls 2022-03-20 22:21:10 -04:00
1e00d7a9e9 Rename hello.output to hello.console 2022-03-20 22:12:46 -04:00
79b34477ed Reorganize D modules a bit 2022-03-19 22:39:12 -04:00
163ef9f79e Increase scratch buffer size 2022-03-19 22:08:35 -04:00
3c549f0838 Write size file for HULK/HELLO 2022-03-19 22:07:37 -04:00
d8c85ad045 Map all memory regions and graphics framebuffer 2022-03-19 21:54:30 -04:00
7c5af33ace Fix receiving correct argument to hulk_start() 2022-03-19 20:02:49 -04:00
6f3521c576 Make sure to rebuild HELLO properly when HULK changes 2022-03-19 00:27:10 -04:00
5a5d60abae Fix HULK virtual start address to be addressable 2022-03-19 00:04:59 -04:00
9182a83ef2 HELLO: Make sure scratch area is page-aligned 2022-03-18 23:43:05 -04:00
195b7496f4 HELLO: Include EfiLoaderCode and EfiLoaderData memory regions in memory map 2022-03-18 23:33:42 -04:00
b1042fd649 Jump to HULK
Unfortunately, crashes... :(
2022-03-18 23:16:07 -04:00
6beb7da4cd Map HULK virtual address space 2022-03-18 23:04:09 -04:00
f27851def9 Bundle HULK in HELLO 2022-03-18 22:43:37 -04:00
18f1bfc88f Build HELLO after HULK 2022-03-18 22:02:07 -04:00
cd6983e2cd Generate HULK binary 2022-03-18 22:01:27 -04:00
8df1646c61 Add initial HULK source and linker script 2022-03-18 21:55:38 -04:00
3e25ab6ae4 HELLO: Zero out page tables after allocating, before using 2022-03-18 21:21:00 -04:00
05cc2da2e3 HULK: Add virtual start address 2022-03-18 21:19:06 -04:00
a54536660b HELLO: Create page tables to identity map available RAM prior to jumping to kernel 2022-03-18 21:15:58 -04:00
9e3d9b18ea Add write_cr3() 2022-03-18 16:40:46 -04:00
ef01239468 HELLO: Add scratch module 2022-03-18 16:03:50 -04:00
372b7265f1 Add src/common/hos/cpu.d 2022-03-18 10:51:35 -04:00
1bc8722098 Add hos.memory module in src/common 2022-03-18 00:07:10 -04:00
cd2f3f9a84 Rename kernel to hulk 2022-03-17 16:57:18 -04:00
08a35e40d4 Rename HEL -> HELLO 2022-03-16 16:11:26 -04:00
a855702214 Fix checking for EFI_INVALID_PARAMETER 2022-03-16 14:37:46 -04:00
706f2c1c5d HEL: Call ExitBootServices 2022-03-16 01:12:07 -04:00
704fd15f7b Get memory map; remove heap 2022-03-15 23:58:37 -04:00
f054bab5cc Set bootinfo framebuffer fields 2022-03-15 23:03:28 -04:00
3fa8e4a24b Set maximum resolution for running in qemu 2022-03-15 22:52:56 -04:00
a38f95a7b8 Set graphics mode 2022-03-14 22:26:55 -04:00
dd57a31d38 HEL: Add heap module; locate GOP handle 2022-03-14 21:43:40 -04:00
406f17c1db HEL: format hex, decimal, and CHAR16 strings in output module 2022-03-14 15:09:02 -04:00
0be1b113aa Add output module for console output routines 2022-03-14 13:53:02 -04:00
d782b59768 Write map file 2022-03-14 01:35:28 -04:00
c3a6139f83 Run image from temporary copy to avoid modified disk image file 2022-03-14 00:57:24 -04:00
3d3a433800 Update to rscons 3.0.2 2022-03-14 00:51:54 -04:00
54451bcf5b Add initial HOS EFI Loader sources 2022-03-13 23:16:37 -04:00
1fc2dd34e5 Update build system for 64-bit, EFI, and D 2022-03-13 22:46:59 -04:00
cb6bd3914c Remove HOS v0.16 sources 2022-02-28 15:10:25 -05:00
56c3be9207 Update to rscons 3.0.0 2022-02-28 13:40:08 -05:00
c6ae200a54 Update to rscons 2.3.0
Move cross compiler to i686-elf-gcc directory.
Automatically build cross compiler using rscons subsidiary script.
2021-12-08 11:33:03 -05:00
6b1de7c9d4 Explicitly check page boundaries when adding bootloader-provided memory regions 2021-08-16 17:35:11 -04:00
ebfeca47b5 Use size_t rather than uint32_t 2021-08-16 14:01:39 -04:00
43f4a1f4b1 Show kernel size/address 2021-08-16 13:59:39 -04:00
0f73efbdc3 add mm module to manage free physical page regions 2020-10-26 20:17:08 -04:00
a084ab296c define _hos_mem_start and _hos_mem_end symbols 2020-10-25 17:08:07 -04:00
aa28284187 build kernel .size file on build 2020-10-25 17:06:56 -04:00
87c135b010 set up a GDT to stop using the one GRUB set up 2020-10-25 16:49:09 -04:00