aboutsummaryrefslogtreecommitdiffstats
path: root/emulators/fuse
diff options
context:
space:
mode:
authorsergei <sergei@FreeBSD.org>2003-10-30 00:20:57 +0800
committersergei <sergei@FreeBSD.org>2003-10-30 00:20:57 +0800
commit5fcfc115eb185189b9227416033e138facd6c297 (patch)
treec1ca63aa8170062401a85fffcbfc6f745ea3a951 /emulators/fuse
parenta51b901b27411c7a8571fc678d2a26585366497c (diff)
downloadfreebsd-ports-graphics-5fcfc115eb185189b9227416033e138facd6c297.tar.gz
freebsd-ports-graphics-5fcfc115eb185189b9227416033e138facd6c297.tar.zst
freebsd-ports-graphics-5fcfc115eb185189b9227416033e138facd6c297.zip
Add fuse 0.6.1.1, Free Unix (Sinclair ZX-)Spectrum Emulator.
fuse is a free version of a ZX Spectrum emulator. It emulates the 48K/128K/+2/+2A/+3 Speccy and Timex TC2048 machine, supports loading from .tzx files, has sound and kempston joystick emulation, and emulates various printers you could attach to the Spectrum. It supports the new RZX input recording file format. Author: Philip Kendall <pak21-spectrum@srcf.ucam.org> WWW: http://www.srcf.ucam.org/~pak21/spectrum/fuse.html PR: 58639 Submitted by: Alexey V. Antipovsky <kemm@in-line.ru>
Diffstat (limited to 'emulators/fuse')
-rw-r--r--emulators/fuse/Makefile85
-rw-r--r--emulators/fuse/distinfo1
-rw-r--r--emulators/fuse/files/patch-compat.h11
-rw-r--r--emulators/fuse/files/patch-osssound.c18
-rw-r--r--emulators/fuse/files/patch-ui_ggi_ggikeyboard.c.patch11
-rw-r--r--emulators/fuse/files/patch-z80_z80.pl15
-rw-r--r--emulators/fuse/pkg-descr12
-rw-r--r--emulators/fuse/pkg-plist34
8 files changed, 187 insertions, 0 deletions
diff --git a/emulators/fuse/Makefile b/emulators/fuse/Makefile
new file mode 100644
index 00000000000..5c7736c9b77
--- /dev/null
+++ b/emulators/fuse/Makefile
@@ -0,0 +1,85 @@
+# New ports collection makefile for: fuse
+# Date created: 2003-10-28
+# Whom: Alexey V. Antipovsky <kemm@in-line.ru>
+#
+# $FreeBSD$
+#
+
+PORTNAME= fuse
+PORTVERSION= 0.6.1.1
+CATEGORIES= emulators
+MASTER_SITES= ${MASTER_SITE_SOURCEFORGE}
+MASTER_SITE_SUBDIR= fuse-emulator
+
+MAINTAINER= kemm@in-line.ru
+COMMENT= Free Unix (Sinclair ZX-)Spectrum Emulator
+
+LIB_DEPENDS= spectrum.2:${PORTSDIR}/emulators/libspectrum \
+ 765.3:${PORTSDIR}/emulators/lib765 \
+ xml2.5:${PORTSDIR}/textproc/libxml2 \
+ png.5:${PORTSDIR}/graphics/png
+
+USE_XLIB= yes
+USE_PERL5_BUILD= yes
+GNU_CONFIGURE= yes
+CONFIGURE_ARGS= --with-plus3-disk-prefix=${LOCALBASE}
+
+.if defined(WITH_SMALLMEM)
+CONFIGURE_ARGS+= --enable-smallmem
+.endif
+
+.if !defined(WITHOUT_GTK)
+USE_GNOME= gtk12
+.else
+CONFIGURE_ARGS+= --without-gtk
+.endif
+
+.if defined(WITH_SDL)
+CONFIGURE_ARGS+= --with-sdl
+USE_SDL= yes
+.endif
+
+.if defined(WITH_SVGALIB)
+CONFIGURE_ARGS+= --with-svgalib
+LIB_DEPENDS+= vga.1:${PORTSDIR}/graphics/svgalib
+.endif
+
+.if defined(WITH_GGI)
+CONFIGURE_ARGS+= --with-ggi
+LIB_DEPENDS+= ggi.2:${PORTSDIR}/graphics/libggi
+.endif
+
+.if defined(WITH_GTK2)
+CONFIGURE_ARGS+= --with-gtk2
+USE_GNOME+= gtk20
+.endif
+
+.if defined(WITH_GCRYPT) || exists(${LOCALBASE}/include/gcrypt.h)
+CONFIGURE_ENV+= LDFLAGS="-L${LOCALBASE}/lib"
+LIB_DEPENDS+= gcrypt.6:${PORTSDIR}/security/libgcrypt
+.endif
+
+MAN1= fuse.1
+DOCS= AUTHORS ChangeLog README THANKS
+
+pre-everything::
+ @${ECHO_MSG} ${CONFIGURE_ARGS}
+ @${ECHO_MSG} ""
+ @${ECHO_MSG} "You may use the following build options:"
+ @${ECHO_MSG} ""
+ @${ECHO_MSG} " WITH_SMALLMEM=yes low memory compile needed"
+ @${ECHO_MSG} " WITHOUT_GTK=yes don't use GTK1 user interface"
+ @${ECHO_MSG} " WITH_SDL=yes use SDL user interface"
+ @${ECHO_MSG} " WITH_SVGALIB=yes use SVGAlib user interface"
+ @${ECHO_MSG} " WITH_GGI=yes use GGI user interface"
+ @${ECHO_MSG} " WITH_GTK2=yes use GTK2 user interface"
+ @${ECHO_MSG} " WITH_GCRYPT=yes support digital signing of .RZX files"
+ @${ECHO_MSG} ""
+
+.if !defined(NOPORTDOCS)
+post-install:
+ @${MKDIR} ${DOCSDIR}
+ cd ${WRKSRC} && ${INSTALL_DATA} ${DOCS} ${DOCSDIR}
+.endif
+
+.include <bsd.port.mk>
diff --git a/emulators/fuse/distinfo b/emulators/fuse/distinfo
new file mode 100644
index 00000000000..c4bfc9f7c60
--- /dev/null
+++ b/emulators/fuse/distinfo
@@ -0,0 +1 @@
+MD5 (fuse-0.6.1.1.tar.gz) = 6738574d0f01f758ed352a6d3cb5f4b1
diff --git a/emulators/fuse/files/patch-compat.h b/emulators/fuse/files/patch-compat.h
new file mode 100644
index 00000000000..68110410f46
--- /dev/null
+++ b/emulators/fuse/files/patch-compat.h
@@ -0,0 +1,11 @@
+--- compat.h.orig Sat Sep 13 16:53:04 2003
++++ compat.h Tue Oct 28 12:48:07 2003
+@@ -45,7 +45,7 @@
+
+ /* Replacement functions */
+ #ifndef HAVE_GETOPT_LONG
+-#include "compat/getopt.h"
++#include "getopt.h"
+ #endif /* #ifndef HAVE_GETOPT_LONG */
+
+ #ifndef HAVE_MKSTEMP
diff --git a/emulators/fuse/files/patch-osssound.c b/emulators/fuse/files/patch-osssound.c
new file mode 100644
index 00000000000..4e3be61c928
--- /dev/null
+++ b/emulators/fuse/files/patch-osssound.c
@@ -0,0 +1,18 @@
+--- osssound.c.orig Sat Sep 13 16:53:12 2003
++++ osssound.c Tue Oct 28 17:19:06 2003
+@@ -107,6 +107,7 @@
+ return 1;
+ }
+
++#if 0
+ if(*freqptr>8250) frag++;
+ if(*freqptr>16500) frag++;
+ if(*freqptr>33000) frag++;
+@@ -118,6 +119,7 @@
+ close(soundfd);
+ return 1;
+ }
++#endif
+
+ return 0; /* success */
+ }
diff --git a/emulators/fuse/files/patch-ui_ggi_ggikeyboard.c.patch b/emulators/fuse/files/patch-ui_ggi_ggikeyboard.c.patch
new file mode 100644
index 00000000000..f8a68f9bfbc
--- /dev/null
+++ b/emulators/fuse/files/patch-ui_ggi_ggikeyboard.c.patch
@@ -0,0 +1,11 @@
+--- ui/ggi/ggikeyboard.c.orig Sat Sep 13 16:53:48 2003
++++ ui/ggi/ggikeyboard.c Tue Oct 28 14:52:14 2003
+@@ -43,6 +43,8 @@
+ #include "widget/widget.h"
+ #endif /* #ifdef USE_WIDGET */
+
++#include "fuse.h"
++
+ void
+ ggikeyboard_keypress( int keysym )
+ {
diff --git a/emulators/fuse/files/patch-z80_z80.pl b/emulators/fuse/files/patch-z80_z80.pl
new file mode 100644
index 00000000000..3abf1f8b92f
--- /dev/null
+++ b/emulators/fuse/files/patch-z80_z80.pl
@@ -0,0 +1,15 @@
+--- z80/z80.pl.orig Sat Sep 13 16:53:54 2003
++++ z80/z80.pl Tue Oct 28 13:00:53 2003
+@@ -1128,9 +1128,10 @@
+
+ {
+ no strict qw( refs );
++ my $func = "opcode_$opcode";
+
+- if( exists &{ "opcode_$opcode" } ) {
+- "opcode_$opcode"->( @arguments );
++ if( defined (&$func) ) {
++ &$func( @arguments );
+ }
+ }
+
diff --git a/emulators/fuse/pkg-descr b/emulators/fuse/pkg-descr
new file mode 100644
index 00000000000..a29ec6f2ffc
--- /dev/null
+++ b/emulators/fuse/pkg-descr
@@ -0,0 +1,12 @@
+fuse is a free version of a ZX Spectrum emulator. It emulates
+the 48K/128K/+2/+2A/+3 Speccy and Timex TC2048 machine, supports
+loading from .tzx files, has sound and kempston joystick emulation,
+and emulates various printers you could attach to the Spectrum.
+It supports the new RZX input recording file format.
+
+Author: Philip Kendall <pak21-spectrum@srcf.ucam.org>
+WWW: http://www.srcf.ucam.org/~pak21/spectrum/fuse.html
+
+--
+Alexey V. Antipovsky
+kemm@in-line.ru
diff --git a/emulators/fuse/pkg-plist b/emulators/fuse/pkg-plist
new file mode 100644
index 00000000000..437869634ba
--- /dev/null
+++ b/emulators/fuse/pkg-plist
@@ -0,0 +1,34 @@
+@comment $FreeBSD$
+bin/fuse
+share/fuse/disk_plus3.z80
+share/fuse/keyboard.scr
+share/fuse/tape_128.z80
+share/fuse/tape_16.z80
+share/fuse/tape_2048.z80
+share/fuse/tape_2068.z80
+share/fuse/tape_48.z80
+share/fuse/tape_plus2.z80
+share/fuse/tape_plus2a.z80
+share/fuse/tape_plus3.z80
+share/fuse/tape_pentagon.z80
+share/fuse/128-0.rom
+share/fuse/128-1.rom
+share/fuse/48.rom
+share/fuse/plus2-0.rom
+share/fuse/plus2-1.rom
+share/fuse/plus3-0.rom
+share/fuse/plus3-1.rom
+share/fuse/plus3-2.rom
+share/fuse/plus3-3.rom
+share/fuse/tc2048.rom
+share/fuse/tc2068-0.rom
+share/fuse/tc2068-1.rom
+share/fuse/128p-0.rom
+share/fuse/128p-1.rom
+share/fuse/trdos.rom
+@dirrm share/fuse
+%%PORTDOCS%%%%DOCSDIR%%/AUTHORS
+%%PORTDOCS%%%%DOCSDIR%%/ChangeLog
+%%PORTDOCS%%%%DOCSDIR%%/README
+%%PORTDOCS%%%%DOCSDIR%%/THANKS
+%%PORTDOCS%%@dirrm %%DOCSDIR%%