Skip to content
Codex edited this page Oct 9, 2026 · 11 revisions

SpiritBoot kernel and compatibility reference

This wiki documents every public kernel export and the internal cache/filesystem contracts behind calls that have caused compatibility failures. It describes the reconstructed implementation, its limits, and verified behavior. It does not treat an exported symbol as proof of complete compatibility.

Start here

Reference Contents
Export-Index All 371 ordinal entries: 337 functions and 34 data exports, public ABI and actual implementation mapping
Kernel-Calls Individual AV, debug, executive, HAL, interlocked, I/O and dispatcher entries
Runtime-Calls Individual filesystem-cache, memory, native-service, object, process, runtime, crypto, loader and remaining entries
Cache-and-Pinning Maps, BCB ownership/reuse, cache-block limits, exceptions, paging completion, write-back and teardown
FATX-and-Save-Contracts Directory markers, cache/cluster crossings, allocation versus EOF, overwrite/reextend, persistent saves and false disc/disk-full errors
Boot-Memory-and-Lifecycle 64/128 MiB layouts, checked aliases, relocation accounting, pin/DMA ordering and reset boundaries
Clean-Room-and-Validation Source baseline, clean-room boundary, observed Complex behavior, ABI caveats and qualification matrix

Use the export index to look up an ordinal from a missing-export bugcheck or an imported kernel thunk. Then follow its individual entry and any internal-contract links. The detailed pages include current backend symbols, declaration fragments where verified, behavior, ownership, waits, errors and implementation limits.

Source version

The release baseline is SpiritBoot main 271495969fecc933ef3c3ff4ad0892f5e99bca2d, built from Roswell 1569e2e89fb47cc72b9c704a8884f98200432bd4 plus the ordered patches. Added ntoskrnl/xb/* files are linked through SpiritBoot's patches because they do not exist in the unmodified Roswell tree. Reconstructed line numbers describe that source version, not the base blob.

Draft PR #88 changes treatment of zero-filled FATX directory slots; it is explicitly separated from release behavior. Unqualified cases and source-level concerns remain labeled. Later source updates should reconcile this reference instead of silently applying current claims to older ROMs.

Important distinctions

  • Mapped, implemented and qualified are different states. Some mapped functions are reduced implementations or no-ops. Unmapped functions deliberately bugcheck; scaffold data is storage, not a working service.
  • ABI argument bytes are not a typed prototype. Fastcall includes register arguments; cdecl decoration cannot establish a variadic signature.
  • EOF, backing allocation and valid-data length differ. Resetting EOF does not necessarily destroy the backing chain.
  • Cache pin, disk cluster and page sizes differ. A large cluster must not become an oversized single cache pin.
  • A title's “disc problem” message can originate in HDD metadata creation. Preserve actual statuses and operation provenance.
  • Ordinary save/load, emulator snapshot restore, warm reset and fresh boot are separate paths. Passing one does not qualify all four.

Public documentation contains source references and behavioral conclusions. Proprietary ROMs, game images, user HDDs, EEPROMs, process memory and raw private traces remain outside the wiki and product tree.

SpiritBoot reference

Internal contracts

BIOS sizes and layouts

Resident memory research

Retail 5838 and current main sizing update — 2026-10-10

Memory removal workbook and kernel overhaul

Clone this wiki locally