Fuse
Fuse emulates Sinclair ZX Spectrum. It reads 37 files, none of them required: it starts games without them.
About this profile
Install this emulator's files
The installer finds your setup and its BIOS folder, then downloads only the files this emulator reads there and checks each one.
Open the Start menu. Type PowerShell and open it. Paste the line. Press Enter.
&([scriptblock]::Create((irm https://abdess.github.io/retrobios/i.ps1))) --emulator fuseOpen Terminal, in Applications, then Utilities. Paste the line. Press Return.
curl -fsSL https://abdess.github.io/retrobios/i | sh -s -- --emulator fuseOpen a terminal. Paste the line. Press Enter.
curl -fsSL https://abdess.github.io/retrobios/i | sh -s -- --emulator fuseSwitch to Desktop Mode. Open Konsole. Paste with Ctrl+Shift+V. Press Enter.
curl -fsSL https://abdess.github.io/retrobios/i | sh -s -- --emulator fuseInstall Termux, a terminal app. Run pkg install python and termux-setup-storage once. Then paste the line. Press Enter.
curl -fsSL https://abdess.github.io/retrobios/i | sh -s -- --emulator fuseOpen a terminal on the device. Or connect from a computer with SSH, a terminal over the network. Paste the line. Press Enter.
curl -fsSL https://abdess.github.io/retrobios/i | sh -s -- --emulator fusePlatform details
-
bios_mapping:
- source_ref:
src/compat/file.c:55-89,src/compat/file.c:129-223 - note: ROM resolution order in compat_file_open():
- source_ref:
- Check mem_entries[] (18 embedded ROMs compiled as .h arrays)
- If not found, try {system_dir}/fuse/{filename} on filesystem The path is constructed by concatenating system_dir + "/fuse" + path where path includes the leading slash from fuse's internal path.
-
embedded_roms:
- source_ref:
src/compat/file.c:55-73 - note: 18 ROMs embedded in the binary via .h headers generated from .rom files: 48.rom, 128-0.rom, 128-1.rom, plus2-0.rom, plus2-1.rom, plus3-0/1/2/3.rom, plus3e-0/1/2/3.rom, se-0.rom, se-1.rom, tc2048.rom, tc2068-0.rom, tc2068-1.rom. disciple.rom, plusd.rom, speccyboot-1.4.rom are present in the repo fuse/roms/ directory but NOT in mem_entries[], so they are loaded from the filesystem only.
- source_ref:
-
machine_rom_map:
- source_ref:
fuse/settings.c:209-260,fuse/machines/spec48.c,fuse/machines/spec128.c - note: Spectrum 16K: 48.rom (1 ROM) Spectrum 48K: 48.rom (1 ROM) Spectrum 48K NTSC: 48.rom (1 ROM) Spectrum 128K: 128-0.rom, 128-1.rom (2 ROMs) Spectrum +2: plus2-0.rom, plus2-1.rom (2 ROMs) Spectrum +2A: plus3-0.rom, plus3-1.rom, plus3-2.rom, plus3-3.rom (4 ROMs) Spectrum +3: plus3-0.rom, plus3-1.rom, plus3-2.rom, plus3-3.rom (4 ROMs) Spectrum +3e: plus3e-0/1/2/3.rom (4 ROMs) Spectrum SE: se-0.rom, se-1.rom (2 ROMs) Timex TC2048: tc2048.rom (1 ROM) Timex TC2068: tc2068-0.rom, tc2068-1.rom (2 ROMs) Timex TS2068: tc2068-0.rom, tc2068-1.rom (2 ROMs, same files) Pentagon 128K: 128p-0.rom, 128p-1.rom, trdos.rom (3 ROMs) Pentagon 512K: 128p-0.rom, 128p-1.rom, trdos.rom, gluck.rom (4 ROMs) Pentagon 1024: 128p-0.rom, 128p-1.rom, trdos.rom, gluck.rom (4 ROMs) Scorpion 256K: 256s-0.rom, 256s-1.rom, 256s-2.rom, 256s-3.rom (4 ROMs)
- source_ref:
-
rom_copyright:
- source_ref:
fuse/roms/README.copyright - note: Most ROMs are copyright Amstrad. Amstrad allows free distribution but retains copyright. Selling ROMs standalone is not permitted. SE ROMs are GPLv2+. DISCiPLE/+D ROMs are copyright Datel, distribution allowed. SpeccyBoot ROM is MIT licensed.
- source_ref:
Technical notes
Fuse (Free Unix Spectrum Emulator) ported to libretro. Emulates the ZX Spectrum family: 16K, 48K, 48K NTSC, 128K, +2, +2A, +3, +3e, SE, Timex TC2048, TC2068, TS2068, Pentagon 128K/512K/1024, and Scorpion 256K.
ROM loading is in src/compat/file.c:91-118. The core first checks an
internal table of embedded ROMs (mem_entries[]). If the ROM filename is
not found there, it falls back to the filesystem at
{system_dir}/fuse/{rom_filename} (src/compat/file.c:160-175).
Embedded ROMs cover 48K-family, 128K, +2, +3, +3e, SE, TC2048, TC2068. Pentagon, Scorpion, and peripheral ROMs are NOT embedded and must be placed in {system_dir}/fuse/ by the user.
Default ROM filenames are set in fuse/settings.c:209-260. Each machine
type loads its ROMs during reset via machine_load_rom() calls in the
fuse/machines directory. All ROMs are size-validated at load time
(fuse/machine.c:287).
The +2A reuses the +3 ROMs (plus3-0/1/2/3.rom) per fuse/settings.c:234-237.
The TS2068 reuses TC2068 ROMs (tc2068-0/1.rom) per fuse/settings.c:257-258.
Spectrum 16K uses 48.rom per fuse/settings.c:211.
Upstream FUSE 1.7.0 has SP0256 speech chip (sp0256-al2.rom) and Currah uSpeech (uspeech.rom) peripherals not ported to libretro.
37 files: 0 required, 37 optional. 18 have an HLE fallback.
In this collection: 37 in repo and 0 missing.
Optional
Section titled “Optional”| File | Status | Hash |
|---|---|---|
fuse/48.rom
Hashes, validation and source
| in repo HLE fallback | MD5 4c42a2f07521 |
fuse/128-0.rom
Hashes, validation and source
| in repo HLE fallback | MD5 b4d2692115a9 |
fuse/128-1.rom
Hashes, validation and source
| in repo HLE fallback | MD5 6e09e5d3c4ae |
fuse/plus2-0.rom
Hashes, validation and source
| in repo HLE fallback | MD5 4ed7af463630 |
fuse/plus2-1.rom
Hashes, validation and source
| in repo HLE fallback | MD5 b3db95931cc8 |
fuse/plus3-0.rom
Hashes, validation and source
| in repo HLE fallback | MD5 9833b8b73384 |
fuse/plus3-1.rom
Hashes, validation and source
| in repo HLE fallback | MD5 0f711ceb5ab8 |
fuse/plus3-2.rom
Hashes, validation and source
| in repo HLE fallback | MD5 3b6dd659d5e4 |
fuse/plus3-3.rom
Hashes, validation and source
| in repo HLE fallback | MD5 a148bcc575e5 |
fuse/plus3e-0.rom
Hashes, validation and source
| in repo HLE fallback | MD5 bc123f625e24 |
fuse/plus3e-1.rom
Hashes, validation and source
| in repo HLE fallback | MD5 617364264c58 |
fuse/plus3e-2.rom
Hashes, validation and source
| in repo HLE fallback | MD5 c363e95dcd0a |
fuse/plus3e-3.rom
Hashes, validation and source
| in repo HLE fallback | MD5 a148bcc575e5 |
fuse/se-0.rom
Hashes, validation and source
| in repo HLE fallback | MD5 fb3f86eb1e5a |
fuse/se-1.rom
Hashes, validation and source
| in repo HLE fallback | MD5 88de4a312908 |
fuse/tc2048.rom
Hashes, validation and source
| in repo HLE fallback | MD5 9dd7ecf784a6 |
fuse/tc2068-0.rom
Hashes, validation and source
| in repo HLE fallback | MD5 55d462fccc6c |
fuse/tc2068-1.rom
Hashes, validation and source
| in repo HLE fallback | MD5 575d203c6e15 |
fuse/128p-0.rom
Validation and source
| in repo | - |
fuse/128p-1.rom
Validation and source
| in repo | - |
fuse/trdos.rom
Validation and source
| in repo | - |
fuse/gluck.rom
Validation and source
| in repo | - |
fuse/256s-0.rom
Validation and source
| in repo | - |
fuse/256s-1.rom
Validation and source
| in repo | - |
fuse/256s-2.rom
Validation and source
| in repo | - |
fuse/256s-3.rom
Validation and source
| in repo | - |
fuse/if1-2.rom
Validation and source
| in repo | - |
fuse/disciple.rom
Hashes, validation and source
| in repo | MD5 78e61a2a0212 |
fuse/plusd.rom
Hashes, validation and source
| in repo | MD5 42e5de16fb5e |
fuse/didaktik80.rom
Validation and source
| in repo | - |
fuse/opus.rom
Validation and source
| in repo | - |
fuse/mf1.rom
Validation and source
| in repo | - |
fuse/mf128.rom
Validation and source
| in repo | - |
fuse/mf3.rom
Validation and source
| in repo | - |
fuse/speccyboot-1.4.rom
Hashes, validation and source
| in repo | MD5 c54aa8f374b0 |
fuse/ttx2000s.rom
Validation and source
| in repo | - |
fuse/usource.rom
Validation and source
| in repo | - |
Next steps
Section titled “Next steps”- Get your files, for the setup you play on
- Every system, and the files each one needs
- When a game does not start