Boot Sequence

From SpecNext official Wiki
Revision as of 21:30, 22 August 2017 by wiki>Hyphz ('')
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

The following is the assembled information about the startup sequence of the Spectrum Next.

  • When the machine is first switched on, the Anti-brick system loads a fixed Spectrum 48k and checks to see if a particular combination of physical buttons is being held down. If it does, the updater module (see below) is loaded from the SD card and run on the anti-brick core.
  • If this is not the case, the main core is reloaded into the FPGA from flash memory, which includes the IPL (Initial Program Loader) in RAM. The IPL displays the message "Loading..." (which appears only very briefly) and loads the file TBBLUE.FW from the root of the SD card. If this fails, an error message is displayed ("Error initializing SD card!"), the border turns red, and the code loops.
  • TBBLUE.FW contains 3 modules; by default the boot module is loaded. It reads the file TBBLUE\CONFIG.INI from the SD card and uses it to configure the default machine settings. It then loads 3 ROM images from the SD card: one for the DivMMC interface, one for the Multiface, and one for the Spectrum ROM itself. The DivMMC ROM seems to always be loaded from TBBLUE\ESXMMC.ROM; the Multiface ROM is loaded from one of four potential files in the TBBLUE directory and it is not clear how they are selected; and the Spectrum ROM is loaded from the file named for the given configuration in the CONFIG.INI file.