summaryrefslogtreecommitdiff
path: root/emulators
diff options
context:
space:
mode:
authornia <nia@pkgsrc.org>2019-07-18 10:44:57 +0000
committernia <nia@pkgsrc.org>2019-07-18 10:44:57 +0000
commitb107e82670a4d01fa70788c54644ea531cfe5f23 (patch)
tree617e7d6d0ff80c21b00949e4225c10baa02330c6 /emulators
parentb8f1da65982f16b3ec135c978b759c5d24fca550 (diff)
downloadpkgsrc-b107e82670a4d01fa70788c54644ea531cfe5f23.tar.gz
sameboy: Update to 0.12.1. Add the SDL version.
0.12.1: Bug Fixes - Fixed the CGB and AGB boot ROMs being corrupt on the Windows version - Improved audio quality on the SDL ports on systems using a large audio buffer 0.12: New/Improved Features - An experimental support for emulating CGB-CPU C is now available in the Cocoa port. This is still experimental and does not accurately represent all differences between CGB-CPU E and CGB-CPU C yet - The Libretro port no longer restarts the core after changes to the high-pass filter or color correction - The SDL port can now start in fullscreen mode via a command line argument - High level emulation of Super Game Boy: - Supports game colorization - Supports borders, including correct emulation of the fade animations and borders that obscure parts of the Game Boy display window - Up to 4-player multiplayer (Currently only in the Cocoa and Libretro ports) - Can choose between Super Game Boy (NTSC), Super Game Boy (PAL) and Super Game Boy 2, with correct CPU speed emulation - All models include open source boot ROMs, just like previously supported models - Includes a default border for games without SGB support - Includes a boot animation - Accurate emulation of cases where the internal frame buffer loses sync with the SNES/SFC side - New CRT display filter - New preference panel in the Cocoa port - Minor visual improvements to the icon - Many performance all around the core - The debugger now includes jump-to breakpoints - New APU debugger commands - The SDL port now has mouse support - The SDL port now has an "Open ROM" dialog window, in addition to the previously available drag and drop support - The Cocoa and SDL ports now have better support for sub-frame input accuracy - The VRAM display window in the Cocoa port can now display SCX and SCY on the tilemap - Redesigned audio API that should improve audio quality in all ports Accuracy Improvements/Fixes - WRAM, VRAM, and other types of memory are now realistically initialized to random values. The randomization patterns vary across emulated models and revisions. This fixes several games that rely on non-zero values on boot - Slightly more accurate emulation of the undocumented $FF4C register, which controls DMG mode on CGBs - Fixed an APU regression where the noise channel's volume envelope ran too fast - More accurate emulation of analog APU characteristics - Fixed a CGB boot ROM bug that made some games boot with incorrect palettes - Fixed incorrect emulation of echo RAM - Fixed a very rare edge case when an interrupt occurs while the stack points to $FF11 - Correct emulation of the time required to switch the CPU speed - Correct emulation of CGB palette accessibility in different PPU timings, fixes Lego Racers - Other accuracy improvements to OAM and VRAM accessibility - The serial registers now behave realistically by working with bits instead of bytes - More accurate initial RAM and VRAM values when using the built in CGB boot ROM - Accurate emulation of AGB audio mixing, which is different from older models - Fixed the behavior of the wave channel's first sample playback, fixes buzzing sounds on LSDJ and several games - Most aspects of STOP mode are now accurately emulated - Fixed a bug where initial register values were incorrect when selecting a palette for a DMG game in the built in CGB boot ROM - Fixed incorrect emulation of the Background and Window enable bit in LCDC Bug Fixes - Fixed a bug where the SDL port would not recognize joypads if started directly to a ROM - Fixed a bug where the Quick Look previewer would show glitched thumbnails for DMG games - Fixed a regression that made the Cocoa port unable to display anything on Macs not supporting Metal - Fixed a bug where modifying RTC data could corrupt MBC RAM data - Fixed a bug where CGB save states were significantly larger than they should have been, older save states are converted - Fixed several bugs in expression parsing in the debugger - Work around a bug where some Windows 10 machines using Intel HD Graphics had unresponsive UI in the SDL port - Fixed a bug where the D-Pad did not work on several gamepads in the Cocoa port - Fixed a bug where the gamepad D-Pad had unexpected behaviors in the menus of the SDL port - Fixed a bug where underclocking slowed down the core to ~40% of its speed instead of an exact 50% Misc Internal Changes - Rename all Z80 instances to SM83, which is most likely the name of the CPU core used in the Game Boy - Size optimization in the CGB boot ROM
Diffstat (limited to 'emulators')
-rw-r--r--emulators/Makefile3
-rw-r--r--emulators/libretro-sameboy/Makefile15
-rw-r--r--emulators/libretro-sameboy/distinfo6
-rw-r--r--emulators/sameboy/DESCR5
-rw-r--r--emulators/sameboy/Makefile34
-rw-r--r--emulators/sameboy/Makefile.common18
-rw-r--r--emulators/sameboy/PLIST24
-rw-r--r--emulators/sameboy/distinfo6
8 files changed, 93 insertions, 18 deletions
diff --git a/emulators/Makefile b/emulators/Makefile
index 367e12939df..a130c17f6cb 100644
--- a/emulators/Makefile
+++ b/emulators/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.299 2019/07/07 13:32:18 nia Exp $
+# $NetBSD: Makefile,v 1.300 2019/07/18 10:44:57 nia Exp $
#
COMMENT= Emulators for other operating systems
@@ -166,6 +166,7 @@ SUBDIR+= qemu
SUBDIR+= raine
SUBDIR+= realboy
SUBDIR+= retroarch
+SUBDIR+= sameboy
SUBDIR+= shoebill
SUBDIR+= simh
SUBDIR+= simulavr
diff --git a/emulators/libretro-sameboy/Makefile b/emulators/libretro-sameboy/Makefile
index ef025c39f8e..01a8057f7a1 100644
--- a/emulators/libretro-sameboy/Makefile
+++ b/emulators/libretro-sameboy/Makefile
@@ -1,21 +1,14 @@
-# $NetBSD: Makefile,v 1.4 2019/05/18 09:57:12 nia Exp $
+# $NetBSD: Makefile,v 1.5 2019/07/18 10:44:57 nia Exp $
-DISTNAME= libretro-sameboy-0.11.2
-CATEGORIES= emulators
-MASTER_SITES= ${MASTER_SITE_GITHUB:=LIJI32/}
-GITHUB_PROJECT= SameBoy
-GITHUB_TAG= v${PKGVERSION_NOREV}
+.include "../../emulators/sameboy/Makefile.common"
+
+PKGNAME= libretro-${DISTNAME}
MAINTAINER= nia@NetBSD.org
HOMEPAGE= https://docs.libretro.com/library/sameboy/
COMMENT= Libretro core based on the SameBoy Game Boy/Game Boy Color emulator
-LICENSE= mit
-EXTRACT_USING= bsdtar
BUILD_DIRS= libretro
-USE_TOOLS+= gmake
-
-TOOL_DEPENDS+= rgbds-[0-9]*:../../devel/rgbds
MAKE_FLAGS+= GIT_VERSION="${PKGVERSION}-pkgsrc"
diff --git a/emulators/libretro-sameboy/distinfo b/emulators/libretro-sameboy/distinfo
deleted file mode 100644
index 3de6a77ba4e..00000000000
--- a/emulators/libretro-sameboy/distinfo
+++ /dev/null
@@ -1,6 +0,0 @@
-$NetBSD: distinfo,v 1.2 2018/11/18 11:54:10 nia Exp $
-
-SHA1 (libretro-sameboy-0.11.2.tar.gz) = 0f989a4a007466fbffc53e96265f4d73e9cf2f79
-RMD160 (libretro-sameboy-0.11.2.tar.gz) = 37415df146f33279e5627880c7b39c86ed78506f
-SHA512 (libretro-sameboy-0.11.2.tar.gz) = 478d0d4dff2bd6030b3fe97aa0b0381696f818129717d6af2f9d2631181737038ac588ab00dbb4eab3d6251762381f2ac564cb39b31912f5949a0006f863af38
-Size (libretro-sameboy-0.11.2.tar.gz) = 2430898 bytes
diff --git a/emulators/sameboy/DESCR b/emulators/sameboy/DESCR
new file mode 100644
index 00000000000..0ad06939287
--- /dev/null
+++ b/emulators/sameboy/DESCR
@@ -0,0 +1,5 @@
+SameBoy is an extremely accurate open source Nintendo Gameboy (DMG)
+and Gameboy Color (CGB) emulator, written in portable C.
+
+It features link cable emulation, and includes open source DMG and CGB
+boot ROMs.
diff --git a/emulators/sameboy/Makefile b/emulators/sameboy/Makefile
new file mode 100644
index 00000000000..20ac1d58a20
--- /dev/null
+++ b/emulators/sameboy/Makefile
@@ -0,0 +1,34 @@
+# $NetBSD: Makefile,v 1.1 2019/07/18 10:44:57 nia Exp $
+
+.include "Makefile.common"
+
+MAINTAINER= nia@NetBSD.org
+HOMEPAGE= https://sameboy.github.io/
+COMMENT= Highly accurate Game Boy and Game Boy Color emulator
+
+BUILD_TARGET= sdl
+
+MAKE_FLAGS+= DATA_DIR=${PREFIX}/share/sameboy/
+
+INSTALLATION_DIRS+= bin
+INSTALLATION_DIRS+= share/doc/sameboy
+INSTALLATION_DIRS+= share/sameboy
+INSTALLATION_DIRS+= share/sameboy/Shaders
+
+BUILDLINK_TRANSFORM+= rm:-Werror
+
+do-install:
+ cd ${WRKSRC}/build/bin/SDL && ${INSTALL_PROGRAM} sameboy \
+ ${DESTDIR}${PREFIX}/bin/sameboy
+ cd ${WRKSRC}/build/bin/SDL && ${INSTALL_DATA} *.bin *.sym *.bmp \
+ ${DESTDIR}${PREFIX}/share/sameboy
+ cd ${WRKSRC}/build/bin/SDL && ${INSTALL_DATA} LICENSE \
+ ${DESTDIR}${PREFIX}/share/doc/sameboy
+ cd ${WRKSRC}/build/bin/SDL/Shaders && ${INSTALL_DATA} *.fsh \
+ ${DESTDIR}${PREFIX}/share/sameboy/Shaders
+
+.include "../../devel/SDL2/buildlink3.mk"
+.include "../../graphics/MesaLib/buildlink3.mk"
+.include "../../mk/dlopen.buildlink3.mk"
+BUILDLINK_TRANSFORM+= opt:-ldl:${BUILDLINK_LDADD.dl:Q}
+.include "../../mk/bsd.pkg.mk"
diff --git a/emulators/sameboy/Makefile.common b/emulators/sameboy/Makefile.common
new file mode 100644
index 00000000000..180838494cc
--- /dev/null
+++ b/emulators/sameboy/Makefile.common
@@ -0,0 +1,18 @@
+# $NetBSD: Makefile.common,v 1.1 2019/07/18 10:44:57 nia Exp $
+# used by emulators/sameboy/Makefile
+# used by emulators/libretro-sameboy/Makefile
+
+DISTNAME= sameboy-0.12.1
+CATEGORIES= emulators
+MASTER_SITES= ${MASTER_SITE_GITHUB:=LIJI32/}
+GITHUB_PROJECT= SameBoy
+GITHUB_TAG= v${PKGVERSION_NOREV}
+
+LICENSE= mit
+
+EXTRACT_USING= bsdtar
+USE_TOOLS+= gmake
+
+TOOL_DEPENDS+= rgbds-[0-9]*:../../devel/rgbds
+
+DISTINFO_FILE= ${.CURDIR}/../../emulators/sameboy/distinfo
diff --git a/emulators/sameboy/PLIST b/emulators/sameboy/PLIST
new file mode 100644
index 00000000000..cb647ba9c9b
--- /dev/null
+++ b/emulators/sameboy/PLIST
@@ -0,0 +1,24 @@
+@comment $NetBSD: PLIST,v 1.1 2019/07/18 10:44:57 nia Exp $
+bin/sameboy
+share/doc/sameboy/LICENSE
+share/sameboy/Shaders/AAOmniScaleLegacy.fsh
+share/sameboy/Shaders/AAScale2x.fsh
+share/sameboy/Shaders/AAScale4x.fsh
+share/sameboy/Shaders/Bilinear.fsh
+share/sameboy/Shaders/CRT.fsh
+share/sameboy/Shaders/HQ2x.fsh
+share/sameboy/Shaders/LCD.fsh
+share/sameboy/Shaders/MasterShader.fsh
+share/sameboy/Shaders/NearestNeighbor.fsh
+share/sameboy/Shaders/OmniScale.fsh
+share/sameboy/Shaders/OmniScaleLegacy.fsh
+share/sameboy/Shaders/Scale2x.fsh
+share/sameboy/Shaders/Scale4x.fsh
+share/sameboy/Shaders/SmoothBilinear.fsh
+share/sameboy/agb_boot.bin
+share/sameboy/background.bmp
+share/sameboy/cgb_boot.bin
+share/sameboy/dmg_boot.bin
+share/sameboy/registers.sym
+share/sameboy/sgb2_boot.bin
+share/sameboy/sgb_boot.bin
diff --git a/emulators/sameboy/distinfo b/emulators/sameboy/distinfo
new file mode 100644
index 00000000000..f39d6111a8d
--- /dev/null
+++ b/emulators/sameboy/distinfo
@@ -0,0 +1,6 @@
+$NetBSD: distinfo,v 1.1 2019/07/18 10:44:57 nia Exp $
+
+SHA1 (sameboy-0.12.1.tar.gz) = 834f746e6f6e7979a89282b6ccf6591e7a995bde
+RMD160 (sameboy-0.12.1.tar.gz) = 806694f76a86b3b347b5a5a1ca25336b3fdbfcef
+SHA512 (sameboy-0.12.1.tar.gz) = c02c2d77a514dea110c1ffee56291b69e7b44fe41975c03a8df332ed3a5417c2eec71ae1ae5c8fde27b698bd19d803f1102788e34855436ba4cd06a024bd20e6
+Size (sameboy-0.12.1.tar.gz) = 2533327 bytes