Commit Graph

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