pub fn hle_boot(system: &mut System, rom: &[u8]) -> Result<(), BootError>Expand description
HLE-boot a retail ROM.
Seed the state IPL3 expects, copy the cart’s real IPL3 (ROM 0x40..0x1000)
into RSP DMEM, and jump to it at 0xA400_0040. IPL3 then copies the game to
RDRAM and jumps to the header entry — running the cart’s own bootcode rather
than a reimplementation of it. This skips only IPL1/IPL2 (the PIF ROM) and the
CIC challenge, which the seed injection stands in for.
This is the pure retail path: an ELF-payload ROM (n64-systemtest) is handled
separately by the harness’s seed_ipl3_handoff, not here.
§Errors
BootError::TooSmall if the image is shorter than a 0x1000 boot header.