summaryrefslogtreecommitdiffstatshomepage
path: root/3rdparty
Commit message (Collapse)AuthorAgeFilesLines
* Various GNU/Hurd fixes (#13792) Pino Toscano2025-06-093-34/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * bx: Small platform detection/usage improvements * Use BX_PLATFORM_POSIX where needed The semaphone implementation already uses BX_PLATFORM_POSIX to include <pthread.h> on all the POSIX platforms; do the same also in other places for consistency. This is done also for <sched.h>, which is a POSIX API, and sched_yield() from it is already guarded by BX_PLATFORM_POSIX. * Drop support for GNU libc older than 2.12 glibc 2.12 was released on 2010, and at this point any supported Linux distro has that version or way greather than that. From bkaradzic/bx@b59b7debd32260750c2af71f62585d9b438b3b96 * bx: fix <pthread/pthread.h> include on Hurd <pthread/pthread.h> does not exist, the standard <pthread.h> does exist so switch to it. * osd/modules/file: use dirent::d_type on any GNU libc platform This BSD extension is provided by GNU libc, so enable its usage with that C library. * osd/modules/file: use <pty.h> on any GNU libc platform openpty() is implemented by GNU libc for all the OSes, so include <pty.h> when using that C library. * osd/modules/file: cast dirent::d_name to const char* before using it According to POSIX [1], the type of dirent::d_name is loosely defined as "char d_name[]", as array with an undefined size. In particular, few ways are seen in the wild: (a) "char d_name[size]", i.e. as proper array with a full size (b) "char d_name[1]"/"char d_name[0]", i.e. as C flexible arrays Regardless of its type, dirent::d_name is used as if it was a classic const char *, i.e. as pointer to a null-terminated string. util::string_format() uses C++ templates to collect all the arguments, and thus it will use the actual type of dirent::d_name. In case of (a) there is no issue, however for (b) the result is that only the first character is used. To ensure that dirent::d_name is fully used, explicitly cast it to const char * before passing it to util::string_format(), so the whole string is used. [1] https://pubs.opengroup.org/onlinepubs/9699919799/basedefs/dirent.h.html
* 3rdparty: cherry-pick upstream fixes for clangcl Patrick Mackinlay2025-05-132-15/+16
|
* 3rdparty/expat: Updated expat to version 2.7.1. (#13643) holub2025-05-0346-507/+3555
|
* Correct syntax for template instantiation Vas Crabb2025-04-211-1/+1
|
* Try helping the CI Olivier Galibert2025-04-211-0/+2
|
* 3rdparty/bgfx: Updated ImGui to 1.91.9b. Vas Crabb2025-04-2117-9119/+18984
| | | | | | | | | | | | | | This was not straightforward, and we're now ahead of the ImGui version in upstream bgfx. Updated the bgfx-specific memory editor widget rather than just partially removing the code. Had to add an explicit template instantiation to imgui_widgets.cpp to avoid a link error in the bgfx-specific range slider widget. Got the imgconfig.h header a lot closer to the template from upstream ImGui.
* 3rdparty/portmidi: Another undefined macro warning. Vas Crabb2025-04-201-1/+1
|
* 3rdparty/portmidi: Fixed more discarded const and undefined macro errors. Vas Crabb2025-04-201-4/+4
|
* 3rdparty/portmidi: Fix the right uninitialised local variable. Vas Crabb2025-04-201-2/+2
|
* 3rdparty/portmidi: Fixed more macOS errors. Vas Crabb2025-04-202-4/+4
|
* 3rdparty/portmidi: More cases of ignoring const in the macOS code. Vas Crabb2025-04-204-6/+6
|
* 3rdparty/portmidi: Another batch of K&R function declarations that upset clang. Vas Crabb2025-04-205-12/+12
|
* 3rdparty/portmidi: Another place that needs const hit by Linux. Vas Crabb2025-04-202-2/+2
|
* 3rdparty/portmidi: Fixes for Linux and clang builds. Vas Crabb2025-04-201-1/+1
|
* 3rdparty/softfloat3: Proper way to detect presence of __int128 on GCC/clang. Vas Crabb2025-04-201-5/+6
|
* 3rdparty/portmidi: Try to get PortMidi into a state where it will build with ↵ Vas Crabb2025-04-2011-37/+38
| | | | sane compiler settings.
* 3rdparty/portmidi: Updated to PortMidi 2.0.4. Vas Crabb2025-04-20133-17203/+8910
|
* 3rdparty/zlib: Updated to 1.3.1. (#13505) holub2025-03-2671-260/+3919
|
* softfloat: remove unused global LITTLEENDIAN/BIGENDIAN macros, as well as ↵ hap2025-03-152-15/+0
| | | | TRUE/FALSE macros
* 3rdparty/expat: Hopefully fix macOS build properly. Vas Crabb2025-03-121-0/+0
|
* 3rdparty/expat: Added dummy expat_config.h to hopefully fix macOS buid. Vas Crabb2025-03-121-0/+6
|
* 3rdparty/expat: Updated to expat 2.6.4. Vas Crabb2025-03-12155-18813/+31630
|
* 3rdparty/lua: Updated to Lua 5.4.7. Vas Crabb2025-03-1253-1145/+1631
|
* ymfm_opl: no need to check for IsOpl2Plus here hap2025-02-011-1/+1
|
* ymfm_opl: actually emulate opl2 waveform enable bit hap2025-02-011-2/+2
|
* ymfm_opn: OPNA does not have 4 latches hap2025-01-311-3/+1
|
* Revert "ymfm_opn: writes to 0xa7/0xaf also go to latch" hap2025-01-311-1/+4
| | | | This reverts commit 659471456ae6d140ef9f86a15a0494ea0021fe51.
* ymfm_opn: writes to 0xa7/0xaf also go to latch hap2025-01-311-4/+1
|
* ymfm_opn: apparently there is no internal flag when latch was written hap2025-01-301-5/+4
|
* 3rdparty/ymfm: sync to latest (#13263) Angelo Salese2025-01-3014-85/+378
|
* cpu/drcbearm64.cpp: Added a 64-bit ARMv8 (AArch64) DRC back-end. (#13162) 9871238791132025-01-1441-1505/+1967
| | | | | * cpu/uml.cpp: Removed unused vector type. * 3rdparty/asmjit: Update asmjit to latest upstream. * cpu/drcbex64.cpp: Fixed crash with LOG_HASHJMPS enabled (stack needs to be 16-byte aligned before calling debug_log_hashjmp_fail).
* bgfx: fix compile error after ↵ hap2025-01-101-1/+1
| | | | https://github.com/mamedev/mame/commit/ba6f5853e9382a959af8ff81980c0f06a6ffe80e
* Cherry-pick wayland improvements from upstream bgfx (#13070) Julian Sikorski2025-01-0224-274/+317
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Properly support Wayland under EGL and Vulkan. (#3358) * Dynamically load libwayland-egl.so.1 when dealing with Wayland to remove dependencies at program startup. (#3359) * Cleanup. * Support both X11 and Wayland in the same build. (#3360) * Support both X11 and Wayland in the same build. - Works for both Vulkan and OpenGL. - Remove --with-wayland from genie options. - Vulkan loads all three extensions for surface creation instead of only one. - Add width and height parameter to GlContext::createSwapChain(), which is needed for EGL to create a SwapChain with the given window size. - Dirty-fix the example-22-windows to recreate the FrameBuffer by first destroying and then recreating to make sure the window is released of its swapchain. - Fix dbgText glitch in example-22-windows. - Remove old X11-related dependencies for GLFW3. * Formatting. * Adapt to latest bgfx wayland code * Cleanup. * Fix Vulkan swapchain invalidation issue. (#3379) * Fix Vulkan swapchain invalidation issue. * Always clamp render pass to frame buffer size. * Fix formatting. * Hopefully fix macOS build * Hopefully fix macOS build, attempt 2 --------- Co-authored-by: Martijn Courteaux <courteauxmartijn@gmail.com> Co-authored-by: Бранимир Караџић <branimirkaradzic@gmail.com>
* genie: disable command line string escaping, fixes #13150 Patrick Mackinlay2025-01-022-18/+7
|
* genie: restore MPARAM for non-Windows OS builds Patrick Mackinlay2024-12-093-40/+40
|
* fix windows build Patrick Mackinlay2024-11-281-10/+10
| | | | | * use MPARAM for GENie build architecture * avoid escaping issue in 3rdparty/expat
* Updated GENie and changed Visual Studio target to Visual Studio 2022. (#13000) Patrick Mackinlay2024-11-2760-2677/+1726
| | | | | * Updated to GENie 1181. * Applied local fix for GENie resource include directory bug, sent upstream as bkaradzic/GENie#572. * Set MSVC flags to use conformant preprocessor, standards conformance mode, and assume UTF-8 encoding.
* 3rdparty/sol2: Fixed build with clang 19. Vas Crabb2024-11-181-6/+3
| | | | | | sol::optional<T&>::emplace was broken, and depended on the compiler not checking that members exist if the template wasn't instantiated. See ThePHD/sol2#1606 and ThePHD/sol2#1648.
* m68k: add FPU instructions `FETOX`, `FETOXM1`, `FTWOTOX`, `FTENTOX` (#12903) kms12122024-10-242-19/+327
|
* cpu/m68000: FPU now sets the NaN flag for all NaNs, not just signalling. ↵ arbee2024-05-302-0/+6
| | | | Fixes dendego black screen in attract mode. [R. Belmont]
* cpu/m68000: Updated 680x0 FPU to Softfloat 3 from 2. (MT5411 and MT8793). ↵ arbee2024-05-2715-22/+2468
| | | | | | | | | | | | | | | | | | [R. Belmont] - Update to Softloat 3 from 2 - FREM and FMOD now generate the quotient bits in FPSR, required by Apple's SANE to do sin/cos/tan properly. - FMOVE of a float to a Dx integer register generates the exception status bits, fixing square roots in SANE - Rewrote how FMOVEM instructions are decoded and executed, fixing issues including skipping too few or too many opcode bytes and causing serious weird behavior. - FPU instructions all now have more realistic cycle timings for a 68881. - All FPU instructions now generate exception bits in FPSR. 3rdparty/softfloat3: Updates [R. Belmont] - Softfloat3 was always being built for a big-endian host, causing incorrect math on LE x64 and AArch64 machines. - Fixed up Softfloat3 to build properly as part of MAME and up-ported the Bochs extensions. In latest Bochs, they were only partially up-ported and Softfloat3 had been hacked up to be more like 2; here they're fixed to work with stock Softfloat3.
* 3rdparty/sol2: Work around another place where noexcept depends on class ↵ Vas Crabb2024-05-081-1/+7
| | | | template arguments.
* 3rdparty/sol2: Worked around apparent regression in clang 18. Vas Crabb2024-05-081-1/+7
| | | | | | | | | When taking a pointer to a static member function template in a class template, clang reports a substitution error if the noexcept specification uses an expression that depends on class template arguments. See llvm/llvm-project#91362 on GitHub.
* 3rdparty/asio: Patch config.hpp to hopefully work with strict preprocessor ↵ Vas Crabb2024-04-221-4/+4
| | | | warnings.
* 3rdparty/asio: Updated to 1.30.2 Vas Crabb2024-04-221403-58793/+71490
|
* 3rdparty/asmjit: Updated to upstream version 1.13.0. (#12228) Patrick Mackinlay2024-04-11176-22416/+32090
| | | From revision asmjit/asmjit@e5d7c0bd5d9aec44d68830187138149e6a8c4e32
* Fix compile error in 3rdparty/bx with newer Emscripten versions (#12098) Justin Kerk2024-03-131-1/+7
| | | | From bkaradzic/bx@03fd6f47715774e2aebbb429663ac553da2fa397
* Added Zstandard support for zip archives and CHDs. (#11827) Vas Crabb2023-12-11595-2/+163485
| | | | | | * 3rdparty/zstd: Added Zstandard compression library version 1.5.5. * util/unzip.cpp: Added support for Zstandard compression (method 93). * util/chdcodec.cpp: Added support for Zstandard compression. * 3rdparty/flac: Always define NDEBUG to avoid log spam.
* 3rdparty: Renamed libflac to flac - it's a full FLAC distribution, libFLAC ↵ Vas Crabb2023-12-06581-0/+0
| | | | is just a small part of it.
* 3rdparty/libflac: Updated to version 1.4.3. Vas Crabb2023-12-06983-172355/+99720
| | | | Also removed FLAC documentation - it's a lot of bloat.