aboutsummaryrefslogtreecommitdiffstats
path: root/emulators
diff options
context:
space:
mode:
authormadpilot <madpilot@FreeBSD.org>2014-08-01 16:13:29 +0800
committermadpilot <madpilot@FreeBSD.org>2014-08-01 16:13:29 +0800
commit17b33da5d3beeca750de427d9b8eb197755d4f0e (patch)
tree21cade238e02fd76ffd0b68b614dfeb8189d7d5f /emulators
parent8f8e1e93089643a2b03c47aaf98ffff4deaacef2 (diff)
downloadfreebsd-ports-gnome-17b33da5d3beeca750de427d9b8eb197755d4f0e.tar.gz
freebsd-ports-gnome-17b33da5d3beeca750de427d9b8eb197755d4f0e.tar.zst
freebsd-ports-gnome-17b33da5d3beeca750de427d9b8eb197755d4f0e.zip
Update mame/mess to 0.154
PR: 188861 Submitted by: Ports Fury
Diffstat (limited to 'emulators')
-rw-r--r--emulators/mame/Makefile81
-rw-r--r--emulators/mame/distinfo4
-rw-r--r--emulators/mame/files/patch-src__emu__netlist__nl_base.h20
-rw-r--r--emulators/mame/files/patch-src__emu__netlist__pstate.h19
-rw-r--r--emulators/mame/files/patch-src__lib__lib7z__CpuArch.h11
-rw-r--r--emulators/mame/files/patch-src__lib__lua__luaconf.h11
-rw-r--r--emulators/mame/files/patch-src__osd__eigccx86.h128
-rw-r--r--emulators/mame/files/patch-src__osd__eminline.h11
-rw-r--r--emulators/mame/files/patch-src__osd__sdl__osinline.h11
-rw-r--r--emulators/mame/files/patch-src__osd__sdl__sdlsync_ntc.c29
-rw-r--r--emulators/mame/files/patch-src__osd__sdl__sdlsync_os2.c29
-rw-r--r--emulators/mame/pkg-plist21
-rw-r--r--emulators/mess/Makefile71
-rw-r--r--emulators/mess/distinfo4
-rw-r--r--emulators/mess/files/patch-src__emu__netlist__nl_base.h20
-rw-r--r--emulators/mess/files/patch-src__emu__netlist__pstate.h19
-rw-r--r--emulators/mess/files/patch-src__lib__lib7z__CpuArch.h11
-rw-r--r--emulators/mess/files/patch-src__lib__lua__luaconf.h11
-rw-r--r--emulators/mess/files/patch-src__osd__eigccx86.h128
-rw-r--r--emulators/mess/files/patch-src__osd__eminline.h11
-rw-r--r--emulators/mess/files/patch-src__osd__sdl__osinline.h11
-rw-r--r--emulators/mess/files/patch-src__osd__sdl__sdlsync_ntc.c29
-rw-r--r--emulators/mess/files/patch-src__osd__sdl__sdlsync_os2.c29
-rw-r--r--emulators/mess/pkg-plist21
24 files changed, 577 insertions, 163 deletions
diff --git a/emulators/mame/Makefile b/emulators/mame/Makefile
index 1b75d7ffbd9e..8a45e19fe592 100644
--- a/emulators/mame/Makefile
+++ b/emulators/mame/Makefile
@@ -2,13 +2,12 @@
# $FreeBSD$
PORTNAME= mame
-PORTVERSION= 0.152${PATCHSUFFIX}
-PORTREVISION= 1
+PORTVERSION= 0.154${PATCHSUFFIX}
CATEGORIES= emulators
-MASTER_SITES= http://mame.mirrors.zippykid.com/releases/ \
+MASTER_SITES= http://mamedev.mameworld.info/releases/ \
http://emumovies.com/aarongiles/releases/ \
http://mamedev.org/updates/:patchsets
-DISTFILES= ${PORTNAME}${PORTVERSION:S/.//:C/p[0-9]*$//}s.zip \
+DISTFILES= ${PORTNAME}${PORTVERSION:S/.//:C/p[0-9]*$//}s${EXTRACT_SUFX} \
${UPDATE_PATCHES:C/$/.zip:patchsets/}
DIST_SUBDIR= ${PORTNAME}
@@ -21,15 +20,16 @@ LIB_DEPENDS= libFLAC.so:${PORTSDIR}/audio/flac \
libfontconfig.so:${PORTSDIR}/x11-fonts/fontconfig
RUN_DEPENDS= liberation-fonts-ttf>=0:${PORTSDIR}/x11-fonts/liberation-fonts-ttf
-OPTIONS_DEFINE= BUILTIN_DEBUGGER DEBUG DOCS EXAMPLES SDL2
-BUILTIN_DEBUGGER_DESC= Builtin debugger support
-SDL2_DESC= SDL2 libraries support
-
NO_WRKSUBDIR= yes
-USES= dos2unix gmake pkgconfig shebangfix
-DOS2UNIX_FILES= src/emu/netlist/nl_base.h \
- src/emu/netlist/pstate.h
+USES= dos2unix gmake pkgconfig shebangfix zip
+DOS2UNIX_FILES= src/lib/lib7z/CpuArch.h \
+ src/lib/lua/luaconf.h \
+ src/osd/eigccx86.h \
+ src/osd/eminline.h \
+ src/osd/sdl/osinline.h \
+ src/osd/sdl/sdlsync_ntc.c \
+ src/osd/sdl/sdlsync_os2.c
SHEBANG_FILES= src/emu/cpu/m6502/m6502make.py \
src/emu/cpu/m6809/m6809make.py \
src/emu/cpu/mcs96/mcs96make.py \
@@ -40,11 +40,23 @@ USE_PYTHON_BUILD=2
MAKE_ENV= NOWERROR=1 USE_NETWORK=1 \
LD="${CXX}" PYTHON="${PYTHON_CMD}" \
OPT_FLAGS="${CXXFLAGS}" GCC_LDFLAGS="${LDFLAGS}" \
- TARGET="${PORTNAME}" FULLNAME="${PORTNAME}"
+ TARGET="${PORTNAME}" FULLNAME="${PORTNAME}" \
+ SDL_NETWORK="pcap"
MAKEFILE= makefile
SUB_FILES= pkg-message
+OPTIONS_DEFINE= BUILTIN_DEBUGGER DEBUG DOCS EXAMPLES SDL2
+
+BUILTIN_DEBUGGER_DESC= Builtin debugger support
+BUILTIN_DEBUGGER_USE= QT4=gui,moc_build,qmake_build
+BUILTIN_DEBUGGER_MAKE_ENV_OFF=\
+ NO_DEBUGGER=1 NO_USE_QTDEBUG=1
+DEBUG_MAKE_ENV= DEBUG=1
+SDL2_DESC= SDL2 libraries support
+SDL2_USE= SDL=sdl2,ttf2
+SDL2_MAKE_ENV= SDL_LIBVER="sdl2"
+
PATCHLEVEL= # none
.if defined(PATCHLEVEL) && ${PATCHLEVEL}
@@ -56,25 +68,10 @@ UPDATE_PATCHES!= /usr/bin/jot -s " " \
.include <bsd.port.options.mk>
-.if ${PORT_OPTIONS:MBUILTIN_DEBUGGER}
-USE_QT4= gui moc_build qmake_build
-.else
-MAKE_ENV+= NO_DEBUGGER=1 NO_USE_QTDEBUG=1
-.endif
-
-.if ${PORT_OPTIONS:MSDL2}
-USE_SDL= sdl2 ttf2
-MAKE_ENV+= SDL_LIBVER="sdl2"
-.else
+.if empty(PORT_OPTIONS:MSDL2)
USE_SDL= sdl ttf
.endif
-.if ${PORT_OPTIONS:MDEBUG}
-MAKE_ENV+= DEBUG=1
-.endif
-
-.include <bsd.port.pre.mk>
-
.if ${ARCH} == "ia64" || ${ARCH} == "powerpc" || ${ARCH} == "sparc64"
BROKEN= Does not install on ia64, powerpc, or sparc64
.endif
@@ -94,21 +91,19 @@ post-extract:
post-patch:
@${REINPLACE_CMD} -e \
- '/^BUILD_EXPAT /s|^|#| ; \
- /^BUILD_ZLIB /s|^|#| ; \
- /^BUILD_FLAC /s|^|#| ; \
- /^BUILD_JPEGLIB /s|^|#| ; \
- /^CC /s|^|#| ; \
- /^LD /s|^|#| ; \
- /^PYTHON /s|^|#| ; \
+ 's|^\(BUILD_EXPAT \)|#\1| ; \
+ s|^\(BUILD_ZLIB \)|#\1| ; \
+ s|^\(BUILD_FLAC \)|#\1| ; \
+ s|^\(BUILD_JPEGLIB \)|#\1| ; \
+ s|^\(CC \)|#\1| ; \
+ s|^\(LD \)|#\1| ; \
+ s|^\(PYTHON \)|#\1| ; \
s|-O$$(OPTIMIZE)|| ; \
/--warn-common/s|= -Wl,|= $$(GCC_LDFLAGS) -Wl,| ; \
/LDFLAGS/s|-s|| ; \
/LIBS/s|-lstdc++|| ; \
/LIBS/s|-lpthread|-pthread|' ${WRKSRC}/makefile
@${REINPLACE_CMD} -e \
- '/realloc/s|^|// |' ${WRKSRC}/src/emu/emualloc.h
- @${REINPLACE_CMD} -e \
'/LIBS/s|-lpthread|-pthread| ; \
/-isystem/s|^|#| ; \
/X11R6/s|^|#|' ${WRKSRC}/src/osd/sdl/sdl.mak
@@ -122,13 +117,13 @@ do-install:
${STAGEDIR}${PREFIX}/libexec/${PORTNAME})
.endfor
@${MKDIR} ${STAGEDIR}${DATADIR}
- (cd ${WRKSRC} && ${COPYTREE_SHARE} artwork ${STAGEDIR}${DATADIR})
- (cd ${WRKSRC} && ${COPYTREE_SHARE} hash ${STAGEDIR}${DATADIR})
- (cd ${WRKSRC}/src/osd/sdl && ${COPYTREE_SHARE} keymaps \
+ @(cd ${WRKSRC} && ${COPYTREE_SHARE} artwork ${STAGEDIR}${DATADIR})
+ @(cd ${WRKSRC} && ${COPYTREE_SHARE} hash ${STAGEDIR}${DATADIR})
+ @(cd ${WRKSRC}/src/osd/sdl && ${COPYTREE_SHARE} keymaps \
${STAGEDIR}${DATADIR})
@${MKDIR} ${STAGEDIR}${DOCSDIR}
- (cd ${WRKSRC} && ${COPYTREE_SHARE} docs ${STAGEDIR}${DOCSDIR})
- ${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
+ @(cd ${WRKSRC} && ${COPYTREE_SHARE} docs ${STAGEDIR}${DOCSDIR})
+ @${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
(cd ${FILESDIR} && ${INSTALL_DATA} mame.ini ${STAGEDIR}${EXAMPLESDIR})
-.include <bsd.port.post.mk>
+.include <bsd.port.mk>
diff --git a/emulators/mame/distinfo b/emulators/mame/distinfo
index 0bdc2aab8290..571d8a60cb20 100644
--- a/emulators/mame/distinfo
+++ b/emulators/mame/distinfo
@@ -1,2 +1,2 @@
-SHA256 (mame/mame0152s.zip) = dd245297824e0b3938312c74aee31e1d32798d093bbf19f857de56bbd1ea4bdf
-SIZE (mame/mame0152s.zip) = 36247883
+SHA256 (mame/mame0154s.zip) = 522ba9275e9f633ab616dcd0ac0ab4fcd3b72690ed09915dcd4d0b627c696149
+SIZE (mame/mame0154s.zip) = 39697095
diff --git a/emulators/mame/files/patch-src__emu__netlist__nl_base.h b/emulators/mame/files/patch-src__emu__netlist__nl_base.h
deleted file mode 100644
index b3ed93f57ce9..000000000000
--- a/emulators/mame/files/patch-src__emu__netlist__nl_base.h
+++ /dev/null
@@ -1,20 +0,0 @@
---- src/emu/netlist/nl_base.h.orig
-+++ src/emu/netlist/nl_base.h
-@@ -287,7 +287,7 @@
-
- ATTR_COLD const pstring &name() const;
-
-- PSTATE_INTERFACE(*m_netlist, name())
-+ PSTATE_INTERFACE_DECL()
-
- #if 0
- template<class C> ATTR_COLD void save(C &state, const pstring &stname)
-@@ -1120,6 +1120,8 @@
- // Inline implementations
- // ----------------------------------------------------------------------------------------
-
-+PSTATE_INTERFACE(netlist_object_t, m_netlist, name())
-+
- ATTR_HOT inline void netlist_param_str_t::setTo(const pstring &param)
- {
- m_param = param;
diff --git a/emulators/mame/files/patch-src__emu__netlist__pstate.h b/emulators/mame/files/patch-src__emu__netlist__pstate.h
deleted file mode 100644
index 73700f7f7a78..000000000000
--- a/emulators/mame/files/patch-src__emu__netlist__pstate.h
+++ /dev/null
@@ -1,19 +0,0 @@
---- src/emu/netlist/pstate.h.orig
-+++ src/emu/netlist/pstate.h
-@@ -15,10 +15,13 @@
- // state saving ...
- // ----------------------------------------------------------------------------------------
-
--#define PSTATE_INTERFACE(manager, module) \
-- template<class C> ATTR_COLD void save(C &state, const pstring &stname) \
-+#define PSTATE_INTERFACE_DECL() \
-+ template<class C> ATTR_COLD void save(C &state, const pstring &stname);
-+
-+#define PSTATE_INTERFACE(obj, manager, module) \
-+ template<class C> ATTR_COLD void obj::save(C &state, const pstring &stname) \
- { \
-- dynamic_cast<pstate_manager_t &>(manager).save_manager(state, module + "." + stname); \
-+ manager->save_manager(state, module + "." + stname); \
- }
-
- enum netlist_data_type_e {
diff --git a/emulators/mame/files/patch-src__lib__lib7z__CpuArch.h b/emulators/mame/files/patch-src__lib__lib7z__CpuArch.h
new file mode 100644
index 000000000000..592b8de03fff
--- /dev/null
+++ b/emulators/mame/files/patch-src__lib__lib7z__CpuArch.h
@@ -0,0 +1,11 @@
+--- src/lib/lib7z/CpuArch.h.orig
++++ src/lib/lib7z/CpuArch.h
+@@ -16,7 +16,7 @@
+ If MY_CPU_LE_UNALIGN is not defined, we don't know about these properties of platform.
+ */
+
+-#if defined(_M_X64) || defined(_M_AMD64) || defined(__x86_64__)
++#if defined(__amd64__) || defined(_M_X64) || defined(_M_AMD64) || defined(__x86_64__)
+ #define MY_CPU_AMD64
+ #endif
+
diff --git a/emulators/mame/files/patch-src__lib__lua__luaconf.h b/emulators/mame/files/patch-src__lib__lua__luaconf.h
new file mode 100644
index 000000000000..deb447d3033a
--- /dev/null
+++ b/emulators/mame/files/patch-src__lib__lua__luaconf.h
@@ -0,0 +1,11 @@
+--- src/lib/lua/luaconf.h.orig
++++ src/lib/lua/luaconf.h
+@@ -514,7 +514,7 @@
+ #define LUA_NANTRICK
+
+ /* pentium 64 bits? */
+-#elif defined(__x86_64) /* }{ */
++#elif defined(__amd64__) || defined(__x86_64__) || defined(__x86_64) /* }{ */
+
+ #define LUA_IEEE754TRICK
+ #define LUA_IEEEENDIAN 0
diff --git a/emulators/mame/files/patch-src__osd__eigccx86.h b/emulators/mame/files/patch-src__osd__eigccx86.h
new file mode 100644
index 000000000000..1a05d626aca7
--- /dev/null
+++ b/emulators/mame/files/patch-src__osd__eigccx86.h
@@ -0,0 +1,128 @@
+--- src/osd/eigccx86.h.orig
++++ src/osd/eigccx86.h
+@@ -42,7 +42,7 @@
+ multiply and return the full 64 bit result
+ -------------------------------------------------*/
+
+-#ifndef __x86_64__
++#if !defined(__amd64__) && !defined(__x86_64__)
+ #define mul_32x32 _mul_32x32
+ INLINE INT64 ATTR_CONST ATTR_FORCE_INLINE
+ _mul_32x32(INT32 a, INT32 b)
+@@ -68,7 +68,7 @@
+ result
+ -------------------------------------------------*/
+
+-#ifndef __x86_64__
++#if !defined(__amd64__) && !defined(__x86_64__)
+ #define mulu_32x32 _mulu_32x32
+ INLINE UINT64 ATTR_CONST ATTR_FORCE_INLINE
+ _mulu_32x32(UINT32 a, UINT32 b)
+@@ -145,7 +145,7 @@
+ result to 32 bits
+ -------------------------------------------------*/
+
+-#ifndef __x86_64__
++#if !defined(__amd64__) && !defined(__x86_64__)
+ #define mul_32x32_shift _mul_32x32_shift
+ INLINE INT32 ATTR_CONST ATTR_FORCE_INLINE
+ _mul_32x32_shift(INT32 a, INT32 b, UINT8 shift)
+@@ -175,7 +175,7 @@
+ result to 32 bits
+ -------------------------------------------------*/
+
+-#ifndef __x86_64__
++#if !defined(__amd64__) && !defined(__x86_64__)
+ #define mulu_32x32_shift _mulu_32x32_shift
+ INLINE UINT32 ATTR_CONST ATTR_FORCE_INLINE
+ _mulu_32x32_shift(UINT32 a, UINT32 b, UINT8 shift)
+@@ -203,7 +203,7 @@
+ divide and return the 32 bit quotient
+ -------------------------------------------------*/
+
+-#ifndef __x86_64__
++#if !defined(__amd64__) && !defined(__x86_64__)
+ #define div_64x32 _div_64x32
+ INLINE INT32 ATTR_CONST ATTR_FORCE_INLINE
+ _div_64x32(INT64 a, INT32 b)
+@@ -230,7 +230,7 @@
+ divide and return the 32 bit quotient
+ -------------------------------------------------*/
+
+-#ifndef __x86_64__
++#if !defined(__amd64__) && !defined(__x86_64__)
+ #define divu_64x32 _divu_64x32
+ INLINE UINT32 ATTR_CONST ATTR_FORCE_INLINE
+ _divu_64x32(UINT64 a, UINT32 b)
+@@ -258,7 +258,7 @@
+ 32 bit remainder
+ -------------------------------------------------*/
+
+-#ifndef __x86_64__
++#if !defined(__amd64__) && !defined(__x86_64__)
+ #define div_64x32_rem _div_64x32_rem
+ INLINE INT32 ATTR_FORCE_INLINE
+ _div_64x32_rem(INT64 dividend, INT32 divisor, INT32 *remainder)
+@@ -286,7 +286,7 @@
+ and 32 bit remainder
+ -------------------------------------------------*/
+
+-#ifndef __x86_64__
++#if !defined(__amd64__) && !defined(__x86_64__)
+ #define divu_64x32_rem _divu_64x32_rem
+ INLINE UINT32 ATTR_FORCE_INLINE
+ _divu_64x32_rem(UINT64 dividend, UINT32 divisor, UINT32 *remainder)
+@@ -337,7 +337,7 @@
+ division, and returning the 32 bit quotient
+ -------------------------------------------------*/
+
+-#ifndef __x86_64__
++#if !defined(__amd64__) && !defined(__x86_64__)
+ #define div_32x32_shift _div_32x32_shift
+ INLINE INT32 ATTR_CONST ATTR_FORCE_INLINE
+ _div_32x32_shift(INT32 a, INT32 b, UINT8 shift)
+@@ -369,7 +369,7 @@
+ division, and returning the 32 bit quotient
+ -------------------------------------------------*/
+
+-#ifndef __x86_64__
++#if !defined(__amd64__) && !defined(__x86_64__)
+ #define divu_32x32_shift _divu_32x32_shift
+ INLINE UINT32 ATTR_CONST ATTR_FORCE_INLINE
+ _divu_32x32_shift(UINT32 a, UINT32 b, UINT8 shift)
+@@ -400,7 +400,7 @@
+ divide and return the 32 bit remainder
+ -------------------------------------------------*/
+
+-#ifndef __x86_64__
++#if !defined(__amd64__) && !defined(__x86_64__)
+ #define mod_64x32 _mod_64x32
+ INLINE INT32 ATTR_CONST ATTR_FORCE_INLINE
+ _mod_64x32(INT64 a, INT32 b)
+@@ -427,7 +427,7 @@
+ divide and return the 32 bit remainder
+ -------------------------------------------------*/
+
+-#ifndef __x86_64__
++#if !defined(__amd64__) && !defined(__x86_64__)
+ #define modu_64x32 _modu_64x32
+ INLINE UINT32 ATTR_CONST ATTR_FORCE_INLINE
+ _modu_64x32(UINT64 a, UINT32 b)
+@@ -563,7 +563,7 @@
+ return the previous value at 'ptr'.
+ -------------------------------------------------*/
+
+-#ifdef __x86_64__
++#if defined(__amd64__) || defined(__x86_64__)
+ #define compare_exchange64 _compare_exchange64
+ INLINE INT64 ATTR_NONNULL(1) ATTR_FORCE_INLINE
+ _compare_exchange64(INT64 volatile *ptr, INT64 compare, INT64 exchange)
+@@ -693,7 +693,7 @@
+
+ #define get_profile_ticks _get_profile_ticks
+
+-#ifndef __x86_64__
++#if !defined(__amd64__) && !defined(__x86_64__)
+ INLINE UINT64 ATTR_UNUSED ATTR_FORCE_INLINE _get_profile_ticks(void)
+ {
+ UINT64 result;
diff --git a/emulators/mame/files/patch-src__osd__eminline.h b/emulators/mame/files/patch-src__osd__eminline.h
new file mode 100644
index 000000000000..a631047e8346
--- /dev/null
+++ b/emulators/mame/files/patch-src__osd__eminline.h
@@ -0,0 +1,11 @@
+--- src/osd/eminline.h.orig
++++ src/osd/eminline.h
+@@ -17,7 +17,7 @@
+ /* we come with implementations for GCC x86 and PPC */
+ #if defined(__GNUC__)
+
+-#if defined(__i386__) || defined(__x86_64__)
++#if defined(__i386__) || defined(__amd64__) || defined(__x86_64__)
+ #include "eigccx86.h"
+ #elif defined(__ppc__) || defined (__PPC__) || defined(__ppc64__) || defined(__PPC64__)
+ #include "eigccppc.h"
diff --git a/emulators/mame/files/patch-src__osd__sdl__osinline.h b/emulators/mame/files/patch-src__osd__sdl__osinline.h
new file mode 100644
index 000000000000..5fe71516d32d
--- /dev/null
+++ b/emulators/mame/files/patch-src__osd__sdl__osinline.h
@@ -0,0 +1,11 @@
+--- src/osd/sdl/osinline.h.orig
++++ src/osd/sdl/osinline.h
+@@ -14,7 +14,7 @@
+ // INLINE FUNCTIONS
+ //============================================================
+
+-#if defined(__i386__) || defined(__x86_64__)
++#if defined(__i386__) || defined(__amd64__) || defined(__x86_64__)
+
+
+ INLINE void ATTR_FORCE_INLINE
diff --git a/emulators/mame/files/patch-src__osd__sdl__sdlsync_ntc.c b/emulators/mame/files/patch-src__osd__sdl__sdlsync_ntc.c
new file mode 100644
index 000000000000..a0b3a330bdc1
--- /dev/null
+++ b/emulators/mame/files/patch-src__osd__sdl__sdlsync_ntc.c
@@ -0,0 +1,29 @@
+--- src/osd/sdl/sdlsync_ntc.c.orig
++++ src/osd/sdl/sdlsync_ntc.c
+@@ -102,7 +102,7 @@
+ {
+ INT32 myslot = (atomic_increment32(&lock->nextindex) - 1) & (WORK_MAX_THREADS - 1);
+
+-#if defined(__i386__) || defined(__x86_64__)
++#if defined(__i386__) || defined(__amd64__) || defined(__x86_64__)
+ register INT32 tmp;
+ __asm__ __volatile__ (
+ "1: clr %[tmp] ;"
+@@ -157,7 +157,7 @@
+
+ void osd_scalable_lock_release(osd_scalable_lock *lock, INT32 myslot)
+ {
+-#if defined(__i386__) || defined(__x86_64__)
++#if defined(__i386__) || defined(__amd64__) || defined(__x86_64__)
+ register INT32 tmp = TRUE;
+ __asm__ __volatile__ (
+ " xchg %[haslock], %[tmp] ;"
+@@ -230,7 +230,7 @@
+ do {
+ register INT32 spin = 10000; // Convenient spin count
+ register pthread_t tmp;
+-#if defined(__i386__) || defined(__x86_64__)
++#if defined(__i386__) || defined(__amd64__) || defined(__x86_64__)
+ __asm__ __volatile__ (
+ "1: pause ;"
+ " mov %[holder], %[tmp] ;"
diff --git a/emulators/mame/files/patch-src__osd__sdl__sdlsync_os2.c b/emulators/mame/files/patch-src__osd__sdl__sdlsync_os2.c
new file mode 100644
index 000000000000..14096ed98976
--- /dev/null
+++ b/emulators/mame/files/patch-src__osd__sdl__sdlsync_os2.c
@@ -0,0 +1,29 @@
+--- src/osd/sdl/sdlsync_os2.c.orig
++++ src/osd/sdl/sdlsync_os2.c
+@@ -91,7 +91,7 @@
+ {
+ INT32 myslot = (atomic_increment32(&lock->nextindex) - 1) & (WORK_MAX_THREADS - 1);
+
+-#if defined(__i386__) || defined(__x86_64__)
++#if defined(__i386__) || defined(__amd64__) || defined(__x86_64__)
+ register INT32 tmp;
+ __asm__ __volatile__ (
+ "1: clr %[tmp] ;"
+@@ -146,7 +146,7 @@
+
+ void osd_scalable_lock_release(osd_scalable_lock *lock, INT32 myslot)
+ {
+-#if defined(__i386__) || defined(__x86_64__)
++#if defined(__i386__) || defined(__amd64__) || defined(__x86_64__)
+ register INT32 tmp = TRUE;
+ __asm__ __volatile__ (
+ " xchg %[haslock], %[tmp] ;"
+@@ -219,7 +219,7 @@
+ do {
+ register INT32 spin = 10000; // Convenient spin count
+ register pthread_t tmp;
+-#if defined(__i386__) || defined(__x86_64__)
++#if defined(__i386__) || defined(__amd64__) || defined(__x86_64__)
+ __asm__ __volatile__ (
+ "1: pause ;"
+ " mov %[holder], %[tmp] ;"
diff --git a/emulators/mame/pkg-plist b/emulators/mame/pkg-plist
index 47dd69882ae2..b3dcac449b29 100644
--- a/emulators/mame/pkg-plist
+++ b/emulators/mame/pkg-plist
@@ -8,6 +8,7 @@ libexec/mame/testkeys
libexec/mame/unidasm
%%PORTDOCS%%%%DOCSDIR%%/docs/SDL.txt
%%PORTDOCS%%%%DOCSDIR%%/docs/config.txt
+%%PORTDOCS%%%%DOCSDIR%%/docs/floppy.txt
%%PORTDOCS%%%%DOCSDIR%%/docs/hlsl.txt
%%PORTDOCS%%%%DOCSDIR%%/docs/imgtool.txt
%%PORTDOCS%%%%DOCSDIR%%/docs/license.txt
@@ -87,12 +88,15 @@ libexec/mame/unidasm
%%DATADIR%%/hash/cbm2_flop.xml
%%DATADIR%%/hash/cbm8096_flop.xml
%%DATADIR%%/hash/cbm8296_flop.xml
+%%DATADIR%%/hash/cc40_cart.xml
%%DATADIR%%/hash/cd32.xml
%%DATADIR%%/hash/cdi.xml
%%DATADIR%%/hash/cdtv.xml
%%DATADIR%%/hash/channelf.xml
%%DATADIR%%/hash/coco_cart.xml
+%%DATADIR%%/hash/coco_flop.xml
%%DATADIR%%/hash/coleco.xml
+%%DATADIR%%/hash/compclr2_flop.xml
%%DATADIR%%/hash/compis.xml
%%DATADIR%%/hash/comx35_flop.xml
%%DATADIR%%/hash/copera.xml
@@ -121,10 +125,16 @@ libexec/mame/unidasm
%%DATADIR%%/hash/gba.xml
%%DATADIR%%/hash/gbcolor.xml
%%DATADIR%%/hash/genius.xml
+%%DATADIR%%/hash/gl2000.xml
+%%DATADIR%%/hash/gl6000sl.xml
+%%DATADIR%%/hash/glcolor.xml
%%DATADIR%%/hash/gmaster.xml
%%DATADIR%%/hash/gp32.xml
%%DATADIR%%/hash/gx4000.xml
%%DATADIR%%/hash/horizon.xml
+%%DATADIR%%/hash/hp9835a_rom.xml
+%%DATADIR%%/hash/hp9845a_rom.xml
+%%DATADIR%%/hash/hp9845b_rom.xml
%%DATADIR%%/hash/hx20_flop.xml
%%DATADIR%%/hash/ibm5140.xml
%%DATADIR%%/hash/ibm5150.xml
@@ -156,6 +166,7 @@ libexec/mame/unidasm
%%DATADIR%%/hash/m5.xml
%%DATADIR%%/hash/mac_flop.xml
%%DATADIR%%/hash/mac_hdd.xml
+%%DATADIR%%/hash/mbc200.xml
%%DATADIR%%/hash/mbc55x.xml
%%DATADIR%%/hash/mc1502_flop.xml
%%DATADIR%%/hash/megacd.xml
@@ -173,8 +184,10 @@ libexec/mame/unidasm
%%DATADIR%%/hash/msx.hsi
%%DATADIR%%/hash/msx1_cart.xml
%%DATADIR%%/hash/msx1_cass.xml
+%%DATADIR%%/hash/msx1_flop.xml
%%DATADIR%%/hash/msx2.hsi
%%DATADIR%%/hash/msx2_cart.xml
+%%DATADIR%%/hash/msx2_flop.xml
%%DATADIR%%/hash/myvision.xml
%%DATADIR%%/hash/mz2000_cass.xml
%%DATADIR%%/hash/mz2000_flop.xml
@@ -187,6 +200,9 @@ libexec/mame/unidasm
%%DATADIR%%/hash/neogeo.xml
%%DATADIR%%/hash/nes.hsi
%%DATADIR%%/hash/nes.xml
+%%DATADIR%%/hash/nes_ade.xml
+%%DATADIR%%/hash/nes_datach.xml
+%%DATADIR%%/hash/nes_kstudio.xml
%%DATADIR%%/hash/nes_ntbrom.xml
%%DATADIR%%/hash/next.xml
%%DATADIR%%/hash/ngp.xml
@@ -200,6 +216,7 @@ libexec/mame/unidasm
%%DATADIR%%/hash/orion_flop.xml
%%DATADIR%%/hash/orionpro_flop.xml
%%DATADIR%%/hash/osborne1.xml
+%%DATADIR%%/hash/osborne2.xml
%%DATADIR%%/hash/p500_flop.xml
%%DATADIR%%/hash/partner_cass.xml
%%DATADIR%%/hash/partner_flop.xml
@@ -249,6 +266,9 @@ libexec/mame/unidasm
%%DATADIR%%/hash/samcoupe_flop.xml
%%DATADIR%%/hash/sat_cart.xml
%%DATADIR%%/hash/saturn.xml
+%%DATADIR%%/hash/sawatte.xml
+%%DATADIR%%/hash/sc3000_cart.xml
+%%DATADIR%%/hash/sc3000_cass.xml
%%DATADIR%%/hash/scv.xml
%%DATADIR%%/hash/segacd.xml
%%DATADIR%%/hash/sf7000.xml
@@ -278,6 +298,7 @@ libexec/mame/unidasm
%%DATADIR%%/hash/super6.xml
%%DATADIR%%/hash/superpet_flop.xml
%%DATADIR%%/hash/supracan.xml
+%%DATADIR%%/hash/sv8000.xml
%%DATADIR%%/hash/svi318_cart.xml
%%DATADIR%%/hash/svi318_cass.xml
%%DATADIR%%/hash/svi318_flop.xml
diff --git a/emulators/mess/Makefile b/emulators/mess/Makefile
index 9105acba6765..1ee55011895b 100644
--- a/emulators/mess/Makefile
+++ b/emulators/mess/Makefile
@@ -2,13 +2,12 @@
# $FreeBSD$
PORTNAME= mess
-PORTVERSION= 0.152${PATCHSUFFIX}
-PORTREVISION= 1
+PORTVERSION= 0.154${PATCHSUFFIX}
CATEGORIES= emulators
-MASTER_SITES= http://mame.mirrors.zippykid.com/releases/ \
+MASTER_SITES= http://mamedev.mameworld.info/releases/ \
http://emumovies.com/aarongiles/releases/ \
http://mamedev.org/updates/:patchsets
-DISTFILES= mame${PORTVERSION:S/.//:C/p[0-9]*$//}s.zip \
+DISTFILES= mame${PORTVERSION:S/.//:C/p[0-9]*$//}s${EXTRACT_SUFX} \
${UPDATE_PATCHES:C/$/.zip:patchsets/}
DIST_SUBDIR= mame
@@ -21,15 +20,16 @@ LIB_DEPENDS= libFLAC.so:${PORTSDIR}/audio/flac \
libfontconfig.so:${PORTSDIR}/x11-fonts/fontconfig
RUN_DEPENDS= liberation-fonts-ttf>=0:${PORTSDIR}/x11-fonts/liberation-fonts-ttf
-OPTIONS_DEFINE= BUILTIN_DEBUGGER DEBUG DOCS EXAMPLES SDL2
-BUILTIN_DEBUGGER_DESC= Builtin debugger support
-SDL2_DESC= SDL2 libraries support
-
NO_WRKSUBDIR= yes
-USES= dos2unix gmake pkgconfig shebangfix
-DOS2UNIX_FILES= src/emu/netlist/nl_base.h \
- src/emu/netlist/pstate.h
+USES= dos2unix gmake pkgconfig shebangfix zip
+DOS2UNIX_FILES= src/lib/lib7z/CpuArch.h \
+ src/lib/lua/luaconf.h \
+ src/osd/eigccx86.h \
+ src/osd/eminline.h \
+ src/osd/sdl/osinline.h \
+ src/osd/sdl/sdlsync_ntc.c \
+ src/osd/sdl/sdlsync_os2.c
SHEBANG_FILES= src/emu/cpu/m6502/m6502make.py \
src/emu/cpu/m6809/m6809make.py \
src/emu/cpu/mcs96/mcs96make.py \
@@ -40,11 +40,23 @@ USE_PYTHON_BUILD=2
MAKE_ENV= NOWERROR=1 USE_NETWORK=1 \
LD="${CXX}" PYTHON="${PYTHON_CMD}" \
OPT_FLAGS="${CXXFLAGS}" GCC_LDFLAGS="${LDFLAGS}" \
- TARGET="${PORTNAME}" FULLNAME="${PORTNAME}"
+ TARGET="${PORTNAME}" FULLNAME="${PORTNAME}" \
+ SDL_NETWORK="pcap"
MAKEFILE= makefile
SUB_FILES= pkg-message
+OPTIONS_DEFINE= BUILTIN_DEBUGGER DEBUG DOCS EXAMPLES SDL2
+
+BUILTIN_DEBUGGER_DESC= Builtin debugger support
+BUILTIN_DEBUGGER_USE= QT4=gui,moc_build,qmake_build
+BUILTIN_DEBUGGER_MAKE_ENV_OFF=\
+ NO_DEBUGGER=1 NO_USE_QTDEBUG=1
+DEBUG_MAKE_ENV= DEBUG=1
+SDL2_DESC= SDL2 libraries support
+SDL2_USE= SDL=sdl2,ttf2
+SDL2_MAKE_ENV= SDL_LIBVER="sdl2"
+
PATCHLEVEL= # none
.if defined(PATCHLEVEL) && ${PATCHLEVEL}
@@ -56,25 +68,10 @@ UPDATE_PATCHES!= /usr/bin/jot -s " " \
.include <bsd.port.options.mk>
-.if ${PORT_OPTIONS:MBUILTIN_DEBUGGER}
-USE_QT4= gui moc_build qmake_build
-.else
-MAKE_ENV+= NO_DEBUGGER=1 NO_USE_QTDEBUG=1
-.endif
-
-.if ${PORT_OPTIONS:MSDL2}
-USE_SDL= sdl2 ttf2
-MAKE_ENV+= SDL_LIBVER="sdl2"
-.else
+.if empty(PORT_OPTIONS:MSDL2)
USE_SDL= sdl ttf
.endif
-.if ${PORT_OPTIONS:MDEBUG}
-MAKE_ENV+= DEBUG=1
-.endif
-
-.include <bsd.port.pre.mk>
-
.if ${ARCH} == "ia64" || ${ARCH} == "powerpc" || ${ARCH} == "sparc64"
BROKEN= Does not install on ia64, powerpc, or sparc64
.endif
@@ -94,21 +91,19 @@ post-extract:
post-patch:
@${REINPLACE_CMD} -e \
- '/^BUILD_EXPAT /s|^|#| ; \
- /^BUILD_ZLIB /s|^|#| ; \
- /^BUILD_FLAC /s|^|#| ; \
- /^BUILD_JPEGLIB /s|^|#| ; \
- /^CC /s|^|#| ; \
- /^LD /s|^|#| ; \
- /^PYTHON /s|^|#| ; \
+ 's|^\(BUILD_EXPAT \)|#\1| ; \
+ s|^\(BUILD_ZLIB \)|#\1| ; \
+ s|^\(BUILD_FLAC \)|#\1| ; \
+ s|^\(BUILD_JPEGLIB \)|#\1| ; \
+ s|^\(CC \)|#\1| ; \
+ s|^\(LD \)|#\1| ; \
+ s|^\(PYTHON \)|#\1| ; \
s|-O$$(OPTIMIZE)|| ; \
/--warn-common/s|= -Wl,|= $$(GCC_LDFLAGS) -Wl,| ; \
/LDFLAGS/s|-s|| ; \
/LIBS/s|-lstdc++|| ; \
/LIBS/s|-lpthread|-pthread|' ${WRKSRC}/makefile
@${REINPLACE_CMD} -e \
- '/realloc/s|^|// |' ${WRKSRC}/src/emu/emualloc.h
- @${REINPLACE_CMD} -e \
'/LIBS/s|-lpthread|-pthread| ; \
/-isystem/s|^|#| ; \
/X11R6/s|^|#|' ${WRKSRC}/src/osd/sdl/sdl.mak
@@ -132,4 +127,4 @@ do-install:
@${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
(cd ${FILESDIR} && ${INSTALL_DATA} mess.ini ${STAGEDIR}${EXAMPLESDIR})
-.include <bsd.port.post.mk>
+.include <bsd.port.mk>
diff --git a/emulators/mess/distinfo b/emulators/mess/distinfo
index 0bdc2aab8290..571d8a60cb20 100644
--- a/emulators/mess/distinfo
+++ b/emulators/mess/distinfo
@@ -1,2 +1,2 @@
-SHA256 (mame/mame0152s.zip) = dd245297824e0b3938312c74aee31e1d32798d093bbf19f857de56bbd1ea4bdf
-SIZE (mame/mame0152s.zip) = 36247883
+SHA256 (mame/mame0154s.zip) = 522ba9275e9f633ab616dcd0ac0ab4fcd3b72690ed09915dcd4d0b627c696149
+SIZE (mame/mame0154s.zip) = 39697095
diff --git a/emulators/mess/files/patch-src__emu__netlist__nl_base.h b/emulators/mess/files/patch-src__emu__netlist__nl_base.h
deleted file mode 100644
index b3ed93f57ce9..000000000000
--- a/emulators/mess/files/patch-src__emu__netlist__nl_base.h
+++ /dev/null
@@ -1,20 +0,0 @@
---- src/emu/netlist/nl_base.h.orig
-+++ src/emu/netlist/nl_base.h
-@@ -287,7 +287,7 @@
-
- ATTR_COLD const pstring &name() const;
-
-- PSTATE_INTERFACE(*m_netlist, name())
-+ PSTATE_INTERFACE_DECL()
-
- #if 0
- template<class C> ATTR_COLD void save(C &state, const pstring &stname)
-@@ -1120,6 +1120,8 @@
- // Inline implementations
- // ----------------------------------------------------------------------------------------
-
-+PSTATE_INTERFACE(netlist_object_t, m_netlist, name())
-+
- ATTR_HOT inline void netlist_param_str_t::setTo(const pstring &param)
- {
- m_param = param;
diff --git a/emulators/mess/files/patch-src__emu__netlist__pstate.h b/emulators/mess/files/patch-src__emu__netlist__pstate.h
deleted file mode 100644
index 73700f7f7a78..000000000000
--- a/emulators/mess/files/patch-src__emu__netlist__pstate.h
+++ /dev/null
@@ -1,19 +0,0 @@
---- src/emu/netlist/pstate.h.orig
-+++ src/emu/netlist/pstate.h
-@@ -15,10 +15,13 @@
- // state saving ...
- // ----------------------------------------------------------------------------------------
-
--#define PSTATE_INTERFACE(manager, module) \
-- template<class C> ATTR_COLD void save(C &state, const pstring &stname) \
-+#define PSTATE_INTERFACE_DECL() \
-+ template<class C> ATTR_COLD void save(C &state, const pstring &stname);
-+
-+#define PSTATE_INTERFACE(obj, manager, module) \
-+ template<class C> ATTR_COLD void obj::save(C &state, const pstring &stname) \
- { \
-- dynamic_cast<pstate_manager_t &>(manager).save_manager(state, module + "." + stname); \
-+ manager->save_manager(state, module + "." + stname); \
- }
-
- enum netlist_data_type_e {
diff --git a/emulators/mess/files/patch-src__lib__lib7z__CpuArch.h b/emulators/mess/files/patch-src__lib__lib7z__CpuArch.h
new file mode 100644
index 000000000000..592b8de03fff
--- /dev/null
+++ b/emulators/mess/files/patch-src__lib__lib7z__CpuArch.h
@@ -0,0 +1,11 @@
+--- src/lib/lib7z/CpuArch.h.orig
++++ src/lib/lib7z/CpuArch.h
+@@ -16,7 +16,7 @@
+ If MY_CPU_LE_UNALIGN is not defined, we don't know about these properties of platform.
+ */
+
+-#if defined(_M_X64) || defined(_M_AMD64) || defined(__x86_64__)
++#if defined(__amd64__) || defined(_M_X64) || defined(_M_AMD64) || defined(__x86_64__)
+ #define MY_CPU_AMD64
+ #endif
+
diff --git a/emulators/mess/files/patch-src__lib__lua__luaconf.h b/emulators/mess/files/patch-src__lib__lua__luaconf.h
new file mode 100644
index 000000000000..deb447d3033a
--- /dev/null
+++ b/emulators/mess/files/patch-src__lib__lua__luaconf.h
@@ -0,0 +1,11 @@
+--- src/lib/lua/luaconf.h.orig
++++ src/lib/lua/luaconf.h
+@@ -514,7 +514,7 @@
+ #define LUA_NANTRICK
+
+ /* pentium 64 bits? */
+-#elif defined(__x86_64) /* }{ */
++#elif defined(__amd64__) || defined(__x86_64__) || defined(__x86_64) /* }{ */
+
+ #define LUA_IEEE754TRICK
+ #define LUA_IEEEENDIAN 0
diff --git a/emulators/mess/files/patch-src__osd__eigccx86.h b/emulators/mess/files/patch-src__osd__eigccx86.h
new file mode 100644
index 000000000000..1a05d626aca7
--- /dev/null
+++ b/emulators/mess/files/patch-src__osd__eigccx86.h
@@ -0,0 +1,128 @@
+--- src/osd/eigccx86.h.orig
++++ src/osd/eigccx86.h
+@@ -42,7 +42,7 @@
+ multiply and return the full 64 bit result
+ -------------------------------------------------*/
+
+-#ifndef __x86_64__
++#if !defined(__amd64__) && !defined(__x86_64__)
+ #define mul_32x32 _mul_32x32
+ INLINE INT64 ATTR_CONST ATTR_FORCE_INLINE
+ _mul_32x32(INT32 a, INT32 b)
+@@ -68,7 +68,7 @@
+ result
+ -------------------------------------------------*/
+
+-#ifndef __x86_64__
++#if !defined(__amd64__) && !defined(__x86_64__)
+ #define mulu_32x32 _mulu_32x32
+ INLINE UINT64 ATTR_CONST ATTR_FORCE_INLINE
+ _mulu_32x32(UINT32 a, UINT32 b)
+@@ -145,7 +145,7 @@
+ result to 32 bits
+ -------------------------------------------------*/
+
+-#ifndef __x86_64__
++#if !defined(__amd64__) && !defined(__x86_64__)
+ #define mul_32x32_shift _mul_32x32_shift
+ INLINE INT32 ATTR_CONST ATTR_FORCE_INLINE
+ _mul_32x32_shift(INT32 a, INT32 b, UINT8 shift)
+@@ -175,7 +175,7 @@
+ result to 32 bits
+ -------------------------------------------------*/
+
+-#ifndef __x86_64__
++#if !defined(__amd64__) && !defined(__x86_64__)
+ #define mulu_32x32_shift _mulu_32x32_shift
+ INLINE UINT32 ATTR_CONST ATTR_FORCE_INLINE
+ _mulu_32x32_shift(UINT32 a, UINT32 b, UINT8 shift)
+@@ -203,7 +203,7 @@
+ divide and return the 32 bit quotient
+ -------------------------------------------------*/
+
+-#ifndef __x86_64__
++#if !defined(__amd64__) && !defined(__x86_64__)
+ #define div_64x32 _div_64x32
+ INLINE INT32 ATTR_CONST ATTR_FORCE_INLINE
+ _div_64x32(INT64 a, INT32 b)
+@@ -230,7 +230,7 @@
+ divide and return the 32 bit quotient
+ -------------------------------------------------*/
+
+-#ifndef __x86_64__
++#if !defined(__amd64__) && !defined(__x86_64__)
+ #define divu_64x32 _divu_64x32
+ INLINE UINT32 ATTR_CONST ATTR_FORCE_INLINE
+ _divu_64x32(UINT64 a, UINT32 b)
+@@ -258,7 +258,7 @@
+ 32 bit remainder
+ -------------------------------------------------*/
+
+-#ifndef __x86_64__
++#if !defined(__amd64__) && !defined(__x86_64__)
+ #define div_64x32_rem _div_64x32_rem
+ INLINE INT32 ATTR_FORCE_INLINE
+ _div_64x32_rem(INT64 dividend, INT32 divisor, INT32 *remainder)
+@@ -286,7 +286,7 @@
+ and 32 bit remainder
+ -------------------------------------------------*/
+
+-#ifndef __x86_64__
++#if !defined(__amd64__) && !defined(__x86_64__)
+ #define divu_64x32_rem _divu_64x32_rem
+ INLINE UINT32 ATTR_FORCE_INLINE
+ _divu_64x32_rem(UINT64 dividend, UINT32 divisor, UINT32 *remainder)
+@@ -337,7 +337,7 @@
+ division, and returning the 32 bit quotient
+ -------------------------------------------------*/
+
+-#ifndef __x86_64__
++#if !defined(__amd64__) && !defined(__x86_64__)
+ #define div_32x32_shift _div_32x32_shift
+ INLINE INT32 ATTR_CONST ATTR_FORCE_INLINE
+ _div_32x32_shift(INT32 a, INT32 b, UINT8 shift)
+@@ -369,7 +369,7 @@
+ division, and returning the 32 bit quotient
+ -------------------------------------------------*/
+
+-#ifndef __x86_64__
++#if !defined(__amd64__) && !defined(__x86_64__)
+ #define divu_32x32_shift _divu_32x32_shift
+ INLINE UINT32 ATTR_CONST ATTR_FORCE_INLINE
+ _divu_32x32_shift(UINT32 a, UINT32 b, UINT8 shift)
+@@ -400,7 +400,7 @@
+ divide and return the 32 bit remainder
+ -------------------------------------------------*/
+
+-#ifndef __x86_64__
++#if !defined(__amd64__) && !defined(__x86_64__)
+ #define mod_64x32 _mod_64x32
+ INLINE INT32 ATTR_CONST ATTR_FORCE_INLINE
+ _mod_64x32(INT64 a, INT32 b)
+@@ -427,7 +427,7 @@
+ divide and return the 32 bit remainder
+ -------------------------------------------------*/
+
+-#ifndef __x86_64__
++#if !defined(__amd64__) && !defined(__x86_64__)
+ #define modu_64x32 _modu_64x32
+ INLINE UINT32 ATTR_CONST ATTR_FORCE_INLINE
+ _modu_64x32(UINT64 a, UINT32 b)
+@@ -563,7 +563,7 @@
+ return the previous value at 'ptr'.
+ -------------------------------------------------*/
+
+-#ifdef __x86_64__
++#if defined(__amd64__) || defined(__x86_64__)
+ #define compare_exchange64 _compare_exchange64
+ INLINE INT64 ATTR_NONNULL(1) ATTR_FORCE_INLINE
+ _compare_exchange64(INT64 volatile *ptr, INT64 compare, INT64 exchange)
+@@ -693,7 +693,7 @@
+
+ #define get_profile_ticks _get_profile_ticks
+
+-#ifndef __x86_64__
++#if !defined(__amd64__) && !defined(__x86_64__)
+ INLINE UINT64 ATTR_UNUSED ATTR_FORCE_INLINE _get_profile_ticks(void)
+ {
+ UINT64 result;
diff --git a/emulators/mess/files/patch-src__osd__eminline.h b/emulators/mess/files/patch-src__osd__eminline.h
new file mode 100644
index 000000000000..a631047e8346
--- /dev/null
+++ b/emulators/mess/files/patch-src__osd__eminline.h
@@ -0,0 +1,11 @@
+--- src/osd/eminline.h.orig
++++ src/osd/eminline.h
+@@ -17,7 +17,7 @@
+ /* we come with implementations for GCC x86 and PPC */
+ #if defined(__GNUC__)
+
+-#if defined(__i386__) || defined(__x86_64__)
++#if defined(__i386__) || defined(__amd64__) || defined(__x86_64__)
+ #include "eigccx86.h"
+ #elif defined(__ppc__) || defined (__PPC__) || defined(__ppc64__) || defined(__PPC64__)
+ #include "eigccppc.h"
diff --git a/emulators/mess/files/patch-src__osd__sdl__osinline.h b/emulators/mess/files/patch-src__osd__sdl__osinline.h
new file mode 100644
index 000000000000..5fe71516d32d
--- /dev/null
+++ b/emulators/mess/files/patch-src__osd__sdl__osinline.h
@@ -0,0 +1,11 @@
+--- src/osd/sdl/osinline.h.orig
++++ src/osd/sdl/osinline.h
+@@ -14,7 +14,7 @@
+ // INLINE FUNCTIONS
+ //============================================================
+
+-#if defined(__i386__) || defined(__x86_64__)
++#if defined(__i386__) || defined(__amd64__) || defined(__x86_64__)
+
+
+ INLINE void ATTR_FORCE_INLINE
diff --git a/emulators/mess/files/patch-src__osd__sdl__sdlsync_ntc.c b/emulators/mess/files/patch-src__osd__sdl__sdlsync_ntc.c
new file mode 100644
index 000000000000..a0b3a330bdc1
--- /dev/null
+++ b/emulators/mess/files/patch-src__osd__sdl__sdlsync_ntc.c
@@ -0,0 +1,29 @@
+--- src/osd/sdl/sdlsync_ntc.c.orig
++++ src/osd/sdl/sdlsync_ntc.c
+@@ -102,7 +102,7 @@
+ {
+ INT32 myslot = (atomic_increment32(&lock->nextindex) - 1) & (WORK_MAX_THREADS - 1);
+
+-#if defined(__i386__) || defined(__x86_64__)
++#if defined(__i386__) || defined(__amd64__) || defined(__x86_64__)
+ register INT32 tmp;
+ __asm__ __volatile__ (
+ "1: clr %[tmp] ;"
+@@ -157,7 +157,7 @@
+
+ void osd_scalable_lock_release(osd_scalable_lock *lock, INT32 myslot)
+ {
+-#if defined(__i386__) || defined(__x86_64__)
++#if defined(__i386__) || defined(__amd64__) || defined(__x86_64__)
+ register INT32 tmp = TRUE;
+ __asm__ __volatile__ (
+ " xchg %[haslock], %[tmp] ;"
+@@ -230,7 +230,7 @@
+ do {
+ register INT32 spin = 10000; // Convenient spin count
+ register pthread_t tmp;
+-#if defined(__i386__) || defined(__x86_64__)
++#if defined(__i386__) || defined(__amd64__) || defined(__x86_64__)
+ __asm__ __volatile__ (
+ "1: pause ;"
+ " mov %[holder], %[tmp] ;"
diff --git a/emulators/mess/files/patch-src__osd__sdl__sdlsync_os2.c b/emulators/mess/files/patch-src__osd__sdl__sdlsync_os2.c
new file mode 100644
index 000000000000..14096ed98976
--- /dev/null
+++ b/emulators/mess/files/patch-src__osd__sdl__sdlsync_os2.c
@@ -0,0 +1,29 @@
+--- src/osd/sdl/sdlsync_os2.c.orig
++++ src/osd/sdl/sdlsync_os2.c
+@@ -91,7 +91,7 @@
+ {
+ INT32 myslot = (atomic_increment32(&lock->nextindex) - 1) & (WORK_MAX_THREADS - 1);
+
+-#if defined(__i386__) || defined(__x86_64__)
++#if defined(__i386__) || defined(__amd64__) || defined(__x86_64__)
+ register INT32 tmp;
+ __asm__ __volatile__ (
+ "1: clr %[tmp] ;"
+@@ -146,7 +146,7 @@
+
+ void osd_scalable_lock_release(osd_scalable_lock *lock, INT32 myslot)
+ {
+-#if defined(__i386__) || defined(__x86_64__)
++#if defined(__i386__) || defined(__amd64__) || defined(__x86_64__)
+ register INT32 tmp = TRUE;
+ __asm__ __volatile__ (
+ " xchg %[haslock], %[tmp] ;"
+@@ -219,7 +219,7 @@
+ do {
+ register INT32 spin = 10000; // Convenient spin count
+ register pthread_t tmp;
+-#if defined(__i386__) || defined(__x86_64__)
++#if defined(__i386__) || defined(__amd64__) || defined(__x86_64__)
+ __asm__ __volatile__ (
+ "1: pause ;"
+ " mov %[holder], %[tmp] ;"
diff --git a/emulators/mess/pkg-plist b/emulators/mess/pkg-plist
index 7dce91bfbaa1..22287fd92c2f 100644
--- a/emulators/mess/pkg-plist
+++ b/emulators/mess/pkg-plist
@@ -10,6 +10,7 @@ libexec/mess/testkeys
libexec/mess/unidasm
%%PORTDOCS%%%%DOCSDIR%%/docs/SDL.txt
%%PORTDOCS%%%%DOCSDIR%%/docs/config.txt
+%%PORTDOCS%%%%DOCSDIR%%/docs/floppy.txt
%%PORTDOCS%%%%DOCSDIR%%/docs/hlsl.txt
%%PORTDOCS%%%%DOCSDIR%%/docs/imgtool.txt
%%PORTDOCS%%%%DOCSDIR%%/docs/license.txt
@@ -89,12 +90,15 @@ libexec/mess/unidasm
%%DATADIR%%/hash/cbm2_flop.xml
%%DATADIR%%/hash/cbm8096_flop.xml
%%DATADIR%%/hash/cbm8296_flop.xml
+%%DATADIR%%/hash/cc40_cart.xml
%%DATADIR%%/hash/cd32.xml
%%DATADIR%%/hash/cdi.xml
%%DATADIR%%/hash/cdtv.xml
%%DATADIR%%/hash/channelf.xml
%%DATADIR%%/hash/coco_cart.xml
+%%DATADIR%%/hash/coco_flop.xml
%%DATADIR%%/hash/coleco.xml
+%%DATADIR%%/hash/compclr2_flop.xml
%%DATADIR%%/hash/compis.xml
%%DATADIR%%/hash/comx35_flop.xml
%%DATADIR%%/hash/copera.xml
@@ -123,10 +127,16 @@ libexec/mess/unidasm
%%DATADIR%%/hash/gba.xml
%%DATADIR%%/hash/gbcolor.xml
%%DATADIR%%/hash/genius.xml
+%%DATADIR%%/hash/gl2000.xml
+%%DATADIR%%/hash/gl6000sl.xml
+%%DATADIR%%/hash/glcolor.xml
%%DATADIR%%/hash/gmaster.xml
%%DATADIR%%/hash/gp32.xml
%%DATADIR%%/hash/gx4000.xml
%%DATADIR%%/hash/horizon.xml
+%%DATADIR%%/hash/hp9835a_rom.xml
+%%DATADIR%%/hash/hp9845a_rom.xml
+%%DATADIR%%/hash/hp9845b_rom.xml
%%DATADIR%%/hash/hx20_flop.xml
%%DATADIR%%/hash/ibm5140.xml
%%DATADIR%%/hash/ibm5150.xml
@@ -158,6 +168,7 @@ libexec/mess/unidasm
%%DATADIR%%/hash/m5.xml
%%DATADIR%%/hash/mac_flop.xml
%%DATADIR%%/hash/mac_hdd.xml
+%%DATADIR%%/hash/mbc200.xml
%%DATADIR%%/hash/mbc55x.xml
%%DATADIR%%/hash/mc1502_flop.xml
%%DATADIR%%/hash/megacd.xml
@@ -175,8 +186,10 @@ libexec/mess/unidasm
%%DATADIR%%/hash/msx.hsi
%%DATADIR%%/hash/msx1_cart.xml
%%DATADIR%%/hash/msx1_cass.xml
+%%DATADIR%%/hash/msx1_flop.xml
%%DATADIR%%/hash/msx2.hsi
%%DATADIR%%/hash/msx2_cart.xml
+%%DATADIR%%/hash/msx2_flop.xml
%%DATADIR%%/hash/myvision.xml
%%DATADIR%%/hash/mz2000_cass.xml
%%DATADIR%%/hash/mz2000_flop.xml
@@ -189,6 +202,9 @@ libexec/mess/unidasm
%%DATADIR%%/hash/neogeo.xml
%%DATADIR%%/hash/nes.hsi
%%DATADIR%%/hash/nes.xml
+%%DATADIR%%/hash/nes_ade.xml
+%%DATADIR%%/hash/nes_datach.xml
+%%DATADIR%%/hash/nes_kstudio.xml
%%DATADIR%%/hash/nes_ntbrom.xml
%%DATADIR%%/hash/next.xml
%%DATADIR%%/hash/ngp.xml
@@ -202,6 +218,7 @@ libexec/mess/unidasm
%%DATADIR%%/hash/orion_flop.xml
%%DATADIR%%/hash/orionpro_flop.xml
%%DATADIR%%/hash/osborne1.xml
+%%DATADIR%%/hash/osborne2.xml
%%DATADIR%%/hash/p500_flop.xml
%%DATADIR%%/hash/partner_cass.xml
%%DATADIR%%/hash/partner_flop.xml
@@ -251,6 +268,9 @@ libexec/mess/unidasm
%%DATADIR%%/hash/samcoupe_flop.xml
%%DATADIR%%/hash/sat_cart.xml
%%DATADIR%%/hash/saturn.xml
+%%DATADIR%%/hash/sawatte.xml
+%%DATADIR%%/hash/sc3000_cart.xml
+%%DATADIR%%/hash/sc3000_cass.xml
%%DATADIR%%/hash/scv.xml
%%DATADIR%%/hash/segacd.xml
%%DATADIR%%/hash/sf7000.xml
@@ -280,6 +300,7 @@ libexec/mess/unidasm
%%DATADIR%%/hash/super6.xml
%%DATADIR%%/hash/superpet_flop.xml
%%DATADIR%%/hash/supracan.xml
+%%DATADIR%%/hash/sv8000.xml
%%DATADIR%%/hash/svi318_cart.xml
%%DATADIR%%/hash/svi318_cass.xml
%%DATADIR%%/hash/svi318_flop.xml