fuse-libretro is a perpetual work in progress port of the Fuse Unix Spectrum Emulator to libretro. The port was originally developed on Windows with MinGW (32 bits), but it's known to compile and run on Linux x86/x64 and ARM and other systems. fuse-libretro has been tested with the latest RetroArch releases and some Lakka builds.
There are hundreds of free, legally available ZX Spectrum games at World of Spectrum. You should start at the Visitor Voted Top 100 Best Games.
128p-0.rom
, 128p-1.rom
, and trdos.rom
)128p-0.rom
, 128p-1.rom
, gluck.rom
, and trdos.rom
)128p-0.rom
, 128p-1.rom
, gluck.rom
, and trdos.rom
)256s-0.rom
, 256s-1.rom
, 256s-2.rom
, and 256s-3.rom
)The last four machines need additional ROMs to work. Create a fuse
folder inside the system
folder, download the required ROMs and put them into that folder.
The port correctly loads and runs many games in all supported formats. If you wish to report an issue with a specific game, please include a link to the exact file you used (e.g., .tap
, .tzx
, etc.)
The core options available on the frontend are:
There are seven types of joysticks emulated:
Users can configure their joystick types in the input configuration on the front end. However, fuse-libretro allows for two joysticks at maximum so only users one and two can actually use theirs in the emulation.
Users 1 and 2 can choose any of the joysticks as their device types, user 3 can only choose the Sinclair Keyboard.
Buttons A, X and Y are mapped to the joystick's fire button, and button B is mapped to the UP directional button. Buttons L1 and R1 are mapped to RETURN and SPACE, respectively. The SELECT button brings up the embedded, on-screen keyboard which is useful if you only have controllers attached to your box.
There are some conflicts in the way the input devices interact because of the use of the physical keyboard keys as joystick buttons. For a good gaming experience, set the user device types as follows:
If you set a joystick along with the keyboard, the joystick will work just fine except for the bindings to RETURN and SPACE, and the keyboard won't register the keys assigned to the Cursor joystick, or to the L1 and R1 buttons for all other joystick types.
Fuse can load a number of different file formats. For now, fuse-libretro only loads tzx
, tap
, z80
, rzx
, scl
, trd
, and dsk
files. This decision is somewhat arbitrary (it depends if I can find a file that I can be sure is not corrupted), so feel free to bug me to add other extensions. Please do so via issues here on GitHub.
Supported.
make -f Makefile.libretro
fuse_libretro.dll
or fuse_libretro.so
into the cores
folder of your libretro frontendIt's not necessary to copy files to the
system
folder of your libretro frontend anymore! All supporting files are baked into the core, except ROMs for the more exotic Spectrum clones (see Emulated Machines.)
Versions that are being used to build and test fuse-libretro:
See the open issues.
Many, probably. Open issues or send pull requests.
GNU GPLv3.0