The Spectrum Next/TBBlue loads all the settings from an existing file on the SD card, allowing for more flexibility and user control. Using the SD card for configurations and ROMs greatly simplifies the life of the programmer who can quickly test a ROM without having to re-record a flash memory and risk having trouble starting the machine.
An example of the configuration file:
scandoubler=1 50_60hz=0 enhula=1 timex=0 psgmode=0 divmmc=1 mf=1 joystick1=0 joystick2=0 ps2=0 lightpen=0 scanlines=0 dac=0 turbo=0 default=3 menu=<title>,<type>,<romfile.ext> ...
These settings vary according to the hardware being used, but for the majority of users the default Next configuration is implemented (only TBBlue or devkits users need different settings). These are the default settings:
scandoubler can be 0 or 1 and it stores the scandoubler configuration, 1 being ‘on’.
50_60hz can be 0 or 1 and stores the vertical frequency setting, being 50Hz if the option is 0 and 60Hz if the option is 1.
enhula can be 0 or 1 and it stores the configuration of the advanced ULA, being activated if it is 1.
timex can be either 0 or 1 and it stores the setting if the Timex Sinclair video modes are active, 1 being to indicate this.
psgmode can be from 0 to 2 and it stores the implementation type of PSG, if 0 implements AY-8910, if 1 implements YM2149 and if it is 2 the PSG is disabled.
divmmc can be 0 or 1 and it stores the configuration of the interface DivMMC, if 1 the interface is active.
mf can be 0 or 1 and it stores the configuration of the interface Multiface, if 1 the interface is active.
joystick1 and joystick2 stores the settings of the two possible joystick ports (may vary depending on the hardware) and ranges from 0 to 2, 0 indicating Sinclair type, 1 indicating Kempston type, and 2 indicating Cursor type.
ps2 can be 0 or 1 and it stores the PS/2 port configuration, if 0 the port implements the keyboard and if 1 the port implements a mouse.
lightpen can be 0 or 1 and it stores the lightpen setting, being activated if 1.
scanlines can be 0 or 1 and it stores the setting of the scanlines generation, with 1 being indicated on.
dac stores the configuration of the DAC chip type, used only in VTrucco development hardware.
turbo stores the turbo configuration, if 0 the turbo mode is disabled completely.
After these settings comes the list of machine options, with the configuration of which list item is the default and will be loaded. The default option saves the index from the list below, and each menu-initiated line indicates an item in the list, with a limit of 10 machines maximum.
For each menu entry, there are 3 possible options separated by commas, the first option being the title of the machine that will be displayed to the user, the type of machine to implement and lastly the name of the file containing the ROM that will be loaded . The machine type can be 0 to 2, 0 indicates ZX Spectrum 48K, 1 indicates ZX Spectrum 128K and 2 indicates ZX Spectrum +2 and the ROM file size must match the machine type.