How to compile the Fuse ZX Spectrum Emulator on the Raspberry Pi (SDL)

  • UPDATED 13th May, 2015 – Updated for the Raspberry Pi 2.
  • UPDATED 27th April, 2015 – Old WoS links are dead. Links updated!
  • UPDATED 14th March, 2018 – Weird copy and paste issue with some of the code.

Getting Fuse running on the Raspberry Pi is relatively simple – just follow the steps below.

I am running Raspbian, but these instructions should work on other Debian based distributions. This guide will compile Fuse to run with SDL. You do not need to start X Windows to run Fuse in SDL mode.

I suggest you connect to your Raspberry Pi over SSH. You can use a terminal application like PuTTY under Windows, ssh on *nix or terminal on OS X. This will save you typing in all the commands below. It’s a lot easier to copy and paste!

Connect to your Pi, and install the following packages.

$ sudo apt-get install libaudiofile-dev libsdl1.2-dev

Create a folder inside /home/pi called src. You will download the FUSE and libspectrum files to this folder, extract the source code, and compile it. You need to rename the file downloaded from SourceForge.

$ cd /home/pi
$ mkdir src
$ cd src
$ wget https://qa.debian.org/watch/sf.php/fuse-emulator/libspectrum-1.0.0.tar.gz
$ wget http://downloads.sourceforge.net/project/fuse-emulator/fuse/1.0.0.1a/fuse-1.0.0.1a.tar.gz

Now, extract, compile and install libspectrum. This takes about 5 minutes on the original model B, and about 3 on the Pi 2.
$ tar xvfz libspectrum-1.0.0.tar.gz
$ cd libspectrum-1.0.0
$ ./configure
$ make
$ sudo make install

Configure ld.so.conf so it can see the libspectrum libraries.

$ sudo nano /etc/ld.so.conf.d/libspectrum.conf
Put the following line into nano, save and exit.
/usr/local/lib
$ sudo ldconfig

Now extract, compile and install FUSE. This can take up to 30 minuets on the original Pi, so be patient! Much quicker on the Pi 2.

$ cd ..
$ tar xvfz fuse-1.0.0.1a.tar.gz
$ cd fuse-1.0.0.1a
$ ./configure --with-sdl
$ make
$ sudo make install

Thats it – FUSE should have compiled successfully. Run the command fuse to start the emulator. Copy over your TZX, TAP, DSK files etc over SFTP using a client like Filezilla.

Feel free to paste a comment below to let me know how you get on, or to let me know if there are any mistakes in my instructions.

14 thoughts on “How to compile the Fuse ZX Spectrum Emulator on the Raspberry Pi (SDL)

    […] How to compile the Fuse ZX Spectrum Emulator on the Raspberry Pi (SDL) […]

    Kevin Roast

    (22nd August 2012 - 11:45)

    Thanks for the guide!! This worked with a couple of minor changes I needed to make on my Raspbian install:

    Slight change to the edit cmd:
    sudo nano /etc/ld.so.conf/libspectrum.conf -> sudo nano /etc/ld.so.conf.d/libspectrum.conf

    I needed to rename the downloaded .gz:
    mv fuse-1.0.0.1a.tar.gz?r=http:%2F%2Ffuse-emulator.sourceforge.net%2F&ts=1345580383&use_mirror=dfn fuse-1.0.0.1a.tar.gz

    and “cd .. ” back into src before starting the FUSE build.

    Other than those minor details it worked great, thanks!

    Richard Marsden

    (22nd August 2012 - 21:34)

    Excellent – thanks for the quick write-up! (Manic Miner is currently running on the desk behind me…)

    Using Weezy, I also had to rename the fuse archive, but the downloaded name was:

    fuse-1.0.0.1a.tar.gz?r=http:%2F%2Ffuse-emulator.sourceforge.net%2F

    …and then after running tar, I had to cd into the fuse-1.0.0.1a directory before running configure.

    There’s also a very minor typo – a stray ” character on the end of the sourceforge wget. As I say very minor, but bound to trip up the cut&paste 😉

    Andy

    (22nd August 2012 - 22:25)

    Thanks for the fault finding! I use Linux daily so I probably type commands without thinking about it!

    Post has been updated.

    Richard Marsden

    (22nd August 2012 - 22:32)

    Yes I use it less, so I usually end up having to look up commands which aren’t your day to day Unix shell commands 🙂

    Andrey

    (30th August 2012 - 15:52)

    hi)) also try to build this emu (SDL version)
    http://code.google.com/p/unrealspeccyp/wiki/build_linux

    Gareth

    (7th January 2013 - 22:13)

    Was this compiled on Squeeze or Wheezy? I’m having issues on Wheezy with the libaudiofile-dev. I get an error when compiling libspectrum about the audio-config not being found. When the whole process is finished there’s no sound in FUSE?

    […] your Raspberry Pi to emulate a computer or console from days gone by. Whether you set it up as a ZX Spectrum emulator or as a SNES emulator or even as an arcade game machine there are hundreds of hours or retro-gaming […]

    Stephen

    (25th December 2013 - 11:39)

    Hi I get an libspectrum.h usability no error when I run the .configure –with-sdl line 🙁

    […] Kaynaktan bir video: […]

    Dave

    (25th April 2015 - 20:32)

    Another big fat waste of time… Thanks anyway. This is what went wrong. I don,t know enough tech to fix it… Perhaps it,ll be useful to someone else –

    pi@raspberrypi ~/src $ mv fuse-1.0.0.1a.tar.gz?r=http:%2F%2Ffuse-emulator.sourceforge.net%2F fuse-1.0.0.1a.tar.gz
    mv: cannot stat `fuse-1.0.0.1a.tar.gz?r=http:%2F%2Ffuse-emulator.sourceforge.net%2F’: No such file or directory
    pi@raspberrypi ~/src $ tar xvfz libspectrum-1.0.0.tar.gz
    tar (child): libspectrum-1.0.0.tar.gz: Cannot open: No such file or directory
    tar (child): Error is not recoverable: exiting now
    tar: Child returned status 2
    tar: Error is not recoverable: exiting now

    Andy

    (27th April 2015 - 13:46)

    @Dave – I have updated the guide. World of Spectrum have has issues lately, so I have pointed the guide to another location for libspectrum-1.0.0.tar.gz

    […] install guide here! (Added August […]

    Jim

    (29th December 2016 - 19:12)

    Excuse my ignorance but I’m not familiar with SDL – what do I need to do to get it running under SDL – is this another install ?
    I used to have Fuse running nicely under LXDE on Wheezy before I trashed my Raspberry to get Jessie/PIXEL. Following your instructions, I can’t run fuse from the command line (probably because I haven’t got SDL) and running Fuse under the PIXEL desktop gives a tiny screen and no windows menus as Fuse did when I previously ran it under Wheezy

Leave a Reply

Your email address will not be published. Required fields are marked *