libspectrum - emulator support library
What is it?
libspectrum is a library designed to make the input and output of some ZX Spectrum emulator files slightly easier. It is intended to be usable on Unix variants, Win32 and Mac OS X. Currently, it is mainly (only?) used by Fuse, but other Spectrum emulator and utility authors are encouraged to use it.
Which formats does it support?
- Snapshots:
- read/write: .z80, .szx, .sna
- read only: .zxs, .sp., .snp, .S, +D snapshots
- Tape images:
- read/write: .tzx, .tap, .pzx, CSW version 2, .spc, .sta, .ltp
- read only: Warajevo .tap, Z80Em, CSW version 1, .wav
- Input recordings:
- Timex cartridges:
- IDE hard disk images:
- Microdrive cartridge images:
- Compressed files: reading of zipped, gzipped and bzipped files is transparently supported.
There are also some useful utility routines to do things like identify Spectrum files, or give the timings for various machines. For more details, see the supplied documentation.
Downloads
libspectrum is licensed under the GNU General Public License, version 2 or later. Please read this before downloading libspectrum if you're not already familiar with it.
Source
Binaries
Packages are available for some Unix distributions; in general, any problems which are specific to the packages should be sent to the package maintainer.
- Arch Linux has libspectrum available from the Arch User Repository (currently 1.6.3-1).
- Official packages for Debian, maintained by Alberto Garcia, are available; current Debian stable and oldstable releases ship 1.5.0-4, while testing and sid/unstable have 1.7.0-1.
- Fedora packages are available; Fedora 44 has 1.5.0-13, while Fedora 45 and Rawhide have 1.5.0-14.
- FreeBSD has a current port available as emulators/libspectrum (currently 1.7.0).
- Gentoo has an ebuild available (currently 1.6.1).
- NetBSD has libspectrum available in pkgsrc as emulators/libspectrum (currently 1.7.0).
- OpenBSD has version 1.7.0 available as the devel/libspectrum package.
- openSUSE packages are available from the Emulators repository (currently based on 1.6.3).
- Ubuntu packages are available; the latest upload is 1.7.0-1.
Development
If you're interested in working on libspectrum, subscribe to the fuse-emulator-devel mailing list and/or see the project page on SourceForge. If you just want news of new versions, you probably want the (low volume) fuse-emulator-announce list instead.
Finally, the latest development version should always be available as the 'master' branch from the git repository on SourceForge. Don't expect any support for this, or even that it can be compiled...