prometeu-runtime/docs/runtime/specs/14-boot-profiles.md
2026-03-24 13:40:56 +00:00

2.3 KiB

Boot Profiles

Domain: firmware boot flow Function: normative

This chapter defines how PROMETEU chooses what to execute at startup.

1 Boot Target

The current firmware-side boot target concept is:

enum BootTarget {
  Hub,
  Cartridge { path: String, debug: bool, debug_port: u16 },
}

This is a firmware/host orchestration contract, not a guest-visible ABI.

2 Boot Modes

Hub

When the boot target is Hub:

  • firmware boots into the Hub flow;
  • no cartridge is auto-launched.

Cartridge

When the boot target is Cartridge:

  1. firmware loads the requested cartridge;
  2. cartridge metadata is read;
  3. launch behavior follows cartridge app_mode;
  4. bytecode execution starts through the cartridge boot protocol defined by the cartridge contract, not by textual entry metadata.

3 Launch Resolution by App Mode

For a cartridge boot target:

  • Game cartridges transition into game-running flow;
  • System cartridges are initialized and integrated into the Hub/window path.

This preserves the distinction between machine firmware state and app execution mode.

4 Host CLI Relationship

Typical host-facing boot intents are:

  • default start -> enter Hub;
  • run cartridge -> boot with cartridge target;
  • debug cartridge -> boot with cartridge target plus debug mode parameters.

The CLI is an entry surface for boot target selection; the firmware contract remains the same underneath.

5 Firmware State Relationship

Boot target selection feeds into firmware states such as:

  • Reset
  • SplashScreen
  • LaunchHub
  • HubHome
  • LoadCartridge
  • GameRunning
  • AppCrashes

Boot target is not itself a firmware state. It is an input to the firmware state machine.

6 Debug Boot

When booting a cartridge in debug mode:

  • firmware/runtime uses the cartridge target path;
  • debugger-related startup behavior is enabled;
  • execution still follows the same cartridge/app-mode resolution path.

Debug mode changes orchestration, not the cartridge contract.

7 Relationship to Other Specs