FreeBSD Bugzilla – Attachment 226448 Details for
Bug 257175
[NEW PORT] emulators/xenia: Xbox 360 Emulator
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
emulators_xenia.shar
emulators_xenia.shar (text/plain), 37.19 KB, created by
Timothy Beyer
on 2021-07-14 07:00:58 UTC
(
hide
)
Description:
emulators_xenia.shar
Filename:
MIME Type:
Creator:
Timothy Beyer
Created:
2021-07-14 07:00:58 UTC
Size:
37.19 KB
patch
obsolete
># This is a shell archive. Save it in a file, remove anything before ># this line, and then unpack it by entering "sh file". Note, it may ># create directories; files and directories will be owned by you and ># have default permissions. ># ># This archive contains: ># ># emulators ># emulators/xenia ># emulators/xenia/files ># emulators/xenia/files/patch-premake5.lua ># emulators/xenia/files/patch-src_xenia_app_premake5.lua ># emulators/xenia/files/patch-src_xenia_app_xenia__main.cc ># emulators/xenia/files/patch-src_xenia_apu_premake5.lua ># emulators/xenia/files/patch-src_xenia_base_atomic.h ># emulators/xenia/files/patch-src_xenia_base_clock__posix.cc ># emulators/xenia/files/patch-src_xenia_base_platform.h ># emulators/xenia/files/patch-src_xenia_base_threading__posix.cc ># emulators/xenia/files/patch-src_xenia_config.cc ># emulators/xenia/files/patch-src_xenia_gpu_d3d12_premake5.lua ># emulators/xenia/files/patch-src_xenia_gpu_vulkan_premake5.lua ># emulators/xenia/files/patch-src_xenia_kernel_xam_xam__net.cc ># emulators/xenia/files/patch-src_xenia_kernel_xboxkrnl_xboxkrnl__strings.cc ># emulators/xenia/files/patch-src_xenia_kernel_xsocket.cc ># emulators/xenia/files/patch-src_xenia_kernel_xsocket.h ># emulators/xenia/files/patch-src_xenia_ui_vulkan_vulkan.h ># emulators/xenia/files/patch-src_xenia_ui_vulkan_vulkan__context.cc ># emulators/xenia/files/patch-third__party_cpptoml_include_cpptoml.h ># emulators/xenia/files/patch-third__party_crypto_sha256.cpp ># emulators/xenia/files/patch-third__party_microprofile_microprofile.h ># emulators/xenia/files/patch-third__party_premake-core_src_tools_gcc.lua ># emulators/xenia/files/patch-third__party_renderdoc_renderdoc__app.h ># emulators/xenia/Makefile ># emulators/xenia/distinfo ># emulators/xenia/pkg-descr ># >echo c - emulators >mkdir -p emulators > /dev/null 2>&1 >echo c - emulators/xenia >mkdir -p emulators/xenia > /dev/null 2>&1 >echo c - emulators/xenia/files >mkdir -p emulators/xenia/files > /dev/null 2>&1 >echo x - emulators/xenia/files/patch-premake5.lua >sed 's/^X//' >emulators/xenia/files/patch-premake5.lua << 'cce769eb5cf705f99d36555d2212335c' >X--- premake5.lua.orig 2021-06-09 19:56:36 UTC >X+++ premake5.lua >X@@ -21,11 +21,14 @@ includedirs({ >X ".", >X "src", >X "third_party", >X+ "third_party/nowide/include", >X }) >X >X defines({ >X "_UNICODE", >X "UNICODE", >X+ "BOOST_NOWIDE_USE_FILEBUF_REPLACEMENT", >X+ "BOOST_NOWIDE_FSTREAM_INCLUDED_HPP", >X }) >X >X cppdialect("C++17") >X@@ -102,7 +105,6 @@ filter("platforms:Linux") >X }) >X pkg_config.all("gtk+-x11-3.0") >X links({ >X- "stdc++fs", >X "dl", >X "lz4", >X "pthread", >cce769eb5cf705f99d36555d2212335c >echo x - emulators/xenia/files/patch-src_xenia_app_premake5.lua >sed 's/^X//' >emulators/xenia/files/patch-src_xenia_app_premake5.lua << '43d28e0007e126f28985d9bba535b1ad' >X--- src/xenia/app/premake5.lua.orig 2021-06-09 19:56:36 UTC >X+++ src/xenia/app/premake5.lua >X@@ -38,8 +38,8 @@ project("xenia-app") >X "discord-rpc", >X "glslang-spirv", >X "imgui", >X- "libavcodec", >X- "libavutil", >X+ "avcodec", >X+ "avutil", >X "mspack", >X "snappy", >X "spirv-tools", >43d28e0007e126f28985d9bba535b1ad >echo x - emulators/xenia/files/patch-src_xenia_app_xenia__main.cc >sed 's/^X//' >emulators/xenia/files/patch-src_xenia_app_xenia__main.cc << 'fee634e296f4c239eb28ad7a8e1d529a' >X--- src/xenia/app/xenia_main.cc.orig 2021-06-09 19:56:36 UTC >X+++ src/xenia/app/xenia_main.cc >X@@ -226,7 +226,7 @@ int xenia_main(const std::vector<std::string>& args) { >X if (!cvars::portable && >X !std::filesystem::exists(storage_root / "portable.txt")) { >X storage_root = xe::filesystem::GetUserFolder(); >X-#if defined(XE_PLATFORM_WIN32) || defined(XE_PLATFORM_GNU_LINUX) >X+#if defined(XE_PLATFORM_WIN32) || defined(XE_PLATFORM_GNU_LINUX) || defined(XE_PLATFORM_FREEBSD) >X storage_root = storage_root / "Xenia"; >X #else >X // TODO(Triang3l): Point to the app's external storage "files" directory >fee634e296f4c239eb28ad7a8e1d529a >echo x - emulators/xenia/files/patch-src_xenia_apu_premake5.lua >sed 's/^X//' >emulators/xenia/files/patch-src_xenia_apu_premake5.lua << 'b4cefc4ac9e51f6b6839c211b3eff726' >X--- src/xenia/apu/premake5.lua.orig 2021-06-09 19:56:36 UTC >X+++ src/xenia/apu/premake5.lua >X@@ -7,8 +7,8 @@ project("xenia-apu") >X kind("StaticLib") >X language("C++") >X links({ >X- "libavcodec", >X- "libavutil", >X+ "avcodec", >X+ "avutil", >X "xenia-base", >X }) >X defines({ >b4cefc4ac9e51f6b6839c211b3eff726 >echo x - emulators/xenia/files/patch-src_xenia_base_atomic.h >sed 's/^X//' >emulators/xenia/files/patch-src_xenia_base_atomic.h << '364bb2a5c8387523551088778eda2df5' >X--- src/xenia/base/atomic.h.orig 2021-06-09 19:56:36 UTC >X+++ src/xenia/base/atomic.h >X@@ -94,7 +94,7 @@ inline bool atomic_cas(int64_t old_value, int64_t new_ >X old_value) == old_value; >X } >X >X-#elif XE_PLATFORM_LINUX >X+#elif XE_PLATFORM_LINUX || XE_PLATFORM_FREEBSD >X >X inline int32_t atomic_inc(volatile int32_t* value) { >X return __sync_add_and_fetch(value, 1); >364bb2a5c8387523551088778eda2df5 >echo x - emulators/xenia/files/patch-src_xenia_base_clock__posix.cc >sed 's/^X//' >emulators/xenia/files/patch-src_xenia_base_clock__posix.cc << '7dea52b98f5b97bf089279229ef11514' >X--- src/xenia/base/clock_posix.cc.orig 2021-06-09 19:56:36 UTC >X+++ src/xenia/base/clock_posix.cc >X@@ -16,14 +16,14 @@ namespace xe { >X >X uint64_t Clock::host_tick_frequency_platform() { >X timespec res; >X- clock_getres(CLOCK_MONOTONIC_RAW, &res); >X+ clock_getres(CLOCK_MONOTONIC, &res); >X >X return uint64_t(res.tv_sec) + uint64_t(res.tv_nsec) * 1000000000ull; >X } >X >X uint64_t Clock::host_tick_count_platform() { >X timespec res; >X- clock_gettime(CLOCK_MONOTONIC_RAW, &res); >X+ clock_gettime(CLOCK_MONOTONIC, &res); >X >X return uint64_t(res.tv_sec) + uint64_t(res.tv_nsec) * 1000000000ull; >X } >X@@ -43,4 +43,4 @@ uint64_t Clock::QueryHostUptimeMillis() { >X return host_tick_count_platform() * 1000 / host_tick_frequency_platform(); >X } >X >X-} // namespace xe >X\ No newline at end of file >X+} // namespace xe >7dea52b98f5b97bf089279229ef11514 >echo x - emulators/xenia/files/patch-src_xenia_base_platform.h >sed 's/^X//' >emulators/xenia/files/patch-src_xenia_base_platform.h << '6ab47d80a225c65810ec27813eff526d' >X--- src/xenia/base/platform.h.orig 2021-06-09 19:56:36 UTC >X+++ src/xenia/base/platform.h >X@@ -37,6 +37,8 @@ >X #elif defined(__gnu_linux__) >X #define XE_PLATFORM_GNU_LINUX 1 >X #define XE_PLATFORM_LINUX 1 >X+#elif defined(__FreeBSD__) >X+#define XE_PLATFORM_FREEBSD 1 >X #else >X #error Unsupported target OS. >X #endif >6ab47d80a225c65810ec27813eff526d >echo x - emulators/xenia/files/patch-src_xenia_base_threading__posix.cc >sed 's/^X//' >emulators/xenia/files/patch-src_xenia_base_threading__posix.cc << 'e4cc8c28cfca84f5d5532d551db60781' >X--- src/xenia/base/threading_posix.cc.orig 2021-06-09 19:56:36 UTC >X+++ src/xenia/base/threading_posix.cc >X@@ -25,6 +25,11 @@ >X #include <ctime> >X #include <memory> >X >X+#if XE_PLATFORM_FREEBSD >X+ #include <pthread_np.h> >X+ #include <sys/cpuset.h> >X+#endif >X+ >X #if XE_PLATFORM_ANDROID >X #include <sched.h> >X >X@@ -93,7 +98,11 @@ void EnableAffinityConfiguration() {} >X // uint64_t ticks() { return mach_absolute_time(); } >X >X uint32_t current_thread_system_id() { >X+#if XE_PLATFORM_FREEBSD >X+ return static_cast<uint32_t>((unsigned int)pthread_getthreadid_np()); >X+#else >X return static_cast<uint32_t>(syscall(SYS_gettid)); >X+#endif >X } >X >X void MaybeYield() { >X@@ -617,10 +626,17 @@ class PosixCondition<Thread> : public PosixConditionBa >X } >X #endif >X >X+#if XE_PLATFORM_FREEBSD >X+ uint32_t system_id() const { return static_cast<uint32_t>((unsigned long)thread_); } >X+#else >X uint32_t system_id() const { return static_cast<uint32_t>(thread_); } >X+#endif >X >X uint64_t affinity_mask() { >X WaitStarted(); >X+#if XE_PLATFORM_FREEBSD >X+ typedef cpuset_t cpu_set_t; >X+#endif >X cpu_set_t cpu_set; >X #if XE_PLATFORM_ANDROID >X if (sched_getaffinity(pthread_gettid_np(thread_), sizeof(cpu_set_t), >X@@ -643,6 +659,9 @@ class PosixCondition<Thread> : public PosixConditionBa >X >X void set_affinity_mask(uint64_t mask) { >X WaitStarted(); >X+ #if XE_PLATFORM_FREEBSD >X+ typedef cpuset_t cpu_set_t; >X+ #endif >X cpu_set_t cpu_set; >X CPU_ZERO(&cpu_set); >X for (auto i = 0u; i < 64; i++) { >X@@ -691,6 +710,8 @@ class PosixCondition<Thread> : public PosixConditionBa >X #if XE_PLATFORM_ANDROID >X sigqueue(pthread_gettid_np(thread_), >X GetSystemSignal(SignalType::kThreadUserCallback), value); >X+#elif XE_PLATFORM_FREEBSD >X+ pthread_kill(thread_, GetSystemSignal(SignalType::kThreadUserCallback)); >X #else >X pthread_sigqueue(thread_, GetSystemSignal(SignalType::kThreadUserCallback), >X value); >e4cc8c28cfca84f5d5532d551db60781 >echo x - emulators/xenia/files/patch-src_xenia_config.cc >sed 's/^X//' >emulators/xenia/files/patch-src_xenia_config.cc << '92d6f3e23961b6293db5f046d4e88a22' >X--- src/xenia/config.cc.orig 2021-06-09 19:56:36 UTC >X+++ src/xenia/config.cc >X@@ -8,6 +8,7 @@ >X */ >X >X #include "config.h" >X+#include <fstream> >X >X #include "third_party/cpptoml/include/cpptoml.h" >X #include "third_party/fmt/include/fmt/format.h" >X@@ -18,14 +19,13 @@ >X #include "xenia/base/string.h" >X #include "xenia/base/string_buffer.h" >X >X-std::shared_ptr<cpptoml::table> ParseFile( >X- const std::filesystem::path& filename) { >X- std::ifstream file(filename); >X- if (!file.is_open()) { >X- throw cpptoml::parse_exception(xe::path_to_utf8(filename) + >X+std::shared_ptr<cpptoml::table> ParseFile(const std::filesystem::path& fn) { >X+ std::ifstream ifn(fn); >X+ if (!ifn.is_open()) { >X+ throw cpptoml::parse_exception(xe::path_to_utf8(fn) + >X " could not be opened for parsing"); >X } >X- cpptoml::parser p(file); >X+ cpptoml::parser p(ifn); >X return p.parse(); >X } >X >92d6f3e23961b6293db5f046d4e88a22 >echo x - emulators/xenia/files/patch-src_xenia_gpu_d3d12_premake5.lua >sed 's/^X//' >emulators/xenia/files/patch-src_xenia_gpu_d3d12_premake5.lua << 'b9417b71680949f29810d1e1bf05fcc1' >X--- src/xenia/gpu/d3d12/premake5.lua.orig 2021-06-09 19:56:36 UTC >X+++ src/xenia/gpu/d3d12/premake5.lua >X@@ -46,8 +46,8 @@ project("xenia-gpu-d3d12-trace-viewer") >X "dxbc", >X "fmt", >X "imgui", >X- "libavcodec", >X- "libavutil", >X+ "avcodec", >X+ "avutil", >X "mspack", >X "snappy", >X "xxhash", >X@@ -93,8 +93,8 @@ project("xenia-gpu-d3d12-trace-dump") >X "dxbc", >X "fmt", >X "imgui", >X- "libavcodec", >X- "libavutil", >X+ "avcodec", >X+ "avutil", >X "mspack", >X "snappy", >X "xxhash", >b9417b71680949f29810d1e1bf05fcc1 >echo x - emulators/xenia/files/patch-src_xenia_gpu_vulkan_premake5.lua >sed 's/^X//' >emulators/xenia/files/patch-src_xenia_gpu_vulkan_premake5.lua << '1d9e2d607fcceb7f92c14e0aced181b0' >X--- src/xenia/gpu/vulkan/premake5.lua.orig 2021-06-09 19:56:36 UTC >X+++ src/xenia/gpu/vulkan/premake5.lua >X@@ -52,8 +52,8 @@ project("xenia-gpu-vulkan-trace-viewer") >X "fmt", >X "glslang-spirv", >X "imgui", >X- "libavcodec", >X- "libavutil", >X+ "avcodec", >X+ "avutil", >X "mspack", >X "snappy", >X "spirv-tools", >X@@ -121,8 +121,8 @@ project("xenia-gpu-vulkan-trace-dump") >X "fmt", >X "glslang-spirv", >X "imgui", >X- "libavcodec", >X- "libavutil", >X+ "avcodec", >X+ "avutil", >X "mspack", >X "snappy", >X "spirv-tools", >1d9e2d607fcceb7f92c14e0aced181b0 >echo x - emulators/xenia/files/patch-src_xenia_kernel_xam_xam__net.cc >sed 's/^X//' >emulators/xenia/files/patch-src_xenia_kernel_xam_xam__net.cc << 'a2100bed30c66127cc1538dc91447d9c' >X--- src/xenia/kernel/xam/xam_net.cc.orig 2021-06-09 19:56:36 UTC >X+++ src/xenia/kernel/xam/xam_net.cc >X@@ -26,7 +26,7 @@ >X // NOTE: must be included last as it expects windows.h to already be included. >X #define _WINSOCK_DEPRECATED_NO_WARNINGS // inet_addr >X #include <winsock2.h> // NOLINT(build/include_order) >X-#elif XE_PLATFORM_LINUX >X+#elif XE_PLATFORM_LINUX || XE_PLATFORM_FREEBSD >X #include <arpa/inet.h> >X #include <netinet/in.h> >X #include <netinet/ip.h> >a2100bed30c66127cc1538dc91447d9c >echo x - emulators/xenia/files/patch-src_xenia_kernel_xboxkrnl_xboxkrnl__strings.cc >sed 's/^X//' >emulators/xenia/files/patch-src_xenia_kernel_xboxkrnl_xboxkrnl__strings.cc << '669ed5cb1ad5e87766ae55a32ef092da' >X--- src/xenia/kernel/xboxkrnl/xboxkrnl_strings.cc.orig 2021-06-09 19:56:36 UTC >X+++ src/xenia/kernel/xboxkrnl/xboxkrnl_strings.cc >X@@ -117,8 +117,8 @@ int32_t format_core(PPCContext* ppc_context, FormatDat >X const bool wide) { >X int32_t count = 0; >X >X- char work8[512]; >X- char16_t work16[4]; >X+ char work[512]; >X+ wchar_t wwork[4]; >X >X struct { >X const void* buffer; >X@@ -339,13 +339,13 @@ int32_t format_core(PPCContext* ppc_context, FormatDat >X auto value = args.get32(); >X >X if (!is_wide) { >X- work8[0] = (uint8_t)value; >X- text.buffer = &work8[0]; >X+ work[0] = (uint8_t)value; >X+ text.buffer = &work[0]; >X text.length = 1; >X text.is_wide = false; >X } else { >X- work16[0] = (uint16_t)value; >X- text.buffer = &work16[0]; >X+ wwork[0] = (uint16_t)value; >X+ text.buffer = &wwork[0]; >X text.length = 1; >X text.is_wide = true; >X text.swap_wide = false; >X@@ -378,7 +378,7 @@ int32_t format_core(PPCContext* ppc_context, FormatDat >X } >X >X if (precision >= 0) { >X- precision = std::min(precision, (int32_t)xe::countof(work8)); >X+ precision = std::min(precision, (int32_t)xe::countof(work)); >X } else { >X precision = 1; >X } >X@@ -396,7 +396,7 @@ int32_t format_core(PPCContext* ppc_context, FormatDat >X prefix.length = 0; >X } >X >X- char* end = &work8[xe::countof(work8) - 1]; >X+ char* end = &work[xe::countof(work) - 1]; >X char* start = end; >X start[0] = '\0'; >X >X@@ -471,9 +471,9 @@ int32_t format_core(PPCContext* ppc_context, FormatDat >X >X auto s = format_double(value, precision, c, flags); >X auto length = (int32_t)s.size(); >X- assert_true(length < xe::countof(work8)); >X+ assert_true(length < xe::countof(work)); >X >X- auto start = &work8[0]; >X+ auto start = &work[0]; >X auto end = &start[length]; >X >X std::memcpy(start, s.c_str(), length); >X@@ -637,7 +637,7 @@ int32_t format_core(PPCContext* ppc_context, FormatDat >X } >X } >X } else { >X- // it's a const char16_t* >X+ // it's a const wchar_t* >X auto b = (const uint16_t*)text.buffer; >X if (text.swap_wide) { >X while (remaining-- > 0) { >X@@ -768,15 +768,15 @@ class WideStringFormatData : public FormatData { >X } >X >X bool put(uint16_t c) { >X- output_ << (char16_t)c; >X+ output_ << (wchar_t)c; >X return true; >X } >X >X- std::u16string wstr() const { return output_.str(); } >X+ std::wstring wstr() const { return output_.str(); } >X >X private: >X const uint16_t* input_; >X- std::basic_stringstream<char16_t> output_; >X+ std::wostringstream output_; >X }; >X >X class WideCountFormatData : public FormatData { >X@@ -830,7 +830,7 @@ SHIM_CALL DbgPrint_shim(PPCContext* ppc_context, Kerne >X return; >X } >X >X- XELOGD("(DbgPrint) {}", data.str()); >X+ XELOGD("(DbgPrint) %s", data.str().c_str()); >X >X SHIM_SET_RETURN_32(X_STATUS_SUCCESS); >X } >X@@ -841,7 +841,7 @@ SHIM_CALL _snprintf_shim(PPCContext* ppc_context, Kern >X int32_t buffer_count = SHIM_GET_ARG_32(1); >X uint32_t format_ptr = SHIM_GET_ARG_32(2); >X >X- XELOGD("_snprintf({:08X}, {}, {:08X}, ...)", buffer_ptr, buffer_count, >X+ XELOGD("_snprintf(%08X, %i, %08X, ...)", buffer_ptr, buffer_count, >X format_ptr); >X >X if (buffer_ptr == 0 || buffer_count <= 0 || format_ptr == 0) { >X@@ -877,7 +877,7 @@ SHIM_CALL sprintf_shim(PPCContext* ppc_context, Kernel >X uint32_t buffer_ptr = SHIM_GET_ARG_32(0); >X uint32_t format_ptr = SHIM_GET_ARG_32(1); >X >X- XELOGD("sprintf({:08X}, {:08X}, ...)", buffer_ptr, format_ptr); >X+ XELOGD("sprintf(%08X, %08X, ...)", buffer_ptr, format_ptr); >X >X if (buffer_ptr == 0 || format_ptr == 0) { >X SHIM_SET_RETURN_32(-1); >X@@ -906,7 +906,7 @@ SHIM_CALL _snwprintf_shim(PPCContext* ppc_context, Ker >X int32_t buffer_count = SHIM_GET_ARG_32(1); >X uint32_t format_ptr = SHIM_GET_ARG_32(2); >X >X- XELOGD("_snwprintf({:08X}, {}, {:08X}, ...)", buffer_ptr, buffer_count, >X+ XELOGD("_snwprintf(%08X, %i, %08X, ...)", buffer_ptr, buffer_count, >X format_ptr); >X >X if (buffer_ptr == 0 || buffer_count <= 0 || format_ptr == 0) { >X@@ -942,7 +942,7 @@ SHIM_CALL swprintf_shim(PPCContext* ppc_context, Kerne >X uint32_t buffer_ptr = SHIM_GET_ARG_32(0); >X uint32_t format_ptr = SHIM_GET_ARG_32(1); >X >X- XELOGD("swprintf({:08X}, {:08X}, ...)", buffer_ptr, format_ptr); >X+ XELOGD("swprintf(%08X, %08X, ...)", buffer_ptr, format_ptr); >X >X if (buffer_ptr == 0 || format_ptr == 0) { >X SHIM_SET_RETURN_32(-1); >X@@ -972,7 +972,7 @@ SHIM_CALL _vsnprintf_shim(PPCContext* ppc_context, Ker >X uint32_t format_ptr = SHIM_GET_ARG_32(2); >X uint32_t arg_ptr = SHIM_GET_ARG_32(3); >X >X- XELOGD("_vsnprintf({:08X}, {}, {:08X}, {:08X})", buffer_ptr, buffer_count, >X+ XELOGD("_vsnprintf(%08X, %i, %08X, %08X)", buffer_ptr, buffer_count, >X format_ptr, arg_ptr); >X >X if (buffer_ptr == 0 || buffer_count <= 0 || format_ptr == 0) { >X@@ -1012,7 +1012,7 @@ SHIM_CALL _vsnwprintf_shim(PPCContext* ppc_context, Ke >X uint32_t format_ptr = SHIM_GET_ARG_32(2); >X uint32_t arg_ptr = SHIM_GET_ARG_32(3); >X >X- XELOGD("_vsnwprintf({:08X}, {}, {:08X}, {:08X})", buffer_ptr, buffer_count, >X+ XELOGD("_vsnwprintf(%08X, %i, %08X, %08X)", buffer_ptr, buffer_count, >X format_ptr, arg_ptr); >X >X if (buffer_ptr == 0 || buffer_count <= 0 || format_ptr == 0) { >X@@ -1051,7 +1051,7 @@ SHIM_CALL vsprintf_shim(PPCContext* ppc_context, Kerne >X uint32_t format_ptr = SHIM_GET_ARG_32(1); >X uint32_t arg_ptr = SHIM_GET_ARG_32(2); >X >X- XELOGD("vsprintf({:08X}, {:08X}, {:08X})", buffer_ptr, format_ptr, arg_ptr); >X+ XELOGD("vsprintf(%08X, %08X, %08X)", buffer_ptr, format_ptr, arg_ptr); >X >X if (buffer_ptr == 0 || format_ptr == 0) { >X SHIM_SET_RETURN_32(-1); >X@@ -1079,7 +1079,7 @@ SHIM_CALL _vscwprintf_shim(PPCContext* ppc_context, Ke >X uint32_t format_ptr = SHIM_GET_ARG_32(0); >X uint32_t arg_ptr = SHIM_GET_ARG_32(1); >X >X- XELOGD("_vscwprintf({:08X}, {:08X})", format_ptr, arg_ptr); >X+ XELOGD("_vscwprintf(%08X, %08X)", format_ptr, arg_ptr); >X >X if (format_ptr == 0) { >X SHIM_SET_RETURN_32(-1); >X@@ -1102,7 +1102,7 @@ SHIM_CALL vswprintf_shim(PPCContext* ppc_context, Kern >X uint32_t format_ptr = SHIM_GET_ARG_32(1); >X uint32_t arg_ptr = SHIM_GET_ARG_32(2); >X >X- XELOGD("vswprintf({:08X}, {:08X}, {:08X})", buffer_ptr, format_ptr, arg_ptr); >X+ XELOGD("vswprintf(%08X, %08X, %08X)", buffer_ptr, format_ptr, arg_ptr); >X >X if (buffer_ptr == 0 || format_ptr == 0) { >X SHIM_SET_RETURN_32(-1); >669ed5cb1ad5e87766ae55a32ef092da >echo x - emulators/xenia/files/patch-src_xenia_kernel_xsocket.cc >sed 's/^X//' >emulators/xenia/files/patch-src_xenia_kernel_xsocket.cc << '425bd0951fd41a398e22ff1372af31d8' >X--- src/xenia/kernel/xsocket.cc.orig 2021-06-09 19:56:36 UTC >X+++ src/xenia/kernel/xsocket.cc >X@@ -44,9 +44,9 @@ X_STATUS XSocket::Initialize(AddressFamily af, Type ty >X type_ = type; >X proto_ = proto; >X >X- if (proto == Protocol::IPPROTO_VDP) { >X+ if (proto == Protocol::IPPROTO_VDP_CXX) { >X // VDP is a layer on top of UDP. >X- proto = Protocol::IPPROTO_UDP; >X+ proto = Protocol::IPPROTO_UDP_CXX; >X } >X >X native_handle_ = socket(af, type, proto); >X@@ -60,7 +60,7 @@ X_STATUS XSocket::Initialize(AddressFamily af, Type ty >X X_STATUS XSocket::Close() { >X #if XE_PLATFORM_WIN32 >X int ret = closesocket(native_handle_); >X-#elif XE_PLATFORM_LINUX >X+#elif XE_PLATFORM_LINUX || XE_PLATFORM_FREEBSD >X int ret = close(native_handle_); >X #endif >X >X@@ -103,7 +103,7 @@ X_STATUS XSocket::IOControl(uint32_t cmd, uint8_t* arg >X } >X >X return X_STATUS_SUCCESS; >X-#elif XE_PLATFORM_LINUX >X+#elif XE_PLATFORM_LINUX || XE_PLATFORM_FREEBSD >X return X_STATUS_UNSUCCESSFUL; >X #endif >X } >X@@ -256,4 +256,4 @@ bool XSocket::QueuePacket(uint32_t src_ip, uint16_t sr >X } >X >X } // namespace kernel >X-} // namespace xe >X\ No newline at end of file >X+} // namespace xe >425bd0951fd41a398e22ff1372af31d8 >echo x - emulators/xenia/files/patch-src_xenia_kernel_xsocket.h >sed 's/^X//' >emulators/xenia/files/patch-src_xenia_kernel_xsocket.h << '48a19dc6b867533ff7f102f923d1672d' >X--- src/xenia/kernel/xsocket.h.orig 2021-06-09 19:56:36 UTC >X+++ src/xenia/kernel/xsocket.h >X@@ -78,13 +78,13 @@ class XSocket : public XObject { >X }; >X >X enum Protocol { >X- IPPROTO_TCP = 6, >X- IPPROTO_UDP = 17, >X+ IPPROTO_TCP_CXX = 6, >X+ IPPROTO_UDP_CXX = 17, >X >X // LIVE Voice and Data Protocol >X // https://blog.csdn.net/baozi3026/article/details/4277227 >X // Format: [cbGameData][GameData(encrypted)][VoiceData(unencrypted)] >X- IPPROTO_VDP = 254, >X+ IPPROTO_VDP_CXX = 254, >X }; >X >X XSocket(KernelState* kernel_state); >X@@ -149,4 +149,4 @@ class XSocket : public XObject { >X } // namespace kernel >X } // namespace xe >X >X-#endif // XENIA_KERNEL_XSOCKET_H_ >X\ No newline at end of file >X+#endif // XENIA_KERNEL_XSOCKET_H_ >48a19dc6b867533ff7f102f923d1672d >echo x - emulators/xenia/files/patch-src_xenia_ui_vulkan_vulkan.h >sed 's/^X//' >emulators/xenia/files/patch-src_xenia_ui_vulkan_vulkan.h << '389518a6fdc07491be089404473625a8' >X--- src/xenia/ui/vulkan/vulkan.h.orig 2021-06-09 19:56:36 UTC >X+++ src/xenia/ui/vulkan/vulkan.h >X@@ -14,6 +14,8 @@ >X >X #if XE_PLATFORM_WIN32 >X #define VK_USE_PLATFORM_WIN32_KHR 1 >X+#elif XE_PLATFORM_FREEBSD >X+#define VK_USE_PLATFORM_XCB_KHR 1 >X #elif XE_PLATFORM_LINUX >X #define VK_USE_PLATFORM_XCB_KHR 1 >X #else >389518a6fdc07491be089404473625a8 >echo x - emulators/xenia/files/patch-src_xenia_ui_vulkan_vulkan__context.cc >sed 's/^X//' >emulators/xenia/files/patch-src_xenia_ui_vulkan_vulkan__context.cc << 'da6b5c2af3761906232ce603f70ebf63' >X--- src/xenia/ui/vulkan/vulkan_context.cc.orig 2021-06-09 19:56:36 UTC >X+++ src/xenia/ui/vulkan/vulkan_context.cc >X@@ -25,7 +25,7 @@ >X #include "xenia/ui/vulkan/vulkan_util.h" >X #include "xenia/ui/window.h" >X >X-#if XE_PLATFORM_LINUX >X+#if XE_PLATFORM_LINUX || XE_PLATFORM_FREEBSD >X #include "xenia/ui/window_gtk.h" >X >X #include <X11/Xlib-xcb.h> >X@@ -69,7 +69,7 @@ bool VulkanContext::Initialize() { >X status = vkCreateWin32SurfaceKHR(*provider->instance(), &create_info, >X nullptr, &surface); >X CheckResult(status, "vkCreateWin32SurfaceKHR"); >X-#elif XE_PLATFORM_LINUX >X+#elif XE_PLATFORM_LINUX || XE_PLATFORM_FREEBSD >X #ifdef GDK_WINDOWING_X11 >X GtkWidget* window_handle = >X static_cast<GtkWidget*>(target_window_->native_handle()); >da6b5c2af3761906232ce603f70ebf63 >echo x - emulators/xenia/files/patch-third__party_cpptoml_include_cpptoml.h >sed 's/^X//' >emulators/xenia/files/patch-third__party_cpptoml_include_cpptoml.h << '38e4e1bd0897584579a7b569df9d27b2' >X--- third_party/cpptoml/include/cpptoml.h.orig 2018-10-22 20:28:28 UTC >X+++ third_party/cpptoml/include/cpptoml.h >X@@ -12,7 +12,7 @@ >X #include <clocale> >X #include <cstdint> >X #include <cstring> >X-#include <fstream> >X+#include <boost/nowide/fstream.hpp> >X #include <iomanip> >X #include <map> >X #include <memory> >X@@ -188,8 +188,7 @@ inline std::ostream& operator<<(std::ostream& os, cons >X fill_guard g{os}; >X os.fill('0'); >X >X- using std::setw; >X- os << setw(4) << dt.year << "-" << setw(2) << dt.month << "-" << setw(2) >X+ os << std::setw(4) << dt.year << "-" << std::setw(2) << dt.month << "-" << std::setw(2) >X << dt.day; >X >X return os; >X@@ -200,9 +199,8 @@ inline std::ostream& operator<<(std::ostream& os, cons >X fill_guard g{os}; >X os.fill('0'); >X >X- using std::setw; >X- os << setw(2) << ltime.hour << ":" << setw(2) << ltime.minute << ":" >X- << setw(2) << ltime.second; >X+ os << std::setw(2) << ltime.hour << ":" << std::setw(2) << ltime.minute << ":" >X+ << std::setw(2) << ltime.second; >X >X if (ltime.microsecond > 0) >X { >X@@ -224,8 +222,6 @@ inline std::ostream& operator<<(std::ostream& os, cons >X fill_guard g{os}; >X os.fill('0'); >X >X- using std::setw; >X- >X if (zo.hour_offset != 0 || zo.minute_offset != 0) >X { >X if (zo.hour_offset > 0) >X@@ -236,7 +232,7 @@ inline std::ostream& operator<<(std::ostream& os, cons >X { >X os << "-"; >X } >X- os << setw(2) << std::abs(zo.hour_offset) << ":" << setw(2) >X+ os << std::setw(2) << std::abs(zo.hour_offset) << ":" << std::setw(2) >X << std::abs(zo.minute_offset); >X } >X else >38e4e1bd0897584579a7b569df9d27b2 >echo x - emulators/xenia/files/patch-third__party_crypto_sha256.cpp >sed 's/^X//' >emulators/xenia/files/patch-third__party_crypto_sha256.cpp << 'd34d64049242b49477020e3fc14f2785' >X--- third_party/crypto/sha256.cpp.orig 2021-06-09 19:56:36 UTC >X+++ third_party/crypto/sha256.cpp >X@@ -9,7 +9,7 @@ >X >X // big endian architectures need #define __BYTE_ORDER __BIG_ENDIAN >X #ifndef _MSC_VER >X-#include <endian.h> >X+#include <sys/endian.h> >X #endif >X >X namespace sha256 { >X@@ -573,4 +573,4 @@ std::string SHA256::operator()(const std::string& text >X return getHash(); >X } >X >X-} >X\ No newline at end of file >X+} >d34d64049242b49477020e3fc14f2785 >echo x - emulators/xenia/files/patch-third__party_microprofile_microprofile.h >sed 's/^X//' >emulators/xenia/files/patch-third__party_microprofile_microprofile.h << 'e7235f752bb807b9b533fd491033ee91' >X--- third_party/microprofile/microprofile.h.orig 2021-06-09 19:56:36 UTC >X+++ third_party/microprofile/microprofile.h >X@@ -242,7 +242,7 @@ typedef uint32_t MicroProfileThreadIdType; >X #define MP_GETCURRENTPROCESSID() GetCurrentProcessId() >X typedef uint32_t MicroProfileProcessIdType; >X >X-#elif defined(__linux__) >X+#elif defined(__linux__) || defined(__FreeBSD__) >X #include <unistd.h> >X #include <time.h> >X inline int64_t MicroProfileTicksPerSecondCpu() >e7235f752bb807b9b533fd491033ee91 >echo x - emulators/xenia/files/patch-third__party_premake-core_src_tools_gcc.lua >sed 's/^X//' >emulators/xenia/files/patch-third__party_premake-core_src_tools_gcc.lua << '4071ce1a836981689f405de4a949e7fe' >X--- third_party/premake-core/src/tools/gcc.lua.orig 2020-11-27 20:23:57 UTC >X+++ third_party/premake-core/src/tools/gcc.lua >X@@ -516,9 +516,17 @@ >X table.insert(static_syslibs, "-l" .. name) >X elseif endswith(name, ":shared") then >X name = string.sub(name, 0, -8) >X- table.insert(shared_syslibs, "-l" .. name) >X+ if string.len(name) > 0 then >X+ table.insert(shared_syslibs, "-l" .. name) >X+ else >X+ table.insert(shared_syslibs, "" .. name) >X+ end >X else >X- table.insert(shared_syslibs, "-l" .. name) >X+ if string.len(name) > 0 then >X+ table.insert(shared_syslibs, "-l" .. name) >X+ else >X+ table.insert(shared_syslibs, "" .. name) >X+ end >X end >X end >X end >4071ce1a836981689f405de4a949e7fe >echo x - emulators/xenia/files/patch-third__party_renderdoc_renderdoc__app.h >sed 's/^X//' >emulators/xenia/files/patch-third__party_renderdoc_renderdoc__app.h << '2b9f7256ef0da0d35bd379ff306887fd' >X--- third_party/renderdoc/renderdoc_app.h.orig 2021-06-09 19:56:36 UTC >X+++ third_party/renderdoc/renderdoc_app.h >X@@ -30,7 +30,7 @@ >X >X #if defined(WIN32) >X #define RENDERDOC_CC __cdecl >X-#elif defined(__linux__) >X+#elif defined(__linux__) || defined(__FreeBSD__) >X #define RENDERDOC_CC >X #else >X #error "Unknown platform" >2b9f7256ef0da0d35bd379ff306887fd >echo x - emulators/xenia/Makefile >sed 's/^X//' >emulators/xenia/Makefile << 'e90f2892a3d9c7c124697a8f1f639fd8' >X# $FreeBSD$ >X >XPORTNAME= xenia >XPORTVERSION= 0.20210609 >XCATEGORIES= emulators games >X >XMAINTAINER= beyert@cs.ucr.edu >XCOMMENT= Xbox 360 Emulator >X >XLICENSE= BSD3CLAUSE >XLICENSE_FILE= ${WRKSRC}/LICENSE >X >XONLY_FOR_ARCHS= amd64 >X >XBUILD_DEPENDS= vulkan-loader>0:graphics/vulkan-loader \ >X ${LOCALBASE}/include/vulkan/vulkan.hpp:graphics/vulkan-headers >XLIB_DEPENDS= libvulkan.so:graphics/vulkan-loader \ >X liblz4.so:archivers/liblz4 \ >X libavcodec.so:multimedia/ffmpeg \ >X libavutil.so:multimedia/ffmpeg >X >XUSES= compiler:c++17-lang lua:build gmake python:build shebangfix \ >X gl xorg sdl gnome gettext-runtime >X >XSHEBANG_FILES= ${WRKSRC}/xenia-build >X >XUSE_LDCONFIG= yes >X >XUSE_XORG= x11 xcb >XUSE_GL= gl glew glu >XUSE_SDL= sdl2 >XUSE_GNOME= gtk30 pango atk cairo gdkpixbuf2 glib20 >X >XUSE_GITHUB= yes >XGH_TUPLE= xenia-project:xenia:14bac72 \ >X xenia-project:premake-core:7eba282:premake_core/third_party/premake-core \ >X xenia-project:premake-export-compile-commands:59e3e55:premake_export_compile_commands/third_party/premake-export-compile-commands \ >X Enhex:premake-cmake:c4fec3e:premake_cmake/third_party/premake-cmake \ >X Tencent:rapidjson:d87b698:rapidjson/third_party/rapidjson \ >X xenia-project:snappy:303cd2c:snappy/third_party/snappy \ >X KhronosGroup:SPIRV-Headers:2bf91d3:spirv_headers/third_party/spirv-headers \ >X xenia-project:SPIRV-Tools:27a2bbb:spirv_tools/third_party/spirv-tools \ >X xenia-project:utfcpp:f295c4b:utfcpp/third_party/utfcpp \ >X zeux:volk:30a851b:volk/third_party/volk \ >X xenia-project:xbyak:bc70e7e:xbyak/third_party/xbyak \ >X Cyan4973:xxHash:4c881f7:xxhash/third_party/xxhash \ >X Triang3l:premake-androidmk:01a84c7:premake_androidmk/third_party/premake-androidmk \ >X xenia-project:FFmpeg:09eac85:ffmpeg/third_party/FFmpeg \ >X openluopworld:aes_128:b5b7f55:aes_128/third_party/aes_128 \ >X xenia-project:capstone:f9c6a90:capstone/third_party/capstone \ >X discord:discord-rpc:eff23a7:discord_rpc/third_party/discord-rpc \ >X fmtlib:fmt:27e3c0f:fmt/third_party/fmt \ >X ocornut:imgui:ca30ef4:imgui/third_party/imgui \ >X jarro2783:cxxopts:48e265d:cxxopts/third_party/cxxopts \ >X HowardHinnant:date:97246a6:date/third_party/date \ >X libsdl-org:SDL:d28437d:sdl2/third_party/SDL2 \ >X microsoft:DirectXShaderCompiler:6b6f402:direct_x_shader_compiler/third_party/DirectXShaderCompiler \ >X benvanik:binutils-ppc-cygwin:6f3f15d:binutils_ppc_cygwin/third_party/binutils-ppc-cygwin \ >X catchorg:Catch2:5c88067:catch/third_party/catch \ >X skystrife:cpptoml:fededad:cpptoml/third_party/cpptoml \ >X xenia-project:disruptorplus:cb83e4b:disruptorplus/third_party/disruptorplus \ >X boostorg:nowide:4412f9f:nowide/third_party/nowide >X >XCFLAGS+= -I${LOCALBASE}/include -ferror-limit=0 >XCXXFLAGS+= -I${LOCALBASE}/include -ferror-limit=0 >X >X.include <bsd.port.pre.mk> >X >XCFLAGS+= -I${WRKSRC}/third_party/FFmpeg \ >X -I${WRKSRC}/third_party/FFmpeg/libavutil \ >X -I${WRKSRC}/third_party/fmt/include \ >X -I${WRKSRC}/third_party/nowide/include >XCXXFLAGS+= -I${WRKSRC}/third_party/FFmpeg \ >X -I${WRKSRC}/third_party/FFmpeg/libavutil \ >X -I${WRKSRC}/third_party/fmt/include \ >X -I${WRKSRC}/third_party/nowide/include >X >XLDFLAGS+= -L${LOCALBASE}/lib >X#MAKE_ARGS+= verbose=true >X >XCONFIGURE_ARGS= --enable-static \ >X --disable-shared \ >X --enable-pic \ >X --disable-gpl \ >X --enable-avresample \ >X --cc="${CC}" \ >X --cxx="${CXX}" >X >Xpre-patch: >X ${CP} -pR ${WRKSRC}/third_party/aes_128/aes.h \ >X ${WRKSRC}/third_party/aes_128/unroll/ >X >Xpost-patch: >X ${REINPLACE_CMD} 's|fseeko64|fseeko|g' \ >X ${WRKSRC}/src/xenia/base/filesystem_posix.cc >X ${REINPLACE_CMD} 's|ftello64|ftello|g' \ >X ${WRKSRC}/src/xenia/base/filesystem_posix.cc >X ${REINPLACE_CMD} 's|ftruncate64|ftruncate|g' \ >X ${WRKSRC}/src/xenia/base/filesystem_posix.cc \ >X ${WRKSRC}/src/xenia/base/memory_posix.cc >X ${REINPLACE_CMD} 's|mmap64|mmap|g' \ >X ${WRKSRC}/src/xenia/base/memory_posix.cc >X >Xpre-build: >X ${REINPLACE_CMD} "s|'make'|'gmake'|g" ${WRKSRC}/tools/build/premake \ >X ${WRKSRC}/xenia-build >X cd ${WRKSRC} && ./xenia-build setup >X## necessary, but insufficient alone to build libavutil / libavcodec >X.if !exists(${WRKSRC}/third_party/FFmpeg/Makefile) >X test -f ${WRKSRC}/third_party/FFmpeg/config.asm && \ >X echo "no configure needed" || \ >X (cd ${WRKSRC}/third_party/FFmpeg && ./configure ${CONFIGURE_ARGS}) >X.endif >X >XPLIST_FILES= bin/xenia >X >Xdo-build: >X# cd ${WRKSRC} && ./xenia-build build >X cd ${WRKSRC}/build && ${GMAKE} ${MAKE_ARGS} >X >Xdo-install: >X ${INSTALL} ${WRKSRC}/build/bin/Linux/Checked/xenia \ >X ${STAGEDIR}/${PREFIX}/bin/xenia >X >X.include <bsd.port.post.mk> >e90f2892a3d9c7c124697a8f1f639fd8 >echo x - emulators/xenia/distinfo >sed 's/^X//' >emulators/xenia/distinfo << '324c9b62b6ef230f2d338d76b32b014d' >XTIMESTAMP = 1625521923 >XSHA256 (xenia-project-xenia-0.20210609-14bac72_GH0.tar.gz) = 8a8e584255f052020716a6d62ff21d7489c0c0bac25598a271f8dbf02dd9de0c >XSIZE (xenia-project-xenia-0.20210609-14bac72_GH0.tar.gz) = 6639921 >XSHA256 (xenia-project-premake-core-7eba282_GH0.tar.gz) = 073aec18425cbe82da8b6bdcb4c0f1781549a25503c8c982aba2e48164d0a183 >XSIZE (xenia-project-premake-core-7eba282_GH0.tar.gz) = 3959564 >XSHA256 (xenia-project-premake-export-compile-commands-59e3e55_GH0.tar.gz) = e43ff41bb0c6ec71ec71e82272cd798e21edff8f040cf39ad089626e4625c8b8 >XSIZE (xenia-project-premake-export-compile-commands-59e3e55_GH0.tar.gz) = 2196 >XSHA256 (Enhex-premake-cmake-c4fec3e_GH0.tar.gz) = d9912b969712960e5b3fce0d1c8a12fcc28a31c2059ecc9e60fa60e8f53ca24f >XSIZE (Enhex-premake-cmake-c4fec3e_GH0.tar.gz) = 8625 >XSHA256 (Tencent-rapidjson-d87b698_GH0.tar.gz) = e1cb07a044dd6e5fef79ace426569c0b767cb3538d93526fdd0ab54a86fbadd6 >XSIZE (Tencent-rapidjson-d87b698_GH0.tar.gz) = 1056587 >XSHA256 (xenia-project-snappy-303cd2c_GH0.tar.gz) = 6d75d3d453466c3b58dd21a70221971d9fbd79bb3c03aa1418cbcd0fad6b3c47 >XSIZE (xenia-project-snappy-303cd2c_GH0.tar.gz) = 1122975 >XSHA256 (KhronosGroup-SPIRV-Headers-2bf91d3_GH0.tar.gz) = 357baf06d7f3512971e4d5cdc1f956c97a71d35c34ebe58048cb7e06afcac6f5 >XSIZE (KhronosGroup-SPIRV-Headers-2bf91d3_GH0.tar.gz) = 269777 >XSHA256 (xenia-project-SPIRV-Tools-27a2bbb_GH0.tar.gz) = ef4571f8fac22512fdca3fc2c6024b0046a0379321a6aeef09260c7815b6e8d9 >XSIZE (xenia-project-SPIRV-Tools-27a2bbb_GH0.tar.gz) = 1126885 >XSHA256 (xenia-project-utfcpp-f295c4b_GH0.tar.gz) = fbd18f3800b2c5142af34b987ea43b7e06efab5866a1e9a065871ff4773eaa98 >XSIZE (xenia-project-utfcpp-f295c4b_GH0.tar.gz) = 26521 >XSHA256 (zeux-volk-30a851b_GH0.tar.gz) = e0291ed4a2918a020e42cee1c89eeab82358120565af0d6d5c3f6b6af1671ddf >XSIZE (zeux-volk-30a851b_GH0.tar.gz) = 18867 >XSHA256 (xenia-project-xbyak-bc70e7e_GH0.tar.gz) = 0b62cb42d776138831190bc4cc58726fa8372a9ae6abf5f30e9862894df78a3d >XSIZE (xenia-project-xbyak-bc70e7e_GH0.tar.gz) = 214886 >XSHA256 (Cyan4973-xxHash-4c881f7_GH0.tar.gz) = 5e62180e6b0b0fea36b0c71cb056e2ef325d9719cb783f3ce597d57e5dfaf76c >XSIZE (Cyan4973-xxHash-4c881f7_GH0.tar.gz) = 156911 >XSHA256 (Triang3l-premake-androidmk-01a84c7_GH0.tar.gz) = 848ef95d8d2c0c8a140425a5ad3a62d58878e3424c4bbcb17bfade18626fd3bb >XSIZE (Triang3l-premake-androidmk-01a84c7_GH0.tar.gz) = 6357 >XSHA256 (xenia-project-FFmpeg-09eac85_GH0.tar.gz) = 778d8228335487c47394148770cd22e35c7a114327de1cb986f94b4dc40b2b9c >XSIZE (xenia-project-FFmpeg-09eac85_GH0.tar.gz) = 13746426 >XSHA256 (openluopworld-aes_128-b5b7f55_GH0.tar.gz) = f28a2abe08a15fedc3456ab5f6bdf9ca12ebe16ce403ace545caeda097cc5c61 >XSIZE (openluopworld-aes_128-b5b7f55_GH0.tar.gz) = 23615 >XSHA256 (xenia-project-capstone-f9c6a90_GH0.tar.gz) = e5ede1d0df36f723082bff8ab8269ed1b95535583e89323ff3b957861a52e843 >XSIZE (xenia-project-capstone-f9c6a90_GH0.tar.gz) = 3434224 >XSHA256 (discord-discord-rpc-eff23a7_GH0.tar.gz) = 0ac2f073cddb51c77959ba8b5e81efb6bfae750d5fae35322107faeb24ada937 >XSIZE (discord-discord-rpc-eff23a7_GH0.tar.gz) = 2107798 >XSHA256 (fmtlib-fmt-27e3c0f_GH0.tar.gz) = 98dce71ba3a092ba0ac18735f48e1769ab66d30c457b18518fd5d25631f04835 >XSIZE (fmtlib-fmt-27e3c0f_GH0.tar.gz) = 733462 >XSHA256 (ocornut-imgui-ca30ef4_GH0.tar.gz) = e13c13a90c22883a08d0be96346926efe9c3bbc90993747780e77a5e775f2c74 >XSIZE (ocornut-imgui-ca30ef4_GH0.tar.gz) = 1222397 >XSHA256 (jarro2783-cxxopts-48e265d_GH0.tar.gz) = 17b5c6fba32f17a7ae425b915d4097ab19b097d84711f2b53724a67a88d1bd62 >XSIZE (jarro2783-cxxopts-48e265d_GH0.tar.gz) = 88416 >XSHA256 (HowardHinnant-date-97246a6_GH0.tar.gz) = 0567ce5cc82084ca790ce315ee0b4f57f5be3c009c1682e78d14c794e5d7fc28 >XSIZE (HowardHinnant-date-97246a6_GH0.tar.gz) = 824404 >XSHA256 (libsdl-org-SDL-d28437d_GH0.tar.gz) = 878b79cb48ec0f959e9fe5f1998ad65693883cfdf1e0b60681d9b4ba264ec9fb >XSIZE (libsdl-org-SDL-d28437d_GH0.tar.gz) = 6503674 >XSHA256 (microsoft-DirectXShaderCompiler-6b6f402_GH0.tar.gz) = 95ed2f42a71ae41245bb204979fbb6a3c9421fe3aa3d557ac8188119aeff5548 >XSIZE (microsoft-DirectXShaderCompiler-6b6f402_GH0.tar.gz) = 22760753 >XSHA256 (benvanik-binutils-ppc-cygwin-6f3f15d_GH0.tar.gz) = 995522e41ad3a65426148ff73bda0fe4c1fed70f9985866c47277b645e84e5c4 >XSIZE (benvanik-binutils-ppc-cygwin-6f3f15d_GH0.tar.gz) = 37917842 >XSHA256 (catchorg-Catch2-5c88067_GH0.tar.gz) = 1d24f7db65ddbe5a7a9ff2b7d5131fb02d87c962e0229308231f7b774b25a967 >XSIZE (catchorg-Catch2-5c88067_GH0.tar.gz) = 659840 >XSHA256 (skystrife-cpptoml-fededad_GH0.tar.gz) = dd2d129b67f537ae7d6f8d8d084c8c0d772d0f5b4b3118c1892e67ff536e335e >XSIZE (skystrife-cpptoml-fededad_GH0.tar.gz) = 47398 >XSHA256 (xenia-project-disruptorplus-cb83e4b_GH0.tar.gz) = f2985a69cf721ff189de2c3fabc7f295e5d6363391bfb990469ea752fc05cd69 >XSIZE (xenia-project-disruptorplus-cb83e4b_GH0.tar.gz) = 25470 >XSHA256 (boostorg-nowide-4412f9f_GH0.tar.gz) = 676e1817c2ea096edc5d13bbe6967113124ace3ff898e1809f0cfdc145a554de >XSIZE (boostorg-nowide-4412f9f_GH0.tar.gz) = 94878 >324c9b62b6ef230f2d338d76b32b014d >echo x - emulators/xenia/pkg-descr >sed 's/^X//' >emulators/xenia/pkg-descr << '30ec21e92c75188aaa45372d79022d50' >XXenia - Xbox 360 Emulator >X >XXenia is an experimental emulator for the Xbox 360. >X >XWWW: https://github.com/xenia-project/xenia >30ec21e92c75188aaa45372d79022d50 >exit >
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Raw
Actions:
View
Attachments on
bug 257175
:
226448
|
233994