diff options
author | acm <acm@FreeBSD.org> | 2006-12-28 01:27:37 +0800 |
---|---|---|
committer | acm <acm@FreeBSD.org> | 2006-12-28 01:27:37 +0800 |
commit | 6610f0cfa41289131b3b5364369175d536fb66ab (patch) | |
tree | 5489f4d4f3fea0cd3d07dd97245871eff411584d /emulators/snes9x | |
parent | 280351f9460c11e32b770b93a0c25094061617f9 (diff) | |
download | freebsd-ports-gnome-6610f0cfa41289131b3b5364369175d536fb66ab.tar.gz freebsd-ports-gnome-6610f0cfa41289131b3b5364369175d536fb66ab.tar.zst freebsd-ports-gnome-6610f0cfa41289131b3b5364369175d536fb66ab.zip |
- Update to 1.5
- Add new mirrors to MASTER_SITES
- Add pkg-message file
- Convert to OPTIONS
- Clean patch files
- Install DOCSDIR files
- Remove obsolete patch
- Remove USE_X_PREFIX
- Take maintainership
Diffstat (limited to 'emulators/snes9x')
-rw-r--r-- | emulators/snes9x/Makefile | 87 | ||||
-rw-r--r-- | emulators/snes9x/distinfo | 6 | ||||
-rw-r--r-- | emulators/snes9x/files/patch-Makefile.in | 55 | ||||
-rw-r--r-- | emulators/snes9x/files/patch-ab | 22 | ||||
-rw-r--r-- | emulators/snes9x/files/patch-ae | 18 | ||||
-rw-r--r-- | emulators/snes9x/files/patch-af | 614 | ||||
-rw-r--r-- | emulators/snes9x/files/patch-configure | 152 | ||||
-rw-r--r-- | emulators/snes9x/files/pkg-message.in | 28 |
8 files changed, 495 insertions, 487 deletions
diff --git a/emulators/snes9x/Makefile b/emulators/snes9x/Makefile index cc2f38bc8b89..24af869e1114 100644 --- a/emulators/snes9x/Makefile +++ b/emulators/snes9x/Makefile @@ -6,39 +6,69 @@ # PORTNAME= snes9x -PORTVERSION= 1.42 -PORTREVISION= 1 +PORTVERSION= 1.5 CATEGORIES= emulators -MASTER_SITES= http://www.lysator.liu.se/snes9x/${PORTVERSION}/ +MASTER_SITES= http://files.ipherswipsite.com/snes9x/ \ + http://www.geocities.co.jp/SiliconValley-PaloAlto/2560/release/ \ + http://www.lysator.liu.se/snes9x/${PORTVERSION}/ DISTNAME= ${PORTNAME}-${PORTVERSION}-src -MAINTAINER= ports@FreeBSD.org +MAINTAINER= acm@FreeBSD.org COMMENT= Super Nintendo Entertainment System(SNES) Emulator -WRKSRC= ${WRKDIR}/${DISTNAME}/${PORTNAME} - -USE_X_PREFIX= YES -USE_GMAKE= YES -GNU_CONFIGURE= YES +USE_BZIP2= yes +USE_XLIB= yes +USE_GMAKE= yes +GNU_CONFIGURE= yes +CONFIGURE_ARGS+= --without-extensions +CONFIGURE_ENV+= CPPFLAGS="-I${LOCALBASE}/include -I${X11BASE}/include" \ + LDFLAGS="-L${LOCALBASE}/lib -L${X11BASE}/lib" CONFIGURE_TARGET= --build=${MACHINE_ARCH}-portbld-freebsd${OSREL} -MAKE_ARGS= INCLUDES="-I${X11BASE}/include ${PTHREAD_CFLAGS}" \ - LDLIBS="-L${X11BASE}/lib ${PTHREAD_LIBS}" \ +MAKE_ARGS= INCLUDES="-I${WRKSRC}/unzip -I${WRKSRC} -I${X11BASE}/include \ + -I${LOCALBASE}/include ${PTHREAD_CFLAGS}" \ + LDLIBS="-L${X11BASE}/lib -L${LOCALBASE}/lib ${PTHREAD_LIBS}" \ OPTIMISE="${CXXFLAGS}" +WRKSRC= ${WRKDIR}/${DISTNAME} PLIST_FILES= bin/${SNES9X_BIN} +SUB_FILES= pkg-message + +OPTIONS= DEBUG "Enable debug information" off \ + OPENGL "Enable OpenGL support" off \ + SCREENSHOT "Enable screenshot support" on \ + X86_ASM "Use i386 optimization (only for i386)" on \ + MMX "Enable MMX (only for i386)" off \ + JMA "Enable JMA archive decompression support" on .include <bsd.port.pre.mk> -.if ${ARCH} == "i386" && !defined(WITHOUT_X86_ASM) +.if !defined(NOPORTDOCS) +PORTDOCS= controls.txt control-inputs.txt changes.txt hardware.txt \ + porting.html problems.txt snapshots.txt snes9x.conf.default \ + README +.endif + +.if defined(WITH_DEBUG) +CONFIGURE_ARGS+= --with-debug +.else +CONFIGURE_ARGS+= --without-debug +.endif + +.if ${ARCH} == "i386" +.if !defined(WITHOUT_X86_ASM) BUILD_DEPENDS+= nasm:${PORTSDIR}/devel/nasm CONFIGURE_ARGS+= --with-assembler -.if defined(WITH_MMX) -CONFIGURE_ARGS+= --with-mmx -.endif .else CONFIGURE_ARGS+= --without-assembler .endif +.if defined(WITH_MMX) && !defined(PACKAGE_BUILDING) +CONFIGURE_ARGS+= --with-mmx +.else +CONFIGURE_ARGS+= --without-mmx +.endif +.endif + .if defined(WITH_OPENGL) USE_GL= yes CONFIGURE_ARGS+= --with-opengl @@ -47,13 +77,40 @@ SNES9X_BIN= osnes9x SNES9X_BIN= snes9x .endif +.if !defined(WITHOUT_SCREENSHOT) +LIB_DEPENDS+= png.5:${PORTSDIR}/graphics/png +CONFIGURE_ARGS+= --with-screenshot +.else +CONFIGURE_ARGS+= --without-screenshot +.endif + +.if !defined(WITHOUT_JMA) +CONFIGURE_ARGS+= --with-jma-decomp +.else +CONFIGURE_ARGS+= --without-jma-decomp +.endif + .if exists(/usr/lib/libusbhid.a) CONFIGURE_ARGS+= --with-joystick .else CONFIGURE_ARGS+= --without-joystick .endif +post-patch: + @${REINPLACE_CMD} -i "" -e 's|Pitch2|Pitch|g' ${WRKSRC}/unix/opengl.cpp + do-install: +.if !defined(NOPORTDOCS) + ${MKDIR} ${DOCSDIR} +.for FILE in control* changes.txt hardware.txt porting.html problems.txt \ + snapshots.txt snes9x.conf.default + ${INSTALL_DATA} ${WRKSRC}/doc/${FILE} ${DOCSDIR} +.endfor + ${INSTALL_DATA} ${WRKSRC}/unix/docs/readme_unix.txt ${DOCSDIR}/README +.endif ${INSTALL_PROGRAM} ${WRKSRC}/${SNES9X_BIN} ${PREFIX}/bin +post-install: + @${CAT} ${PKGMESSAGE} + .include <bsd.port.post.mk> diff --git a/emulators/snes9x/distinfo b/emulators/snes9x/distinfo index 9b8e59ed7595..d482cf44797f 100644 --- a/emulators/snes9x/distinfo +++ b/emulators/snes9x/distinfo @@ -1,3 +1,3 @@ -MD5 (snes9x-1.42-src.tar.gz) = 1e8af4c590e35352ddac58d25a468676 -SHA256 (snes9x-1.42-src.tar.gz) = 136c7c9bf826bf9dba91073aae14e4b315ab78e67eee189322dec2637e949ffb -SIZE (snes9x-1.42-src.tar.gz) = 945282 +MD5 (snes9x-1.5-src.tar.bz2) = b51fb463687f812f68116b33abbf0427 +SHA256 (snes9x-1.5-src.tar.bz2) = 56ff80f24eb506ba713a258e6bfa65febdda02d3c582b1a12d05008e2a9ce48a +SIZE (snes9x-1.5-src.tar.bz2) = 1456821 diff --git a/emulators/snes9x/files/patch-Makefile.in b/emulators/snes9x/files/patch-Makefile.in index 6d1a80565347..6db416002d06 100644 --- a/emulators/snes9x/files/patch-Makefile.in +++ b/emulators/snes9x/files/patch-Makefile.in @@ -1,15 +1,6 @@ ---- Makefile.in.orig Tue Aug 12 17:27:16 2003 -+++ Makefile.in Mon Oct 20 22:23:13 2003 -@@ -74,8 +74,6 @@ - CHEATS.O cheats2.o data.o unix/unix.o unix/config.o GLOBALS.O \ - $(SPC7110OBJ) $(OBC1OBJ) $(SETAOBJ) $(KREEDOBJ) - --OBJECTS += ../zlib/libz.a -- - ifdef GUI - GUIOBJS = unix/snes9x_gui.o unix/moc_snes9x_gui.o - GUILIBS = -L$(QTDIR)/lib -lqt -@@ -95,7 +93,6 @@ +--- Makefile.in Tue Dec 26 16:46:56 2006 ++++ Makefile.in Tue Dec 26 16:49:20 2006 +@@ -138,7 +138,6 @@ ifdef THREAD_SOUND CPUDEFINES += -DUSE_THREADS @@ -17,46 +8,12 @@ endif ifdef GLIDE -@@ -112,7 +109,7 @@ +@@ -150,7 +149,7 @@ ifdef OPENGL OPENGLOBJS = unix/opengl.o OPENGLDEFINES = -DUSE_OPENGL -OPENGLLIBS = -lGL -lGLU -ldl +OPENGLLIBS = -lGL -lGLU - OPENGLDEPENDS=use_opengl - OPENGLNO_DEPENDS=no_opengl - else -@@ -132,7 +129,7 @@ - CC = @CC@ - NASM = @NASM@ - --INCLUDES = -I../zlib @XINCLUDES@ -+INCLUDES = @XINCLUDES@ - - OPTIMISE = @OPTIMIZE@ - -@@ -209,19 +206,19 @@ - ../zlib/libz.a: - cd ../zlib && sh ./configure && make - --snes9x: $(OBJECTS) ../zlib/libz.a unix/x11.o $(AIDOOBJS) $(GUIOBJS) -+snes9x: $(OBJECTS) unix/x11.o $(AIDOOBJS) $(GUIOBJS) - $(CCC) $(INCLUDES) -o $@ $(OBJECTS) $(AIDOOBJS) $(GLIDEOBJS) $(OPENGLOBJS) unix/x11.o $(GUIOBJS) $(LDLIBS) $(GLIDELIBS) $(OPENGLLIBS) $(GUILIBS) @SYSLIBS@ -lXext -lX11 $(EXTRALIBS) -lz -lm - --ssnes9x: $(OBJECTS) ../zlib/libz.a unix/svga.o -+ssnes9x: $(OBJECTS) unix/svga.o - $(CCC) $(INCLUDES) -o $@ $(OBJECTS) $(GLIDEOBJS) unix/svga.o $(LDLIBS) $(GLIDELIBS) -lvga -lvgagl -lz $(EXTRALIBS) -lm - --gsnes9x: $(OBJECTS) ../zlib/libz.a $(GLIDEOBJS) -+gsnes9x: $(OBJECTS) $(GLIDEOBJS) - $(CCC) $(INCLUDES) -o $@ $(OBJECTS) $(GLIDEOBJS) $(LDLIBS) -lglide -lz $(EXTRALIBS) -lm - --ggisnes9x: $(OBJECTS) ../zlib/libz.a unix/ggi.o -+ggisnes9x: $(OBJECTS) unix/ggi.o - $(CCC) $(INCLUDES) -o $@ $(OBJECTS) unix/ggi.o $(LDLIBS) -lggi -lz $(EXTRALIBS) -lm - --osnes9x: $(OBJECTS) ../zlib/libz.a unix/x11.o $(OPENGLOBJS) -+osnes9x: $(OBJECTS) unix/x11.o $(OPENGLOBJS) - $(CCC) $(INCLUDES) -o $@ $(OBJECTS) unix/x11.o $(OPENGLOBJS) $(LDLIBS) $(OPENGLLIBS) @SYSLIBS@ -lXext -lX11 $(EXTRALIBS) -lz -lm + endif - s9xserver: $(SERVER_OBJECTS) + ifdef AIDO diff --git a/emulators/snes9x/files/patch-ab b/emulators/snes9x/files/patch-ab deleted file mode 100644 index 1fc3debf0b8d..000000000000 --- a/emulators/snes9x/files/patch-ab +++ /dev/null @@ -1,22 +0,0 @@ ---- fxemu.h.orig Mon Jan 24 16:13:54 2000 -+++ fxemu.h Wed Mar 8 23:04:52 2000 -@@ -39,18 +39,7 @@ - #ifndef _FXEMU_H_ - #define _FXEMU_H_ 1 - --/* Types used by structures and code */ --#ifndef snes9x_types_defined --#define snes9x_types_defined -- --typedef unsigned char uint8; --typedef unsigned short uint16; --typedef unsigned int uint32; --typedef unsigned char bool8; --typedef signed char int8; --typedef short int16; --typedef int int32; --#endif -+#include "port.h" - - #ifndef TRUE - #define TRUE 1 diff --git a/emulators/snes9x/files/patch-ae b/emulators/snes9x/files/patch-ae index 5e322bf43321..ad032b66b036 100644 --- a/emulators/snes9x/files/patch-ae +++ b/emulators/snes9x/files/patch-ae @@ -1,13 +1,13 @@ ---- port.h.orig Fri Jul 25 23:20:20 2003 -+++ port.h Sat Aug 9 01:14:02 2003 -@@ -255,6 +255,10 @@ +--- port.h.orig Fri Jun 30 08:40:56 2006 ++++ port.h Tue Dec 26 23:09:22 2006 +@@ -360,6 +360,10 @@ + #define SYS_CONFIG_FILE "/etc/snes9x/snes9x.conf" + #endif - #ifdef __linux - #define TITLE "Snes9X: Linux" -+#endif -+ +#ifdef __FreeBSD__ +#define TITLE "Snes9X: FreeBSD" - #endif - ++#endif ++ #ifndef TITLE + #define TITLE "Snes9x" + #endif diff --git a/emulators/snes9x/files/patch-af b/emulators/snes9x/files/patch-af index b407c62131ea..b3cb734cedce 100644 --- a/emulators/snes9x/files/patch-af +++ b/emulators/snes9x/files/patch-af @@ -1,12 +1,12 @@ ---- unix/unix.cpp.orig Fri Dec 5 02:03:08 2003 -+++ unix/unix.cpp Sun Jan 25 00:52:36 2004 -@@ -109,8 +109,12 @@ +--- unix/unix.cpp Fri Jun 30 08:34:57 2006 ++++ unix/unix.cpp Wed Dec 27 00:07:21 2006 +@@ -178,8 +178,12 @@ pthread_mutex_t mutex; #endif --#ifdef __linux +-#if !defined(NOSOUND) && defined(__linux) +#ifndef __sun -+#if defined(__linux) || defined(__FreeBSD__) ++#if !defined(NOSOUND) && (defined(__linux) || defined(__FreeBSD__)) #include <sys/soundcard.h> +#else +#include <machine/soundcard.h> @@ -14,43 +14,42 @@ #include <sys/mman.h> #endif -@@ -127,6 +131,11 @@ - //typedef void (*SIG_PF)(); - //#endif +@@ -191,6 +195,11 @@ + #endif + #endif +#if defined(__FreeBSD__) +typedef sig_t SIG_PF; +#include <err.h> +#endif + - #include "snes9x.h" - #include "memmap.h" - #include "debug.h" -@@ -153,7 +162,10 @@ - int NumControllers = 5; + //Breaks sol9 and probably others. + //#if defined(__sun) && defined(__GNUC__) + //typedef void (*SIG_PF)(); +@@ -222,13 +231,78 @@ + #endif #ifdef JOYSTICK_SUPPORT -+#define JOYSTICK_MAX_DEVICES 4 -+int JoystickShift = 0; - #ifdef __linux -+#define JOYSTICK_MAX_BUTTONS 4 ++#define JOYSTICK_MAX_DEVICES 4 ++int JoystickShift = 0 + #if defined(__linux) ++#define JOYSTICK_MAX_BUTTONS 4 #include <linux/joystick.h> - int js_fd [4] = {-1, -1, -1, -1}; - int js_map_button [4][16] = { -@@ -200,6 +212,68 @@ - char *js_device [4] = {"/dev/js0", "/dev/js1", "/dev/js2", "/dev/js3"}; + uint8 js_mod [8] = {0, 0, 0, 0, 0, 0, 0, 0}; + int js_fd [8] = {-1, -1, -1, -1, -1, -1, -1, -1}; + char *js_device [8] = {"/dev/js0", "/dev/js1", "/dev/js2", "/dev/js3", "/dev/js4", "/dev/js5", "/dev/js6", "/dev/js7" }; #endif +#if defined(__FreeBSD__) +#include <sys/types.h> +#include <sys/param.h> -+ ++ +extern "C" { +#define class klass +#include <dev/usb/usb.h> -+#include <dev/usb/usbhid.h> ++#include <dev/usb/usbhid.h> +#undef class -+ ++ +#if __FreeBSD_version < 500111 +#include <libusbhid.h> +#else @@ -58,47 +57,47 @@ +#endif +} + -+#define JOYSTICK_MAX_BUTTONS 16 ++#define JOYSTICK_MAX_BUTTONS 16 + -+#define JOYSTICK_MAP_BUTTON_INITIALIZER \ -+ { \ -+ SNES_Y_MASK, SNES_B_MASK, SNES_A_MASK, \ -+ SNES_X_MASK, SNES_TL_MASK, SNES_TR_MASK, \ -+ SNES_TL_MASK, SNES_TR_MASK, \ -+ SNES_SELECT_MASK, SNES_START_MASK, 0, 0, 0, 0, 0, 0 \ ++#define JOYSTICK_MAP_BUTTON_INITIALIZER \ ++ { \ ++ SNES_Y_MASK, SNES_B_MASK, SNES_A_MASK, \ ++ SNES_X_MASK, SNES_TL_MASK, SNES_TR_MASK, \ ++ SNES_TL_MASK, SNES_TR_MASK, \ ++ SNES_SELECT_MASK, SNES_START_MASK, 0, 0, 0, 0, 0, 0 \ + } + +int js_map_button[JOYSTICK_MAX_BUTTONS][16] = { -+ JOYSTICK_MAP_BUTTON_INITIALIZER, -+ JOYSTICK_MAP_BUTTON_INITIALIZER, -+ JOYSTICK_MAP_BUTTON_INITIALIZER, -+ JOYSTICK_MAP_BUTTON_INITIALIZER, -+ JOYSTICK_MAP_BUTTON_INITIALIZER, -+ JOYSTICK_MAP_BUTTON_INITIALIZER, -+ JOYSTICK_MAP_BUTTON_INITIALIZER, -+ JOYSTICK_MAP_BUTTON_INITIALIZER, -+ JOYSTICK_MAP_BUTTON_INITIALIZER, -+ JOYSTICK_MAP_BUTTON_INITIALIZER, -+ JOYSTICK_MAP_BUTTON_INITIALIZER, -+ JOYSTICK_MAP_BUTTON_INITIALIZER, -+ JOYSTICK_MAP_BUTTON_INITIALIZER, -+ JOYSTICK_MAP_BUTTON_INITIALIZER, -+ JOYSTICK_MAP_BUTTON_INITIALIZER, -+ JOYSTICK_MAP_BUTTON_INITIALIZER ++ JOYSTICK_MAP_BUTTON_INITIALIZER, ++ JOYSTICK_MAP_BUTTON_INITIALIZER, ++ JOYSTICK_MAP_BUTTON_INITIALIZER, ++ JOYSTICK_MAP_BUTTON_INITIALIZER, ++ JOYSTICK_MAP_BUTTON_INITIALIZER, ++ JOYSTICK_MAP_BUTTON_INITIALIZER, ++ JOYSTICK_MAP_BUTTON_INITIALIZER, ++ JOYSTICK_MAP_BUTTON_INITIALIZER, ++ JOYSTICK_MAP_BUTTON_INITIALIZER, ++ JOYSTICK_MAP_BUTTON_INITIALIZER, ++ JOYSTICK_MAP_BUTTON_INITIALIZER, ++ JOYSTICK_MAP_BUTTON_INITIALIZER, ++ JOYSTICK_MAP_BUTTON_INITIALIZER, ++ JOYSTICK_MAP_BUTTON_INITIALIZER, ++ JOYSTICK_MAP_BUTTON_INITIALIZER, ++ JOYSTICK_MAP_BUTTON_INITIALIZER +}; +char *js_device [4] = {"/dev/uhid0", "/dev/uhid1", "/dev/uhid2", "/dev/uhid3"}; +struct js_range { -+ int min, max, lower_third, higher_third; ++ int min, max, lower_third, higher_third; +}; +struct js_info { -+ char *buf; -+ int reportlen; -+ int offset; -+ struct js_range x, y; -+ int buttons; -+ struct hid_item *hids; -+ int fd; -+ int joy; ++ char *buf; ++ int reportlen; ++ int offset; ++ struct js_range x, y; ++ int buttons; ++ struct hid_item *hids; ++ int fd; ++ int joy; +} js_info[4]; +int js_count = 0; +#endif @@ -106,8 +105,8 @@ void InitJoysticks (); void ReadJoysticks (); #endif -@@ -212,7 +286,7 @@ - char *SDD1_pack = NULL; +@@ -249,7 +323,7 @@ + const char *inc_format="%03d"; //FIXME: I see no reason not to configureenable this for all Unixen -#if defined(DEBUGGER) && (defined(__linux) || defined(__sun)) @@ -115,134 +114,75 @@ static void sigbrkhandler(int) { CPU.Flags |= DEBUG_MODE_FLAG; -@@ -237,91 +311,43 @@ +@@ -287,22 +361,54 @@ + + void S9xParseArg (char **argv, int &i, int argc) + { ++#ifdef JOYSTICK_SUPPORT if (strcmp (argv [i], "-j") == 0 || - strcasecmp (argv [i], "-nojoy") == 0) - Settings.JoystickEnabled = FALSE; -- else if (strcasecmp (argv [i], "-joydev1") == 0) + strcasecmp (argv [i], "-nojoy") == 0) { +-#ifdef JOYSTICK_SUPPORT +- Settings.JoystickEnabled = FALSE; +-#endif +- } else if (strncasecmp (argv [i], "-joydev", 7) == 0 && argv[i][7]>='1' && argv[i][7]<='8' && argv[i][8]=='\0') - { -- if (i + 1 < argc) -- js_device[0] = argv[++i]; +- int j = argv[i][7]-'1'; +- if (i + 1 < argc) { +-#ifdef JOYSTICK_SUPPORT +- js_device[j] = argv[++i]; +-#else +- S9xMessage(S9X_WARNING, S9X_USAGE, "Joystick support is not available!"); ++ Settings.JoystickEnabled = FALSE; ++ } ++ +#ifdef __FreeBSD__ + else if (strcasecmp(argv[i], "-joyshift") == 0) -+ JoystickShift = 1; ++ JoystickShift = 1; +#endif + else if (strncasecmp(argv[i], "-joydev", sizeof("-joydev") - 1) == 0) { -+ char *end, *snum = argv[i] + sizeof("-joydev") - 1; -+ unsigned long num; ++ char *end, *snum = argv[i] + sizeof("-joydev") - 1; ++ unsigned long num; + -+ if (*snum == '\0' || argc < i + 1) -+ S9xUsage(); -+ if ((num = strtoul(snum, &end, 10)) < JOYSTICK_MAX_DEVICES && -+ num > 0 && *end == '\0') -+ js_device[num - 1] = argv[++i]; - else -- S9xUsage (); -+ S9xUsage(); - } -- else if (strcasecmp (argv [i], "-joydev2") == 0) -- { -- if (i + 1 < argc) -- js_device[1] = argv[++i]; -- else -- S9xUsage (); -- } -- else if (strcasecmp (argv [i], "-joymap1") == 0) -- { -- if (i + 8 < argc) -- { -- int t; -- -- if ((t = atoi (argv [++i])) < 15) js_map_button [0][t] = SNES_A_MASK; -- if ((t = atoi (argv [++i])) < 15) js_map_button [0][t] = SNES_B_MASK; -- if ((t = atoi (argv [++i])) < 15) js_map_button [0][t] = SNES_X_MASK; -- if ((t = atoi (argv [++i])) < 15) js_map_button [0][t] = SNES_Y_MASK; -- if ((t = atoi (argv [++i])) < 15) js_map_button [0][t] = SNES_TL_MASK; -- if ((t = atoi (argv [++i])) < 15) js_map_button [0][t] = SNES_TR_MASK; -- if ((t = atoi (argv [++i])) < 15) js_map_button [0][t] = SNES_START_MASK; -- if ((t = atoi (argv [++i])) < 15) js_map_button [0][t] = SNES_SELECT_MASK; -- } -- else -- S9xUsage (); -- } -- else if (strcasecmp (argv [i], "-joymap2") == 0) -- { -- if (i + 8 < argc) -- { -- int t; -- -- if ((t = atoi (argv [++i])) < 15) js_map_button [1][t] = SNES_A_MASK; -- if ((t = atoi (argv [++i])) < 15) js_map_button [1][t] = SNES_B_MASK; -- if ((t = atoi (argv [++i])) < 15) js_map_button [1][t] = SNES_X_MASK; -- if ((t = atoi (argv [++i])) < 15) js_map_button [1][t] = SNES_Y_MASK; -- if ((t = atoi (argv [++i])) < 15) js_map_button [1][t] = SNES_TL_MASK; -- if ((t = atoi (argv [++i])) < 15) js_map_button [1][t] = SNES_TR_MASK; -- if ((t = atoi (argv [++i])) < 15) js_map_button [1][t] = SNES_START_MASK; -- if ((t = atoi (argv [++i])) < 15) js_map_button [1][t] = SNES_SELECT_MASK; -- } -- else -- S9xUsage (); -- } -- else if (strcasecmp (argv [i], "-joymap3") == 0) -- { -- if (i + 8 < argc) -- { -- int t; -- -- if ((t = atoi (argv [++i])) < 15) js_map_button [2][t] = SNES_A_MASK; -- if ((t = atoi (argv [++i])) < 15) js_map_button [2][t] = SNES_B_MASK; -- if ((t = atoi (argv [++i])) < 15) js_map_button [2][t] = SNES_X_MASK; -- if ((t = atoi (argv [++i])) < 15) js_map_button [2][t] = SNES_Y_MASK; -- if ((t = atoi (argv [++i])) < 15) js_map_button [2][t] = SNES_TL_MASK; -- if ((t = atoi (argv [++i])) < 15) js_map_button [2][t] = SNES_TR_MASK; -- if ((t = atoi (argv [++i])) < 15) js_map_button [2][t] = SNES_START_MASK; -- if ((t = atoi (argv [++i])) < 15) js_map_button [2][t] = SNES_SELECT_MASK; -- } -- else -- S9xUsage (); -- } -- else if (strcasecmp (argv [i], "-joymap4") == 0) -- { -- if (i + 8 < argc) -- { -- int t; -- -- if ((t = atoi (argv [++i])) < 15) js_map_button [3][t] = SNES_A_MASK; -- if ((t = atoi (argv [++i])) < 15) js_map_button [3][t] = SNES_B_MASK; -- if ((t = atoi (argv [++i])) < 15) js_map_button [3][t] = SNES_X_MASK; -- if ((t = atoi (argv [++i])) < 15) js_map_button [3][t] = SNES_Y_MASK; -- if ((t = atoi (argv [++i])) < 15) js_map_button [3][t] = SNES_TL_MASK; -- if ((t = atoi (argv [++i])) < 15) js_map_button [3][t] = SNES_TR_MASK; -- if ((t = atoi (argv [++i])) < 15) js_map_button [3][t] = SNES_START_MASK; -- if ((t = atoi (argv [++i])) < 15) js_map_button [3][t] = SNES_SELECT_MASK; -- } -- else -- S9xUsage (); ++ if (*snum == '\0' || argc < i + 1) ++ S9xUsage(); ++ if ((num = strtoul(snum, &end, 10)) < JOYSTICK_MAX_DEVICES && ++ num > 0 && *end == '\0') ++ js_device[num - 1] = argv[++i]; ++ else ++ S9xUsage (); ++ } + else if (strncasecmp(argv[i], "-joymap", sizeof("-joymap") - 1) == 0) { -+ static const int button_masks[] = { -+ SNES_A_MASK, SNES_B_MASK, SNES_X_MASK, SNES_Y_MASK, -+ SNES_TL_MASK, SNES_TR_MASK, SNES_START_MASK, SNES_SELECT_MASK -+ }; -+ char *end, *snum = argv[i] + sizeof("-joymap") - 1; -+ unsigned long num; -+ int *js_buttons, b; ++ static const int button_masks[] = { ++ SNES_A_MASK, SNES_B_MASK, SNES_X_MASK, SNES_Y_MASK, ++ SNES_TL_MASK, SNES_TR_MASK, SNES_START_MASK, SNES_SELECT_MASK ++ }; ++ char *end, *snum = argv[i] + sizeof("-joymap") - 1; ++ unsigned long num; ++ int *js_buttons, b; + -+ if (argc < i + (sizeof(button_masks) / sizeof(int)) || *snum == '\0') -+ S9xUsage(); -+ num = strtoul(snum, &end, 10); -+ if (*end != '\0') -+ S9xUsage(); -+ if (num == 0 || num > 4) /* hardcode: max joysticks */ -+ S9xUsage(); -+ js_buttons = js_map_button[num - 1]; -+ for (b = 0; b < (sizeof(button_masks) / sizeof(int)); b++) -+ if ((num = strtoul(argv[++i], &end, 10)) <= 16 && num != 0 && -+ *end == '\0') -+ js_buttons[num - 1] = button_masks[b]; - } - else ++ if (argc < i + (sizeof(button_masks) / sizeof(int)) || *snum == '\0') ++ S9xUsage(); ++ num = strtoul(snum, &end, 10); ++ if (*end != '\0') ++ S9xUsage(); ++ if (num == 0 || num > 4) /* hardcode: max joysticks */ ++ S9xUsage(); ++ js_buttons = js_map_button[num - 1]; ++ for (b = 0; b < (sizeof(button_masks) / sizeof(int)); b++) ++ if ((num = strtoul(argv[++i], &end, 10)) <= 16 && num != 0 && ++ *end == '\0') ++ js_buttons[num - 1] = button_masks[b]; ++ } ++ ++ else #endif -@@ -472,7 +498,7 @@ +- } else S9xUsage (); +- } else if (strcasecmp (argv [i], "-b") == 0 || ++ if (strcasecmp (argv [i], "-b") == 0 || + strcasecmp (argv [i], "-bs") == 0 || + strcasecmp (argv [i], "-buffersize") == 0) + { +@@ -413,7 +519,7 @@ #if !defined(__MSDOS) && defined(DEBUGGER) #if defined(__unix) && !defined(__NeXT__) struct sigaction sa; @@ -251,15 +191,15 @@ sa.sa_handler = sigbrkhandler; #else sa.sa_handler = (SIG_PF) sigbrkhandler; -@@ -664,6 +690,7 @@ +@@ -613,6 +719,7 @@ } #ifdef JOYSTICK_SUPPORT -+#ifdef linux ++#ifdef __linux void InitJoysticks () { #ifdef JSIOCGVERSION -@@ -784,6 +811,189 @@ +@@ -697,6 +804,189 @@ } #endif } @@ -278,208 +218,208 @@ + +int +InitJoystickFd(int fd, char *dev) { -+ report_desc_t rd; -+ struct hid_data *d; -+ struct hid_item h, new_h; -+ struct js_info *my_info; -+ int reportlen, report_id, is_joystick; ++ report_desc_t rd; ++ struct hid_data *d; ++ struct hid_item h, new_h; ++ struct js_info *my_info; ++ int reportlen, report_id, is_joystick; + -+ my_info = &js_info[js_count]; -+ rd = hid_get_report_desc(fd); -+ if (rd == 0) { -+ warn("%s", dev); -+ return (-1); -+ } -+ report_id = 0; ++ my_info = &js_info[js_count]; ++ rd = hid_get_report_desc(fd); ++ if (rd == 0) { ++ warn("%s", dev); ++ return (-1); ++ } ++ report_id = 0; +#if __FreeBSD_version < 500111 -+ reportlen = hid_report_size(rd, report_id, hid_input); ++ reportlen = hid_report_size(rd, report_id, hid_input); +#else -+ reportlen = hid_report_size(rd, hid_input, report_id); ++ reportlen = hid_report_size(rd, hid_input, report_id); +#endif -+ my_info->buf = (char *)malloc(reportlen); -+ if (my_info->buf == NULL) -+ err(1, "malloc"); -+ my_info->reportlen = reportlen; -+ my_info->offset = report_id != 0; -+ my_info->buttons = 0; -+ my_info->hids = NULL; ++ my_info->buf = (char *)malloc(reportlen); ++ if (my_info->buf == NULL) ++ err(1, "malloc"); ++ my_info->reportlen = reportlen; ++ my_info->offset = report_id != 0; ++ my_info->buttons = 0; ++ my_info->hids = NULL; + -+ is_joystick = 0; ++ is_joystick = 0; +#if __FreeBSD_version < 500111 -+ for (d = hid_start_parse(rd, 1 << hid_input); ++ for (d = hid_start_parse(rd, 1 << hid_input); +#else -+ for (d = hid_start_parse(rd, 1 << hid_input, report_id); ++ for (d = hid_start_parse(rd, 1 << hid_input, report_id); +#endif -+ hid_get_item(d, &h);) { -+ int usage, page, link_it = 0; -+ struct js_range *axis; ++ hid_get_item(d, &h);) { ++ int usage, page, link_it = 0; ++ struct js_range *axis; + -+ page = HID_PAGE(h.usage); -+ usage = HID_USAGE(h.usage); -+ if (!is_joystick) -+ is_joystick = (h.kind == hid_collection && -+ page == HUP_GENERIC_DESKTOP && -+ (usage == HUG_JOYSTICK || usage == HUG_GAME_PAD)); -+ if (h.kind != hid_input || !is_joystick) -+ continue; -+ axis = NULL; -+ if (page == HUP_GENERIC_DESKTOP) { -+ switch (usage) { -+ case HUG_X: -+ case HUG_RX: -+ axis = &my_info->x; -+ break; -+ case HUG_Y: -+ case HUG_RY: -+ axis = &my_info->y; -+ break; -+ } -+ } -+ if (axis != NULL) { -+ axis->min = h.logical_minimum; -+ axis->max = h.logical_maximum; -+ axis->lower_third = axis->min + -+ (axis->max - axis->min) / 3; -+ axis->higher_third = axis->min + -+ (axis->max - axis->min) * 2 / 3; -+ link_it = 1; -+ } -+ if (!link_it) { -+ if (page != HUP_BUTTON || usage > 16) -+ continue; -+ if (usage > my_info->buttons) -+ my_info->buttons = usage; -+ } -+ new_h = h; -+ new_h.next = my_info->hids; -+ my_info->hids = (struct hid_item *) -+ malloc(sizeof(*my_info->hids)); -+ if (my_info->hids == NULL) -+ err(1, "malloc"); -+ *my_info->hids = new_h; -+ } -+ printf("Joystick %s: %d buttons, X range %d - %d, Y range %d - %d\n", -+ dev, my_info->buttons, my_info->x.min, my_info->x.max, -+ my_info->y.min, my_info->y.max); -+ my_info->fd = fd; -+ if (JoystickShift) { -+ my_info->joy = js_count + 1; -+ } else -+ my_info->joy = js_count; -+ return (0); ++ page = HID_PAGE(h.usage); ++ usage = HID_USAGE(h.usage); ++ if (!is_joystick) ++ is_joystick = (h.kind == hid_collection && ++ page == HUP_GENERIC_DESKTOP && ++ (usage == HUG_JOYSTICK || usage == HUG_GAME_PAD)); ++ if (h.kind != hid_input || !is_joystick) ++ continue; ++ axis = NULL; ++ if (page == HUP_GENERIC_DESKTOP) { ++ switch (usage) { ++ case HUG_X: ++ case HUG_RX: ++ axis = &my_info->x; ++ break; ++ case HUG_Y: ++ case HUG_RY: ++ axis = &my_info->y; ++ break; ++ } ++ } ++ if (axis != NULL) { ++ axis->min = h.logical_minimum; ++ axis->max = h.logical_maximum; ++ axis->lower_third = axis->min + ++ (axis->max - axis->min) / 3; ++ axis->higher_third = axis->min + ++ (axis->max - axis->min) * 2 / 3; ++ link_it = 1; ++ } ++ if (!link_it) { ++ if (page != HUP_BUTTON || usage > 16) ++ continue; ++ if (usage > my_info->buttons) ++ my_info->buttons = usage; ++ } ++ new_h = h; ++ new_h.next = my_info->hids; ++ my_info->hids = (struct hid_item *) ++ malloc(sizeof(*my_info->hids)); ++ if (my_info->hids == NULL) ++ err(1, "malloc"); ++ *my_info->hids = new_h; ++ } ++ printf("Joystick %s: %d buttons, X range %d - %d, Y range %d - %d\n", ++ dev, my_info->buttons, my_info->x.min, my_info->x.max, ++ my_info->y.min, my_info->y.max); ++ my_info->fd = fd; ++ if (JoystickShift) { ++ my_info->joy = js_count + 1; ++ } else ++ my_info->joy = js_count; ++ return (0); +} + +void +InitJoysticks() { -+ int i, fd; ++ int i, fd; + -+ for (i = 0; i < (sizeof(js_device) / sizeof(js_device[0])); i++) { -+ fd = open(js_device[i], O_RDONLY | O_NONBLOCK); -+ if (fd == -1) -+ continue; -+ if (InitJoystickFd(fd, js_device[i]) == 0) -+ js_count++; -+ else -+ close(fd); -+ } ++ for (i = 0; i < (sizeof(js_device) / sizeof(js_device[0])); i++) { ++ fd = open(js_device[i], O_RDONLY | O_NONBLOCK); ++ if (fd == -1) ++ continue; ++ if (InitJoystickFd(fd, js_device[i]) == 0) ++ js_count++; ++ else ++ close(fd); ++ } +} + +void +ReadJoysticks() { -+ struct hid_item *h; -+ int page, usage, njoy, joy; ++ struct hid_item *h; ++ int page, usage, njoy, joy; + -+ for (njoy = 0; njoy < js_count; njoy++) { -+ struct js_info *jsi; ++ for (njoy = 0; njoy < js_count; njoy++) { ++ struct js_info *jsi; + -+ jsi = &js_info[njoy]; -+ joy = jsi->joy; ++ jsi = &js_info[njoy]; ++ joy = jsi->joy; + -+ if (read(jsi->fd, jsi->buf, jsi->reportlen) != jsi->reportlen) -+ continue; -+ for (h = jsi->hids; h != NULL; h = h->next) { -+ int d; ++ if (read(jsi->fd, jsi->buf, jsi->reportlen) != jsi->reportlen) ++ continue; ++ for (h = jsi->hids; h != NULL; h = h->next) { ++ int d; + -+ d = hid_get_data(jsi->buf + jsi->offset, h); -+ page = HID_PAGE(h->usage); -+ usage = HID_USAGE(h->usage); ++ d = hid_get_data(jsi->buf + jsi->offset, h); ++ page = HID_PAGE(h->usage); ++ usage = HID_USAGE(h->usage); + -+ switch (page) { -+ case HUP_GENERIC_DESKTOP: -+ switch (usage) { -+ case HUG_X: -+ case HUG_RX: -+ if (d < jsi->x.lower_third) { -+ joypads[joy] |= SNES_LEFT_MASK; -+ joypads[joy] &= ~SNES_RIGHT_MASK; -+ } else if (d < jsi->x.higher_third) { -+ joypads[joy] &= ~SNES_LEFT_MASK; -+ joypads[joy] &= ~SNES_RIGHT_MASK; -+ } else { -+ joypads[joy] &= ~SNES_LEFT_MASK; -+ joypads[joy] |= SNES_RIGHT_MASK; -+ } -+ break; -+ case HUG_Y: -+ case HUG_RY: -+ if (d < jsi->y.lower_third) { -+ joypads[joy] |= SNES_UP_MASK; -+ joypads[joy] &= ~SNES_DOWN_MASK; -+ } else if (d < jsi->y.higher_third) { -+ joypads[joy] &= ~SNES_UP_MASK; -+ joypads[joy] &= ~SNES_DOWN_MASK; -+ } else { -+ joypads[joy] &= ~SNES_UP_MASK; -+ joypads[joy] |= SNES_DOWN_MASK; -+ } -+ break; -+ } -+ break; -+ case HUP_BUTTON: -+ if (d) -+ joypads[joy] |= js_map_button[njoy][usage - 1]; -+ else -+ joypads[joy] &= ~js_map_button[njoy][usage - 1]; -+ break; -+ } -+ } -+ } ++ switch (page) { ++ case HUP_GENERIC_DESKTOP: ++ switch (usage) { ++ case HUG_X: ++ case HUG_RX: ++ if (d < jsi->x.lower_third) { ++ joypads[joy] |= SNES_LEFT_MASK; ++ joypads[joy] &= ~SNES_RIGHT_MASK; ++ } else if (d < jsi->x.higher_third) { ++ joypads[joy] &= ~SNES_LEFT_MASK; ++ joypads[joy] &= ~SNES_RIGHT_MASK; ++ } else { ++ joypads[joy] &= ~SNES_LEFT_MASK; ++ joypads[joy] |= SNES_RIGHT_MASK; ++ } ++ break; ++ case HUG_Y: ++ case HUG_RY: ++ if (d < jsi->y.lower_third) { ++ joypads[joy] |= SNES_UP_MASK; ++ joypads[joy] &= ~SNES_DOWN_MASK; ++ } else if (d < jsi->y.higher_third) { ++ joypads[joy] &= ~SNES_UP_MASK; ++ joypads[joy] &= ~SNES_DOWN_MASK; ++ } else { ++ joypads[joy] &= ~SNES_UP_MASK; ++ joypads[joy] |= SNES_DOWN_MASK; ++ } ++ break; ++ } ++ break; ++ case HUP_BUTTON: ++ if (d) ++ joypads[joy] |= js_map_button[njoy][usage - 1]; ++ else ++ joypads[joy] &= ~js_map_button[njoy][usage - 1]; ++ break; ++ } ++ } ++ } +} +#endif // defined(__FreeBSD__) #endif // defined (JOYSTICK_SUPPORT) - const char *GetHomeDirectory () -@@ -1575,7 +1785,7 @@ + START_EXTERN_C +@@ -1522,7 +1812,7 @@ } #endif --#if defined(__linux) -+#if defined(__linux) || defined(__FreeBSD__) +-#if !defined(NOSOUND) && defined(__linux) ++#if !defined(NOSOUND) && (defined(__linux) || defined(__FreeBSD__)) static int Rates[8] = { 0, 8000, 11025, 16000, 22050, 32000, 44100, 48000 -@@ -1696,7 +1906,7 @@ +@@ -1644,7 +1934,7 @@ #endif --#if defined (__linux) || defined (__sun) || defined(NOSOUND) -+#if defined(__linux) || defined(__sun) || defined(__FreeBSD__) || defined(NOSOUND) +-#if !defined(NOSOUND) && (defined (__linux) || defined (__sun)) ++#if !defined(NOSOUND) && (defined (__linux) || defined (__sun) || defined(__FreeBSD__)) void S9xUnixProcessSound (void) { } -@@ -1737,7 +1947,7 @@ +@@ -1687,7 +1977,7 @@ } #endif --#if defined (__linux) || defined (__sun) -+#if defined(__linux) || defined(__sun) || defined(__FreeBSD__) +-#if !defined(NOSOUND) && (defined (__linux) || defined (__sun)) ++#if !defined(NOSOUND) && (defined (__linux) || defined (__sun) || defined(__FreeBSD__)) void S9xGenerateSound () { - int bytes_so_far = so.sixteen_bit ? (so.samples_mixed_so_far << 1) : -@@ -1822,7 +2032,7 @@ - - void *S9xProcessSound (void *) - { + /* Linux and Sun versions */ +@@ -1779,7 +2069,7 @@ + /* If threads in use, this is to loop indefinitely */ + /* If not, this will be called by timer */ + -#ifdef __linux +#if defined(__linux) || defined(__FreeBSD__) audio_buf_info info; diff --git a/emulators/snes9x/files/patch-configure b/emulators/snes9x/files/patch-configure index ecc24c5f49fc..0e7ec37927f2 100644 --- a/emulators/snes9x/files/patch-configure +++ b/emulators/snes9x/files/patch-configure @@ -1,16 +1,86 @@ ---- configure.orig Thu Dec 4 18:03:08 2003 -+++ configure Sat Apr 29 23:35:05 2006 -@@ -646,6 +646,7 @@ +--- configure.orig Tue Dec 26 23:42:54 2006 ++++ configure Tue Dec 26 23:52:49 2006 +@@ -1268,6 +1268,7 @@ + --with(out)-opengl Use OpenGL for output (default: without) --with(out)-aido Use a shared memory area for output (default: without) - --with(out)-joystick Enable joystick support if available (default: with) - --with(out)-assembler Use assembler cores if available (default: with) -+ --with(out)-mmx Use mmx assembly code (default: with) - --with(out)-sdd1-decomp Use SDD1 decompression (default: with) - --with(out)-screenshot Screenshot support through libpng if available (default: with) - --with-x use the X Window System -@@ -1992,6 +1993,14 @@ - with_assembler=yes - fi; + --with(out)-assembler Use assembler cores if available (default: with) ++ --with(out)-mmx Use assembler cores if available (default: with) + --with(out)-zsnesc4 Use ZSNES C4 core if available (default: same as --with-assembler) + --with(out)-zsnesfx Use ZSNES SuperFX core if available (default: same as --with-assembler) + --with(out)-correct-vram-reads Use Correct VRAM read logic (default: with) +@@ -7182,6 +7183,59 @@ + { echo "$as_me:$LINENO: result: $snes9x_cv_hpux_os" >&5 + echo "${ECHO_T}$snes9x_cv_hpux_os" >&6; } + ++echo "$as_me:$LINENO: checking if the OS is FreeBSD" >&5 ++echo $ECHO_N "checking if the OS is FreeBSD... $ECHO_C" >&6 ++if test "${snes9x_cv_freebsd_os+set}" = set; then ++ echo $ECHO_N "(cached) $ECHO_C" >&6 ++else ++ ++ cat >conftest.$ac_ext <<_ACEOF ++#line 3885 "configure" ++/* confdefs.h. */ ++_ACEOF ++cat confdefs.h >>conftest.$ac_ext ++cat >>conftest.$ac_ext <<_ACEOF ++/* end confdefs.h. */ ++ ++#ifdef __FreeBSD__ ++/* */ ++#else ++#error Not FreeBSD. ++#endif ++ ++int ++main () ++{ ++ ++ ; ++ return 0; ++} ++_ACEOF ++rm -f conftest.$ac_objext ++if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 ++ (eval $ac_compile) 2>&5 ++ ac_status=$? ++ echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ (exit $ac_status); } && ++ { ac_try='test -s conftest.$ac_objext' ++ { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 ++ (eval $ac_try) 2>&5 ++ ac_status=$? ++ echo "$as_me:$LINENO: \$? = $ac_status" >&5 ++ (exit $ac_status); }; }; then ++ snes9x_cv_freebsd_os=yes ++else ++ echo "$as_me: failed program was:" >&5 ++sed 's/^/| /' conftest.$ac_ext >&5 ++ ++snes9x_cv_freebsd_os=no ++fi ++rm -f conftest.$ac_objext conftest.$ac_ext ++fi ++ ++echo "$as_me:$LINENO: result: $snes9x_cv_freebsd_os" >&5 ++echo "${ECHO_T}$snes9x_cv_freebsd_os" >&6 ++ + { echo "$as_me:$LINENO: checking if the OS is MS Windows" >&5 + echo $ECHO_N "checking if the OS is MS Windows... $ECHO_C" >&6; } + if test "${snes9x_cv_win32_os+set}" = set; then +@@ -7437,6 +7491,9 @@ + # Check whether --with-joystick was given. + if test "${with_joystick+set}" = set; then + withval=$with_joystick; ++elif test yes = "$snes9x_cv_freebsd_os" -a yes = "$with_joystick"; then ++ JOYDEFINES=' -DJOYSTICK_SUPPORT' ++ SYSLIBS="$SYSLIBS"' -lusbhid' + else + with_joystick=yes + fi +@@ -7473,6 +7530,13 @@ + CPUINC='-Ish' + fi +# Check whether --with-mmx or --without-mmx was given. +if test "${with_mmx+set}" = set -a yes = "$with_assembler"; then @@ -19,13 +89,12 @@ +else + with_mmx=no +fi; -+ - # Check whether --with-sdd1-decomp or --without-sdd1-decomp was given. + + # Check whether --with-sdd1-decomp was given. if test "${with_sdd1_decomp+set}" = set; then - withval="$with_sdd1_decomp" -@@ -3866,6 +3875,59 @@ - echo "$as_me:3866: result: $snes9x_cv_hpux_os" >&5 - echo "${ECHO_T}$snes9x_cv_hpux_os" >&6 +@@ -11190,6 +11254,58 @@ + echo "${ECHO_T}Defining _XOPEN_SOURCE_EXTENDED since HP-UX needs it." >&6; } + fi +echo "$as_me:$LINENO: checking if the OS is FreeBSD" >&5 +echo $ECHO_N "checking if the OS is FreeBSD... $ECHO_C" >&6 @@ -79,44 +148,23 @@ + +echo "$as_me:$LINENO: result: $snes9x_cv_freebsd_os" >&5 +echo "${ECHO_T}$snes9x_cv_freebsd_os" >&6 -+ - echo "$as_me:3869: checking if the OS is MS Windows" >&5 - echo $ECHO_N "checking if the OS is MS Windows... $ECHO_C" >&6 - if test "${snes9x_cv_win32_os+set}" = set; then -@@ -3970,7 +4032,9 @@ - ZSNESFX='ZSNESFX=1' - ZSNESC4='ZSNESC4=1' - ASMCPU='ASMCPU=1' -+if test yes = "$with_mmx"; then - ASMKREED='ASMKREED=1' -+fi - # SPC700ASM='SPC700ASM=1' - I386SPC='i386/SPC.O' - CPUINC='-Ii386' -@@ -3985,6 +4049,9 @@ - if test yes = "$snes9x_cv_linux_os" -a yes = "$with_joystick"; then - JOYDEFINES=' -DJOYSTICK_SUPPORT' -+elif test yes = "$snes9x_cv_freebsd_os" -a yes = "$with_joystick"; then -+ JOYDEFINES=' -DJOYSTICK_SUPPORT' -+ SYSLIBS="$SYSLIBS"' -lusbhid' - else - with_joystick="no" - fi -@@ -5141,7 +5208,7 @@ - #line 5141 "configure" - #include "confdefs.h" + THREAD_SOUND='#THREAD_SOUND=1' + if test "${ac_cv_header_pthread_h+set}" = set; then +@@ -11372,7 +11488,7 @@ + cat >>conftest.$ac_ext <<_ACEOF + /* end confdefs.h. */ -#if defined(__linux) || defined(__sun) || defined(__sgi) +#if defined(__linux) || defined(__sun) || defined(__sgi) || defined(__FreeBSD__) /* */ #else #error No sound for this platform -@@ -5320,6 +5387,7 @@ - display system.... $snes9x_info_display - joystick support.. $with_joystick - using asm cores... $with_assembler -+using mmx code.... $with_mmx - SDD1 decompession. $with_sdd1_decomp - debugger.......... $with_debugger - +@@ -11665,6 +11781,7 @@ + sound support....... $snes9x_cv_sound + display system...... $snes9x_info_display + joystick support.... $with_joystick ++using mmx code.... $with_mmx + SDD1 decompression.. $with_sdd1_decomp + JMA decompression... $with_jma_decomp + debugger............ $with_debugger diff --git a/emulators/snes9x/files/pkg-message.in b/emulators/snes9x/files/pkg-message.in new file mode 100644 index 000000000000..24ee22c3276e --- /dev/null +++ b/emulators/snes9x/files/pkg-message.in @@ -0,0 +1,28 @@ +############################################################################### + +The SNES9X emulator was installed + +1) You can run the emulator using: + + # (o)snes9x -y2 -ts /path/to/rom_file + +2) You can see all options that you can use with snes9x at: + + %%DOCSDIR%%/README + + or only typing: + + # (o)snes9x + +3) Also you can define a config file, see an example at: + + %%DOCSDIR%%/snes9x.conf.default + + and you can select this config file using: + + # (o)snes9x -conf /path/to/conf_file + +4) Enjoy it ;) + + +############################################################################### |