[Midnightbsd-cvs] mports [22207] trunk/emulators: add vba
laffer1 at midnightbsd.org
laffer1 at midnightbsd.org
Sun Jan 1 20:19:37 EST 2017
Revision: 22207
http://svnweb.midnightbsd.org/mports/?rev=22207
Author: laffer1
Date: 2017-01-01 20:19:37 -0500 (Sun, 01 Jan 2017)
Log Message:
-----------
add vba
Modified Paths:
--------------
trunk/emulators/Makefile
Added Paths:
-----------
trunk/emulators/vba/
trunk/emulators/vba/Makefile
trunk/emulators/vba/distinfo
trunk/emulators/vba/files/
trunk/emulators/vba/files/patch-Makefile.in
trunk/emulators/vba/files/patch-deprecatedsigc++
trunk/emulators/vba/files/patch-src-System.h
trunk/emulators/vba/files/patch-src-Util.cpp
trunk/emulators/vba/files/patch-src-getopt.h
trunk/emulators/vba/files/patch-src-prof_gmon.h
trunk/emulators/vba/files/patch-src-prof_prof.cpp
trunk/emulators/vba/files/patch-src-remote.cpp
trunk/emulators/vba/files/patch-src-sdl-SDL.cpp
trunk/emulators/vba/files/patch-src-sdl_debugger.cpp
trunk/emulators/vba/files/pkg-message.in
trunk/emulators/vba/pkg-descr
trunk/emulators/vba/pkg-plist
Modified: trunk/emulators/Makefile
===================================================================
--- trunk/emulators/Makefile 2017-01-02 01:11:57 UTC (rev 22206)
+++ trunk/emulators/Makefile 2017-01-02 01:19:37 UTC (rev 22207)
@@ -25,6 +25,7 @@
SUBDIR += snes9x
SUBDIR += tpm-emulator
SUBDIR += vMac
+SUBDIR += vba
SUBDIR += virtio-kmod
SUBDIR += virtualbox-ose-kmod
SUBDIR += vxtools
Added: trunk/emulators/vba/Makefile
===================================================================
--- trunk/emulators/vba/Makefile (rev 0)
+++ trunk/emulators/vba/Makefile 2017-01-02 01:19:37 UTC (rev 22207)
@@ -0,0 +1,66 @@
+# Created by: Alexander Best <arundel at gmx.net>
+# $FreeBSD: head/emulators/vba/Makefile 412346 2016-04-01 14:00:51Z mat $
+# $MidnightBSD$
+
+PORTNAME= vba
+PORTVERSION= 1.7.2
+CATEGORIES= emulators
+MASTER_SITES= SF/${PORTNAME}/VisualBoyAdvance/${PORTVERSION}
+DISTNAME= VisualBoyAdvance-src-${PORTVERSION}
+
+MAINTAINER= ports at MidnightBSD.org
+COMMENT= Open source Gameboy Advance emulator
+
+LICENSE= gpl2
+
+BUILD_DEPENDS= nasm:${PORTSDIR}/devel/nasm
+LIB_DEPENDS= libpng.so:${PORTSDIR}/graphics/png
+
+USES= gettext gmake
+GNU_CONFIGURE= yes
+USE_SDL= sdl
+
+CPPFLAGS+= -I${LOCALBASE}/include
+LIBS+= -L${LOCALBASE}/lib -lintl
+
+WRKSRC= ${WRKDIR}/VisualBoyAdvance-${PORTVERSION}
+SUB_FILES= pkg-message
+
+DATA_FILES= ${WRKSRC}/src/VisualBoyAdvance.cfg
+PROG_FILES= ${WRKSRC}/src/sdl/VisualBoyAdvance
+PORTDOCS= AUTHORS NEWS README ChangeLog
+
+OPTIONS_DEFINE= DOCS GTK2 PROFILING
+OPTIONS_SUB= yes
+PROFILING_DESC= Enable profiling
+
+GTK2_CONFIGURE_ON= --enable-gtk=2.4
+GTK2_LIB_DEPENDS= libglademm-2.4.so:${PORTSDIR}/devel/libglademm24
+GTK2_USES= pkgconfig
+PROFILING_CONFIGURE_ENABLE= profiling
+
+.include <bsd.mport.options.mk>
+
+.if ${PORT_OPTIONS:MGTK2}
+PROG_FILES+= ${WRKSRC}/src/gtk/gvba
+GTK2_DATA_FILES= ${WRKSRC}/src/gtk/vba.glade
+.endif
+
+post-patch:
+ @${REINPLACE_CMD} -e '/for(int i = 0; i < 16; i++/s| i|&_|g' \
+ ${WRKSRC}/src/sdl/debugger.cpp
+ @${REINPLACE_CMD} -e '/^namespace std/ { x; \
+ s|^|#include <sys/types.h>|; H; x; }' ${WRKSRC}/src/expr.cpp
+
+do-install:
+ ${INSTALL_PROGRAM} ${PROG_FILES} ${STAGEDIR}${PREFIX}/bin
+.if ${PORT_OPTIONS:MGTK2}
+ ${MKDIR} ${STAGEDIR}${PREFIX}/share/VisualBoyAdvance
+ ${INSTALL_DATA} ${GTK2_DATA_FILES} ${STAGEDIR}${PREFIX}/share/VisualBoyAdvance
+.endif
+ ${SED} -e 's|filter=0|filter=1|' ${DATA_FILES} > ${DATA_FILES}-default
+ ${INSTALL_DATA} ${DATA_FILES}-default ${STAGEDIR}${PREFIX}/bin
+ ${MKDIR} ${STAGEDIR}${DOCSDIR}
+ ${INSTALL_DATA} ${PORTDOCS:S|^|${WRKSRC}/|} ${STAGEDIR}${DOCSDIR}
+
+.include <bsd.port.mk>
Property changes on: trunk/emulators/vba/Makefile
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:keywords
## -0,0 +1 ##
+MidnightBSD=%H
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: trunk/emulators/vba/distinfo
===================================================================
--- trunk/emulators/vba/distinfo (rev 0)
+++ trunk/emulators/vba/distinfo 2017-01-02 01:19:37 UTC (rev 22207)
@@ -0,0 +1,2 @@
+SHA256 (VisualBoyAdvance-src-1.7.2.tar.gz) = f4114f921a4fd4bf2ccfc68a46b9c5aa9c71cd94519fbe9ec0be992462e129b7
+SIZE (VisualBoyAdvance-src-1.7.2.tar.gz) = 1410762
Property changes on: trunk/emulators/vba/distinfo
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: trunk/emulators/vba/files/patch-Makefile.in
===================================================================
--- trunk/emulators/vba/files/patch-Makefile.in (rev 0)
+++ trunk/emulators/vba/files/patch-Makefile.in 2017-01-02 01:19:37 UTC (rev 22207)
@@ -0,0 +1,11 @@
+--- Makefile.in.orig Thu Oct 13 13:38:04 2005
++++ Makefile.in Thu Oct 13 13:38:12 2005
+@@ -46,7 +46,7 @@
+ AWK = @AWK@
+ CC = @CC@
+ CCDEPMODE = @CCDEPMODE@
+-CFLAGS = @CFLAGS@
++CFLAGS += @CFLAGS@
+ CPP = @CPP@
+ CPPFLAGS = @CPPFLAGS@
+ CXX = @CXX@
Property changes on: trunk/emulators/vba/files/patch-Makefile.in
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: trunk/emulators/vba/files/patch-deprecatedsigc++
===================================================================
--- trunk/emulators/vba/files/patch-deprecatedsigc++ (rev 0)
+++ trunk/emulators/vba/files/patch-deprecatedsigc++ 2017-01-02 01:19:37 UTC (rev 22207)
@@ -0,0 +1,702 @@
+#! /bin/sh /usr/share/dpatch/dpatch-run
+## 09_deprecatedsigc++.dpatch by Kjang Gwreuung-Kuq
+##
+## All lines beginning with `## DP:' are a description of the patch.
+## DP: Inject deprecated libsigc++ code.
+## DP: From http://bugs.gentoo.org/215985
+## DP: From ftp://ftp.uni-erlangen.de/pub/mirrors/gentoo/distfiles/visualboyadvance-1.7.2-deprecatedsigc++.patch.bz2
+
+
+ at DPATCH@
+--- src/gtk/sigccompat.h.orig 2008-05-02 10:46:45.000000000 +0200
++++ src/gtk/sigccompat.h 2008-05-02 10:47:08.000000000 +0200
+@@ -20,7 +20,7 @@
+ #ifndef __VBA_SIGCCOMPAT_H__
+ #define __VBA_SIGCCOMPAT_H__
+
+-#undef LIBSIGC_DISABLE_DEPRECATED
++#define LIBSIGC_DISABLE_DEPRECATED
+ #include <sigc++/bind.h>
+ #include <sigc++/connection.h>
+
+@@ -28,9 +28,679 @@
+ #include <sigc++/object.h>
+ #include <sigc++/functors/mem_fun.h>
+
+-namespace SigC
++
++// From sigc++/bind.h
++namespace SigC {
++
++template <class T_bound1, class T_functor>
++inline ::sigc::bind_functor<-1, T_functor,
++ typename ::sigc::unwrap_reference<T_bound1>::type>
++bind(const T_functor& _A_functor, T_bound1 _A_b1)
++{ return ::sigc::bind_functor<-1, T_functor,
++ typename ::sigc::unwrap_reference<T_bound1>::type>
++ (_A_functor, _A_b1);
++}
++
++template <class T_bound1, class T_bound2, class T_functor>
++inline ::sigc::bind_functor<-1, T_functor,
++ typename ::sigc::unwrap_reference<T_bound1>::type,
++ typename ::sigc::unwrap_reference<T_bound2>::type>
++bind(const T_functor& _A_functor, T_bound1 _A_b1, T_bound2 _A_b2)
++{ return ::sigc::bind_functor<-1, T_functor,
++ typename ::sigc::unwrap_reference<T_bound1>::type,
++ typename ::sigc::unwrap_reference<T_bound2>::type>
++ (_A_functor, _A_b1, _A_b2);
++}
++
++template <class T_bound1, class T_bound2, class T_bound3, class T_functor>
++inline ::sigc::bind_functor<-1, T_functor,
++ typename ::sigc::unwrap_reference<T_bound1>::type,
++ typename ::sigc::unwrap_reference<T_bound2>::type,
++ typename ::sigc::unwrap_reference<T_bound3>::type>
++bind(const T_functor& _A_functor, T_bound1 _A_b1, T_bound2 _A_b2,T_bound3 _A_b3)
++{ return ::sigc::bind_functor<-1, T_functor,
++ typename ::sigc::unwrap_reference<T_bound1>::type,
++ typename ::sigc::unwrap_reference<T_bound2>::type,
++ typename ::sigc::unwrap_reference<T_bound3>::type>
++ (_A_functor, _A_b1, _A_b2, _A_b3);
++}
++
++}
++
++// From sigc++/connection.h
++namespace SigC {
++
++/** Convinience class for safe disconnection.
++ * Iterators must not be used beyond the lifetime of the list
++ * they work on. A connection object can be created from a
++ * slot list iterator and may safely be used to disconnect
++ * the referred slot at any time (disconnect()). If the slot
++ * has already been destroyed, disconnect() does nothing. empty() or
++ * operator bool() can be used to test whether the connection is
++ * still active. The connection can be blocked (block(), unblock()).
++ *
++ * This is possible because the connection object gets notified
++ * when the referred slot dies (notify()).
++ *
++ * @deprecated Use sigc::connection instead.
++ * @ingroup compat
++ */
++typedef ::sigc::connection Connection;
++
++}
++
++// From sigc++/slot.h
++namespace SigC {
++
++// SlotN
++/** Converts an arbitrary functor to a unified type which is opaque.
++ * Slot0 itself is a functor or to be more precise a closure. It contains
++ * a single, arbitrary functor (or closure) that is executed in operator()().
++ *
++ * The template arguments determine the function signature of operator()():
++ * - @e T_return The return type of operator()().
++ *
++ * To use simply assign the slot to the desired functor. If the functor
++ * is not compatible with the parameter list defined with the template
++ * arguments compiler errors are triggered. When called the slot
++ * will invoke the functor with minimal copies.
++ * block() and unblock() can be used to block the functor's invocation
++ * from operator()() temporarily.
++ *
++ * @par Example:
++ * @code
++ * #include <sigc++/slot.h>
++ * void foo(int) {}
++ * SigC::Slot1<void, long> s = SigC::slot(&foo);
++ * s(19);
++ * @endcode
++ *
++ * @deprecated Use the unnumbered template sigc::slot instead.
++ * @ingroup compat
++ */
++template <class T_return>
++class Slot0
++ : public ::sigc::slot<T_return>
++{
++public:
++ typedef ::sigc::slot<T_return> parent_type;
++
++ /// Constructs an empty slot.
++ Slot0() {}
++
++ /** Constructs a slot from an arbitrary functor.
++ * @param _A_func The desired functor the new slot should be assigned to.
++ */
++ template <class T_functor>
++ Slot0(const T_functor& _A_func)
++ : ::sigc::slot<T_return>(_A_func) {}
++
++ /** Constructs a slot, copying an existing one.
++ * @param src The existing slot to copy.
++ */
++ Slot0(const parent_type& src)
++ : parent_type(src) {}
++
++ /** Overrides this slot making a copy from another slot.
++ * @param src The slot from which to make a copy.
++ * @return @p this.
++ */
++ Slot0& operator=(const parent_type& src)
++ { parent_type::operator=(src); return *this; }
++};
++
++/** Converts an arbitrary functor to a unified type which is opaque.
++ * Slot1 itself is a functor or to be more precise a closure. It contains
++ * a single, arbitrary functor (or closure) that is executed in operator()().
++ *
++ * The template arguments determine the function signature of operator()():
++ * - @e T_return The return type of operator()().
++ * - @e T_arg1 Argument type used in the definition of operator()().
++ *
++ * To use simply assign the slot to the desired functor. If the functor
++ * is not compatible with the parameter list defined with the template
++ * arguments compiler errors are triggered. When called the slot
++ * will invoke the functor with minimal copies.
++ * block() and unblock() can be used to block the functor's invocation
++ * from operator()() temporarily.
++ *
++ * @par Example:
++ * @code
++ * #include <sigc++/slot.h>
++ * void foo(int) {}
++ * SigC::Slot1<void, long> s = SigC::slot(&foo);
++ * s(19);
++ * @endcode
++ *
++ * @deprecated Use the unnumbered template sigc::slot instead.
++ * @ingroup compat
++ */
++template <class T_return, class T_arg1>
++class Slot1
++ : public ::sigc::slot<T_return, T_arg1>
++{
++public:
++ typedef ::sigc::slot<T_return, T_arg1> parent_type;
++
++ /// Constructs an empty slot.
++ Slot1() {}
++
++ /** Constructs a slot from an arbitrary functor.
++ * @param _A_func The desired functor the new slot should be assigned to.
++ */
++ template <class T_functor>
++ Slot1(const T_functor& _A_func)
++ : ::sigc::slot<T_return, T_arg1>(_A_func) {}
++
++ /** Constructs a slot, copying an existing one.
++ * @param src The existing slot to copy.
++ */
++ Slot1(const parent_type& src)
++ : parent_type(src) {}
++
++ /** Overrides this slot making a copy from another slot.
++ * @param src The slot from which to make a copy.
++ * @return @p this.
++ */
++ Slot1& operator=(const parent_type& src)
++ { parent_type::operator=(src); return *this; }
++};
++
++/** Converts an arbitrary functor to a unified type which is opaque.
++ * Slot2 itself is a functor or to be more precise a closure. It contains
++ * a single, arbitrary functor (or closure) that is executed in operator()().
++ *
++ * The template arguments determine the function signature of operator()():
++ * - @e T_return The return type of operator()().
++ * - @e T_arg1 Argument type used in the definition of operator()().
++ * - @e T_arg2 Argument type used in the definition of operator()().
++ *
++ * To use simply assign the slot to the desired functor. If the functor
++ * is not compatible with the parameter list defined with the template
++ * arguments compiler errors are triggered. When called the slot
++ * will invoke the functor with minimal copies.
++ * block() and unblock() can be used to block the functor's invocation
++ * from operator()() temporarily.
++ *
++ * @par Example:
++ * @code
++ * #include <sigc++/slot.h>
++ * void foo(int) {}
++ * SigC::Slot1<void, long> s = SigC::slot(&foo);
++ * s(19);
++ * @endcode
++ *
++ * @deprecated Use the unnumbered template sigc::slot instead.
++ * @ingroup compat
++ */
++template <class T_return, class T_arg1,class T_arg2>
++class Slot2
++ : public ::sigc::slot<T_return, T_arg1,T_arg2>
++{
++public:
++ typedef ::sigc::slot<T_return, T_arg1,T_arg2> parent_type;
++
++ /// Constructs an empty slot.
++ Slot2() {}
++
++ /** Constructs a slot from an arbitrary functor.
++ * @param _A_func The desired functor the new slot should be assigned to.
++ */
++ template <class T_functor>
++ Slot2(const T_functor& _A_func)
++ : ::sigc::slot<T_return, T_arg1,T_arg2>(_A_func) {}
++
++ /** Constructs a slot, copying an existing one.
++ * @param src The existing slot to copy.
++ */
++ Slot2(const parent_type& src)
++ : parent_type(src) {}
++
++ /** Overrides this slot making a copy from another slot.
++ * @param src The slot from which to make a copy.
++ * @return @p this.
++ */
++ Slot2& operator=(const parent_type& src)
++ { parent_type::operator=(src); return *this; }
++};
++
++/** Converts an arbitrary functor to a unified type which is opaque.
++ * Slot3 itself is a functor or to be more precise a closure. It contains
++ * a single, arbitrary functor (or closure) that is executed in operator()().
++ *
++ * The template arguments determine the function signature of operator()():
++ * - @e T_return The return type of operator()().
++ * - @e T_arg1 Argument type used in the definition of operator()().
++ * - @e T_arg2 Argument type used in the definition of operator()().
++ * - @e T_arg3 Argument type used in the definition of operator()().
++ *
++ * To use simply assign the slot to the desired functor. If the functor
++ * is not compatible with the parameter list defined with the template
++ * arguments compiler errors are triggered. When called the slot
++ * will invoke the functor with minimal copies.
++ * block() and unblock() can be used to block the functor's invocation
++ * from operator()() temporarily.
++ *
++ * @par Example:
++ * @code
++ * #include <sigc++/slot.h>
++ * void foo(int) {}
++ * SigC::Slot1<void, long> s = SigC::slot(&foo);
++ * s(19);
++ * @endcode
++ *
++ * @deprecated Use the unnumbered template sigc::slot instead.
++ * @ingroup compat
++ */
++template <class T_return, class T_arg1,class T_arg2,class T_arg3>
++class Slot3
++ : public ::sigc::slot<T_return, T_arg1,T_arg2,T_arg3>
++{
++public:
++ typedef ::sigc::slot<T_return, T_arg1,T_arg2,T_arg3> parent_type;
++
++ /// Constructs an empty slot.
++ Slot3() {}
++
++ /** Constructs a slot from an arbitrary functor.
++ * @param _A_func The desired functor the new slot should be assigned to.
++ */
++ template <class T_functor>
++ Slot3(const T_functor& _A_func)
++ : ::sigc::slot<T_return, T_arg1,T_arg2,T_arg3>(_A_func) {}
++
++ /** Constructs a slot, copying an existing one.
++ * @param src The existing slot to copy.
++ */
++ Slot3(const parent_type& src)
++ : parent_type(src) {}
++
++ /** Overrides this slot making a copy from another slot.
++ * @param src The slot from which to make a copy.
++ * @return @p this.
++ */
++ Slot3& operator=(const parent_type& src)
++ { parent_type::operator=(src); return *this; }
++};
++
++/** Converts an arbitrary functor to a unified type which is opaque.
++ * Slot4 itself is a functor or to be more precise a closure. It contains
++ * a single, arbitrary functor (or closure) that is executed in operator()().
++ *
++ * The template arguments determine the function signature of operator()():
++ * - @e T_return The return type of operator()().
++ * - @e T_arg1 Argument type used in the definition of operator()().
++ * - @e T_arg2 Argument type used in the definition of operator()().
++ * - @e T_arg3 Argument type used in the definition of operator()().
++ * - @e T_arg4 Argument type used in the definition of operator()().
++ *
++ * To use simply assign the slot to the desired functor. If the functor
++ * is not compatible with the parameter list defined with the template
++ * arguments compiler errors are triggered. When called the slot
++ * will invoke the functor with minimal copies.
++ * block() and unblock() can be used to block the functor's invocation
++ * from operator()() temporarily.
++ *
++ * @par Example:
++ * @code
++ * #include <sigc++/slot.h>
++ * void foo(int) {}
++ * SigC::Slot1<void, long> s = SigC::slot(&foo);
++ * s(19);
++ * @endcode
++ *
++ * @deprecated Use the unnumbered template sigc::slot instead.
++ * @ingroup compat
++ */
++template <class T_return, class T_arg1,class T_arg2,class T_arg3,class T_arg4>
++class Slot4
++ : public ::sigc::slot<T_return, T_arg1,T_arg2,T_arg3,T_arg4>
++{
++public:
++ typedef ::sigc::slot<T_return, T_arg1,T_arg2,T_arg3,T_arg4> parent_type;
++
++ /// Constructs an empty slot.
++ Slot4() {}
++
++ /** Constructs a slot from an arbitrary functor.
++ * @param _A_func The desired functor the new slot should be assigned to.
++ */
++ template <class T_functor>
++ Slot4(const T_functor& _A_func)
++ : ::sigc::slot<T_return, T_arg1,T_arg2,T_arg3,T_arg4>(_A_func) {}
++
++ /** Constructs a slot, copying an existing one.
++ * @param src The existing slot to copy.
++ */
++ Slot4(const parent_type& src)
++ : parent_type(src) {}
++
++ /** Overrides this slot making a copy from another slot.
++ * @param src The slot from which to make a copy.
++ * @return @p this.
++ */
++ Slot4& operator=(const parent_type& src)
++ { parent_type::operator=(src); return *this; }
++};
++
++/** Converts an arbitrary functor to a unified type which is opaque.
++ * Slot5 itself is a functor or to be more precise a closure. It contains
++ * a single, arbitrary functor (or closure) that is executed in operator()().
++ *
++ * The template arguments determine the function signature of operator()():
++ * - @e T_return The return type of operator()().
++ * - @e T_arg1 Argument type used in the definition of operator()().
++ * - @e T_arg2 Argument type used in the definition of operator()().
++ * - @e T_arg3 Argument type used in the definition of operator()().
++ * - @e T_arg4 Argument type used in the definition of operator()().
++ * - @e T_arg5 Argument type used in the definition of operator()().
++ *
++ * To use simply assign the slot to the desired functor. If the functor
++ * is not compatible with the parameter list defined with the template
++ * arguments compiler errors are triggered. When called the slot
++ * will invoke the functor with minimal copies.
++ * block() and unblock() can be used to block the functor's invocation
++ * from operator()() temporarily.
++ *
++ * @par Example:
++ * @code
++ * #include <sigc++/slot.h>
++ * void foo(int) {}
++ * SigC::Slot1<void, long> s = SigC::slot(&foo);
++ * s(19);
++ * @endcode
++ *
++ * @deprecated Use the unnumbered template sigc::slot instead.
++ * @ingroup compat
++ */
++template <class T_return, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5>
++class Slot5
++ : public ::sigc::slot<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5>
++{
++public:
++ typedef ::sigc::slot<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5> parent_type;
++
++ /// Constructs an empty slot.
++ Slot5() {}
++
++ /** Constructs a slot from an arbitrary functor.
++ * @param _A_func The desired functor the new slot should be assigned to.
++ */
++ template <class T_functor>
++ Slot5(const T_functor& _A_func)
++ : ::sigc::slot<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5>(_A_func) {}
++
++ /** Constructs a slot, copying an existing one.
++ * @param src The existing slot to copy.
++ */
++ Slot5(const parent_type& src)
++ : parent_type(src) {}
++
++ /** Overrides this slot making a copy from another slot.
++ * @param src The slot from which to make a copy.
++ * @return @p this.
++ */
++ Slot5& operator=(const parent_type& src)
++ { parent_type::operator=(src); return *this; }
++};
++
++/** Converts an arbitrary functor to a unified type which is opaque.
++ * Slot6 itself is a functor or to be more precise a closure. It contains
++ * a single, arbitrary functor (or closure) that is executed in operator()().
++ *
++ * The template arguments determine the function signature of operator()():
++ * - @e T_return The return type of operator()().
++ * - @e T_arg1 Argument type used in the definition of operator()().
++ * - @e T_arg2 Argument type used in the definition of operator()().
++ * - @e T_arg3 Argument type used in the definition of operator()().
++ * - @e T_arg4 Argument type used in the definition of operator()().
++ * - @e T_arg5 Argument type used in the definition of operator()().
++ * - @e T_arg6 Argument type used in the definition of operator()().
++ *
++ * To use simply assign the slot to the desired functor. If the functor
++ * is not compatible with the parameter list defined with the template
++ * arguments compiler errors are triggered. When called the slot
++ * will invoke the functor with minimal copies.
++ * block() and unblock() can be used to block the functor's invocation
++ * from operator()() temporarily.
++ *
++ * @par Example:
++ * @code
++ * #include <sigc++/slot.h>
++ * void foo(int) {}
++ * SigC::Slot1<void, long> s = SigC::slot(&foo);
++ * s(19);
++ * @endcode
++ *
++ * @deprecated Use the unnumbered template sigc::slot instead.
++ * @ingroup compat
++ */
++template <class T_return, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6>
++class Slot6
++ : public ::sigc::slot<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6>
++{
++public:
++ typedef ::sigc::slot<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6> parent_type;
++
++ /// Constructs an empty slot.
++ Slot6() {}
++
++ /** Constructs a slot from an arbitrary functor.
++ * @param _A_func The desired functor the new slot should be assigned to.
++ */
++ template <class T_functor>
++ Slot6(const T_functor& _A_func)
++ : ::sigc::slot<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6>(_A_func) {}
++
++ /** Constructs a slot, copying an existing one.
++ * @param src The existing slot to copy.
++ */
++ Slot6(const parent_type& src)
++ : parent_type(src) {}
++
++ /** Overrides this slot making a copy from another slot.
++ * @param src The slot from which to make a copy.
++ * @return @p this.
++ */
++ Slot6& operator=(const parent_type& src)
++ { parent_type::operator=(src); return *this; }
++};
++
++/** Converts an arbitrary functor to a unified type which is opaque.
++ * Slot7 itself is a functor or to be more precise a closure. It contains
++ * a single, arbitrary functor (or closure) that is executed in operator()().
++ *
++ * The template arguments determine the function signature of operator()():
++ * - @e T_return The return type of operator()().
++ * - @e T_arg1 Argument type used in the definition of operator()().
++ * - @e T_arg2 Argument type used in the definition of operator()().
++ * - @e T_arg3 Argument type used in the definition of operator()().
++ * - @e T_arg4 Argument type used in the definition of operator()().
++ * - @e T_arg5 Argument type used in the definition of operator()().
++ * - @e T_arg6 Argument type used in the definition of operator()().
++ * - @e T_arg7 Argument type used in the definition of operator()().
++ *
++ * To use simply assign the slot to the desired functor. If the functor
++ * is not compatible with the parameter list defined with the template
++ * arguments compiler errors are triggered. When called the slot
++ * will invoke the functor with minimal copies.
++ * block() and unblock() can be used to block the functor's invocation
++ * from operator()() temporarily.
++ *
++ * @par Example:
++ * @code
++ * #include <sigc++/slot.h>
++ * void foo(int) {}
++ * SigC::Slot1<void, long> s = SigC::slot(&foo);
++ * s(19);
++ * @endcode
++ *
++ * @deprecated Use the unnumbered template sigc::slot instead.
++ * @ingroup compat
++ */
++template <class T_return, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6,class T_arg7>
++class Slot7
++ : public ::sigc::slot<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7>
+ {
++public:
++ typedef ::sigc::slot<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7> parent_type;
++
++ /// Constructs an empty slot.
++ Slot7() {}
++
++ /** Constructs a slot from an arbitrary functor.
++ * @param _A_func The desired functor the new slot should be assigned to.
++ */
++ template <class T_functor>
++ Slot7(const T_functor& _A_func)
++ : ::sigc::slot<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7>(_A_func) {}
++
++ /** Constructs a slot, copying an existing one.
++ * @param src The existing slot to copy.
++ */
++ Slot7(const parent_type& src)
++ : parent_type(src) {}
++
++ /** Overrides this slot making a copy from another slot.
++ * @param src The slot from which to make a copy.
++ * @return @p this.
++ */
++ Slot7& operator=(const parent_type& src)
++ { parent_type::operator=(src); return *this; }
++};
++
++
++
++#ifndef DOXYGEN_SHOULD_SKIP_THIS
++/* gcc 3.2 reports a strange conflict between SigC::slot() and sigc::slot<>
++ * when "using namespace SigC" and later using a slot(obj,func) overload
++ * without the prefix "SigC::". Probably a compiler bug. I will investigate.
++ *
++ * This ugly hack avoids the error:
++ */
++// #define slot(...) make_slot(__VA_ARGS__) /* only works for gcc */
++#endif
+
++
++// slot()
++/** Creates a functor of type SigC::Slot0 that wraps an existing non-member function.
++ *
++ * @param _A_func Pointer to function that should be wrapped.
++ * @return Functor that executes _A_func on invokation.
++ *
++ * @deprecated Use sigc::ptr_fun() instead.
++ * @ingroup compat
++ */
++template <class T_return>
++inline Slot0<T_return>
++slot(T_return (*_A_func)())
++{ return Slot0<T_return>(_A_func); }
++
++/** Creates a functor of type SigC::Slot1 that wraps an existing non-member function.
++ *
++ * @param _A_func Pointer to function that should be wrapped.
++ * @return Functor that executes _A_func on invokation.
++ *
++ * @deprecated Use sigc::ptr_fun() instead.
++ * @ingroup compat
++ */
++template <class T_return, class T_arg1>
++inline Slot1<T_return, T_arg1>
++slot(T_return (*_A_func)(T_arg1))
++{ return Slot1<T_return, T_arg1>(_A_func); }
++
++/** Creates a functor of type SigC::Slot2 that wraps an existing non-member function.
++ *
++ * @param _A_func Pointer to function that should be wrapped.
++ * @return Functor that executes _A_func on invokation.
++ *
++ * @deprecated Use sigc::ptr_fun() instead.
++ * @ingroup compat
++ */
++template <class T_return, class T_arg1,class T_arg2>
++inline Slot2<T_return, T_arg1,T_arg2>
++slot(T_return (*_A_func)(T_arg1,T_arg2))
++{ return Slot2<T_return, T_arg1,T_arg2>(_A_func); }
++
++/** Creates a functor of type SigC::Slot3 that wraps an existing non-member function.
++ *
++ * @param _A_func Pointer to function that should be wrapped.
++ * @return Functor that executes _A_func on invokation.
++ *
++ * @deprecated Use sigc::ptr_fun() instead.
++ * @ingroup compat
++ */
++template <class T_return, class T_arg1,class T_arg2,class T_arg3>
++inline Slot3<T_return, T_arg1,T_arg2,T_arg3>
++slot(T_return (*_A_func)(T_arg1,T_arg2,T_arg3))
++{ return Slot3<T_return, T_arg1,T_arg2,T_arg3>(_A_func); }
++
++/** Creates a functor of type SigC::Slot4 that wraps an existing non-member function.
++ *
++ * @param _A_func Pointer to function that should be wrapped.
++ * @return Functor that executes _A_func on invokation.
++ *
++ * @deprecated Use sigc::ptr_fun() instead.
++ * @ingroup compat
++ */
++template <class T_return, class T_arg1,class T_arg2,class T_arg3,class T_arg4>
++inline Slot4<T_return, T_arg1,T_arg2,T_arg3,T_arg4>
++slot(T_return (*_A_func)(T_arg1,T_arg2,T_arg3,T_arg4))
++{ return Slot4<T_return, T_arg1,T_arg2,T_arg3,T_arg4>(_A_func); }
++
++/** Creates a functor of type SigC::Slot5 that wraps an existing non-member function.
++ *
++ * @param _A_func Pointer to function that should be wrapped.
++ * @return Functor that executes _A_func on invokation.
++ *
++ * @deprecated Use sigc::ptr_fun() instead.
++ * @ingroup compat
++ */
++template <class T_return, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5>
++inline Slot5<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5>
++slot(T_return (*_A_func)(T_arg1,T_arg2,T_arg3,T_arg4,T_arg5))
++{ return Slot5<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5>(_A_func); }
++
++/** Creates a functor of type SigC::Slot6 that wraps an existing non-member function.
++ *
++ * @param _A_func Pointer to function that should be wrapped.
++ * @return Functor that executes _A_func on invokation.
++ *
++ * @deprecated Use sigc::ptr_fun() instead.
++ * @ingroup compat
++ */
++template <class T_return, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6>
++inline Slot6<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6>
++slot(T_return (*_A_func)(T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6))
++{ return Slot6<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6>(_A_func); }
++
++/** Creates a functor of type SigC::Slot7 that wraps an existing non-member function.
++ *
++ * @param _A_func Pointer to function that should be wrapped.
++ * @return Functor that executes _A_func on invokation.
++ *
++ * @deprecated Use sigc::ptr_fun() instead.
++ * @ingroup compat
++ */
++template <class T_return, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6,class T_arg7>
++inline Slot7<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7>
++slot(T_return (*_A_func)(T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7))
++{ return Slot7<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7>(_A_func); }
++
++
++
++}
++
++// From sigc++/object.h
++namespace SigC {
++
++// Object
++typedef ::sigc::trackable Object;
++
++}
++
++namespace SigC
++{
+ template <class T_return, class T_obj1, class T_obj2>
+ inline Slot0<T_return>
+ slot( T_obj1& _A_obj, T_return (T_obj2::*_A_func)() )
Property changes on: trunk/emulators/vba/files/patch-deprecatedsigc++
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: trunk/emulators/vba/files/patch-src-System.h
===================================================================
--- trunk/emulators/vba/files/patch-src-System.h (rev 0)
+++ trunk/emulators/vba/files/patch-src-System.h 2017-01-02 01:19:37 UTC (rev 22207)
@@ -0,0 +1,42 @@
+--- src/System.h.orig 2004-05-13 22:02:43.000000000 +0800
++++ src/System.h 2013-07-30 00:13:30.000000000 +0800
+@@ -20,30 +20,31 @@
+ #ifndef VBA_SYSTEM_H
+ #define VBA_SYSTEM_H
+
++#include <inttypes.h>
+ #include "unzip.h"
+
+ #ifndef NULL
+ #define NULL 0
+ #endif
+
+-typedef unsigned char u8;
+-typedef unsigned short u16;
+-typedef unsigned int u32;
++typedef uint8_t u8;
++typedef uint16_t u16;
++typedef uint32_t u32;
+
+ #ifdef _MSC_VER
+ typedef unsigned __int64 u64;
+ #else
+-typedef unsigned long long u64;
++typedef uint64_t u64;
+ #endif
+
+-typedef signed char s8;
+-typedef signed short s16;
+-typedef signed int s32;
++typedef int8_t s8;
++typedef int16_t s16;
++typedef int32_t s32;
+
+ #ifdef _MSC_VER
+ typedef signed __int64 s64;
+ #else
+-typedef signed long long s64;
++typedef int64_t s64;
+ #endif
+
+ struct EmulatedSystem {
Property changes on: trunk/emulators/vba/files/patch-src-System.h
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: trunk/emulators/vba/files/patch-src-Util.cpp
===================================================================
--- trunk/emulators/vba/files/patch-src-Util.cpp (rev 0)
+++ trunk/emulators/vba/files/patch-src-Util.cpp 2017-01-02 01:19:37 UTC (rev 22207)
@@ -0,0 +1,20 @@
+--- src/Util.cpp.orig 2004-05-20 19:42:37.000000000 +0200
++++ src/Util.cpp 2012-05-02 20:49:07.000000000 +0200
+@@ -79,7 +79,7 @@ bool utilWritePNGFile(const char *fileNa
+ return false;
+ }
+
+- if(setjmp(png_ptr->jmpbuf)) {
++ if(setjmp(png_jmpbuf(png_ptr))) {
+ png_destroy_write_struct(&png_ptr,NULL);
+ fclose(fp);
+ return false;
+@@ -984,7 +984,7 @@ void utilWriteData(gzFile gzFile, variab
+
+ gzFile utilGzOpen(const char *file, const char *mode)
+ {
+- utilGzWriteFunc = (int (*)(void *,void * const, unsigned int))gzwrite;
++ utilGzWriteFunc = (int (*)(gzFile, voidp const, unsigned int))gzwrite;
+ utilGzReadFunc = gzread;
+ utilGzCloseFunc = gzclose;
+
Property changes on: trunk/emulators/vba/files/patch-src-Util.cpp
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: trunk/emulators/vba/files/patch-src-getopt.h
===================================================================
--- trunk/emulators/vba/files/patch-src-getopt.h (rev 0)
+++ trunk/emulators/vba/files/patch-src-getopt.h 2017-01-02 01:19:37 UTC (rev 22207)
@@ -0,0 +1,11 @@
+--- src/getopt.h.orig Sun Oct 9 23:31:12 2005
++++ src/getopt.h Sun Oct 9 23:31:25 2005
+@@ -112,7 +112,7 @@
+ extern int getopt (int argc, char *const *argv, const char *shortopts);
+ #else /* not __GNU_LIBRARY__ */
+ # if !defined (HAVE_DECL_GETOPT)
+-extern int getopt ();
++//extern int getopt ();
+ # endif
+ #endif /* __GNU_LIBRARY__ */
+ extern int getopt_long (int argc, char *const *argv, const char *shortopts,
Property changes on: trunk/emulators/vba/files/patch-src-getopt.h
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: trunk/emulators/vba/files/patch-src-prof_gmon.h
===================================================================
--- trunk/emulators/vba/files/patch-src-prof_gmon.h (rev 0)
+++ trunk/emulators/vba/files/patch-src-prof_gmon.h 2017-01-02 01:19:37 UTC (rev 22207)
@@ -0,0 +1,20 @@
+--- src/prof/gmon.h.orig 2007-10-04 01:06:18.000000000 +0200
++++ src/prof/gmon.h 2007-10-04 01:06:48.000000000 +0200
+@@ -29,6 +29,8 @@
+ #ifndef gmon_h
+ #define gmon_h
+
++#include <inttypes.h>
++
+ /* Size of the 4.4BSD gmon header */
+ #define GMON_HDRSIZE_BSD44_32 (4 + 4 + 4 + 4 + 4 + (3 * 4))
+ #define GMON_HDRSIZE_BSD44_64 (8 + 8 + 4 + 4 + 4 + (3 * 4))
+@@ -119,7 +121,7 @@
+
+ struct tostruct
+ {
+- char *selfpc;
++ uint32_t selfpc;
+ int count;
+ unsigned short link;
+ };
Property changes on: trunk/emulators/vba/files/patch-src-prof_gmon.h
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: trunk/emulators/vba/files/patch-src-prof_prof.cpp
===================================================================
--- trunk/emulators/vba/files/patch-src-prof_prof.cpp (rev 0)
+++ trunk/emulators/vba/files/patch-src-prof_prof.cpp 2017-01-02 01:19:37 UTC (rev 22207)
@@ -0,0 +1,20 @@
+--- src/prof/prof.cpp.orig 2007-10-04 01:07:54.000000000 +0200
++++ src/prof/prof.cpp 2007-10-04 01:08:31.000000000 +0200
+@@ -279,7 +279,7 @@
+
+ void profCount()
+ {
+- register char *selfpc;
++ register u32 selfpc;
+ register unsigned short *frompcindex;
+ register struct tostruct *top;
+ register struct tostruct *prevtop;
+@@ -292,7 +292,7 @@
+
+ /* selfpc = pc pushed by mcount call.
+ This identifies the function that was just entered. */
+- selfpc = (char *) reg[14].I;
++ selfpc = (u32) reg[14].I;
+ /* frompcindex = pc in preceding frame.
+ This identifies the caller of the function just entered. */
+ frompcindex = (unsigned short *) reg[12].I;
Property changes on: trunk/emulators/vba/files/patch-src-prof_prof.cpp
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: trunk/emulators/vba/files/patch-src-remote.cpp
===================================================================
--- trunk/emulators/vba/files/patch-src-remote.cpp (rev 0)
+++ trunk/emulators/vba/files/patch-src-remote.cpp 2017-01-02 01:19:37 UTC (rev 22207)
@@ -0,0 +1,10 @@
+--- src/remote.cpp.old Thu May 20 19:24:47 2004
++++ src/remote.cpp Thu Aug 19 18:16:57 2004
+@@ -22,6 +22,7 @@
+
+ #ifndef WIN32
+ # include <unistd.h>
++# undef _BSD_SOCKLEN_T_
+ # include <sys/socket.h>
+ # include <netdb.h>
+ # ifdef HAVE_NETINET_IN_H
Property changes on: trunk/emulators/vba/files/patch-src-remote.cpp
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: trunk/emulators/vba/files/patch-src-sdl-SDL.cpp
===================================================================
--- trunk/emulators/vba/files/patch-src-sdl-SDL.cpp (rev 0)
+++ trunk/emulators/vba/files/patch-src-sdl-SDL.cpp 2017-01-02 01:19:37 UTC (rev 22207)
@@ -0,0 +1,11 @@
+--- src/sdl/SDL.cpp.orig Sun Feb 8 14:45:01 2004
++++ src/sdl/SDL.cpp Tue Feb 10 14:45:09 2004
+@@ -621,7 +621,7 @@
+ }
+ #else
+ #define SDL_CALL_STRETCHER \
+- asm volatile("call *%%eax"::"a" (stretcher),"S" (src),"D" (dest))
++ asm volatile("call *%%eax" : "=a" (stretcher),"=S" (src),"=D" (dest))
+ #endif
+ #else
+ #define SDL_CALL_STRETCHER \
Property changes on: trunk/emulators/vba/files/patch-src-sdl-SDL.cpp
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: trunk/emulators/vba/files/patch-src-sdl_debugger.cpp
===================================================================
--- trunk/emulators/vba/files/patch-src-sdl_debugger.cpp (rev 0)
+++ trunk/emulators/vba/files/patch-src-sdl_debugger.cpp 2017-01-02 01:19:37 UTC (rev 22207)
@@ -0,0 +1,23 @@
+--- src/sdl/debugger.cpp.orig 2007-10-04 01:11:33.000000000 +0200
++++ src/sdl/debugger.cpp 2007-10-04 01:12:22.000000000 +0200
+@@ -950,9 +950,9 @@
+ {
+ u32 address = 0;
+ if(mem >= (u32*)&workRAM[0] && mem <= (u32*)&workRAM[0x3ffff])
+- address = 0x2000000 + ((u32)mem - (u32)&workRAM[0]);
++ address = 0x2000000 + (u32)((u8 *)mem - &workRAM[0]);
+ else
+- address = 0x3000000 + ((u32)mem - (u32)&internalRAM[0]);
++ address = 0x3000000 + (u32)((u8 *)mem - &internalRAM[0]);
+
+ if(size == 2)
+ printf("Breakpoint (on write) address %08x old:%08x new:%08x\n",
+@@ -1389,7 +1389,7 @@
+ {
+ char buffer[10];
+ printf("Are you sure you want to quit (y/n)? ");
+- fgets(buffer, 1024, stdin);
++ fgets(buffer, sizeof(buffer), stdin);
+
+ if(buffer[0] == 'y' || buffer[0] == 'Y') {
+ debugger = false;
Property changes on: trunk/emulators/vba/files/patch-src-sdl_debugger.cpp
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: trunk/emulators/vba/files/pkg-message.in
===================================================================
--- trunk/emulators/vba/files/pkg-message.in (rev 0)
+++ trunk/emulators/vba/files/pkg-message.in 2017-01-02 01:19:37 UTC (rev 22207)
@@ -0,0 +1,9 @@
+-----------------------------------------------------------------
+The default configuration file has been installed as
+%%LOCALBASE%%/bin/VisualBoyAdvance.cfg-default. Please copy it to
+%%LOCALBASE%%/bin/VisualBoyAdvance.cfg before you start the emulator.
+
+If all you see after loading a ROM is a black screen and/or
+VisualBoy Advance crashes, try switching the video filter.
+Either change it in the global config file or use the -f switch.
+-----------------------------------------------------------------
Property changes on: trunk/emulators/vba/files/pkg-message.in
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: trunk/emulators/vba/pkg-descr
===================================================================
--- trunk/emulators/vba/pkg-descr (rev 0)
+++ trunk/emulators/vba/pkg-descr 2017-01-02 01:19:37 UTC (rev 22207)
@@ -0,0 +1,21 @@
+VisualBoyAdvance is an emulator for Nintendo's Gameboy Advance. It also
+supports emulation of the Gameboy (classic), Gameboy Pocket, Gameboy Color
+and Gameboy Advance SP.
+Some of the main features are:
+
+- option to use BIOS file
+- zip/gzip file support
+- graphic filters Normal, TV Mode, 2xSaI, Super 2xSaI and more
+- interframe blending support
+- built-in ARM/THUMB assembly debugger
+- 10 save states accesible through keyboard
+- automatic battery file load/save
+- auto-fire support
+- 16, 24 and 32 bit desktop support
+- GDB remote debugging (see below for information)
+- AGBPrint support for development
+- RTC support
+
+NOTICE: Thx go out to Wouter Groeneveld for helping me to test the port.
+
+WWW: http://vba.ngemu.com/
Property changes on: trunk/emulators/vba/pkg-descr
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
Added: trunk/emulators/vba/pkg-plist
===================================================================
--- trunk/emulators/vba/pkg-plist (rev 0)
+++ trunk/emulators/vba/pkg-plist 2017-01-02 01:19:37 UTC (rev 22207)
@@ -0,0 +1,4 @@
+bin/VisualBoyAdvance
+bin/VisualBoyAdvance.cfg-default
+%%GTK2%%bin/gvba
+%%GTK2%%share/VisualBoyAdvance/vba.glade
Property changes on: trunk/emulators/vba/pkg-plist
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: svn:mime-type
## -0,0 +1 ##
+text/plain
\ No newline at end of property
More information about the Midnightbsd-cvs
mailing list