Repository navigation
Releases
v0.2.1 - added watch dogs
Added watchdogs: per-vector fault stubs now print XC# and halt on #GD/#PF/etc.; the fault vector number prints to both serial COM1 and the VGA text buffer (bright red) so crashes are visible on-screen (and in -display gtk), then it halts with 'Z' loop. Builds confirmed on TCG and KVM.
efi64boot v0.3 — 32→64 OVMF64 handoff, boots Windows
efi64boot v0.3: a 32-bit IA32 BOOTIA32.EFI that relocates a 64-bit EDK2 OVMF64 build below 4 GiB, switches to long mode, and hands off to OVMF64's SEC entry. Verified booting win10ltc.iso under QEMU with -accel tcg -cpu qemu64 and -accel kvm -cpu core2duo.
Chain: BOOTIA32.EFI (32-bit) -> OVMF64 SEC (64-bit) -> PEI -> DXE -> BdsDxe -> DVD boot -> Windows Setup.
Key mechanics:
- Reserve the full OVMF64 MEMFD region (0x800000, 0xF80000) at its build address so no PCD patching is needed.
- Zero the staging region so OVMF64 takes the native (non-TDX) SEC path (byte at 0x80B000 must be 0).
- Pre-handoff MTRR hygiene (IA32_MTRR_DEF_TYPE = E=1, FE=0, type=WB) so OVMF64 PlatformPei MemDetect asserts pass.
- Delete BOOTIA32.EFI from the ESP before handoff so BdsDxe cannot re-select it.
Companion repo efi32boot does the reverse direction (64-bit host -> 32-bit OVMF32). Both are AI-assisted experimental projects, not production-safe.