aboutsummaryrefslogtreecommitdiff
path: root/emulators/fuse
diff options
context:
space:
mode:
authorSergei Kolobov <sergei@FreeBSD.org>2003-10-29 16:20:57 +0000
committerSergei Kolobov <sergei@FreeBSD.org>2003-10-29 16:20:57 +0000
commit8d87a71c306d0c7335af7421c61d540b8110511d (patch)
treebb167d75bab069e61283ffabbee1410785b6c725 /emulators/fuse
parent6098698feace84a611f0e877a6c0d556b2a59400 (diff)
downloadports-8d87a71c306d0c7335af7421c61d540b8110511d.tar.gz
ports-8d87a71c306d0c7335af7421c61d540b8110511d.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>
Notes
Notes: svn path=/head/; revision=92575
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 000000000000..5c7736c9b77d
--- /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 000000000000..c4bfc9f7c60f
--- /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 000000000000..68110410f463
--- /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 000000000000..4e3be61c9282
--- /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 000000000000..f8a68f9bfbc9
--- /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 000000000000..3abf1f8b92f1
--- /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 000000000000..a29ec6f2ffc3
--- /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 000000000000..437869634baa
--- /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%%