Files
LithosAnanke/kernel/src/boot
rajamesandClaude Opus 5.5 1a4b163861 feat(boards): both systems on every board image, chosen at boot -- system=v3 or system=v4
boards/BRINGUP.md A6, FABRIC-3 SXLIII (ruled: one image, switch at boot).
A STARFORTH_V4 kernel carries v3 too; system= in the boot arguments
chooses, else the build's default (V4_DEFAULT: 1 for plain STARFORTH_V4
builds as before, 0 for board images).  make boot_image builds both and
always writes starforth.cfg / cmdline.txt with system=v3 first, and cleans
its ISA's objects first -- that clean was removing build/<arch>/SER5, not
the kernel's objects, until fixed here.

Each ISA: v3 by default (hash unchanged), v4 with system=v4 (538/538).
The SER5 image under OVMF: v3 as built, v4 after a one-word edit on it.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-14 15:11:47 -04:00
..

src/starkernel/boot/

UEFI boot, kernel-image loading, and boot-time command-line handling.

  • uefi_loader.c — the UEFI application entry point (BOOTX64.EFI); calls ExitBootServices() to take ownership of hardware, builds BootInfo (memory map, ACPI, framebuffer), and hands off to kernel_main().
  • elf_loader.c — ELF64 kernel image parsing/loading.
  • cmdline.c — parses the boot-time kernel command line / starforth.cfg contents (see include/starkernel/cmdline.h, kernel_args.h).
  • reloc_stub.c, reloc.S — position-independent relocation support for the loaded image.