aboutsummaryrefslogtreecommitdiffstats
path: root/emulators
diff options
context:
space:
mode:
authoralepulver <alepulver@FreeBSD.org>2009-03-13 11:14:10 +0800
committeralepulver <alepulver@FreeBSD.org>2009-03-13 11:14:10 +0800
commit94bf26ec84dec904c8e63a415b0b277058fa5969 (patch)
tree6e2dad135ac9da8de01cd62f418a3485f2f09321 /emulators
parent0ae9411c549b9b86f7d49fb73851535018a4c6d2 (diff)
downloadfreebsd-ports-gnome-94bf26ec84dec904c8e63a415b0b277058fa5969.tar.gz
freebsd-ports-gnome-94bf26ec84dec904c8e63a415b0b277058fa5969.tar.zst
freebsd-ports-gnome-94bf26ec84dec904c8e63a415b0b277058fa5969.zip
- Update to version 0.130.
- Remove wrapper scripts. - Pass maintainership to submitter. PR: ports/128557 Submitted by: Emmanuel Vadot <elbarto@arcadebsd.org>
Diffstat (limited to 'emulators')
-rw-r--r--emulators/mame-devel/Makefile48
-rw-r--r--emulators/mame-devel/distinfo6
-rw-r--r--emulators/mame-devel/files/mame.ini260
-rw-r--r--emulators/mame-devel/files/patch-makefile77
-rw-r--r--emulators/mame-devel/files/pkg-message.in12
-rw-r--r--emulators/mame-devel/files/sdl.mak.patch17
-rw-r--r--emulators/mame-devel/files/sdl.mak.patch-debug11
-rw-r--r--emulators/mame-devel/files/sdlmame.in16
-rw-r--r--emulators/mame-devel/pkg-plist19
-rw-r--r--emulators/mame/Makefile48
-rw-r--r--emulators/mame/distinfo6
-rw-r--r--emulators/mame/files/mame.ini260
-rw-r--r--emulators/mame/files/patch-makefile77
-rw-r--r--emulators/mame/files/pkg-message.in12
-rw-r--r--emulators/mame/files/sdl.mak.patch17
-rw-r--r--emulators/mame/files/sdl.mak.patch-debug11
-rw-r--r--emulators/mame/files/sdlmame.in16
-rw-r--r--emulators/mame/pkg-plist19
-rw-r--r--emulators/sdlmame-devel/Makefile48
-rw-r--r--emulators/sdlmame-devel/distinfo6
-rw-r--r--emulators/sdlmame-devel/files/mame.ini260
-rw-r--r--emulators/sdlmame-devel/files/patch-makefile77
-rw-r--r--emulators/sdlmame-devel/files/pkg-message.in12
-rw-r--r--emulators/sdlmame-devel/files/sdl.mak.patch17
-rw-r--r--emulators/sdlmame-devel/files/sdl.mak.patch-debug11
-rw-r--r--emulators/sdlmame-devel/files/sdlmame.in16
-rw-r--r--emulators/sdlmame-devel/pkg-plist19
-rw-r--r--emulators/sdlmame/Makefile48
-rw-r--r--emulators/sdlmame/distinfo6
-rw-r--r--emulators/sdlmame/files/mame.ini260
-rw-r--r--emulators/sdlmame/files/patch-makefile77
-rw-r--r--emulators/sdlmame/files/pkg-message.in12
-rw-r--r--emulators/sdlmame/files/sdl.mak.patch17
-rw-r--r--emulators/sdlmame/files/sdl.mak.patch-debug11
-rw-r--r--emulators/sdlmame/files/sdlmame.in16
-rw-r--r--emulators/sdlmame/pkg-plist19
36 files changed, 1428 insertions, 436 deletions
diff --git a/emulators/mame-devel/Makefile b/emulators/mame-devel/Makefile
index 44216629af81..0097029d7c0b 100644
--- a/emulators/mame-devel/Makefile
+++ b/emulators/mame-devel/Makefile
@@ -6,49 +6,59 @@
#
PORTNAME= sdlmame
-PORTVERSION= 0.124
+PORTVERSION= 0.130
CATEGORIES= emulators
-MASTER_SITES= ftp://ftp.alepulver.com.ar/distfiles/
+MASTER_SITES= ftp://ftp.arcadebsd.org/pub/FreeBSD/ports/distfiles/
DISTNAME= ${PORTNAME}${PORTVERSION:S/.//}
-MAINTAINER= alepulver@FreeBSD.org
+MAINTAINER= elbarto@ArcadeBSD.org
COMMENT= SDL port of the popular MAME (Multi Arcade Machine Emulator)
USE_ZIP= yes
USE_XORG= xext xrender xinerama xi
USE_GL= gl
+USE_GNOME?= gtk20 gconf2
USE_GMAKE= yes
MAKE_ENV= PTHREAD_LIBS="${PTHREAD_LIBS}"
USE_SDL= sdl
MAKEFILE= makefile
+ONLY_FOR_ARCH= i386 amd64
+SUB_FILES= pkg-message
-SUB_FILES= ${PORTNAME} pkg-message
+OPTIONS= DEBUG "Build sdlmame debugger" off
+
+.include <bsd.port.pre.mk>
+
+.if defined(WITH_DEBUG)
+EXTRA_PATCHES+= ${FILESDIR}/sdl.mak.patch-debug
+.else
+USE_GNOME= #
+EXTRA_PATCHES+= ${FILESDIR}/sdl.mak.patch
+.endif
+
+.if ${ARCH} == "amd64"
+MAKE_ENV+= PTR64=1
+.endif
+
+post-patch:
+ @${REINPLACE_CMD} -e "s|ui.bdf|${DATADIR}/ui.bdf|g" ${WRKSRC}/src/emu/ui.c
do-install:
- ${INSTALL_SCRIPT} ${WRKDIR}/${PORTNAME} ${PREFIX}/bin
- ${MKDIR} ${PREFIX}/libexec/sdlmame
-.for f in obj/sdl/mame/build/file2str obj/sdl/mame/build/png2bdc mame \
- testkeys romcmp chdman jedutil makemeta regrep srcclean
- ${INSTALL_PROGRAM} ${WRKSRC}/${f} ${PREFIX}/libexec/sdlmame
-.endfor
- ${MKDIR} ${DATADIR}
- ${INSTALL_DATA} ${WRKSRC}/ui.bdf ${DATADIR}
- ${CP} -R ${WRKSRC}/keymaps ${DATADIR}
+ ${INSTALL_PROGRAM} ${WRKSRC}/${PORTNAME} ${PREFIX}/bin/
.if !defined(NOPORTDOCS)
${MKDIR} ${DOCSDIR}
${INSTALL_DATA} ${WRKSRC}/*.txt ${DOCSDIR}
${CP} -R ${WRKSRC}/docs ${DOCSDIR}
.endif
+ ${MKDIR} ${DATADIR}
+ ${CP} ${WRKSRC}/ui.bdf ${DATADIR}/
+ ${CP} -R ${WRKSRC}/keymaps ${DATADIR}/
+ ${MKDIR} ${EXAMPLESDIR}
+ ${CP} ${FILESDIR}/mame.ini ${EXAMPLESDIR}
post-install:
@${ECHO_CMD}
@${CAT} ${PKGMESSAGE}
@${ECHO_CMD}
-.include <bsd.port.pre.mk>
-
-.if ${ARCH} == "sparc64"
-BROKEN= Does not compile on sparc64
-.endif
-
.include <bsd.port.post.mk>
diff --git a/emulators/mame-devel/distinfo b/emulators/mame-devel/distinfo
index 61dd51b0fd87..e6f9402d03da 100644
--- a/emulators/mame-devel/distinfo
+++ b/emulators/mame-devel/distinfo
@@ -1,3 +1,3 @@
-MD5 (sdlmame0124.zip) = f436c418afd98d2c666cd27856f9902e
-SHA256 (sdlmame0124.zip) = b0f993878b7ad72fa8905701a40ce631a6500774b11011711003c4101ab2ed54
-SIZE (sdlmame0124.zip) = 16248845
+MD5 (sdlmame0130.zip) = b33d3545049e8e2b8da5d7d7cc3b843b
+SHA256 (sdlmame0130.zip) = 1122f4efe5ac0775f122898667c0ace147cd953a1063f9a373051b9ca2bd93a1
+SIZE (sdlmame0130.zip) = 17681967
diff --git a/emulators/mame-devel/files/mame.ini b/emulators/mame-devel/files/mame.ini
new file mode 100644
index 000000000000..b67dcf7fe1c8
--- /dev/null
+++ b/emulators/mame-devel/files/mame.ini
@@ -0,0 +1,260 @@
+<UNADORNED0>
+
+#
+# CORE CONFIGURATION OPTIONS
+#
+readconfig 1
+
+#
+# CORE SEARCH PATH OPTIONS
+#
+rompath $HOME/.mame/roms
+samplepath $HOME/.mame/samples
+artpath $HOME/.mame/artwork
+ctrlrpath $HOME/.mame/ctrlr
+inipath $HOME/.mame;.;ini
+fontpath /usr/local/share/sdlmame/
+cheatpath $HOME/.mame/cheat
+
+#
+# CORE OUTPUT DIRECTORY OPTIONS
+#
+cfg_directory $HOME/.mame/cfg
+nvram_directory $HOME/.mame/nvram
+memcard_directory $HOME/.mame/memcard
+input_directory $HOME/.mame/inp
+state_directory $HOME/.mame/sta
+snapshot_directory $HOME/.mame/snap
+diff_directory $HOME/.mame/diff
+comment_directory $HOME/.mame/comments
+
+#
+# CORE STATE/PLAYBACK OPTIONS
+#
+state
+autosave 0
+playback
+record
+mngwrite
+aviwrite
+wavwrite
+snapname %g/%i
+snapsize auto
+snapview internal
+
+#
+# CORE PERFORMANCE OPTIONS
+#
+autoframeskip 0
+frameskip 0
+seconds_to_run 0
+throttle 1
+sleep 1
+speed 1.0
+refreshspeed 0
+
+#
+# CORE ROTATION OPTIONS
+#
+rotate 1
+ror 0
+rol 0
+autoror 0
+autorol 0
+flipx 0
+flipy 0
+
+#
+# CORE ARTWORK OPTIONS
+#
+artwork_crop 0
+use_backdrops 1
+use_overlays 1
+use_bezels 1
+
+#
+# CORE SCREEN OPTIONS
+#
+brightness 1.0
+contrast 1.0
+gamma 1.0
+pause_brightness 0.65
+
+#
+# CORE VECTOR OPTIONS
+#
+antialias 1
+beam 1.0
+flicker 0
+
+#
+# CORE SOUND OPTIONS
+#
+sound 1
+samplerate 48000
+samples 1
+volume 0
+
+#
+# CORE INPUT OPTIONS
+#
+coin_lockout 1
+ctrlr
+mouse 0
+joystick 1
+lightgun 0
+multikeyboard 0
+multimouse 0
+steadykey 0
+offscreen_reload 0
+joystick_map auto
+joystick_deadzone 0.3
+joystick_saturation 0.85
+
+#
+# CORE INPUT AUTOMATIC ENABLE OPTIONS
+#
+paddle_device keyboard
+adstick_device keyboard
+pedal_device keyboard
+dial_device keyboard
+trackball_device keyboard
+lightgun_device keyboard
+positional_device keyboard
+mouse_device mouse
+
+#
+# CORE DEBUGGING OPTIONS
+#
+log 0
+verbose 0
+update_in_pause 0
+debug 0
+debugscript
+
+#
+# CORE MISC OPTIONS
+#
+bios
+cheat 0
+skip_gameinfo 0
+
+#
+# DEBUGGING OPTIONS
+#
+oslog 0
+
+#
+# PERFORMANCE OPTIONS
+#
+multithreading 0
+sdlvideofps 0
+
+#
+# VIDEO OPTIONS
+#
+video soft
+numscreens 1
+window 0
+maximize 1
+keepaspect 1
+unevenstretch 1
+effect none
+centerh 1
+centerv 1
+waitvsync 0
+scalemode none
+
+#
+# OpenGL-SPECIFIC OPTIONS
+#
+filter 1
+prescale 1
+gl_forcepow2texture 0
+gl_notexturerect 0
+gl_vbo 1
+gl_pbo 1
+gl_glsl 0
+gl_glsl_filter 1
+glsl_shader_mame0 none
+glsl_shader_mame1 none
+glsl_shader_mame2 none
+glsl_shader_mame3 none
+glsl_shader_mame4 none
+glsl_shader_mame5 none
+glsl_shader_mame6 none
+glsl_shader_mame7 none
+glsl_shader_mame8 none
+glsl_shader_mame9 none
+glsl_shader_screen0 none
+glsl_shader_screen1 none
+glsl_shader_screen2 none
+glsl_shader_screen3 none
+glsl_shader_screen4 none
+glsl_shader_screen5 none
+glsl_shader_screen6 none
+glsl_shader_screen7 none
+glsl_shader_screen8 none
+glsl_shader_screen9 none
+gl_glsl_vid_attr 1
+
+#
+# PER-WINDOW VIDEO OPTIONS
+#
+screen auto
+aspect auto
+resolution auto
+view auto
+screen0 auto
+aspect0 auto
+resolution0 auto
+view0 auto
+screen1 auto
+aspect1 auto
+resolution1 auto
+view1 auto
+screen2 auto
+aspect2 auto
+resolution2 auto
+view2 auto
+screen3 auto
+aspect3 auto
+resolution3 auto
+view3 auto
+
+#
+# FULL SCREEN OPTIONS
+#
+switchres 0
+useallheads 0
+
+#
+# SOUND OPTIONS
+#
+audio_latency 3
+
+#
+# SDL KEYBOARD MAPPING
+#
+keymap 0
+keymap_file keymap.dat
+
+#
+# SDL JOYSTICK MAPPING
+#
+joy_idx1 auto
+joy_idx2 auto
+joy_idx3 auto
+joy_idx4 auto
+joy_idx5 auto
+joy_idx6 auto
+joy_idx7 auto
+joy_idx8 auto
+sixaxis 0
+
+#
+# SDL LOWLEVEL DRIVER OPTIONS
+#
+videodriver auto
+audiodriver auto
+gl_lib auto
diff --git a/emulators/mame-devel/files/patch-makefile b/emulators/mame-devel/files/patch-makefile
index 9305af94f296..f3a447bb9818 100644
--- a/emulators/mame-devel/files/patch-makefile
+++ b/emulators/mame-devel/files/patch-makefile
@@ -1,31 +1,15 @@
---- ./makefile.orig 2008-02-28 12:45:21.000000000 -0200
-+++ ./makefile 2008-04-21 16:24:53.000000000 -0300
-@@ -104,11 +104,13 @@
- # uncomment next line to include the internal profiler
- # PROFILER = 1
-
-+ifeq ($(ARCH),i386)
- # uncomment next line to use DRC MIPS3 engine
- X86_MIPS3_DRC = 1
-
- # uncomment next line to use DRC PowerPC engine
- X86_PPC_DRC = 1
-+endif
-
- # uncomment next line to build using unix-style libsdl on Mac OS X
- # (vs. the native framework port). Normal users should not enable this.
-@@ -121,7 +123,9 @@
- #-------------------------------------------------
-
- # uncomment next line if you are building for a 64-bit target
--# PTR64 = 1
-+ifeq ($(ARCH),amd64)
-+PTR64 = 1
-+endif
+--- makefile.orig 2009-03-05 14:16:35.000000000 +0000
++++ makefile 2009-03-13 02:39:13.000000000 +0000
+@@ -59,7 +59,7 @@
+ ifeq ($(OSD),windows)
+ TARGETOS = win32
+ else
+-TARGETOS = unix
++TARGETOS = freebsd
+ endif
+ endif
- # uncomment next line if you are building for a big-endian target
- # BIGENDIAN = 1
-@@ -198,8 +202,8 @@
+@@ -197,8 +197,8 @@
# compiler, linker and utilities
AR = @ar
@@ -36,48 +20,39 @@
MD = -mkdir$(EXE)
RM = @rm -f
-@@ -223,7 +227,7 @@
+@@ -227,7 +227,7 @@
endif
# fullname is prefix+name+suffix+debugsuffix
--FULLNAME = $(PREFIX)$(NAME)$(SUFFIX)$(DEBUGSUFFIX)
-+FULLNAME = $(NAME)
+-FULLNAME = $(PREFIX)$(NAME)$(CPPSUFFIX)$(SUFFIX)$(DEBUGSUFFIX)
++FULLNAME = sdl$(NAME)$(CPPSUFFIX)$(SUFFIX)$(DEBUGSUFFIX)
# add an EXE suffix to get the final emulator name
EMULATOR = $(FULLNAME)$(EXE)
-@@ -293,7 +297,7 @@
- #-------------------------------------------------
-
- # we compile to C89 standard with GNU extensions
--CFLAGS = -std=gnu89
-+CFLAGS += -std=gnu89
-
- # this speeds it up a bit by piping between the preprocessor/compiler/assembler
- CFLAGS += -pipe
-@@ -331,9 +335,6 @@
+@@ -337,7 +337,7 @@
# and make all errors into warnings
ifneq ($(OPTIMIZE),0)
- CFLAGS += $(ARCHOPTS) -fno-strict-aliasing
--ifneq ($(TARGETOS),os2)
--CFLAGS += -Werror
--endif
+ ifneq ($(TARGETOS),os2)
+-CCOMFLAGS += -Werror -fno-strict-aliasing $(ARCHOPTS)
++CCOMFLAGS += -fno-strict-aliasing $(ARCHOPTS)
+ else
+ CCOMFLAGS += -fno-strict-aliasing $(ARCHOPTS)
endif
-
- # if symbols are on, make sure we have frame pointers
-@@ -358,6 +359,7 @@
+@@ -379,7 +379,7 @@
-I$(SRC)/lib/util \
-I$(SRC)/osd \
-I$(SRC)/osd/$(OSD) \
+-
+ -I$(LOCALBASE)/include
-
-@@ -370,7 +372,7 @@
- LDFLAGS =
+ #-------------------------------------------------
+@@ -392,7 +392,7 @@
ifneq ($(TARGETOS),macosx)
ifneq ($(TARGETOS),os2)
+ ifneq ($(TARGETOS),solaris)
-LDFLAGS = -Wl,--warn-common
+LDFLAGS = -Wl,--warn-common $(PTHREAD_LIBS) -L$(LOCALBASE)/lib
endif
endif
- LDFLAGSEMULATOR =
+ endif
diff --git a/emulators/mame-devel/files/pkg-message.in b/emulators/mame-devel/files/pkg-message.in
index 3290fa533a30..072489632688 100644
--- a/emulators/mame-devel/files/pkg-message.in
+++ b/emulators/mame-devel/files/pkg-message.in
@@ -2,12 +2,12 @@
SDLMAME has been installed.
-The MAME tools are installed in "%%PREFIX%%/libexec/sdlmame"
-to avoid conflicting with other MAME ports.
+A example configuration file has been installed in "%%EXAMPLESDIR%%/mame.ini"
+Should you create a "~/.mame" directory and place it here or
+launch "sdlmame -createconfig" and place the mame.ini created instead.
-A wrapper script "sdlmame" has been installed. It creates a "~/.sdlmame"
-directory mirroring the directory tree under "%%DATADIR%%"
-when you run it for the first time, and starts the program from there. So
-place all MAME files (e.g. ROMs, cheats, etc.) in "~/.sdlmame".
+If you have a non-qwerty keyboard, you should put in your mame.ini :
+keymap 1
+keymap_file %%DATADIR%%/keymaps/km-XX.txt
==============================================================================
diff --git a/emulators/mame-devel/files/sdl.mak.patch b/emulators/mame-devel/files/sdl.mak.patch
new file mode 100644
index 000000000000..36fd61624130
--- /dev/null
+++ b/emulators/mame-devel/files/sdl.mak.patch
@@ -0,0 +1,17 @@
+--- src/osd/sdl/sdl.mak.orig 2009-03-05 20:03:50.000000000 +0100
++++ src/osd/sdl/sdl.mak 2009-03-05 20:06:22.000000000 +0100
+@@ -264,10 +264,10 @@
+ # the new debugger relies on GTK+ in addition to the base SDLMAME needs
+ # Non-X11 builds can not use the debugger
+ ifndef NO_X11
+-OSDCOREOBJS += $(SDLOBJ)/debugwin.o $(SDLOBJ)/dview.o $(SDLOBJ)/debug-sup.o $(SDLOBJ)/debug-intf.o
+-CFLAGS += `pkg-config --cflags gtk+-2.0` `pkg-config --cflags gconf-2.0`
+-LIBS += `pkg-config --libs gtk+-2.0` `pkg-config --libs gconf-2.0`
+-CFLAGS += -DGTK_DISABLE_DEPRECATED
++OSDCOREOBJS += $(SDLOBJ)/debugwin.o
++#CFLAGS += `pkg-config --cflags gtk+-2.0` `pkg-config --cflags gconf-2.0`
++#LIBS += `pkg-config --libs gtk+-2.0` `pkg-config --libs gconf-2.0`
++#CFLAGS += -DGTK_DISABLE_DEPRECATED
+ else
+ OSDCOREOBJS += $(SDLOBJ)/debugwin.o
+ endif # NO_X11
diff --git a/emulators/mame-devel/files/sdl.mak.patch-debug b/emulators/mame-devel/files/sdl.mak.patch-debug
new file mode 100644
index 000000000000..66573868cdc2
--- /dev/null
+++ b/emulators/mame-devel/files/sdl.mak.patch-debug
@@ -0,0 +1,11 @@
+--- src/osd/sdl/sdl.mak.orig 2009-03-05 21:41:13.000000000 +0100
++++ src/osd/sdl/sdl.mak 2009-03-05 21:41:25.000000000 +0100
+@@ -127,7 +127,7 @@
+
+ ifeq ($(TARGETOS),freebsd)
+ TARGETOS = unix
+-DEFS += -DNO_THREAD_COOPERATIVE -DNO_DEBUGGER
++DEFS += -DNO_THREAD_COOPERATIVE
+ endif
+
+ ifeq ($(TARGETOS),unix)
diff --git a/emulators/mame-devel/files/sdlmame.in b/emulators/mame-devel/files/sdlmame.in
deleted file mode 100644
index 099cea29a2f8..000000000000
--- a/emulators/mame-devel/files/sdlmame.in
+++ /dev/null
@@ -1,16 +0,0 @@
-#!/bin/sh
-#
-# The executable needs to be run from its data directory, and needs to store
-# configuration in it. We therefore mirror the data directory hierarchy in
-# ~/.sdlmame, and create symlinks to the data files.
-#
-
-if [ ! -d ~/.sdlmame ]
-then
- cd %%DATADIR%% || exit 1
- find * -type d -exec mkdir -p ~/.sdlmame/{} \;
- find * -type f -exec ln -s %%DATADIR%%/{} ~/.sdlmame/{} \; 2>/dev/null
-fi
-
-cd ~/.sdlmame || exit 1
-exec %%PREFIX%%/libexec/sdlmame/mame "$@"
diff --git a/emulators/mame-devel/pkg-plist b/emulators/mame-devel/pkg-plist
index 911e73cc58b2..3793f2175e57 100644
--- a/emulators/mame-devel/pkg-plist
+++ b/emulators/mame-devel/pkg-plist
@@ -1,14 +1,4 @@
bin/sdlmame
-libexec/sdlmame/chdman
-libexec/sdlmame/file2str
-libexec/sdlmame/jedutil
-libexec/sdlmame/makemeta
-libexec/sdlmame/mame
-libexec/sdlmame/png2bdc
-libexec/sdlmame/regrep
-libexec/sdlmame/romcmp
-libexec/sdlmame/srcclean
-libexec/sdlmame/testkeys
%%PORTDOCS%%%%DOCSDIR%%/SDLMAME.txt
%%PORTDOCS%%%%DOCSDIR%%/docs/license.txt
%%PORTDOCS%%%%DOCSDIR%%/docs/mame.txt
@@ -16,15 +6,16 @@ libexec/sdlmame/testkeys
%%PORTDOCS%%%%DOCSDIR%%/docs/windows.txt
%%PORTDOCS%%%%DOCSDIR%%/docs/config.txt
%%PORTDOCS%%%%DOCSDIR%%/whatsnew.txt
+%%DATADIR%%/ui.bdf
%%DATADIR%%/keymaps/km-be.txt
%%DATADIR%%/keymaps/km-ch.txt
%%DATADIR%%/keymaps/km-de.txt
%%DATADIR%%/keymaps/km-fr-OSX.txt
%%DATADIR%%/keymaps/km-fr.txt
%%DATADIR%%/keymaps/km_it.txt
-%%DATADIR%%/ui.bdf
-@dirrm %%DATADIR%%/keymaps
-@dirrm %%DATADIR%%
+%%EXAMPLESDIR%%/mame.ini
+@dirrm %%DATADIR%%/keymaps/
+@dirrm %%DATADIR%%/
%%PORTDOCS%%@dirrm %%DOCSDIR%%/docs
%%PORTDOCS%%@dirrm %%DOCSDIR%%
-@dirrm libexec/sdlmame
+@dirrm %%EXAMPLESDIR%%
diff --git a/emulators/mame/Makefile b/emulators/mame/Makefile
index 44216629af81..0097029d7c0b 100644
--- a/emulators/mame/Makefile
+++ b/emulators/mame/Makefile
@@ -6,49 +6,59 @@
#
PORTNAME= sdlmame
-PORTVERSION= 0.124
+PORTVERSION= 0.130
CATEGORIES= emulators
-MASTER_SITES= ftp://ftp.alepulver.com.ar/distfiles/
+MASTER_SITES= ftp://ftp.arcadebsd.org/pub/FreeBSD/ports/distfiles/
DISTNAME= ${PORTNAME}${PORTVERSION:S/.//}
-MAINTAINER= alepulver@FreeBSD.org
+MAINTAINER= elbarto@ArcadeBSD.org
COMMENT= SDL port of the popular MAME (Multi Arcade Machine Emulator)
USE_ZIP= yes
USE_XORG= xext xrender xinerama xi
USE_GL= gl
+USE_GNOME?= gtk20 gconf2
USE_GMAKE= yes
MAKE_ENV= PTHREAD_LIBS="${PTHREAD_LIBS}"
USE_SDL= sdl
MAKEFILE= makefile
+ONLY_FOR_ARCH= i386 amd64
+SUB_FILES= pkg-message
-SUB_FILES= ${PORTNAME} pkg-message
+OPTIONS= DEBUG "Build sdlmame debugger" off
+
+.include <bsd.port.pre.mk>
+
+.if defined(WITH_DEBUG)
+EXTRA_PATCHES+= ${FILESDIR}/sdl.mak.patch-debug
+.else
+USE_GNOME= #
+EXTRA_PATCHES+= ${FILESDIR}/sdl.mak.patch
+.endif
+
+.if ${ARCH} == "amd64"
+MAKE_ENV+= PTR64=1
+.endif
+
+post-patch:
+ @${REINPLACE_CMD} -e "s|ui.bdf|${DATADIR}/ui.bdf|g" ${WRKSRC}/src/emu/ui.c
do-install:
- ${INSTALL_SCRIPT} ${WRKDIR}/${PORTNAME} ${PREFIX}/bin
- ${MKDIR} ${PREFIX}/libexec/sdlmame
-.for f in obj/sdl/mame/build/file2str obj/sdl/mame/build/png2bdc mame \
- testkeys romcmp chdman jedutil makemeta regrep srcclean
- ${INSTALL_PROGRAM} ${WRKSRC}/${f} ${PREFIX}/libexec/sdlmame
-.endfor
- ${MKDIR} ${DATADIR}
- ${INSTALL_DATA} ${WRKSRC}/ui.bdf ${DATADIR}
- ${CP} -R ${WRKSRC}/keymaps ${DATADIR}
+ ${INSTALL_PROGRAM} ${WRKSRC}/${PORTNAME} ${PREFIX}/bin/
.if !defined(NOPORTDOCS)
${MKDIR} ${DOCSDIR}
${INSTALL_DATA} ${WRKSRC}/*.txt ${DOCSDIR}
${CP} -R ${WRKSRC}/docs ${DOCSDIR}
.endif
+ ${MKDIR} ${DATADIR}
+ ${CP} ${WRKSRC}/ui.bdf ${DATADIR}/
+ ${CP} -R ${WRKSRC}/keymaps ${DATADIR}/
+ ${MKDIR} ${EXAMPLESDIR}
+ ${CP} ${FILESDIR}/mame.ini ${EXAMPLESDIR}
post-install:
@${ECHO_CMD}
@${CAT} ${PKGMESSAGE}
@${ECHO_CMD}
-.include <bsd.port.pre.mk>
-
-.if ${ARCH} == "sparc64"
-BROKEN= Does not compile on sparc64
-.endif
-
.include <bsd.port.post.mk>
diff --git a/emulators/mame/distinfo b/emulators/mame/distinfo
index 61dd51b0fd87..e6f9402d03da 100644
--- a/emulators/mame/distinfo
+++ b/emulators/mame/distinfo
@@ -1,3 +1,3 @@
-MD5 (sdlmame0124.zip) = f436c418afd98d2c666cd27856f9902e
-SHA256 (sdlmame0124.zip) = b0f993878b7ad72fa8905701a40ce631a6500774b11011711003c4101ab2ed54
-SIZE (sdlmame0124.zip) = 16248845
+MD5 (sdlmame0130.zip) = b33d3545049e8e2b8da5d7d7cc3b843b
+SHA256 (sdlmame0130.zip) = 1122f4efe5ac0775f122898667c0ace147cd953a1063f9a373051b9ca2bd93a1
+SIZE (sdlmame0130.zip) = 17681967
diff --git a/emulators/mame/files/mame.ini b/emulators/mame/files/mame.ini
new file mode 100644
index 000000000000..b67dcf7fe1c8
--- /dev/null
+++ b/emulators/mame/files/mame.ini
@@ -0,0 +1,260 @@
+<UNADORNED0>
+
+#
+# CORE CONFIGURATION OPTIONS
+#
+readconfig 1
+
+#
+# CORE SEARCH PATH OPTIONS
+#
+rompath $HOME/.mame/roms
+samplepath $HOME/.mame/samples
+artpath $HOME/.mame/artwork
+ctrlrpath $HOME/.mame/ctrlr
+inipath $HOME/.mame;.;ini
+fontpath /usr/local/share/sdlmame/
+cheatpath $HOME/.mame/cheat
+
+#
+# CORE OUTPUT DIRECTORY OPTIONS
+#
+cfg_directory $HOME/.mame/cfg
+nvram_directory $HOME/.mame/nvram
+memcard_directory $HOME/.mame/memcard
+input_directory $HOME/.mame/inp
+state_directory $HOME/.mame/sta
+snapshot_directory $HOME/.mame/snap
+diff_directory $HOME/.mame/diff
+comment_directory $HOME/.mame/comments
+
+#
+# CORE STATE/PLAYBACK OPTIONS
+#
+state
+autosave 0
+playback
+record
+mngwrite
+aviwrite
+wavwrite
+snapname %g/%i
+snapsize auto
+snapview internal
+
+#
+# CORE PERFORMANCE OPTIONS
+#
+autoframeskip 0
+frameskip 0
+seconds_to_run 0
+throttle 1
+sleep 1
+speed 1.0
+refreshspeed 0
+
+#
+# CORE ROTATION OPTIONS
+#
+rotate 1
+ror 0
+rol 0
+autoror 0
+autorol 0
+flipx 0
+flipy 0
+
+#
+# CORE ARTWORK OPTIONS
+#
+artwork_crop 0
+use_backdrops 1
+use_overlays 1
+use_bezels 1
+
+#
+# CORE SCREEN OPTIONS
+#
+brightness 1.0
+contrast 1.0
+gamma 1.0
+pause_brightness 0.65
+
+#
+# CORE VECTOR OPTIONS
+#
+antialias 1
+beam 1.0
+flicker 0
+
+#
+# CORE SOUND OPTIONS
+#
+sound 1
+samplerate 48000
+samples 1
+volume 0
+
+#
+# CORE INPUT OPTIONS
+#
+coin_lockout 1
+ctrlr
+mouse 0
+joystick 1
+lightgun 0
+multikeyboard 0
+multimouse 0
+steadykey 0
+offscreen_reload 0
+joystick_map auto
+joystick_deadzone 0.3
+joystick_saturation 0.85
+
+#
+# CORE INPUT AUTOMATIC ENABLE OPTIONS
+#
+paddle_device keyboard
+adstick_device keyboard
+pedal_device keyboard
+dial_device keyboard
+trackball_device keyboard
+lightgun_device keyboard
+positional_device keyboard
+mouse_device mouse
+
+#
+# CORE DEBUGGING OPTIONS
+#
+log 0
+verbose 0
+update_in_pause 0
+debug 0
+debugscript
+
+#
+# CORE MISC OPTIONS
+#
+bios
+cheat 0
+skip_gameinfo 0
+
+#
+# DEBUGGING OPTIONS
+#
+oslog 0
+
+#
+# PERFORMANCE OPTIONS
+#
+multithreading 0
+sdlvideofps 0
+
+#
+# VIDEO OPTIONS
+#
+video soft
+numscreens 1
+window 0
+maximize 1
+keepaspect 1
+unevenstretch 1
+effect none
+centerh 1
+centerv 1
+waitvsync 0
+scalemode none
+
+#
+# OpenGL-SPECIFIC OPTIONS
+#
+filter 1
+prescale 1
+gl_forcepow2texture 0
+gl_notexturerect 0
+gl_vbo 1
+gl_pbo 1
+gl_glsl 0
+gl_glsl_filter 1
+glsl_shader_mame0 none
+glsl_shader_mame1 none
+glsl_shader_mame2 none
+glsl_shader_mame3 none
+glsl_shader_mame4 none
+glsl_shader_mame5 none
+glsl_shader_mame6 none
+glsl_shader_mame7 none
+glsl_shader_mame8 none
+glsl_shader_mame9 none
+glsl_shader_screen0 none
+glsl_shader_screen1 none
+glsl_shader_screen2 none
+glsl_shader_screen3 none
+glsl_shader_screen4 none
+glsl_shader_screen5 none
+glsl_shader_screen6 none
+glsl_shader_screen7 none
+glsl_shader_screen8 none
+glsl_shader_screen9 none
+gl_glsl_vid_attr 1
+
+#
+# PER-WINDOW VIDEO OPTIONS
+#
+screen auto
+aspect auto
+resolution auto
+view auto
+screen0 auto
+aspect0 auto
+resolution0 auto
+view0 auto
+screen1 auto
+aspect1 auto
+resolution1 auto
+view1 auto
+screen2 auto
+aspect2 auto
+resolution2 auto
+view2 auto
+screen3 auto
+aspect3 auto
+resolution3 auto
+view3 auto
+
+#
+# FULL SCREEN OPTIONS
+#
+switchres 0
+useallheads 0
+
+#
+# SOUND OPTIONS
+#
+audio_latency 3
+
+#
+# SDL KEYBOARD MAPPING
+#
+keymap 0
+keymap_file keymap.dat
+
+#
+# SDL JOYSTICK MAPPING
+#
+joy_idx1 auto
+joy_idx2 auto
+joy_idx3 auto
+joy_idx4 auto
+joy_idx5 auto
+joy_idx6 auto
+joy_idx7 auto
+joy_idx8 auto
+sixaxis 0
+
+#
+# SDL LOWLEVEL DRIVER OPTIONS
+#
+videodriver auto
+audiodriver auto
+gl_lib auto
diff --git a/emulators/mame/files/patch-makefile b/emulators/mame/files/patch-makefile
index 9305af94f296..f3a447bb9818 100644
--- a/emulators/mame/files/patch-makefile
+++ b/emulators/mame/files/patch-makefile
@@ -1,31 +1,15 @@
---- ./makefile.orig 2008-02-28 12:45:21.000000000 -0200
-+++ ./makefile 2008-04-21 16:24:53.000000000 -0300
-@@ -104,11 +104,13 @@
- # uncomment next line to include the internal profiler
- # PROFILER = 1
-
-+ifeq ($(ARCH),i386)
- # uncomment next line to use DRC MIPS3 engine
- X86_MIPS3_DRC = 1
-
- # uncomment next line to use DRC PowerPC engine
- X86_PPC_DRC = 1
-+endif
-
- # uncomment next line to build using unix-style libsdl on Mac OS X
- # (vs. the native framework port). Normal users should not enable this.
-@@ -121,7 +123,9 @@
- #-------------------------------------------------
-
- # uncomment next line if you are building for a 64-bit target
--# PTR64 = 1
-+ifeq ($(ARCH),amd64)
-+PTR64 = 1
-+endif
+--- makefile.orig 2009-03-05 14:16:35.000000000 +0000
++++ makefile 2009-03-13 02:39:13.000000000 +0000
+@@ -59,7 +59,7 @@
+ ifeq ($(OSD),windows)
+ TARGETOS = win32
+ else
+-TARGETOS = unix
++TARGETOS = freebsd
+ endif
+ endif
- # uncomment next line if you are building for a big-endian target
- # BIGENDIAN = 1
-@@ -198,8 +202,8 @@
+@@ -197,8 +197,8 @@
# compiler, linker and utilities
AR = @ar
@@ -36,48 +20,39 @@
MD = -mkdir$(EXE)
RM = @rm -f
-@@ -223,7 +227,7 @@
+@@ -227,7 +227,7 @@
endif
# fullname is prefix+name+suffix+debugsuffix
--FULLNAME = $(PREFIX)$(NAME)$(SUFFIX)$(DEBUGSUFFIX)
-+FULLNAME = $(NAME)
+-FULLNAME = $(PREFIX)$(NAME)$(CPPSUFFIX)$(SUFFIX)$(DEBUGSUFFIX)
++FULLNAME = sdl$(NAME)$(CPPSUFFIX)$(SUFFIX)$(DEBUGSUFFIX)
# add an EXE suffix to get the final emulator name
EMULATOR = $(FULLNAME)$(EXE)
-@@ -293,7 +297,7 @@
- #-------------------------------------------------
-
- # we compile to C89 standard with GNU extensions
--CFLAGS = -std=gnu89
-+CFLAGS += -std=gnu89
-
- # this speeds it up a bit by piping between the preprocessor/compiler/assembler
- CFLAGS += -pipe
-@@ -331,9 +335,6 @@
+@@ -337,7 +337,7 @@
# and make all errors into warnings
ifneq ($(OPTIMIZE),0)
- CFLAGS += $(ARCHOPTS) -fno-strict-aliasing
--ifneq ($(TARGETOS),os2)
--CFLAGS += -Werror
--endif
+ ifneq ($(TARGETOS),os2)
+-CCOMFLAGS += -Werror -fno-strict-aliasing $(ARCHOPTS)
++CCOMFLAGS += -fno-strict-aliasing $(ARCHOPTS)
+ else
+ CCOMFLAGS += -fno-strict-aliasing $(ARCHOPTS)
endif
-
- # if symbols are on, make sure we have frame pointers
-@@ -358,6 +359,7 @@
+@@ -379,7 +379,7 @@
-I$(SRC)/lib/util \
-I$(SRC)/osd \
-I$(SRC)/osd/$(OSD) \
+-
+ -I$(LOCALBASE)/include
-
-@@ -370,7 +372,7 @@
- LDFLAGS =
+ #-------------------------------------------------
+@@ -392,7 +392,7 @@
ifneq ($(TARGETOS),macosx)
ifneq ($(TARGETOS),os2)
+ ifneq ($(TARGETOS),solaris)
-LDFLAGS = -Wl,--warn-common
+LDFLAGS = -Wl,--warn-common $(PTHREAD_LIBS) -L$(LOCALBASE)/lib
endif
endif
- LDFLAGSEMULATOR =
+ endif
diff --git a/emulators/mame/files/pkg-message.in b/emulators/mame/files/pkg-message.in
index 3290fa533a30..072489632688 100644
--- a/emulators/mame/files/pkg-message.in
+++ b/emulators/mame/files/pkg-message.in
@@ -2,12 +2,12 @@
SDLMAME has been installed.
-The MAME tools are installed in "%%PREFIX%%/libexec/sdlmame"
-to avoid conflicting with other MAME ports.
+A example configuration file has been installed in "%%EXAMPLESDIR%%/mame.ini"
+Should you create a "~/.mame" directory and place it here or
+launch "sdlmame -createconfig" and place the mame.ini created instead.
-A wrapper script "sdlmame" has been installed. It creates a "~/.sdlmame"
-directory mirroring the directory tree under "%%DATADIR%%"
-when you run it for the first time, and starts the program from there. So
-place all MAME files (e.g. ROMs, cheats, etc.) in "~/.sdlmame".
+If you have a non-qwerty keyboard, you should put in your mame.ini :
+keymap 1
+keymap_file %%DATADIR%%/keymaps/km-XX.txt
==============================================================================
diff --git a/emulators/mame/files/sdl.mak.patch b/emulators/mame/files/sdl.mak.patch
new file mode 100644
index 000000000000..36fd61624130
--- /dev/null
+++ b/emulators/mame/files/sdl.mak.patch
@@ -0,0 +1,17 @@
+--- src/osd/sdl/sdl.mak.orig 2009-03-05 20:03:50.000000000 +0100
++++ src/osd/sdl/sdl.mak 2009-03-05 20:06:22.000000000 +0100
+@@ -264,10 +264,10 @@
+ # the new debugger relies on GTK+ in addition to the base SDLMAME needs
+ # Non-X11 builds can not use the debugger
+ ifndef NO_X11
+-OSDCOREOBJS += $(SDLOBJ)/debugwin.o $(SDLOBJ)/dview.o $(SDLOBJ)/debug-sup.o $(SDLOBJ)/debug-intf.o
+-CFLAGS += `pkg-config --cflags gtk+-2.0` `pkg-config --cflags gconf-2.0`
+-LIBS += `pkg-config --libs gtk+-2.0` `pkg-config --libs gconf-2.0`
+-CFLAGS += -DGTK_DISABLE_DEPRECATED
++OSDCOREOBJS += $(SDLOBJ)/debugwin.o
++#CFLAGS += `pkg-config --cflags gtk+-2.0` `pkg-config --cflags gconf-2.0`
++#LIBS += `pkg-config --libs gtk+-2.0` `pkg-config --libs gconf-2.0`
++#CFLAGS += -DGTK_DISABLE_DEPRECATED
+ else
+ OSDCOREOBJS += $(SDLOBJ)/debugwin.o
+ endif # NO_X11
diff --git a/emulators/mame/files/sdl.mak.patch-debug b/emulators/mame/files/sdl.mak.patch-debug
new file mode 100644
index 000000000000..66573868cdc2
--- /dev/null
+++ b/emulators/mame/files/sdl.mak.patch-debug
@@ -0,0 +1,11 @@
+--- src/osd/sdl/sdl.mak.orig 2009-03-05 21:41:13.000000000 +0100
++++ src/osd/sdl/sdl.mak 2009-03-05 21:41:25.000000000 +0100
+@@ -127,7 +127,7 @@
+
+ ifeq ($(TARGETOS),freebsd)
+ TARGETOS = unix
+-DEFS += -DNO_THREAD_COOPERATIVE -DNO_DEBUGGER
++DEFS += -DNO_THREAD_COOPERATIVE
+ endif
+
+ ifeq ($(TARGETOS),unix)
diff --git a/emulators/mame/files/sdlmame.in b/emulators/mame/files/sdlmame.in
deleted file mode 100644
index 099cea29a2f8..000000000000
--- a/emulators/mame/files/sdlmame.in
+++ /dev/null
@@ -1,16 +0,0 @@
-#!/bin/sh
-#
-# The executable needs to be run from its data directory, and needs to store
-# configuration in it. We therefore mirror the data directory hierarchy in
-# ~/.sdlmame, and create symlinks to the data files.
-#
-
-if [ ! -d ~/.sdlmame ]
-then
- cd %%DATADIR%% || exit 1
- find * -type d -exec mkdir -p ~/.sdlmame/{} \;
- find * -type f -exec ln -s %%DATADIR%%/{} ~/.sdlmame/{} \; 2>/dev/null
-fi
-
-cd ~/.sdlmame || exit 1
-exec %%PREFIX%%/libexec/sdlmame/mame "$@"
diff --git a/emulators/mame/pkg-plist b/emulators/mame/pkg-plist
index 911e73cc58b2..3793f2175e57 100644
--- a/emulators/mame/pkg-plist
+++ b/emulators/mame/pkg-plist
@@ -1,14 +1,4 @@
bin/sdlmame
-libexec/sdlmame/chdman
-libexec/sdlmame/file2str
-libexec/sdlmame/jedutil
-libexec/sdlmame/makemeta
-libexec/sdlmame/mame
-libexec/sdlmame/png2bdc
-libexec/sdlmame/regrep
-libexec/sdlmame/romcmp
-libexec/sdlmame/srcclean
-libexec/sdlmame/testkeys
%%PORTDOCS%%%%DOCSDIR%%/SDLMAME.txt
%%PORTDOCS%%%%DOCSDIR%%/docs/license.txt
%%PORTDOCS%%%%DOCSDIR%%/docs/mame.txt
@@ -16,15 +6,16 @@ libexec/sdlmame/testkeys
%%PORTDOCS%%%%DOCSDIR%%/docs/windows.txt
%%PORTDOCS%%%%DOCSDIR%%/docs/config.txt
%%PORTDOCS%%%%DOCSDIR%%/whatsnew.txt
+%%DATADIR%%/ui.bdf
%%DATADIR%%/keymaps/km-be.txt
%%DATADIR%%/keymaps/km-ch.txt
%%DATADIR%%/keymaps/km-de.txt
%%DATADIR%%/keymaps/km-fr-OSX.txt
%%DATADIR%%/keymaps/km-fr.txt
%%DATADIR%%/keymaps/km_it.txt
-%%DATADIR%%/ui.bdf
-@dirrm %%DATADIR%%/keymaps
-@dirrm %%DATADIR%%
+%%EXAMPLESDIR%%/mame.ini
+@dirrm %%DATADIR%%/keymaps/
+@dirrm %%DATADIR%%/
%%PORTDOCS%%@dirrm %%DOCSDIR%%/docs
%%PORTDOCS%%@dirrm %%DOCSDIR%%
-@dirrm libexec/sdlmame
+@dirrm %%EXAMPLESDIR%%
diff --git a/emulators/sdlmame-devel/Makefile b/emulators/sdlmame-devel/Makefile
index 44216629af81..0097029d7c0b 100644
--- a/emulators/sdlmame-devel/Makefile
+++ b/emulators/sdlmame-devel/Makefile
@@ -6,49 +6,59 @@
#
PORTNAME= sdlmame
-PORTVERSION= 0.124
+PORTVERSION= 0.130
CATEGORIES= emulators
-MASTER_SITES= ftp://ftp.alepulver.com.ar/distfiles/
+MASTER_SITES= ftp://ftp.arcadebsd.org/pub/FreeBSD/ports/distfiles/
DISTNAME= ${PORTNAME}${PORTVERSION:S/.//}
-MAINTAINER= alepulver@FreeBSD.org
+MAINTAINER= elbarto@ArcadeBSD.org
COMMENT= SDL port of the popular MAME (Multi Arcade Machine Emulator)
USE_ZIP= yes
USE_XORG= xext xrender xinerama xi
USE_GL= gl
+USE_GNOME?= gtk20 gconf2
USE_GMAKE= yes
MAKE_ENV= PTHREAD_LIBS="${PTHREAD_LIBS}"
USE_SDL= sdl
MAKEFILE= makefile
+ONLY_FOR_ARCH= i386 amd64
+SUB_FILES= pkg-message
-SUB_FILES= ${PORTNAME} pkg-message
+OPTIONS= DEBUG "Build sdlmame debugger" off
+
+.include <bsd.port.pre.mk>
+
+.if defined(WITH_DEBUG)
+EXTRA_PATCHES+= ${FILESDIR}/sdl.mak.patch-debug
+.else
+USE_GNOME= #
+EXTRA_PATCHES+= ${FILESDIR}/sdl.mak.patch
+.endif
+
+.if ${ARCH} == "amd64"
+MAKE_ENV+= PTR64=1
+.endif
+
+post-patch:
+ @${REINPLACE_CMD} -e "s|ui.bdf|${DATADIR}/ui.bdf|g" ${WRKSRC}/src/emu/ui.c
do-install:
- ${INSTALL_SCRIPT} ${WRKDIR}/${PORTNAME} ${PREFIX}/bin
- ${MKDIR} ${PREFIX}/libexec/sdlmame
-.for f in obj/sdl/mame/build/file2str obj/sdl/mame/build/png2bdc mame \
- testkeys romcmp chdman jedutil makemeta regrep srcclean
- ${INSTALL_PROGRAM} ${WRKSRC}/${f} ${PREFIX}/libexec/sdlmame
-.endfor
- ${MKDIR} ${DATADIR}
- ${INSTALL_DATA} ${WRKSRC}/ui.bdf ${DATADIR}
- ${CP} -R ${WRKSRC}/keymaps ${DATADIR}
+ ${INSTALL_PROGRAM} ${WRKSRC}/${PORTNAME} ${PREFIX}/bin/
.if !defined(NOPORTDOCS)
${MKDIR} ${DOCSDIR}
${INSTALL_DATA} ${WRKSRC}/*.txt ${DOCSDIR}
${CP} -R ${WRKSRC}/docs ${DOCSDIR}
.endif
+ ${MKDIR} ${DATADIR}
+ ${CP} ${WRKSRC}/ui.bdf ${DATADIR}/
+ ${CP} -R ${WRKSRC}/keymaps ${DATADIR}/
+ ${MKDIR} ${EXAMPLESDIR}
+ ${CP} ${FILESDIR}/mame.ini ${EXAMPLESDIR}
post-install:
@${ECHO_CMD}
@${CAT} ${PKGMESSAGE}
@${ECHO_CMD}
-.include <bsd.port.pre.mk>
-
-.if ${ARCH} == "sparc64"
-BROKEN= Does not compile on sparc64
-.endif
-
.include <bsd.port.post.mk>
diff --git a/emulators/sdlmame-devel/distinfo b/emulators/sdlmame-devel/distinfo
index 61dd51b0fd87..e6f9402d03da 100644
--- a/emulators/sdlmame-devel/distinfo
+++ b/emulators/sdlmame-devel/distinfo
@@ -1,3 +1,3 @@
-MD5 (sdlmame0124.zip) = f436c418afd98d2c666cd27856f9902e
-SHA256 (sdlmame0124.zip) = b0f993878b7ad72fa8905701a40ce631a6500774b11011711003c4101ab2ed54
-SIZE (sdlmame0124.zip) = 16248845
+MD5 (sdlmame0130.zip) = b33d3545049e8e2b8da5d7d7cc3b843b
+SHA256 (sdlmame0130.zip) = 1122f4efe5ac0775f122898667c0ace147cd953a1063f9a373051b9ca2bd93a1
+SIZE (sdlmame0130.zip) = 17681967
diff --git a/emulators/sdlmame-devel/files/mame.ini b/emulators/sdlmame-devel/files/mame.ini
new file mode 100644
index 000000000000..b67dcf7fe1c8
--- /dev/null
+++ b/emulators/sdlmame-devel/files/mame.ini
@@ -0,0 +1,260 @@
+<UNADORNED0>
+
+#
+# CORE CONFIGURATION OPTIONS
+#
+readconfig 1
+
+#
+# CORE SEARCH PATH OPTIONS
+#
+rompath $HOME/.mame/roms
+samplepath $HOME/.mame/samples
+artpath $HOME/.mame/artwork
+ctrlrpath $HOME/.mame/ctrlr
+inipath $HOME/.mame;.;ini
+fontpath /usr/local/share/sdlmame/
+cheatpath $HOME/.mame/cheat
+
+#
+# CORE OUTPUT DIRECTORY OPTIONS
+#
+cfg_directory $HOME/.mame/cfg
+nvram_directory $HOME/.mame/nvram
+memcard_directory $HOME/.mame/memcard
+input_directory $HOME/.mame/inp
+state_directory $HOME/.mame/sta
+snapshot_directory $HOME/.mame/snap
+diff_directory $HOME/.mame/diff
+comment_directory $HOME/.mame/comments
+
+#
+# CORE STATE/PLAYBACK OPTIONS
+#
+state
+autosave 0
+playback
+record
+mngwrite
+aviwrite
+wavwrite
+snapname %g/%i
+snapsize auto
+snapview internal
+
+#
+# CORE PERFORMANCE OPTIONS
+#
+autoframeskip 0
+frameskip 0
+seconds_to_run 0
+throttle 1
+sleep 1
+speed 1.0
+refreshspeed 0
+
+#
+# CORE ROTATION OPTIONS
+#
+rotate 1
+ror 0
+rol 0
+autoror 0
+autorol 0
+flipx 0
+flipy 0
+
+#
+# CORE ARTWORK OPTIONS
+#
+artwork_crop 0
+use_backdrops 1
+use_overlays 1
+use_bezels 1
+
+#
+# CORE SCREEN OPTIONS
+#
+brightness 1.0
+contrast 1.0
+gamma 1.0
+pause_brightness 0.65
+
+#
+# CORE VECTOR OPTIONS
+#
+antialias 1
+beam 1.0
+flicker 0
+
+#
+# CORE SOUND OPTIONS
+#
+sound 1
+samplerate 48000
+samples 1
+volume 0
+
+#
+# CORE INPUT OPTIONS
+#
+coin_lockout 1
+ctrlr
+mouse 0
+joystick 1
+lightgun 0
+multikeyboard 0
+multimouse 0
+steadykey 0
+offscreen_reload 0
+joystick_map auto
+joystick_deadzone 0.3
+joystick_saturation 0.85
+
+#
+# CORE INPUT AUTOMATIC ENABLE OPTIONS
+#
+paddle_device keyboard
+adstick_device keyboard
+pedal_device keyboard
+dial_device keyboard
+trackball_device keyboard
+lightgun_device keyboard
+positional_device keyboard
+mouse_device mouse
+
+#
+# CORE DEBUGGING OPTIONS
+#
+log 0
+verbose 0
+update_in_pause 0
+debug 0
+debugscript
+
+#
+# CORE MISC OPTIONS
+#
+bios
+cheat 0
+skip_gameinfo 0
+
+#
+# DEBUGGING OPTIONS
+#
+oslog 0
+
+#
+# PERFORMANCE OPTIONS
+#
+multithreading 0
+sdlvideofps 0
+
+#
+# VIDEO OPTIONS
+#
+video soft
+numscreens 1
+window 0
+maximize 1
+keepaspect 1
+unevenstretch 1
+effect none
+centerh 1
+centerv 1
+waitvsync 0
+scalemode none
+
+#
+# OpenGL-SPECIFIC OPTIONS
+#
+filter 1
+prescale 1
+gl_forcepow2texture 0
+gl_notexturerect 0
+gl_vbo 1
+gl_pbo 1
+gl_glsl 0
+gl_glsl_filter 1
+glsl_shader_mame0 none
+glsl_shader_mame1 none
+glsl_shader_mame2 none
+glsl_shader_mame3 none
+glsl_shader_mame4 none
+glsl_shader_mame5 none
+glsl_shader_mame6 none
+glsl_shader_mame7 none
+glsl_shader_mame8 none
+glsl_shader_mame9 none
+glsl_shader_screen0 none
+glsl_shader_screen1 none
+glsl_shader_screen2 none
+glsl_shader_screen3 none
+glsl_shader_screen4 none
+glsl_shader_screen5 none
+glsl_shader_screen6 none
+glsl_shader_screen7 none
+glsl_shader_screen8 none
+glsl_shader_screen9 none
+gl_glsl_vid_attr 1
+
+#
+# PER-WINDOW VIDEO OPTIONS
+#
+screen auto
+aspect auto
+resolution auto
+view auto
+screen0 auto
+aspect0 auto
+resolution0 auto
+view0 auto
+screen1 auto
+aspect1 auto
+resolution1 auto
+view1 auto
+screen2 auto
+aspect2 auto
+resolution2 auto
+view2 auto
+screen3 auto
+aspect3 auto
+resolution3 auto
+view3 auto
+
+#
+# FULL SCREEN OPTIONS
+#
+switchres 0
+useallheads 0
+
+#
+# SOUND OPTIONS
+#
+audio_latency 3
+
+#
+# SDL KEYBOARD MAPPING
+#
+keymap 0
+keymap_file keymap.dat
+
+#
+# SDL JOYSTICK MAPPING
+#
+joy_idx1 auto
+joy_idx2 auto
+joy_idx3 auto
+joy_idx4 auto
+joy_idx5 auto
+joy_idx6 auto
+joy_idx7 auto
+joy_idx8 auto
+sixaxis 0
+
+#
+# SDL LOWLEVEL DRIVER OPTIONS
+#
+videodriver auto
+audiodriver auto
+gl_lib auto
diff --git a/emulators/sdlmame-devel/files/patch-makefile b/emulators/sdlmame-devel/files/patch-makefile
index 9305af94f296..f3a447bb9818 100644
--- a/emulators/sdlmame-devel/files/patch-makefile
+++ b/emulators/sdlmame-devel/files/patch-makefile
@@ -1,31 +1,15 @@
---- ./makefile.orig 2008-02-28 12:45:21.000000000 -0200
-+++ ./makefile 2008-04-21 16:24:53.000000000 -0300
-@@ -104,11 +104,13 @@
- # uncomment next line to include the internal profiler
- # PROFILER = 1
-
-+ifeq ($(ARCH),i386)
- # uncomment next line to use DRC MIPS3 engine
- X86_MIPS3_DRC = 1
-
- # uncomment next line to use DRC PowerPC engine
- X86_PPC_DRC = 1
-+endif
-
- # uncomment next line to build using unix-style libsdl on Mac OS X
- # (vs. the native framework port). Normal users should not enable this.
-@@ -121,7 +123,9 @@
- #-------------------------------------------------
-
- # uncomment next line if you are building for a 64-bit target
--# PTR64 = 1
-+ifeq ($(ARCH),amd64)
-+PTR64 = 1
-+endif
+--- makefile.orig 2009-03-05 14:16:35.000000000 +0000
++++ makefile 2009-03-13 02:39:13.000000000 +0000
+@@ -59,7 +59,7 @@
+ ifeq ($(OSD),windows)
+ TARGETOS = win32
+ else
+-TARGETOS = unix
++TARGETOS = freebsd
+ endif
+ endif
- # uncomment next line if you are building for a big-endian target
- # BIGENDIAN = 1
-@@ -198,8 +202,8 @@
+@@ -197,8 +197,8 @@
# compiler, linker and utilities
AR = @ar
@@ -36,48 +20,39 @@
MD = -mkdir$(EXE)
RM = @rm -f
-@@ -223,7 +227,7 @@
+@@ -227,7 +227,7 @@
endif
# fullname is prefix+name+suffix+debugsuffix
--FULLNAME = $(PREFIX)$(NAME)$(SUFFIX)$(DEBUGSUFFIX)
-+FULLNAME = $(NAME)
+-FULLNAME = $(PREFIX)$(NAME)$(CPPSUFFIX)$(SUFFIX)$(DEBUGSUFFIX)
++FULLNAME = sdl$(NAME)$(CPPSUFFIX)$(SUFFIX)$(DEBUGSUFFIX)
# add an EXE suffix to get the final emulator name
EMULATOR = $(FULLNAME)$(EXE)
-@@ -293,7 +297,7 @@
- #-------------------------------------------------
-
- # we compile to C89 standard with GNU extensions
--CFLAGS = -std=gnu89
-+CFLAGS += -std=gnu89
-
- # this speeds it up a bit by piping between the preprocessor/compiler/assembler
- CFLAGS += -pipe
-@@ -331,9 +335,6 @@
+@@ -337,7 +337,7 @@
# and make all errors into warnings
ifneq ($(OPTIMIZE),0)
- CFLAGS += $(ARCHOPTS) -fno-strict-aliasing
--ifneq ($(TARGETOS),os2)
--CFLAGS += -Werror
--endif
+ ifneq ($(TARGETOS),os2)
+-CCOMFLAGS += -Werror -fno-strict-aliasing $(ARCHOPTS)
++CCOMFLAGS += -fno-strict-aliasing $(ARCHOPTS)
+ else
+ CCOMFLAGS += -fno-strict-aliasing $(ARCHOPTS)
endif
-
- # if symbols are on, make sure we have frame pointers
-@@ -358,6 +359,7 @@
+@@ -379,7 +379,7 @@
-I$(SRC)/lib/util \
-I$(SRC)/osd \
-I$(SRC)/osd/$(OSD) \
+-
+ -I$(LOCALBASE)/include
-
-@@ -370,7 +372,7 @@
- LDFLAGS =
+ #-------------------------------------------------
+@@ -392,7 +392,7 @@
ifneq ($(TARGETOS),macosx)
ifneq ($(TARGETOS),os2)
+ ifneq ($(TARGETOS),solaris)
-LDFLAGS = -Wl,--warn-common
+LDFLAGS = -Wl,--warn-common $(PTHREAD_LIBS) -L$(LOCALBASE)/lib
endif
endif
- LDFLAGSEMULATOR =
+ endif
diff --git a/emulators/sdlmame-devel/files/pkg-message.in b/emulators/sdlmame-devel/files/pkg-message.in
index 3290fa533a30..072489632688 100644
--- a/emulators/sdlmame-devel/files/pkg-message.in
+++ b/emulators/sdlmame-devel/files/pkg-message.in
@@ -2,12 +2,12 @@
SDLMAME has been installed.
-The MAME tools are installed in "%%PREFIX%%/libexec/sdlmame"
-to avoid conflicting with other MAME ports.
+A example configuration file has been installed in "%%EXAMPLESDIR%%/mame.ini"
+Should you create a "~/.mame" directory and place it here or
+launch "sdlmame -createconfig" and place the mame.ini created instead.
-A wrapper script "sdlmame" has been installed. It creates a "~/.sdlmame"
-directory mirroring the directory tree under "%%DATADIR%%"
-when you run it for the first time, and starts the program from there. So
-place all MAME files (e.g. ROMs, cheats, etc.) in "~/.sdlmame".
+If you have a non-qwerty keyboard, you should put in your mame.ini :
+keymap 1
+keymap_file %%DATADIR%%/keymaps/km-XX.txt
==============================================================================
diff --git a/emulators/sdlmame-devel/files/sdl.mak.patch b/emulators/sdlmame-devel/files/sdl.mak.patch
new file mode 100644
index 000000000000..36fd61624130
--- /dev/null
+++ b/emulators/sdlmame-devel/files/sdl.mak.patch
@@ -0,0 +1,17 @@
+--- src/osd/sdl/sdl.mak.orig 2009-03-05 20:03:50.000000000 +0100
++++ src/osd/sdl/sdl.mak 2009-03-05 20:06:22.000000000 +0100
+@@ -264,10 +264,10 @@
+ # the new debugger relies on GTK+ in addition to the base SDLMAME needs
+ # Non-X11 builds can not use the debugger
+ ifndef NO_X11
+-OSDCOREOBJS += $(SDLOBJ)/debugwin.o $(SDLOBJ)/dview.o $(SDLOBJ)/debug-sup.o $(SDLOBJ)/debug-intf.o
+-CFLAGS += `pkg-config --cflags gtk+-2.0` `pkg-config --cflags gconf-2.0`
+-LIBS += `pkg-config --libs gtk+-2.0` `pkg-config --libs gconf-2.0`
+-CFLAGS += -DGTK_DISABLE_DEPRECATED
++OSDCOREOBJS += $(SDLOBJ)/debugwin.o
++#CFLAGS += `pkg-config --cflags gtk+-2.0` `pkg-config --cflags gconf-2.0`
++#LIBS += `pkg-config --libs gtk+-2.0` `pkg-config --libs gconf-2.0`
++#CFLAGS += -DGTK_DISABLE_DEPRECATED
+ else
+ OSDCOREOBJS += $(SDLOBJ)/debugwin.o
+ endif # NO_X11
diff --git a/emulators/sdlmame-devel/files/sdl.mak.patch-debug b/emulators/sdlmame-devel/files/sdl.mak.patch-debug
new file mode 100644
index 000000000000..66573868cdc2
--- /dev/null
+++ b/emulators/sdlmame-devel/files/sdl.mak.patch-debug
@@ -0,0 +1,11 @@
+--- src/osd/sdl/sdl.mak.orig 2009-03-05 21:41:13.000000000 +0100
++++ src/osd/sdl/sdl.mak 2009-03-05 21:41:25.000000000 +0100
+@@ -127,7 +127,7 @@
+
+ ifeq ($(TARGETOS),freebsd)
+ TARGETOS = unix
+-DEFS += -DNO_THREAD_COOPERATIVE -DNO_DEBUGGER
++DEFS += -DNO_THREAD_COOPERATIVE
+ endif
+
+ ifeq ($(TARGETOS),unix)
diff --git a/emulators/sdlmame-devel/files/sdlmame.in b/emulators/sdlmame-devel/files/sdlmame.in
deleted file mode 100644
index 099cea29a2f8..000000000000
--- a/emulators/sdlmame-devel/files/sdlmame.in
+++ /dev/null
@@ -1,16 +0,0 @@
-#!/bin/sh
-#
-# The executable needs to be run from its data directory, and needs to store
-# configuration in it. We therefore mirror the data directory hierarchy in
-# ~/.sdlmame, and create symlinks to the data files.
-#
-
-if [ ! -d ~/.sdlmame ]
-then
- cd %%DATADIR%% || exit 1
- find * -type d -exec mkdir -p ~/.sdlmame/{} \;
- find * -type f -exec ln -s %%DATADIR%%/{} ~/.sdlmame/{} \; 2>/dev/null
-fi
-
-cd ~/.sdlmame || exit 1
-exec %%PREFIX%%/libexec/sdlmame/mame "$@"
diff --git a/emulators/sdlmame-devel/pkg-plist b/emulators/sdlmame-devel/pkg-plist
index 911e73cc58b2..3793f2175e57 100644
--- a/emulators/sdlmame-devel/pkg-plist
+++ b/emulators/sdlmame-devel/pkg-plist
@@ -1,14 +1,4 @@
bin/sdlmame
-libexec/sdlmame/chdman
-libexec/sdlmame/file2str
-libexec/sdlmame/jedutil
-libexec/sdlmame/makemeta
-libexec/sdlmame/mame
-libexec/sdlmame/png2bdc
-libexec/sdlmame/regrep
-libexec/sdlmame/romcmp
-libexec/sdlmame/srcclean
-libexec/sdlmame/testkeys
%%PORTDOCS%%%%DOCSDIR%%/SDLMAME.txt
%%PORTDOCS%%%%DOCSDIR%%/docs/license.txt
%%PORTDOCS%%%%DOCSDIR%%/docs/mame.txt
@@ -16,15 +6,16 @@ libexec/sdlmame/testkeys
%%PORTDOCS%%%%DOCSDIR%%/docs/windows.txt
%%PORTDOCS%%%%DOCSDIR%%/docs/config.txt
%%PORTDOCS%%%%DOCSDIR%%/whatsnew.txt
+%%DATADIR%%/ui.bdf
%%DATADIR%%/keymaps/km-be.txt
%%DATADIR%%/keymaps/km-ch.txt
%%DATADIR%%/keymaps/km-de.txt
%%DATADIR%%/keymaps/km-fr-OSX.txt
%%DATADIR%%/keymaps/km-fr.txt
%%DATADIR%%/keymaps/km_it.txt
-%%DATADIR%%/ui.bdf
-@dirrm %%DATADIR%%/keymaps
-@dirrm %%DATADIR%%
+%%EXAMPLESDIR%%/mame.ini
+@dirrm %%DATADIR%%/keymaps/
+@dirrm %%DATADIR%%/
%%PORTDOCS%%@dirrm %%DOCSDIR%%/docs
%%PORTDOCS%%@dirrm %%DOCSDIR%%
-@dirrm libexec/sdlmame
+@dirrm %%EXAMPLESDIR%%
diff --git a/emulators/sdlmame/Makefile b/emulators/sdlmame/Makefile
index 44216629af81..0097029d7c0b 100644
--- a/emulators/sdlmame/Makefile
+++ b/emulators/sdlmame/Makefile
@@ -6,49 +6,59 @@
#
PORTNAME= sdlmame
-PORTVERSION= 0.124
+PORTVERSION= 0.130
CATEGORIES= emulators
-MASTER_SITES= ftp://ftp.alepulver.com.ar/distfiles/
+MASTER_SITES= ftp://ftp.arcadebsd.org/pub/FreeBSD/ports/distfiles/
DISTNAME= ${PORTNAME}${PORTVERSION:S/.//}
-MAINTAINER= alepulver@FreeBSD.org
+MAINTAINER= elbarto@ArcadeBSD.org
COMMENT= SDL port of the popular MAME (Multi Arcade Machine Emulator)
USE_ZIP= yes
USE_XORG= xext xrender xinerama xi
USE_GL= gl
+USE_GNOME?= gtk20 gconf2
USE_GMAKE= yes
MAKE_ENV= PTHREAD_LIBS="${PTHREAD_LIBS}"
USE_SDL= sdl
MAKEFILE= makefile
+ONLY_FOR_ARCH= i386 amd64
+SUB_FILES= pkg-message
-SUB_FILES= ${PORTNAME} pkg-message
+OPTIONS= DEBUG "Build sdlmame debugger" off
+
+.include <bsd.port.pre.mk>
+
+.if defined(WITH_DEBUG)
+EXTRA_PATCHES+= ${FILESDIR}/sdl.mak.patch-debug
+.else
+USE_GNOME= #
+EXTRA_PATCHES+= ${FILESDIR}/sdl.mak.patch
+.endif
+
+.if ${ARCH} == "amd64"
+MAKE_ENV+= PTR64=1
+.endif
+
+post-patch:
+ @${REINPLACE_CMD} -e "s|ui.bdf|${DATADIR}/ui.bdf|g" ${WRKSRC}/src/emu/ui.c
do-install:
- ${INSTALL_SCRIPT} ${WRKDIR}/${PORTNAME} ${PREFIX}/bin
- ${MKDIR} ${PREFIX}/libexec/sdlmame
-.for f in obj/sdl/mame/build/file2str obj/sdl/mame/build/png2bdc mame \
- testkeys romcmp chdman jedutil makemeta regrep srcclean
- ${INSTALL_PROGRAM} ${WRKSRC}/${f} ${PREFIX}/libexec/sdlmame
-.endfor
- ${MKDIR} ${DATADIR}
- ${INSTALL_DATA} ${WRKSRC}/ui.bdf ${DATADIR}
- ${CP} -R ${WRKSRC}/keymaps ${DATADIR}
+ ${INSTALL_PROGRAM} ${WRKSRC}/${PORTNAME} ${PREFIX}/bin/
.if !defined(NOPORTDOCS)
${MKDIR} ${DOCSDIR}
${INSTALL_DATA} ${WRKSRC}/*.txt ${DOCSDIR}
${CP} -R ${WRKSRC}/docs ${DOCSDIR}
.endif
+ ${MKDIR} ${DATADIR}
+ ${CP} ${WRKSRC}/ui.bdf ${DATADIR}/
+ ${CP} -R ${WRKSRC}/keymaps ${DATADIR}/
+ ${MKDIR} ${EXAMPLESDIR}
+ ${CP} ${FILESDIR}/mame.ini ${EXAMPLESDIR}
post-install:
@${ECHO_CMD}
@${CAT} ${PKGMESSAGE}
@${ECHO_CMD}
-.include <bsd.port.pre.mk>
-
-.if ${ARCH} == "sparc64"
-BROKEN= Does not compile on sparc64
-.endif
-
.include <bsd.port.post.mk>
diff --git a/emulators/sdlmame/distinfo b/emulators/sdlmame/distinfo
index 61dd51b0fd87..e6f9402d03da 100644
--- a/emulators/sdlmame/distinfo
+++ b/emulators/sdlmame/distinfo
@@ -1,3 +1,3 @@
-MD5 (sdlmame0124.zip) = f436c418afd98d2c666cd27856f9902e
-SHA256 (sdlmame0124.zip) = b0f993878b7ad72fa8905701a40ce631a6500774b11011711003c4101ab2ed54
-SIZE (sdlmame0124.zip) = 16248845
+MD5 (sdlmame0130.zip) = b33d3545049e8e2b8da5d7d7cc3b843b
+SHA256 (sdlmame0130.zip) = 1122f4efe5ac0775f122898667c0ace147cd953a1063f9a373051b9ca2bd93a1
+SIZE (sdlmame0130.zip) = 17681967
diff --git a/emulators/sdlmame/files/mame.ini b/emulators/sdlmame/files/mame.ini
new file mode 100644
index 000000000000..b67dcf7fe1c8
--- /dev/null
+++ b/emulators/sdlmame/files/mame.ini
@@ -0,0 +1,260 @@
+<UNADORNED0>
+
+#
+# CORE CONFIGURATION OPTIONS
+#
+readconfig 1
+
+#
+# CORE SEARCH PATH OPTIONS
+#
+rompath $HOME/.mame/roms
+samplepath $HOME/.mame/samples
+artpath $HOME/.mame/artwork
+ctrlrpath $HOME/.mame/ctrlr
+inipath $HOME/.mame;.;ini
+fontpath /usr/local/share/sdlmame/
+cheatpath $HOME/.mame/cheat
+
+#
+# CORE OUTPUT DIRECTORY OPTIONS
+#
+cfg_directory $HOME/.mame/cfg
+nvram_directory $HOME/.mame/nvram
+memcard_directory $HOME/.mame/memcard
+input_directory $HOME/.mame/inp
+state_directory $HOME/.mame/sta
+snapshot_directory $HOME/.mame/snap
+diff_directory $HOME/.mame/diff
+comment_directory $HOME/.mame/comments
+
+#
+# CORE STATE/PLAYBACK OPTIONS
+#
+state
+autosave 0
+playback
+record
+mngwrite
+aviwrite
+wavwrite
+snapname %g/%i
+snapsize auto
+snapview internal
+
+#
+# CORE PERFORMANCE OPTIONS
+#
+autoframeskip 0
+frameskip 0
+seconds_to_run 0
+throttle 1
+sleep 1
+speed 1.0
+refreshspeed 0
+
+#
+# CORE ROTATION OPTIONS
+#
+rotate 1
+ror 0
+rol 0
+autoror 0
+autorol 0
+flipx 0
+flipy 0
+
+#
+# CORE ARTWORK OPTIONS
+#
+artwork_crop 0
+use_backdrops 1
+use_overlays 1
+use_bezels 1
+
+#
+# CORE SCREEN OPTIONS
+#
+brightness 1.0
+contrast 1.0
+gamma 1.0
+pause_brightness 0.65
+
+#
+# CORE VECTOR OPTIONS
+#
+antialias 1
+beam 1.0
+flicker 0
+
+#
+# CORE SOUND OPTIONS
+#
+sound 1
+samplerate 48000
+samples 1
+volume 0
+
+#
+# CORE INPUT OPTIONS
+#
+coin_lockout 1
+ctrlr
+mouse 0
+joystick 1
+lightgun 0
+multikeyboard 0
+multimouse 0
+steadykey 0
+offscreen_reload 0
+joystick_map auto
+joystick_deadzone 0.3
+joystick_saturation 0.85
+
+#
+# CORE INPUT AUTOMATIC ENABLE OPTIONS
+#
+paddle_device keyboard
+adstick_device keyboard
+pedal_device keyboard
+dial_device keyboard
+trackball_device keyboard
+lightgun_device keyboard
+positional_device keyboard
+mouse_device mouse
+
+#
+# CORE DEBUGGING OPTIONS
+#
+log 0
+verbose 0
+update_in_pause 0
+debug 0
+debugscript
+
+#
+# CORE MISC OPTIONS
+#
+bios
+cheat 0
+skip_gameinfo 0
+
+#
+# DEBUGGING OPTIONS
+#
+oslog 0
+
+#
+# PERFORMANCE OPTIONS
+#
+multithreading 0
+sdlvideofps 0
+
+#
+# VIDEO OPTIONS
+#
+video soft
+numscreens 1
+window 0
+maximize 1
+keepaspect 1
+unevenstretch 1
+effect none
+centerh 1
+centerv 1
+waitvsync 0
+scalemode none
+
+#
+# OpenGL-SPECIFIC OPTIONS
+#
+filter 1
+prescale 1
+gl_forcepow2texture 0
+gl_notexturerect 0
+gl_vbo 1
+gl_pbo 1
+gl_glsl 0
+gl_glsl_filter 1
+glsl_shader_mame0 none
+glsl_shader_mame1 none
+glsl_shader_mame2 none
+glsl_shader_mame3 none
+glsl_shader_mame4 none
+glsl_shader_mame5 none
+glsl_shader_mame6 none
+glsl_shader_mame7 none
+glsl_shader_mame8 none
+glsl_shader_mame9 none
+glsl_shader_screen0 none
+glsl_shader_screen1 none
+glsl_shader_screen2 none
+glsl_shader_screen3 none
+glsl_shader_screen4 none
+glsl_shader_screen5 none
+glsl_shader_screen6 none
+glsl_shader_screen7 none
+glsl_shader_screen8 none
+glsl_shader_screen9 none
+gl_glsl_vid_attr 1
+
+#
+# PER-WINDOW VIDEO OPTIONS
+#
+screen auto
+aspect auto
+resolution auto
+view auto
+screen0 auto
+aspect0 auto
+resolution0 auto
+view0 auto
+screen1 auto
+aspect1 auto
+resolution1 auto
+view1 auto
+screen2 auto
+aspect2 auto
+resolution2 auto
+view2 auto
+screen3 auto
+aspect3 auto
+resolution3 auto
+view3 auto
+
+#
+# FULL SCREEN OPTIONS
+#
+switchres 0
+useallheads 0
+
+#
+# SOUND OPTIONS
+#
+audio_latency 3
+
+#
+# SDL KEYBOARD MAPPING
+#
+keymap 0
+keymap_file keymap.dat
+
+#
+# SDL JOYSTICK MAPPING
+#
+joy_idx1 auto
+joy_idx2 auto
+joy_idx3 auto
+joy_idx4 auto
+joy_idx5 auto
+joy_idx6 auto
+joy_idx7 auto
+joy_idx8 auto
+sixaxis 0
+
+#
+# SDL LOWLEVEL DRIVER OPTIONS
+#
+videodriver auto
+audiodriver auto
+gl_lib auto
diff --git a/emulators/sdlmame/files/patch-makefile b/emulators/sdlmame/files/patch-makefile
index 9305af94f296..f3a447bb9818 100644
--- a/emulators/sdlmame/files/patch-makefile
+++ b/emulators/sdlmame/files/patch-makefile
@@ -1,31 +1,15 @@
---- ./makefile.orig 2008-02-28 12:45:21.000000000 -0200
-+++ ./makefile 2008-04-21 16:24:53.000000000 -0300
-@@ -104,11 +104,13 @@
- # uncomment next line to include the internal profiler
- # PROFILER = 1
-
-+ifeq ($(ARCH),i386)
- # uncomment next line to use DRC MIPS3 engine
- X86_MIPS3_DRC = 1
-
- # uncomment next line to use DRC PowerPC engine
- X86_PPC_DRC = 1
-+endif
-
- # uncomment next line to build using unix-style libsdl on Mac OS X
- # (vs. the native framework port). Normal users should not enable this.
-@@ -121,7 +123,9 @@
- #-------------------------------------------------
-
- # uncomment next line if you are building for a 64-bit target
--# PTR64 = 1
-+ifeq ($(ARCH),amd64)
-+PTR64 = 1
-+endif
+--- makefile.orig 2009-03-05 14:16:35.000000000 +0000
++++ makefile 2009-03-13 02:39:13.000000000 +0000
+@@ -59,7 +59,7 @@
+ ifeq ($(OSD),windows)
+ TARGETOS = win32
+ else
+-TARGETOS = unix
++TARGETOS = freebsd
+ endif
+ endif
- # uncomment next line if you are building for a big-endian target
- # BIGENDIAN = 1
-@@ -198,8 +202,8 @@
+@@ -197,8 +197,8 @@
# compiler, linker and utilities
AR = @ar
@@ -36,48 +20,39 @@
MD = -mkdir$(EXE)
RM = @rm -f
-@@ -223,7 +227,7 @@
+@@ -227,7 +227,7 @@
endif
# fullname is prefix+name+suffix+debugsuffix
--FULLNAME = $(PREFIX)$(NAME)$(SUFFIX)$(DEBUGSUFFIX)
-+FULLNAME = $(NAME)
+-FULLNAME = $(PREFIX)$(NAME)$(CPPSUFFIX)$(SUFFIX)$(DEBUGSUFFIX)
++FULLNAME = sdl$(NAME)$(CPPSUFFIX)$(SUFFIX)$(DEBUGSUFFIX)
# add an EXE suffix to get the final emulator name
EMULATOR = $(FULLNAME)$(EXE)
-@@ -293,7 +297,7 @@
- #-------------------------------------------------
-
- # we compile to C89 standard with GNU extensions
--CFLAGS = -std=gnu89
-+CFLAGS += -std=gnu89
-
- # this speeds it up a bit by piping between the preprocessor/compiler/assembler
- CFLAGS += -pipe
-@@ -331,9 +335,6 @@
+@@ -337,7 +337,7 @@
# and make all errors into warnings
ifneq ($(OPTIMIZE),0)
- CFLAGS += $(ARCHOPTS) -fno-strict-aliasing
--ifneq ($(TARGETOS),os2)
--CFLAGS += -Werror
--endif
+ ifneq ($(TARGETOS),os2)
+-CCOMFLAGS += -Werror -fno-strict-aliasing $(ARCHOPTS)
++CCOMFLAGS += -fno-strict-aliasing $(ARCHOPTS)
+ else
+ CCOMFLAGS += -fno-strict-aliasing $(ARCHOPTS)
endif
-
- # if symbols are on, make sure we have frame pointers
-@@ -358,6 +359,7 @@
+@@ -379,7 +379,7 @@
-I$(SRC)/lib/util \
-I$(SRC)/osd \
-I$(SRC)/osd/$(OSD) \
+-
+ -I$(LOCALBASE)/include
-
-@@ -370,7 +372,7 @@
- LDFLAGS =
+ #-------------------------------------------------
+@@ -392,7 +392,7 @@
ifneq ($(TARGETOS),macosx)
ifneq ($(TARGETOS),os2)
+ ifneq ($(TARGETOS),solaris)
-LDFLAGS = -Wl,--warn-common
+LDFLAGS = -Wl,--warn-common $(PTHREAD_LIBS) -L$(LOCALBASE)/lib
endif
endif
- LDFLAGSEMULATOR =
+ endif
diff --git a/emulators/sdlmame/files/pkg-message.in b/emulators/sdlmame/files/pkg-message.in
index 3290fa533a30..072489632688 100644
--- a/emulators/sdlmame/files/pkg-message.in
+++ b/emulators/sdlmame/files/pkg-message.in
@@ -2,12 +2,12 @@
SDLMAME has been installed.
-The MAME tools are installed in "%%PREFIX%%/libexec/sdlmame"
-to avoid conflicting with other MAME ports.
+A example configuration file has been installed in "%%EXAMPLESDIR%%/mame.ini"
+Should you create a "~/.mame" directory and place it here or
+launch "sdlmame -createconfig" and place the mame.ini created instead.
-A wrapper script "sdlmame" has been installed. It creates a "~/.sdlmame"
-directory mirroring the directory tree under "%%DATADIR%%"
-when you run it for the first time, and starts the program from there. So
-place all MAME files (e.g. ROMs, cheats, etc.) in "~/.sdlmame".
+If you have a non-qwerty keyboard, you should put in your mame.ini :
+keymap 1
+keymap_file %%DATADIR%%/keymaps/km-XX.txt
==============================================================================
diff --git a/emulators/sdlmame/files/sdl.mak.patch b/emulators/sdlmame/files/sdl.mak.patch
new file mode 100644
index 000000000000..36fd61624130
--- /dev/null
+++ b/emulators/sdlmame/files/sdl.mak.patch
@@ -0,0 +1,17 @@
+--- src/osd/sdl/sdl.mak.orig 2009-03-05 20:03:50.000000000 +0100
++++ src/osd/sdl/sdl.mak 2009-03-05 20:06:22.000000000 +0100
+@@ -264,10 +264,10 @@
+ # the new debugger relies on GTK+ in addition to the base SDLMAME needs
+ # Non-X11 builds can not use the debugger
+ ifndef NO_X11
+-OSDCOREOBJS += $(SDLOBJ)/debugwin.o $(SDLOBJ)/dview.o $(SDLOBJ)/debug-sup.o $(SDLOBJ)/debug-intf.o
+-CFLAGS += `pkg-config --cflags gtk+-2.0` `pkg-config --cflags gconf-2.0`
+-LIBS += `pkg-config --libs gtk+-2.0` `pkg-config --libs gconf-2.0`
+-CFLAGS += -DGTK_DISABLE_DEPRECATED
++OSDCOREOBJS += $(SDLOBJ)/debugwin.o
++#CFLAGS += `pkg-config --cflags gtk+-2.0` `pkg-config --cflags gconf-2.0`
++#LIBS += `pkg-config --libs gtk+-2.0` `pkg-config --libs gconf-2.0`
++#CFLAGS += -DGTK_DISABLE_DEPRECATED
+ else
+ OSDCOREOBJS += $(SDLOBJ)/debugwin.o
+ endif # NO_X11
diff --git a/emulators/sdlmame/files/sdl.mak.patch-debug b/emulators/sdlmame/files/sdl.mak.patch-debug
new file mode 100644
index 000000000000..66573868cdc2
--- /dev/null
+++ b/emulators/sdlmame/files/sdl.mak.patch-debug
@@ -0,0 +1,11 @@
+--- src/osd/sdl/sdl.mak.orig 2009-03-05 21:41:13.000000000 +0100
++++ src/osd/sdl/sdl.mak 2009-03-05 21:41:25.000000000 +0100
+@@ -127,7 +127,7 @@
+
+ ifeq ($(TARGETOS),freebsd)
+ TARGETOS = unix
+-DEFS += -DNO_THREAD_COOPERATIVE -DNO_DEBUGGER
++DEFS += -DNO_THREAD_COOPERATIVE
+ endif
+
+ ifeq ($(TARGETOS),unix)
diff --git a/emulators/sdlmame/files/sdlmame.in b/emulators/sdlmame/files/sdlmame.in
deleted file mode 100644
index 099cea29a2f8..000000000000
--- a/emulators/sdlmame/files/sdlmame.in
+++ /dev/null
@@ -1,16 +0,0 @@
-#!/bin/sh
-#
-# The executable needs to be run from its data directory, and needs to store
-# configuration in it. We therefore mirror the data directory hierarchy in
-# ~/.sdlmame, and create symlinks to the data files.
-#
-
-if [ ! -d ~/.sdlmame ]
-then
- cd %%DATADIR%% || exit 1
- find * -type d -exec mkdir -p ~/.sdlmame/{} \;
- find * -type f -exec ln -s %%DATADIR%%/{} ~/.sdlmame/{} \; 2>/dev/null
-fi
-
-cd ~/.sdlmame || exit 1
-exec %%PREFIX%%/libexec/sdlmame/mame "$@"
diff --git a/emulators/sdlmame/pkg-plist b/emulators/sdlmame/pkg-plist
index 911e73cc58b2..3793f2175e57 100644
--- a/emulators/sdlmame/pkg-plist
+++ b/emulators/sdlmame/pkg-plist
@@ -1,14 +1,4 @@
bin/sdlmame
-libexec/sdlmame/chdman
-libexec/sdlmame/file2str
-libexec/sdlmame/jedutil
-libexec/sdlmame/makemeta
-libexec/sdlmame/mame
-libexec/sdlmame/png2bdc
-libexec/sdlmame/regrep
-libexec/sdlmame/romcmp
-libexec/sdlmame/srcclean
-libexec/sdlmame/testkeys
%%PORTDOCS%%%%DOCSDIR%%/SDLMAME.txt
%%PORTDOCS%%%%DOCSDIR%%/docs/license.txt
%%PORTDOCS%%%%DOCSDIR%%/docs/mame.txt
@@ -16,15 +6,16 @@ libexec/sdlmame/testkeys
%%PORTDOCS%%%%DOCSDIR%%/docs/windows.txt
%%PORTDOCS%%%%DOCSDIR%%/docs/config.txt
%%PORTDOCS%%%%DOCSDIR%%/whatsnew.txt
+%%DATADIR%%/ui.bdf
%%DATADIR%%/keymaps/km-be.txt
%%DATADIR%%/keymaps/km-ch.txt
%%DATADIR%%/keymaps/km-de.txt
%%DATADIR%%/keymaps/km-fr-OSX.txt
%%DATADIR%%/keymaps/km-fr.txt
%%DATADIR%%/keymaps/km_it.txt
-%%DATADIR%%/ui.bdf
-@dirrm %%DATADIR%%/keymaps
-@dirrm %%DATADIR%%
+%%EXAMPLESDIR%%/mame.ini
+@dirrm %%DATADIR%%/keymaps/
+@dirrm %%DATADIR%%/
%%PORTDOCS%%@dirrm %%DOCSDIR%%/docs
%%PORTDOCS%%@dirrm %%DOCSDIR%%
-@dirrm libexec/sdlmame
+@dirrm %%EXAMPLESDIR%%