All three build badges pointed at the status of the whole build.yml
workflow, so a failure in one platform's job turned every badge red.
Point each badge at its own job through the check-runs badge with a
name filter, so each one reports only its platform.
* window: auto-hide the cursor over the game window
Hide the cursor when the game window is created and whenever the mouse
has been idle for two seconds; any mouse motion, button or wheel event
shows it again. Games that draw their own cursor (e.g. Blue Prince) no
longer show the host pointer on top of it.
Only real mouse input counts as activity: synthetic touch/pen mouse
events and zero-delta motion (sent by some platforms on focus or cursor
visibility changes) are ignored. The event loop only waits with a
timeout while the cursor is visible, so it still blocks indefinitely
once the cursor is hidden. The cursor is restored on shutdown.
Uses SDL_HideCursor/SDL_ShowCursor, which SDL implements for X11,
Wayland, Cocoa and Win32 and which only affect the cursor over the
emulator window.
Closes#282
* window: make cursor auto-hide optional in CLI and launcher
Co-authored-by: Anatolii Kucheruk <anatolii.kucheruk01@gmail.com>
---------
Co-authored-by: nmzik <Nmzik@mail.ru>
Co-authored-by: Anatolii Kucheruk <anatolii.kucheruk01@gmail.com>
* pad: send DualSense speaker and haptic audio over Bluetooth
* ci: fix Opus clang-cl build and macOS memory tracker test
* docs: remove Bluetooth notes from project README
* pad: keep Bluetooth audio work off emulation timing path
* pad: smooth DualSense speaker audio on USB and Bluetooth
* tests: find available macOS guest range for page manager
* pad: keep haptic waveform when Bluetooth queue overflows
* audio: reject zero output sample frequency
* Simplify DualSense audio routing and fix Bluetooth batching
* controller: add global DualSense volume and vibration controls
* Simplify global controller settings
---------
Co-authored-by: Codex <codex@openai.com>
Co-authored-by: nmzik <Nmzik@mail.ru>
CMake 4 warns "Compatibility with CMake < 3.10 will be removed" for every
fetched project that declares an older minimum. zydis and its bundled
zycore both declare cmake_minimum_required(VERSION 3.9), so each configure
prints two deprecation warnings. The existing floor of 3.5 does not lift
them past the threshold; 3.10 does.
Existing build directories keep the cached 3.5 until reconfigured with
-U CMAKE_POLICY_VERSION_MINIMUM or a fresh cache.
Tested on Windows 11, clang-cl 19.1.5, CMake 4.4.3: configure prints 0
deprecation warnings (2 with the old floor); virtual_memory_allocation_tests
builds and links zydis/xbyak; ctest guest_red_zone_patcher passes.
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
* controller: cycle DualSense speaker volume, vibration and trigger intensity in game
Three new input mapping controls cycle the PS5's controller settings in
game (default keys 1, 2 and 3): speaker volume (100% -> off -> 2% -> 12%
-> 42%), vibration intensity and trigger effect intensity (strong -> off
-> weak -> medium). Each starts at full and is not saved.
Changing vibration or trigger intensity re-sends the game's last rumble
and trigger effect, so the change is felt immediately.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
* Clean up controller settings test captures and formatting
---------
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
Co-authored-by: nmzik <Nmzik@mail.ru>
* pad: send DualSense speaker and haptic audio over Bluetooth
* ci: fix Opus clang-cl build and macOS memory tracker test
* docs: remove Bluetooth notes from project README
* pad: keep Bluetooth audio work off emulation timing path
* pad: smooth DualSense speaker audio on USB and Bluetooth
* tests: find available macOS guest range for page manager
* pad: keep haptic waveform when Bluetooth queue overflows
* audio: reject zero output sample frequency
* Simplify DualSense audio routing and fix Bluetooth batching
---------
Co-authored-by: Codex <codex@openai.com>
Co-authored-by: nmzik <Nmzik@mail.ru>