Skip to content

EPIC: boot on real hardware — GRUB, USB stick, an old laptop #101

Description

@NickFlach

Thesis

Everything so far runs under QEMU's sheltered -kernel loader. Boot the same kernel from a USB stick on a real BIOS/CSM laptop: GRUB handoff, real memory map, real i8042 keyboard, no serial port anywhere.

Scope

  1. make iso: hybrid BIOS+UEFI ISO via grub-mkrescue; kernel + initrd as multiboot modules; grub.cfg entries for text/graphical/quiet/qseed variants.
  2. QEMU -cdrom CI gate: the GRUB path (not -kernel) boots to the same integration gates — catches memory-map and handoff assumptions QEMU's loader hides.
  3. Console without serial: kernel log + qsh on VGA text (and/or framebuffer) when serial is absent; i8042 PS/2 keyboard driver (IRQ1, scancode set 1) so qsh is interactive on the laptop keyboard (USB keyboards ride BIOS legacy emulation in CSM mode).
  4. Graceful absence: ATA/rtl8139 probe politely and report missing instead of hanging.
  5. The moment: flash USB (Rufus/dd), boot the laptop, wave field on a physical screen, qsh under real fingers. Photo in the README.

Gates

  • CI: -cdrom boot reaches the full integration gate set (same as -kernel).
  • CI: boot with -serial none + PS/2 input script (QEMU sendkey) still drives qsh to a citizen gate — proves the no-serial laptop path in emulation before touching hardware.

🤖 Generated with Claude Code

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions