View | Details | Raw Unified | Return to bug 281221
Collapse All | Expand All

(-)b/emulators/ares/Makefile (-8 / +12 lines)
Lines 1-7 Link Here
1
PORTNAME=	ares
1
PORTNAME=	ares
2
DISTVERSION=	139.20240825
2
DISTVERSIONPREFIX=	v
3
DISTVERSION=	140
3
CATEGORIES=	emulators
4
CATEGORIES=	emulators
4
5
6
# committed upstream, remove with next version update
7
# * contains 'unbreak FreeBSD build'
8
#   https://github.com/Themaister/Granite/pull/135
9
# * contains 'NVIDIA fix'
10
#   https://github.com/ares-emulator/ares/issues/1547
11
#   https://github.com/Themaister/Granite/issues/133
12
PATCH_SITES=	https://github.com/${GH_ACCOUNT}/${PORTNAME}/commit/
13
PATCHFILES=	7135646c447ab7eb3eff18132dbddf7dc03135fa.patch:-p1
14
5
MAINTAINER=	bsdcode@disroot.org
15
MAINTAINER=	bsdcode@disroot.org
6
COMMENT=	Multi-system emulator
16
COMMENT=	Multi-system emulator
7
WWW=		https://ares-emu.net
17
WWW=		https://ares-emu.net
Lines 13-19 USES= compiler:c++17-lang gmake gnome localbase:ldflags pkgconfig \ Link Here
13
		xorg
23
		xorg
14
USE_GITHUB=	yes
24
USE_GITHUB=	yes
15
GH_ACCOUNT=	ares-emulator
25
GH_ACCOUNT=	ares-emulator
16
GH_TAGNAME=	efb7f61
17
USE_GNOME=	gtksourceview3
26
USE_GNOME=	gtksourceview3
18
USE_XORG=	x11 xext xrandr
27
USE_XORG=	x11 xext xrandr
19
28
Lines 29-35 MAKE_ARGS= compiler=${CC} \ Link Here
29
		symbols=false \
38
		symbols=false \
30
		threaded=true
39
		threaded=true
31
40
32
OPTIONS_DEFINE=		DEBUG DOCS HOTKEYS NVIDIA OPENMP SHADER
41
OPTIONS_DEFINE=		DEBUG DOCS HOTKEYS OPENMP SHADER
33
OPTIONS_DEFAULT=	A26 ALSA AO CV FC GB GBA GLX MD MS MSX MYVISION N64 NG \
42
OPTIONS_DEFAULT=	A26 ALSA AO CV FC GB GBA GLX MD MS MSX MYVISION N64 NG \
34
			NGP OPENAL OPENMP OSS PCE PERFORMANCE PS1 SDLAUDIO \
43
			NGP OPENAL OPENMP OSS PCE PERFORMANCE PS1 SDLAUDIO \
35
			SDLINPUT SFC SG SHADER SPEC UDEV UHID WS XLIB XVIDEO
44
			SDLINPUT SFC SG SHADER SPEC UDEV UHID WS XLIB XVIDEO
Lines 56-62 MYVISION_DESC= My Vision Link Here
56
N64_DESC=		Nintendo 64
65
N64_DESC=		Nintendo 64
57
NGP_DESC=		Neo Geo Pocket
66
NGP_DESC=		Neo Geo Pocket
58
NG_DESC=		Neo Geo (AES/MVS)
67
NG_DESC=		Neo Geo (AES/MVS)
59
NVIDIA_DESC=		Apply shader cache workaround (implies ${NVIDIA_IMPLIES})
60
PCE_DESC=		PC-Engine / TurboGrafx
68
PCE_DESC=		PC-Engine / TurboGrafx
61
PERFORMANCE_DESC=	Faster but less accurate
69
PERFORMANCE_DESC=	Faster but less accurate
62
PROFILE_DESC=
70
PROFILE_DESC=
Lines 112-126 N64_RUN_DEPENDS= ${LOCALBASE}/lib/libvulkan.so:graphics/vulkan-loader Link Here
112
N64_MAKE_ARGS=		cores+=n64 \
120
N64_MAKE_ARGS=		cores+=n64 \
113
			vulkan=true
121
			vulkan=true
114
N64_MAKE_ARGS_OFF=	vulkan=false
122
N64_MAKE_ARGS_OFF=	vulkan=false
115
N64_EXTRA_PATCHES=	${PATCHDIR}/extra-patch-ares_n64_vulkan_parallel-rdp_util_timer.cpp
116
123
117
NGP_MAKE_ARGS=		cores+=ngp
124
NGP_MAKE_ARGS=		cores+=ngp
118
125
119
NG_MAKE_ARGS=		cores+=ng
126
NG_MAKE_ARGS=		cores+=ng
120
127
121
NVIDIA_IMPLIES=		N64
122
NVIDIA_EXTRA_PATCHES=	${PATCHDIR}/extra-patch-ares_n64_vulkan_parallel-rdp_vulkan_device.cpp
123
124
OPENAL_USES=		openal
128
OPENAL_USES=		openal
125
OPENAL_MAKE_ARGS=	ruby+=audio.openal
129
OPENAL_MAKE_ARGS=	ruby+=audio.openal
126
130
(-)b/emulators/ares/distinfo (-3 / +5 lines)
Lines 1-3 Link Here
1
TIMESTAMP = 1724663853
1
TIMESTAMP = 1725355457
2
SHA256 (ares-emulator-ares-139.20240825-efb7f61_GH0.tar.gz) = 8d4a410b9141399ec0d592edc34ca8dd35d582a87cae3f4ec5fdacc8a1c3c64e
2
SHA256 (ares-emulator-ares-v140_GH0.tar.gz) = 126464881ca1111a46627cb299516f60ad076bf3015da0b9325d6cac14339f4d
3
SIZE (ares-emulator-ares-139.20240825-efb7f61_GH0.tar.gz) = 50956365
3
SIZE (ares-emulator-ares-v140_GH0.tar.gz) = 50954599
4
SHA256 (7135646c447ab7eb3eff18132dbddf7dc03135fa.patch) = 8a33c760618adf6bcd90894a2002d1aa60ef1cd68458980c341d2175881381a5
5
SIZE (7135646c447ab7eb3eff18132dbddf7dc03135fa.patch) = 11018024
(-)a/emulators/ares/files/extra-patch-ares_n64_vulkan_parallel-rdp_util_timer.cpp (-13 lines)
Removed Link Here
1
https://github.com/Themaister/Granite/pull/135
2
3
--- ares/n64/vulkan/parallel-rdp/util/timer.cpp.orig	2024-07-28 10:49:58 UTC
4
+++ ares/n64/vulkan/parallel-rdp/util/timer.cpp
5
@@ -107,7 +107,7 @@ int64_t get_current_time_nsecs()
6
 	return int64_t(double(li.QuadPart) * static_qpc_freq.inv_freq);
7
 #else
8
 	struct timespec ts = {};
9
-#ifdef ANDROID
10
+#if defined(ANDROID) || defined(__FreeBSD__)
11
 	constexpr auto timebase = CLOCK_MONOTONIC;
12
 #else
13
 	constexpr auto timebase = CLOCK_MONOTONIC_RAW;
(-)a/emulators/ares/files/extra-patch-ares_n64_vulkan_parallel-rdp_vulkan_device.cpp (-13 lines)
Removed Link Here
1
https://github.com/Themaister/Granite/issues/133
2
3
--- ares/n64/vulkan/parallel-rdp/vulkan/device.cpp.orig	2024-08-11 00:29:27 UTC
4
+++ ares/n64/vulkan/parallel-rdp/vulkan/device.cpp
5
@@ -874,7 +874,7 @@ void Device::init_workarounds()
6
 		workarounds.emulate_event_as_pipeline_barrier = true;
7
 	}
8
 
9
-	if (ext.driver_id == VK_DRIVER_ID_NVIDIA_PROPRIETARY && gpu_props.driverVersion < VK_VERSION_MAJOR(535))
10
+	if (ext.driver_id == VK_DRIVER_ID_NVIDIA_PROPRIETARY)
11
 	{
12
 		LOGW("Disabling pipeline cache control.\n");
13
 		workarounds.broken_pipeline_cache_control = true;
(-)b/emulators/ares/pkg-message (-10 lines)
Lines 9-23 Users are encouraged to compile the port on their systems with Link Here
9
9
10
This can improve the performance of demanding cores like the N64.
10
This can improve the performance of demanding cores like the N64.
11
11
12
NVIDIA GPU users with versions >= 535 of the x11/nvidia-driver could encounter
13
crashes or freezes while using the N64 core, see
14
https://github.com/ares-emulator/ares/issues/1547 and
15
https://github.com/Themaister/Granite/issues/133. As a workaround either try to
16
compile the port with the NVIDIA option set (recommended), or disable the NVIDIA
17
shader disk cache at startup with
18
19
    $ __GL_SHADER_DISK_CACHE=0 ares
20
21
The port provides the HOTKEYS option. This applies an inofficial patch which
12
The port provides the HOTKEYS option. This applies an inofficial patch which
22
locks all hotkey execution in the unpaused state of the emulator. This can be a
13
locks all hotkey execution in the unpaused state of the emulator. This can be a
23
convenience for gamepad-only users who want to assign hotkey actions to gamepad
14
convenience for gamepad-only users who want to assign hotkey actions to gamepad
24
- 

Return to bug 281221