diff options
author | nia <nia@pkgsrc.org> | 2019-06-09 13:58:08 +0000 |
---|---|---|
committer | nia <nia@pkgsrc.org> | 2019-06-09 13:58:08 +0000 |
commit | 254a0e7b85803f7b25e71d9d2a2851365e5385c8 (patch) | |
tree | 6735226566f1aace2d231bb4b97609e2f6793a81 /emulators | |
parent | 95c222c495275b165bf7f49144c8bd03e04bd82f (diff) | |
download | pkgsrc-254a0e7b85803f7b25e71d9d2a2851365e5385c8.tar.gz |
blastem: Add emulators/blastem version 0.6.2
BlastEm is an open source, higly accurate emulator for the
Genesis/Megadrive that runs on modest hardware.
Features:
* Save states
* Integrated debugger
* GDB remote debugging
* Joystick/gamepad support
* Mega/Sega Mouse emulation
* XBAND and Saturn keyboard emulation
* Support for homebrew using the SSF2 mapper with Mega Everdrive
compatible heuristics
* Save RAM and EEPROM support
* Cartridge lock-on for both Sonic & Knuckles and XBAND
* Turbo and slow modes
* configurable low pass filter
* Single pass GLSL shaders
* Sega Master System emulation
Diffstat (limited to 'emulators')
-rw-r--r-- | emulators/Makefile | 3 | ||||
-rw-r--r-- | emulators/blastem/DESCR | 19 | ||||
-rw-r--r-- | emulators/blastem/MESSAGE.NetBSD | 7 | ||||
-rw-r--r-- | emulators/blastem/Makefile | 88 | ||||
-rw-r--r-- | emulators/blastem/PLIST | 24 | ||||
-rw-r--r-- | emulators/blastem/distinfo | 7 | ||||
-rw-r--r-- | emulators/blastem/files/blastem.desktop | 10 | ||||
-rw-r--r-- | emulators/blastem/patches/patch-Makefile | 15 |
8 files changed, 172 insertions, 1 deletions
diff --git a/emulators/Makefile b/emulators/Makefile index ecd68922566..b060c8cf2ea 100644 --- a/emulators/Makefile +++ b/emulators/Makefile @@ -1,4 +1,4 @@ -# $NetBSD: Makefile,v 1.296 2019/06/08 22:46:03 nia Exp $ +# $NetBSD: Makefile,v 1.297 2019/06/09 13:58:08 nia Exp $ # COMMENT= Emulators for other operating systems @@ -20,6 +20,7 @@ SUBDIR+= arcem SUBDIR+= arnold SUBDIR+= atari800 SUBDIR+= b-em +SUBDIR+= blastem SUBDIR+= blinkensim SUBDIR+= bochs SUBDIR+= ckmame diff --git a/emulators/blastem/DESCR b/emulators/blastem/DESCR new file mode 100644 index 00000000000..97fadd43068 --- /dev/null +++ b/emulators/blastem/DESCR @@ -0,0 +1,19 @@ +BlastEm is an open source, higly accurate emulator for the +Genesis/Megadrive that runs on modest hardware. + +Features: + +* Save states +* Integrated debugger +* GDB remote debugging +* Joystick/gamepad support +* Mega/Sega Mouse emulation +* XBAND and Saturn keyboard emulation +* Support for homebrew using the SSF2 mapper with Mega Everdrive + compatible heuristics +* Save RAM and EEPROM support +* Cartridge lock-on for both Sonic & Knuckles and XBAND +* Turbo and slow modes +* configurable low pass filter +* Single pass GLSL shaders +* Sega Master System emulation diff --git a/emulators/blastem/MESSAGE.NetBSD b/emulators/blastem/MESSAGE.NetBSD new file mode 100644 index 00000000000..86a374564eb --- /dev/null +++ b/emulators/blastem/MESSAGE.NetBSD @@ -0,0 +1,7 @@ +=========================================================================== +$NetBSD: MESSAGE.NetBSD,v 1.1 2019/06/09 13:58:08 nia Exp $ + +Lowering the system audio latency (or blk_ms) with sysctl(8) may be +required to achieve full performance and framerates. + +=========================================================================== diff --git a/emulators/blastem/Makefile b/emulators/blastem/Makefile new file mode 100644 index 00000000000..b8bc387d2a0 --- /dev/null +++ b/emulators/blastem/Makefile @@ -0,0 +1,88 @@ +# $NetBSD: Makefile,v 1.1 2019/06/09 13:58:08 nia Exp $ + +DISTNAME= 8aeac7bd9fa7 +PKGNAME= blastem-0.6.2 +CATEGORIES= emulators +MASTER_SITES= https://www.retrodev.com/repos/blastem/archive/ +DIST_SUBDIR= blastem + +MAINTAINER= nia@NetBSD.org +HOMEPAGE= https://www.retrodev.com/blastem/ +COMMENT= Higly accurate Genesis/Mega Drive emulator +LICENSE= gnu-gpl-v3 + +WRKSRC= ${WRKDIR}/blastem-${DISTNAME} +USE_TOOLS+= gmake pkg-config +USE_LANGUAGES= c99 + +MAKE_FLAGS+= HOST_ZLIB=1 +MAKE_FLAGS+= OPT= +MAKE_FLAGS+= NOLTO=1 +MAKE_FLAGS+= DATA_PATH=${PREFIX}/share/blastem + +INSTALLATION_DIRS+= bin +INSTALLATION_DIRS+= share/applications +INSTALLATION_DIRS+= share/blastem +INSTALLATION_DIRS+= share/blastem/images +INSTALLATION_DIRS+= share/blastem/shaders +INSTALLATION_DIRS+= share/doc/blastem +INSTALLATION_DIRS+= share/icons/hicolor/48x48/apps +INSTALLATION_DIRS+= share/icons/hicolor/72x72/apps +INSTALLATION_DIRS+= share/icons/hicolor/96x96/apps +INSTALLATION_DIRS+= share/icons/hicolor/144x144/apps + +# wants to use a JIT +NOT_PAX_MPROTECT_SAFE+= bin/blastem + +# only supports writing 64-bit and 32-bit x86 asm +# may support ARM in future +ONLY_FOR_PLATFORM= *-*-x86_64 *-*-i386 + +pre-configure: + ${CP} ${FILESDIR}/blastem.desktop ${WRKDIR}/blastem.desktop + +do-install: + ${INSTALL_PROGRAM} ${WRKSRC}/dis \ + ${DESTDIR}${PREFIX}/bin/blastem-dis + ${INSTALL_PROGRAM} ${WRKSRC}/zdis \ + ${DESTDIR}${PREFIX}/bin/blastem-zdis + ${INSTALL_PROGRAM} ${WRKSRC}/stateview \ + ${DESTDIR}${PREFIX}/bin/blastem-stateview + ${INSTALL_PROGRAM} ${WRKSRC}/vgmplay \ + ${DESTDIR}${PREFIX}/bin/blastem-vgmplay + ${INSTALL_PROGRAM} ${WRKSRC}/blastem \ + ${DESTDIR}${PREFIX}/bin/blastem + ${INSTALL_DATA} ${WRKSRC}/README \ + ${DESTDIR}${PREFIX}/share/doc/blastem/README + ${INSTALL_DATA} ${WRKSRC}/COPYING \ + ${DESTDIR}${PREFIX}/share/doc/blastem/COPYING + ${INSTALL_DATA} ${WRKSRC}/CHANGELOG \ + ${DESTDIR}${PREFIX}/share/doc/blastem/CHANGELOG + ${INSTALL_DATA} ${WRKSRC}/default.cfg \ + ${DESTDIR}${PREFIX}/share/blastem/default.cfg + ${INSTALL_DATA} ${WRKSRC}/gamecontrollerdb.txt \ + ${DESTDIR}${PREFIX}/share/blastem/gamecontrollerdb.txt + ${INSTALL_DATA} ${WRKSRC}/shaders/* \ + ${DESTDIR}${PREFIX}/share/blastem/shaders + ${INSTALL_DATA} ${WRKSRC}/images/* \ + ${DESTDIR}${PREFIX}/share/blastem/images + ${INSTALL_DATA} ${WRKSRC}/rom.db \ + ${DESTDIR}${PREFIX}/share/blastem/rom.db + ${INSTALL_DATA} ${WRKSRC}/android/res/drawable-mdpi/ic_launcher.png \ + ${DESTDIR}${PREFIX}/share/icons/hicolor/48x48/apps/blastem.png + ${INSTALL_DATA} ${WRKSRC}/android/res/drawable-hdpi/ic_launcher.png \ + ${DESTDIR}${PREFIX}/share/icons/hicolor/72x72/apps/blastem.png + ${INSTALL_DATA} ${WRKSRC}/android/res/drawable-xhdpi/ic_launcher.png \ + ${DESTDIR}${PREFIX}/share/icons/hicolor/96x96/apps/blastem.png + ${INSTALL_DATA} ${WRKSRC}/android/res/drawable-xxhdpi/ic_launcher.png \ + ${DESTDIR}${PREFIX}/share/icons/hicolor/144x144/apps/blastem.png + ${INSTALL_DATA} ${WRKDIR}/blastem.desktop \ + ${DESTDIR}${PREFIX}/share/applications/blastem.desktop + +.include "../../devel/SDL2/buildlink3.mk" +.include "../../devel/zlib/buildlink3.mk" +.include "../../graphics/MesaLib/buildlink3.mk" +.include "../../graphics/hicolor-icon-theme/buildlink3.mk" +.include "../../graphics/glew/buildlink3.mk" +.include "../../graphics/glu/buildlink3.mk" +.include "../../mk/bsd.pkg.mk" diff --git a/emulators/blastem/PLIST b/emulators/blastem/PLIST new file mode 100644 index 00000000000..523924f68de --- /dev/null +++ b/emulators/blastem/PLIST @@ -0,0 +1,24 @@ +@comment $NetBSD: PLIST,v 1.1 2019/06/09 13:58:08 nia Exp $ +bin/blastem +bin/blastem-dis +bin/blastem-stateview +bin/blastem-vgmplay +bin/blastem-zdis +share/applications/blastem.desktop +share/blastem/default.cfg +share/blastem/gamecontrollerdb.txt +share/blastem/images/360.png +share/blastem/images/ps4.png +share/blastem/images/ps4_6b.png +share/blastem/rom.db +share/blastem/shaders/crt.f.glsl +share/blastem/shaders/crt.v.glsl +share/blastem/shaders/default.f.glsl +share/blastem/shaders/default.v.glsl +share/doc/blastem/CHANGELOG +share/doc/blastem/COPYING +share/doc/blastem/README +share/icons/hicolor/144x144/apps/blastem.png +share/icons/hicolor/48x48/apps/blastem.png +share/icons/hicolor/72x72/apps/blastem.png +share/icons/hicolor/96x96/apps/blastem.png diff --git a/emulators/blastem/distinfo b/emulators/blastem/distinfo new file mode 100644 index 00000000000..87f00c2e102 --- /dev/null +++ b/emulators/blastem/distinfo @@ -0,0 +1,7 @@ +$NetBSD: distinfo,v 1.1 2019/06/09 13:58:08 nia Exp $ + +SHA1 (blastem/8aeac7bd9fa7.tar.gz) = 1953ebfd0eaf5e5630ff5488779eb8e6bb8fe9bf +RMD160 (blastem/8aeac7bd9fa7.tar.gz) = f9d20a2f4211d03eb2278dcdcd36a8afb1e939e0 +SHA512 (blastem/8aeac7bd9fa7.tar.gz) = dec0d0c49cec9f896884b93c6ec568eb88d8ae51ddcf93445a70e9ad6543ef92c34fcdf14e66b56de1805dc5876d1ff17e51ab79d8d894da51312a42ac1c36d3 +Size (blastem/8aeac7bd9fa7.tar.gz) = 1113490 bytes +SHA1 (patch-Makefile) = 1635e72bb90227b5fbfc32fe43bd5552ca48fb64 diff --git a/emulators/blastem/files/blastem.desktop b/emulators/blastem/files/blastem.desktop new file mode 100644 index 00000000000..aff5d8f2b11 --- /dev/null +++ b/emulators/blastem/files/blastem.desktop @@ -0,0 +1,10 @@ +[Desktop Entry] +Type=Application +Encoding=UTF-8 +Name=BlastEm +GenericName=Mega Drive Emulator +Comment=Emulator for the Genesis / Mega Drive +Icon=blastem +Exec=blastem +Terminal=false +Categories=Game;Emulator; diff --git a/emulators/blastem/patches/patch-Makefile b/emulators/blastem/patches/patch-Makefile new file mode 100644 index 00000000000..ade98b8f903 --- /dev/null +++ b/emulators/blastem/patches/patch-Makefile @@ -0,0 +1,15 @@ +$NetBSD: patch-Makefile,v 1.1 2019/06/09 13:58:08 nia Exp $ + +Do not use -Werror or override CFLAGS. + +--- Makefile.orig 2019-03-28 06:34:53.000000000 +0000 ++++ Makefile +@@ -36,7 +36,7 @@ NET:=net.o + EXE:= + + HAS_PROC:=$(shell if [ -d /proc ]; then /bin/echo -e -DHAS_PROC; fi) +-CFLAGS:=-std=gnu99 -Wreturn-type -Werror=return-type -Werror=implicit-function-declaration -Wno-unused-value $(HAS_PROC) -DHAVE_UNISTD_H ++CFLAGS+=-std=gnu99 -Wreturn-type -Wno-unused-value $(HAS_PROC) -DHAVE_UNISTD_H + + ifeq ($(OS),Darwin) + LIBS=sdl2 glew |