aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--emulators/Makefile1
-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
9 files changed, 188 insertions, 0 deletions
diff --git a/emulators/Makefile b/emulators/Makefile
index 490af680ba4e..ba3555478d02 100644
--- a/emulators/Makefile
+++ b/emulators/Makefile
@@ -21,6 +21,7 @@
SUBDIR += fmsx
SUBDIR += freesci
SUBDIR += frodo
+ SUBDIR += fuse
SUBDIR += gbe
SUBDIR += generator
SUBDIR += gngb
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%%