debian/0000755000000000000000000000000012156305352007170 5ustar debian/fuse-emulator-sdl.postinst0000644000000000000000000000015212156304566014351 0ustar #!/bin/sh set -e update-alternatives --install /usr/bin/fuse \ fuse /usr/bin/fuse-sdl 6 #DEBHELPER# debian/copyright0000644000000000000000000000402212156304566011127 0ustar Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ Upstream-Contact: Philip Kendall Source: http://fuse-emulator.sourceforge.net/ Comment: The source tarball comes without the roms/ directory, which contains non-free software. See the README.Debian file for details. Files: * Copyright: 1999-2013 Philip Kendall and others License: GPL-2+ Comment: See the AUTHORS file for details on other contributors. Files: compat/getopt.c compat/getopt.h compat/getopt1.c compat/mkstemp.c Copyright: 1987-2001 Free Software Foundation, Inc. 2003 Philip Kendall License: LGPL-2.1+ Files: sound/blipbuffer.c sound/blipbuffer.h Copyright: 2003-2006 Shay Green License: LGPL-2.1+ Files: sound/sfifo.h Copyright: 2000-2002 David Olofson License: LGPL-2.1+ Files: debian/* Copyright: 2010-2013 Alberto Garcia License: GPL-2+ License: GPL-2+ This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. . This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. . On Debian systems, the complete text of the license can be found in the file /usr/share/common-licenses/GPL-2 License: LGPL-2.1+ This module is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. . This module is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. . On Debian systems, the complete text of the license can be found in the file /usr/share/common-licenses/LGPL-2.1 debian/fuse-emulator-sdl.lintian-overrides0000644000000000000000000000007412156304566016127 0ustar fuse-emulator-sdl: description-synopsis-starts-with-article debian/fuse-emulator-sdl.install0000644000000000000000000000010012156304566014125 0ustar debian/fuse-sdl.desktop usr/share/applications fuse-sdl usr/bin debian/compat0000644000000000000000000000000212156304566010374 0ustar 9 debian/fuse-emulator-gtk.prerm0000644000000000000000000000012412156304566013615 0ustar #!/bin/sh set -e update-alternatives --remove fuse /usr/bin/fuse-gtk #DEBHELPER# debian/fuse-emulator-gtk.install0000644000000000000000000000010012156304566014130 0ustar debian/fuse-gtk.desktop usr/share/applications fuse-gtk usr/bin debian/changelog0000644000000000000000000001274412156304566011060 0ustar fuse-emulator (1.1.1+dfsg1-2) unstable; urgency=low [ Sergio Baldovi ] * debian/rules: don't override the hardening flags in the GTK+ version (Closes: #712098). -- Alberto Garcia Thu, 13 Jun 2013 11:55:48 +0300 fuse-emulator (1.1.1+dfsg1-1) unstable; urgency=low * New upstream release. * Update my e-mail address in debian/*. * Remove the following patches, which have already been merged in this release: - 04_unfiltered-audio.patch - 05_fix-missing-roms-crash.patch - 08_include-zlib.patch - 10_fix-joystick-crash.patch * Refresh all remaining patches and remove their numbering. * Build with hardening options. - debian/compat: bump debhelper compatibility level to 9. - debian/control: update build dependency on debhelper as well. * debian/rules: compile Fuse with --enable-gtk3. - debian/control: replace build dependency on GTK+ 2 with GTK+ 3. * debian/rules: compile Fuse with --enable-desktop-integration. - debian/fuse-emulator-common.install: remove fuse.png. - debian/rules: don't create fuse.png from winfuse.ico. - debian/control: remove build dependency on icoutils. * Remove debian/fuse-{sdl,gtk}.desktop and use data/fuse.desktop to generate them. - debian/rules: generate fuse-{sdl,gtk}.desktop. - desktop-file.patch: don't install data/fuse.desktop. * manpage-errors.patch: fix formatting errors in the manual page. * debian/fuse-emulator-common.install: install menu_data.ui, necessary for the GTK+ version. - debian/rules: keep the file after the GTK+ build, otherwise it will be removed by dh_auto_clean. * debian/control: - Update build dependency on libspectrum to >= 1.1.0. - Add build dependency on zlib1g-dev. - Remove obsolete DM-Upload-Allowed flag. - Update Standards-Version to 3.9.4 (no changes). - Update description with new features. * debian/copyright: update copyright years. * debian/rules: add get-orig-source rule to create the Debian source tarball. -- Alberto Garcia Tue, 04 Jun 2013 19:28:27 +0200 fuse-emulator (1.0.0.1a+dfsg1-4) unstable; urgency=low * Add headers to all patches. * 01_compile-without-roms.patch: apply against Makefile.am and configure.in. - debian/control: Add build dependency on dh-autoreconf. - debian/rules: Run dh --with autoreconf. * 09_dont-use-sdl-audio.patch: Don't use the SDL audio driver, it has issues with PulseAudio. Use Alsa instead. * 10_fix-joystick-crash.patch: Don't crash with joysticks with more than 10 buttons (Closes: #665640). * Use the 48x48 version of the Fuse icon: - debian/control: build-depend on icoutils instead of imagemagick. - debian/fuse-emulator-common.install: change icon path. - debian/rules: use icotool to extract the icon. * Disable GObject cast checks in the GTK+ version: - debian/rules: add -DG_DISABLE_CAST_CHECKS to the CFLAGS variable. * debian/control: update Standards-Version to 3.9.3. * debian/copyright: update debian copyright format URL. -- Alberto Garcia Sun, 25 Mar 2012 23:43:31 +0300 fuse-emulator (1.0.0.1a+dfsg1-3) unstable; urgency=low * debian/control: rather than depend on them, make fuse-emulator-common recommend one of the actual emulator packages. This breaks a circular dependency (Closes: #649986). * debian/control: get rid of the fuse-emulator virtual package. -- Alberto Garcia Fri, 25 Nov 2011 10:30:41 +0100 fuse-emulator (1.0.0.1a+dfsg1-2) unstable; urgency=low * 08_include-zlib.patch: fix FTBFS with libpng 1.5 (Closes: #649803). * debian/control: change build dependency on libpng12-dev to libpng-dev for the transition to libpng 1.5. * debian/control: lintian complains if we only depend on the fuse-emulator virtual package, so now we're listing fuse-emulator-gtk as the first alternative. * debian/copyright: convert file to the machine-readable format, and change license of the Debian packaging to GPL-2+. -- Alberto Garcia Thu, 24 Nov 2011 11:48:33 +0100 fuse-emulator (1.0.0.1a+dfsg1-1) unstable; urgency=low * New upstream release. * debian/control: add dependency on opense-basic as an alternative to spectrum-roms, but suggest spectrum-roms anyway. * debian/control: move the package from contrib to main. Now that there's opense-basic, the non-free package spectrum-roms is no longer a requisite. See README.Debian for details. * debian/control: add DM-Upload-Allowed flag. * debian/control: update Standards-Version to 3.9.2. * Refresh 04_unfiltered-audio.patch. * New patches: - 06_load-opense-rom.patch: load the OpenSE BASIC ROM if the original Spectrum ROMs are not found. - 07_disable-autoload.patch: don't use the auto load feature with OpenSE BASIC. * debian/watch: update regular expression to include letters in the version number. * debian/README.Debian: update notes to mention OpenSE BASIC. * debian/copyright: the legal status of the ROMs distributed in the upstream tarball is not unclear anymore. * debian/copyright: list files released under the GNU LGPL. * debian/fuse-emulator-{common,gtk,sdl}.lintian-overrides: the package description is really meant to start with 'The'. -- Alberto Garcia Wed, 15 Jun 2011 00:44:46 +0300 fuse-emulator (1.0.0+dfsg1-1) unstable; urgency=low * Initial release (Closes: #608203). -- Alberto Garcia Tue, 28 Dec 2010 18:10:50 +0100 debian/control0000644000000000000000000001215412156304566010604 0ustar Source: fuse-emulator Priority: optional Section: otherosfs Maintainer: Alberto Garcia Build-Depends: debhelper (>= 9), dh-autoreconf, flex, bison, libpng-dev, libasound2-dev, libxml2-dev, libsdl1.2-dev, libgtk-3-dev, zlib1g-dev, libspectrum-dev (>= 1.1.0) Standards-Version: 3.9.4 Homepage: http://fuse-emulator.sourceforge.net/ Package: fuse-emulator-common Architecture: all Depends: opense-basic | spectrum-roms, ${misc:Depends} Breaks: fuse-emulator (<< 1.0.0+dfsg1-1) Replaces: fuse-emulator (<< 1.0.0+dfsg1-1) Recommends: fuse-emulator-gtk | fuse-emulator-sdl Suggests: spectrum-roms, fuse-emulator-utils Description: The Free Unix Spectrum Emulator (common files) Fuse is a Sinclair ZX Spectrum emulator. It supports several models (including 16K/48K/128K/+2/+2A/+3 and some clones), with quite faithful emulation of the display and sound. . Its features include: * Accurate Spectrum 16K/48K/128K/+2/+2A/+3 emulation. * Working Spectrum +3e and SE, Timex TC2048, TC2068 and TS2068, Pentagon 128, "512" (Pentagon 128 with extra memory) and 1024 and Scorpion ZS 256 emulation. * Runs at true Speccy speed on any computer you're likely to try it on. * It can load Z80, SZX and SNA snapshots, TAP and TZX virtual-tape files (including accelerated loading), MDR microdrive images and DSK floppy disk images, among many others. * Sound. * Built-in debugger. * Emulation of most of the common joysticks used on the Spectrum (including Kempston, Sinclair and Cursor joysticks). * Emulation of some of the printers you could attach to a Spectrum. * Support for the RZX input recording file format, including rollback and 'competition mode'. * Recording of movies to FMF files. * Emulation of the DivIDE, Interface I, Kempston mouse, Spectrum +3e, ZXATASP, ZXCF, Beta 128, Opus Discovery, +D, Spectranet, SpeccyBoot, SpecDrum and DISCiPLE interfaces. . This package provides files common to all versions of the emulator. To get the actual emulator, install fuse-emulator-gtk or fuse-emulator-sdl. Package: fuse-emulator-gtk Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, fuse-emulator-common (= ${source:Version}) Description: The Free Unix Spectrum Emulator (GTK+ version) Fuse is a Sinclair ZX Spectrum emulator. It supports several models (including 16K/48K/128K/+2/+2A/+3 and some clones), with quite faithful emulation of the display and sound. . Its features include: * Accurate Spectrum 16K/48K/128K/+2/+2A/+3 emulation. * Working Spectrum +3e and SE, Timex TC2048, TC2068 and TS2068, Pentagon 128, "512" (Pentagon 128 with extra memory) and 1024 and Scorpion ZS 256 emulation. * Runs at true Speccy speed on any computer you're likely to try it on. * It can load Z80, SZX and SNA snapshots, TAP and TZX virtual-tape files (including accelerated loading), MDR microdrive images and DSK floppy disk images, among many others. * Sound. * Built-in debugger. * Emulation of most of the common joysticks used on the Spectrum (including Kempston, Sinclair and Cursor joysticks). * Emulation of some of the printers you could attach to a Spectrum. * Support for the RZX input recording file format, including rollback and 'competition mode'. * Recording of movies to FMF files. * Emulation of the DivIDE, Interface I, Kempston mouse, Spectrum +3e, ZXATASP, ZXCF, Beta 128, Opus Discovery, +D, Spectranet, SpeccyBoot, SpecDrum and DISCiPLE interfaces. . This package provides binaries for the GTK+ version of Fuse. Package: fuse-emulator-sdl Architecture: any Depends: ${shlibs:Depends}, ${misc:Depends}, fuse-emulator-common (= ${source:Version}) Description: The Free Unix Spectrum Emulator (SDL version) Fuse is a Sinclair ZX Spectrum emulator. It supports several models (including 16K/48K/128K/+2/+2A/+3 and some clones), with quite faithful emulation of the display and sound. . Its features include: * Accurate Spectrum 16K/48K/128K/+2/+2A/+3 emulation. * Working Spectrum +3e and SE, Timex TC2048, TC2068 and TS2068, Pentagon 128, "512" (Pentagon 128 with extra memory) and 1024 and Scorpion ZS 256 emulation. * Runs at true Speccy speed on any computer you're likely to try it on. * It can load Z80, SZX and SNA snapshots, TAP and TZX virtual-tape files (including accelerated loading), MDR microdrive images and DSK floppy disk images, among many others. * Sound. * Built-in debugger. * Emulation of most of the common joysticks used on the Spectrum (including Kempston, Sinclair and Cursor joysticks). * Emulation of some of the printers you could attach to a Spectrum. * Support for the RZX input recording file format, including rollback and 'competition mode'. * Recording of movies to FMF files. * Emulation of the DivIDE, Interface I, Kempston mouse, Spectrum +3e, ZXATASP, ZXCF, Beta 128, Opus Discovery, +D, Spectranet, SpeccyBoot, SpecDrum and DISCiPLE interfaces. . This package provides binaries for the SDL version of Fuse. debian/fuse-emulator-sdl.prerm0000644000000000000000000000012412156304566013612 0ustar #!/bin/sh set -e update-alternatives --remove fuse /usr/bin/fuse-sdl #DEBHELPER# debian/rules0000755000000000000000000000270612156304566010263 0ustar #!/usr/bin/make -f %: dh $@ --with autoreconf CONFIGURE_OPTIONS := --with-roms-dir=/usr/share/spectrum-roms \ --enable-desktop-integration override_dh_auto_configure: override_dh_auto_build: rm -f ui/gtk/options.c CFLAGS="$(CFLAGS) -DG_DISABLE_CAST_CHECKS" dh_auto_configure -- \ $(CONFIGURE_OPTIONS) --with-x --enable-gtk3 dh_auto_build mv fuse fuse-gtk mv ui/gtk/menu_data.ui . cat data/fuse.desktop | \ sed -e 's,Exec=.*,Exec=/usr/bin/fuse-gtk %f,' \ -e 's,Name=\(.*\),Name=\1 (GTK+ version),' > \ debian/fuse-gtk.desktop dh_auto_clean dh_auto_configure -- $(CONFIGURE_OPTIONS) --with-sdl dh_auto_build cp fuse fuse-sdl cat data/fuse.desktop | \ sed -e 's,Exec=.*,Exec=/usr/bin/fuse-sdl %f,' \ -e 's,Name=\(.*\),Name=\1 (SDL version),' \ -e 's,GNOME;GTK;,,' > \ debian/fuse-sdl.desktop override_dh_clean: rm -f fuse.png menu_data.ui fuse-gtk fuse-sdl rm -f debian/fuse-gtk.desktop debian/fuse-sdl.desktop dh_clean VERSION := $(shell dpkg-parsechangelog | sed -ne 's/^Version: \(.*\)-.*/\1/p') UPSTREAM_VERSION := $(shell echo $(VERSION) | sed 's/+dfsg1//') get-orig-source: dh_testdir uscan --rename --download-current-version mkdir "fuse-emulator-$(VERSION)" tar -C "fuse-emulator-$(VERSION)" \ --strip-components=1 --exclude=roms \ -xaf "../fuse-emulator_$(UPSTREAM_VERSION).orig.tar.gz" fakeroot tar -caf "../fuse-emulator_$(VERSION).orig.tar.xz" \ "fuse-emulator-$(VERSION)" rm -rf "fuse-emulator-$(VERSION)" debian/patches/0000755000000000000000000000000012156304566010625 5ustar debian/patches/manpage-errors.patch0000644000000000000000000000260712156304566014575 0ustar From: Alberto Garcia Subject: Fix formatting erros in the manual page Forwarded: no Index: fuse-emulator/man/fuse.1 =================================================================== --- fuse-emulator.orig/man/fuse.1 +++ fuse-emulator/man/fuse.1 @@ -1387,7 +1387,7 @@ selects the ALSA device used, it can be device name. e.g.: .IR default " or " hw:0 " or " tee:plughw:0,\(aq/tmp/out.raw\(aq,raw . See the alsa-lib pcm api reference at -.I http://www.alsa\-project.org/alsa\-doc/alsa\-lib/pcm.html +.I http://www.alsa\-project.org/alsa\-doc/\:alsa\-lib/pcm.html for further explanation. .br .IP \[bu] @@ -2784,7 +2784,7 @@ chance to cancel this if you're using th .RS Choose a type of Spectrum to emulate. An brief overview of the Sinclair, Amstrad and Timex can be found at -.I "http://www.nvg.ntnu.no/sinclair/computers/zxspectrum/zxspectrum.htm" +.I "http://www.nvg.ntnu.no/sinclair/computers/zxspectrum/zxspectrum.\:htm" while more technical information can be found at .IR "http://www.worldofspectrum.org/faq/reference/reference.htm" , and @@ -4589,7 +4589,7 @@ Note that SAM Coup\('e `.DSK' images sha .I .TRD .RS TR-DOS disk image; for detailed information please see -.I http://web.archive.org/web/20070808150548/http://www.ramsoft.bbk.org/tech/tr\-info.zip +.I http\:://web.archive.org/web/20070808150548/http://www.ramsoft.bbk.org\:/tech/tr\-info.zip .RE .PP .I .SCL debian/patches/disable-autoload.patch0000644000000000000000000000157712156304566015071 0ustar From: Alberto Garcia Subject: The auto load feature doesn't work with OpenSE BASIC, so don't use it Forwarded: http://sourceforge.net/mailarchive/message.php?msg_id=27674912 Index: fuse-emulator/tape.c =================================================================== --- fuse-emulator.orig/tape.c +++ fuse-emulator/tape.c @@ -141,6 +141,7 @@ tape_read_buffer( unsigned char *buffer, const char *filename, int autoload ) { int error; + extern int using_opense_rom; if( libspectrum_tape_present( tape ) ) { error = tape_close(); if( error ) return error; @@ -152,7 +153,7 @@ tape_read_buffer( unsigned char *buffer, tape_modified = 0; ui_tape_browser_update( UI_TAPE_BROWSER_NEW_TAPE, NULL ); - if( autoload ) { + if( autoload && ! using_opense_rom ) { error = tape_autoload( machine_current->machine ); if( error ) return error; } debian/patches/compile-without-roms.patch0000644000000000000000000000174612156304566015765 0ustar From: Alberto Garcia Description: Make Fuse compile without the 'roms' dir This dir was stripped from the source tarball since it is non-free. Forwarded: not-needed Index: fuse-emulator/Makefile.am =================================================================== --- fuse-emulator.orig/Makefile.am +++ fuse-emulator/Makefile.am @@ -37,7 +37,6 @@ SUBDIRS = @COMPAT_SUBDIR@ \ peripherals \ perl \ pokefinder \ - roms \ sound \ timer \ ui \ @@ -53,7 +52,6 @@ DIST_SUBDIRS = data \ peripherals \ perl \ pokefinder \ - roms \ sound \ timer \ ui \ Index: fuse-emulator/configure.ac =================================================================== --- fuse-emulator.orig/configure.ac +++ fuse-emulator/configure.ac @@ -909,7 +909,6 @@ peripherals/flash/Makefile perl/Makefile perl/Fuse/Makefile pokefinder/Makefile -roms/Makefile sound/Makefile timer/Makefile ui/Makefile debian/patches/desktop-file.patch0000644000000000000000000000126512156304566014240 0ustar From: Alberto Garcia Description: Don't install the fuse.desktop file We handle this in debian/rules because we need two separate versions for GTK+ and SDL. Forwarded: not-needed Index: fuse-emulator/data/Makefile.am =================================================================== --- fuse-emulator.orig/data/Makefile.am +++ fuse-emulator/data/Makefile.am @@ -28,8 +28,7 @@ if DESKTOP_INTEGRATION fusemimedir = $(DESKTOP_DATADIR)/mime/packages fusemime_DATA = fuse.xml -appdatadir = $(DESKTOP_DATADIR)/applications -appdata_DATA = fuse.desktop +noinst_DATA = fuse.desktop iconsdatadir = $(DESKTOP_DATADIR)/icons/hicolor icons16dir = $(iconsdatadir)/16x16/apps debian/patches/series0000644000000000000000000000026712156304566012047 0ustar compile-without-roms.patch missing-roms-help.patch rom-search-path.patch load-opense-rom.patch disable-autoload.patch dont-use-sdl-audio.patch desktop-file.patch manpage-errors.patch debian/patches/missing-roms-help.patch0000644000000000000000000000147412156304566015231 0ustar From: Alberto Garcia Description: Tell the user to see README.Debian if a ROM file is not found Some of the ROMs used by Fuse are not available due to their license. This patch tells the user to see the README.Debian file for an explanation. Forwarded: not-needed Index: fuse-emulator/machine.c =================================================================== --- fuse-emulator.orig/machine.c +++ fuse-emulator/machine.c @@ -282,7 +282,7 @@ machine_load_rom_bank_from_file( memory_ error = utils_read_auxiliary_file( filename, &rom, UTILS_AUXILIARY_ROM ); if( error == -1 ) { - ui_error( UI_ERROR_ERROR, "couldn't find ROM '%s'", filename ); + ui_error( UI_ERROR_ERROR, "couldn't find ROM '%s' - See README.Debian for details", filename ); return 1; } if( error ) return error; debian/patches/load-opense-rom.patch0000644000000000000000000000607712156304566014661 0ustar From: Alberto Garcia Subject: Load the OpenSE BASIC ROM if the original ROMs are not found Forwarded: http://sourceforge.net/mailarchive/message.php?msg_id=27674912 Index: fuse-emulator/machine.c =================================================================== --- fuse-emulator.orig/machine.c +++ fuse-emulator/machine.c @@ -53,6 +53,7 @@ fuse_machine_info **machine_types = NULL; /* Array of available machines */ int machine_count = 0; +int using_opense_rom = 0; fuse_machine_info *machine_current = NULL; /* The currently selected machine */ static int machine_location; /* Where is the current machine in @@ -281,6 +282,41 @@ machine_load_rom_bank_from_file( memory_ utils_file rom; error = utils_read_auxiliary_file( filename, &rom, UTILS_AUXILIARY_ROM ); + + if( error == -1 ) { + + if(! strcmp( filename, "48.rom" ) || + ! strcmp( filename, "tc2048.rom" ) || + ! strcmp( filename, "128-1.rom" ) || + ! strcmp( filename, "plus2-1.rom" ) || + ! strcmp( filename, "plus3-1.rom" ) || + ! strcmp( filename, "plus3-3.rom" ) ) { + + error = utils_read_auxiliary_file( "opense.rom", &rom, UTILS_AUXILIARY_ROM ); + + if( error != -1 && ! using_opense_rom ) { + + extern int config_file_present; + using_opense_rom = 1; + + if( ! config_file_present ) { + ui_error( UI_ERROR_INFO, "Original Spectrum ROM '%s' not found.\n" + "Using opense.rom instead.\n" + "See README.Debian for details.", filename ); + } + } + + } else if(! strcmp( filename, "128-0.rom" ) || + ! strcmp( filename, "plus2-0.rom" ) || + ! strcmp( filename, "plus3-0.rom" ) || + ! strcmp( filename, "plus3-2.rom" ) ) { + + error = utils_read_auxiliary_file( "opense-stub.rom", &rom, UTILS_AUXILIARY_ROM ); + + } + + } + if( error == -1 ) { ui_error( UI_ERROR_ERROR, "couldn't find ROM '%s' - See README.Debian for details", filename ); return 1; Index: fuse-emulator/settings.pl =================================================================== --- fuse-emulator.orig/settings.pl +++ fuse-emulator/settings.pl @@ -104,6 +104,7 @@ print hashline( __LINE__ ), << 'CODE'; /* The current settings of options, etc */ settings_info settings_current; +int config_file_present = 0; /* The default settings of options, etc */ settings_info settings_default = { @@ -195,6 +196,8 @@ read_config_file( settings_info *setting xmlFreeDoc( doc ); + config_file_present = 1; + return 0; } Index: fuse-emulator/settings.c =================================================================== --- fuse-emulator.orig/settings.c +++ fuse-emulator/settings.c @@ -65,6 +65,7 @@ /* The current settings of options, etc */ settings_info settings_current; +int config_file_present = 0; /* The default settings of options, etc */ settings_info settings_default = { @@ -359,6 +360,8 @@ read_config_file( settings_info *setting xmlFreeDoc( doc ); + config_file_present = 1; + return 0; } debian/patches/rom-search-path.patch0000644000000000000000000000436512156304566014650 0ustar From: Alberto Garcia Description: New search paths for ROM files Add ~/.spectrum-roms and /usr/local/share/spectrum-roms to the ROM search path so users can install those not available in Debian. . See the README.Debian file for more details. Forwarded: http://sourceforge.net/mailarchive/message.php?msg_id=27293756 Index: fuse-emulator/compat/linux/paths.c =================================================================== --- fuse-emulator.orig/compat/linux/paths.c +++ fuse-emulator/compat/linux/paths.c @@ -107,8 +107,16 @@ compat_get_next_path( path_context *ctx path_segment ); return 1; - /* Then where we may have installed the data files */ case 2: + snprintf( ctx->path, PATH_MAX, "%s/.spectrum-roms", compat_get_home_path() ); + return 1; + + case 3: + strncpy( ctx->path, "/usr/local/share/spectrum-roms", PATH_MAX ); + return 1; + + /* Then where we may have installed the data files */ + case 4: #ifndef ROMSDIR path2 = FUSEDATADIR; @@ -118,7 +126,7 @@ compat_get_next_path( path_context *ctx strncpy( ctx->path, path2, PATH_MAX ); buffer[ PATH_MAX - 1 ] = '\0'; return 1; - case 3: return 0; + case 5: return 0; } ui_error( UI_ERROR_ERROR, "unknown path_context state %d", ctx->state ); fuse_abort(); Index: fuse-emulator/compat/unix/paths.c =================================================================== --- fuse-emulator.orig/compat/unix/paths.c +++ fuse-emulator/compat/unix/paths.c @@ -107,8 +107,16 @@ compat_get_next_path( path_context *ctx path_segment ); return 1; - /* Then where we may have installed the data files */ case 2: + snprintf( ctx->path, PATH_MAX, "%s/.spectrum-roms", compat_get_home_path() ); + return 1; + + case 3: + strncpy( ctx->path, "/usr/local/share/spectrum-roms", PATH_MAX ); + return 1; + + /* Then where we may have installed the data files */ + case 4: #ifndef ROMSDIR path2 = FUSEDATADIR; @@ -118,7 +126,7 @@ compat_get_next_path( path_context *ctx strncpy( ctx->path, path2, PATH_MAX ); buffer[ PATH_MAX - 1 ] = '\0'; return 1; - case 3: return 0; + case 5: return 0; } ui_error( UI_ERROR_ERROR, "unknown path_context state %d", ctx->state ); fuse_abort(); debian/patches/dont-use-sdl-audio.patch0000644000000000000000000000155412156304566015270 0ustar From: Alberto Garcia Subject: Don't use the SDL audio driver, it has issues with pulseaudio Bug: http://sourceforge.net/tracker/?func=detail&aid=3483869&group_id=91293&atid=596648 Forwarded: no Index: fuse-emulator/configure.ac =================================================================== --- fuse-emulator.orig/configure.ac +++ fuse-emulator/configure.ac @@ -558,10 +558,7 @@ dnl Decide which sound routines to use dnl AC_MSG_CHECKING(which sound routines to use) -if test "$UI" = sdl; then - SOUND_LIBADD='sdlsound.$(OBJEXT)' SOUND_LIBS='' sound_fifo=yes - AC_MSG_RESULT(SDL) -elif test "$dxsound_available" = yes; then +if test "$dxsound_available" = yes; then SOUND_LIBADD='dxsound.$(OBJEXT)' SOUND_LIBS='-ldsound -lole32 -ldxguid' AC_MSG_RESULT(DirectX) AC_DEFINE([DIRECTSOUND_VERSION], 0x0700, [DirectX 7 or higher is required]) debian/fuse-emulator-gtk.postinst0000644000000000000000000000015212156304566014354 0ustar #!/bin/sh set -e update-alternatives --install /usr/bin/fuse \ fuse /usr/bin/fuse-gtk 8 #DEBHELPER# debian/watch0000644000000000000000000000015112156304566010224 0ustar version=3 opts="dversionmangle=s/\+dfsg\d+$//" \ http://sf.net/fuse-emulator/fuse-([\d\w.]+)\.tar\.gz debian/source/0000755000000000000000000000000012156304566010476 5ustar debian/source/format0000644000000000000000000000001412156304566011704 0ustar 3.0 (quilt) debian/fuse-emulator-sdl.links0000644000000000000000000000007612156304566013613 0ustar usr/share/man/man1/fuse.1.gz usr/share/man/man1/fuse-sdl.1.gz debian/fuse-emulator-gtk.lintian-overrides0000644000000000000000000000007412156304566016132 0ustar fuse-emulator-gtk: description-synopsis-starts-with-article debian/fuse-emulator-common.lintian-overrides0000644000000000000000000000007712156304566016640 0ustar fuse-emulator-common: description-synopsis-starts-with-article debian/fuse-emulator-common.docs0000644000000000000000000000001712156304566014124 0ustar AUTHORS THANKS debian/fuse-emulator-gtk.links0000644000000000000000000000007612156304566013616 0ustar usr/share/man/man1/fuse.1.gz usr/share/man/man1/fuse-gtk.1.gz debian/README.Debian0000644000000000000000000000347112156304566011244 0ustar Notes about the Debian Fuse package =================================== In order to emulate all ZX Spectrum models and peripherals supported by Fuse you need the ROMs of those machines. Although none of those ROMs are DFSG-compliant, some of them are free for use with emulators. The ones contained in the 'spectrum-roms' package are sufficient to emulate all the original Spectrum models. The others are not essential for most uses, but are required to emulate some peripherals and less known models. Note that some of those might not be freely distributable, or even legal. For a comprehensive list of Spectrum ROMs (not necessarily supported by Fuse) with information about their legal status, visit Philip Kendall's Spectrum ROMs collection: http://www.shadowmagic.org.uk/spectrum/roms.html If you want to use ROM files not available in Debian, you can put them in ~/.spectrum-roms or /usr/local/share/spectrum-roms and Fuse will automatically find them. Or you can use the --rom-* command-line options (see the fuse manual page for more details). You can also install the 'opense-basic' package as an alternative to 'spectrum-roms'. OpenSE BASIC is replacement for the original Spectrum ROM that is distributed under the GNU GPL and is compatible with a large number of programs. The Debian version of Fuse will try to use OpenSE BASIC automatically if the original ROMs are not found. As a last thing, there's the Open82 project, also a replacement for the Spectrum ROM distributed under the GNU GPL. However, it is still incomplete and the number of programs that it can run is limited. At the time of this writing it lacks some important functionalities, including the BASIC editor. http://open82.sourceforge.net/ http://scratchpad.wikia.com/wiki/Open82 -- Alberto Garcia , Fri, 3 Jun 2011 15:58:41 +0300 debian/fuse-emulator-common.install0000644000000000000000000000006112156304566014641 0ustar menu_data.ui usr/share/fuse debian/tmp/usr/share