417 Commits

Author SHA1 Message Date
af5ad73cf7 Update instructions for VirtualBox to change machine chipset
This enables PCIe
2023-09-15 11:03:39 -04:00
4c67faaad4 Rework Kfont to store glyph top as offset from top of text row 2023-09-13 13:48:11 -04:00
4fcea6a283 Reverse framebuffer vertical coordinates to start with 0 at top 2023-09-13 11:57:47 -04:00
c958b9ffcc Remove alpha-blending framebuffer functions 2023-09-13 10:57:45 -04:00
3d911ab191 Adjust console text height by font baseline offset
This fixes having leftover pixels on screen bottom when scrolling the
console up.
2023-09-13 10:52:24 -04:00
d04c5444c7 fontgen: put character number before character data 2023-09-13 08:54:09 -04:00
209658ee09 Use cache to mkdir_p for HulkBinObj builder 2023-09-10 09:48:07 -04:00
f3f45445b3 Determine XHCI controller addresses 2023-09-07 14:04:30 -04:00
459d5c36aa Set alignment of XSDT table pointers to 4 instead of 8 2023-09-07 12:57:26 -04:00
22c9891c4f Add page_address() 2023-09-07 12:51:41 -04:00
2a832bfb8b Print progress messages for cross compiler toolchain installation 2023-09-06 22:58:18 -04:00
496445e533 Fix linker script section placement 2023-09-06 16:40:17 -04:00
156642293f Debug output HULK memory range end addresses 2023-09-04 21:20:10 -04:00
4e46b98efc Capture QEMU serial port output 2023-09-04 21:13:35 -04:00
ce3e2c55df Store QEMU files in local qemu directory 2023-09-04 21:12:36 -04:00
cb24d00e5f Document running in QEMU in README 2023-09-04 21:04:30 -04:00
4500f3cbca Write HELLO memory map debug data to serial port 2023-09-04 20:59:38 -04:00
0781962e9f Rework HELLO console module to use hulk.writef 2023-09-04 16:17:47 -04:00
e25d28ebc7 Add serial module 2023-09-04 14:56:12 -04:00
93a4065dea Add path to OVMF.fd for Arch 2023-09-04 14:07:05 -04:00
5b017fb810 Add some xHCI register structures 2023-06-11 17:22:50 -04:00
37814b4f86 Start on XHCI struct 2023-06-10 22:55:08 -04:00
238659e94b Store PCI device mapped memory ranges 2023-06-10 22:22:09 -04:00
c16aa0e9c3 Add hulk.range 2023-06-10 22:21:55 -04:00
2935903bae Map PCI device memory regions 2023-06-10 20:12:46 -04:00
5179b5881b Read PCI device header type 2023-06-10 12:01:06 -04:00
a0c62937ff Remove Pci.init_device() for now 2023-06-10 11:28:51 -04:00
657287c160 Move Pci.scan() recursion into scan() itself 2023-06-10 11:20:50 -04:00
d600e089e5 Add Pci.Device class 2023-06-10 11:16:27 -04:00
dd07a08388 Fix A1 allocator to map the correct pages 2023-06-10 11:06:41 -04:00
63fbbc9051 Use ulong for round_up_power_2() 2023-06-10 10:59:46 -04:00
3e32802862 Add A1.allocate() template to allocate struct/class instances 2023-06-10 10:30:56 -04:00
40ff805f7d Add Pci.Address struct 2023-06-10 09:35:52 -04:00
9ac69c9003 Add Pci.write_config_register() 2023-06-10 09:19:58 -04:00
7aa28da1ef Allow pointers or integers for Hurl.*map_range() 2023-06-09 23:38:52 -04:00
222a1efea4 Fix address calculation in Hurl.identity_map_range() 2023-06-09 23:27:20 -04:00
7a4edf38f0 Scan for multi-function PCI devices 2023-06-08 20:28:32 -04:00
dda1b6379f Fix in32()/out32() to use uint instead of ulong 2023-06-08 16:07:44 -04:00
98134957e7 Print APIC table signatures found 2023-06-08 13:21:43 -04:00
22463e729b writef: add %c format specifier support 2023-06-08 13:21:24 -04:00
8de86dd647 Add Pci.init_device() skeleton 2023-06-07 16:49:54 -04:00
f6fde01b06 Fix build error -- import hulk.util 2023-04-05 01:08:55 -04:00
ea6f485bd9 Add hulk.util and round_up_power_2() 2023-02-24 21:15:33 -05:00
2ab388f2e9 Remove seconds counter printout 2023-02-24 20:58:11 -05:00
cc891f6d4d Assign PCI header fields to named variables 2023-02-24 20:53:46 -05:00
f5e5c40c12 Reduce Hurl.map() template overhead 2023-01-02 20:46:12 -05:00
7b09c9beed Add A1 memory allocator 2023-01-01 22:02:48 -05:00
103205bff2 Move address constants into Hurl struct 2023-01-01 21:04:29 -05:00
25ee1775f0 Capitalize namespacing structs
This helps to avoid name clashes when breaking up modules into packages.
2023-01-01 17:34:41 -05:00
a423cdf1b1 Fix RTC clock reading in 24-hour mode 2022-12-19 11:32:08 -05:00