Commit Graph

2143 Commits

Author SHA1 Message Date
BearOso
a6560f70b5 win32: Remove need for DirectXMath.
It only compiles with VC.
2023-03-07 14:01:29 -06:00
BearOso
6ae1a4478e Gtk/Vulkan: Handle failure to acquire swapchain image. 2023-03-07 14:01:29 -06:00
BearOso
39e21410d8 win32: Make changes to display driver not occur until restart. 2023-03-07 14:01:29 -06:00
BearOso
803125ffe9 win32: Move frame throttle into drivers for precision. 2023-03-07 14:01:29 -06:00
BearOso
309f9e650d vulkan: Move throttle out of swapchain.
Make the swapchain wrapper more flexible, allowing deferring the
swap from the end_frame function.
2023-03-07 14:01:29 -06:00
BearOso
b82edaac96 vulkan: Add a throttler before present for precise frame rates. 2023-03-07 14:01:29 -06:00
BearOso
1d0dab45da win32: Flush message queue between driver changes. 2023-03-07 14:01:29 -06:00
BearOso
d8584b9d94 slang: Fix race condition to initialize glslang. 2023-03-07 14:01:29 -06:00
BearOso
1907b9e25b win32: Tweak busy loop/sleep balance a bit. 2023-03-07 14:01:29 -06:00
BearOso
daf4a60b65 win32: Fix CPU usage with new throttle. 2023-03-07 14:01:29 -06:00
BearOso
e923382395 win32: Replace timer-based throttling.
The old code used low-res timers that would vary by at least 3ms and
couldn't handle freesync/gsync's needs. So I removed the old
time API calls and interrupt and did a rudimentary throttle with QPC.

This may break NetPlay. Nobody (sane) will ever notice.
2023-03-07 14:01:29 -06:00
BearOso
130e1509da Revert "vulkan/slang: Allow a cache for spv."
This reverts commit db554aa8cd62f083b93d4b2e7147c5d2500366d9.
2023-03-07 14:01:29 -06:00
BearOso
7e41394eea Revert "Add xxhash header."
This reverts commit 968dd520c25691388eebb8cdf31502814a540074.
2023-03-07 14:01:29 -06:00
BearOso
e9ca336028 Add xxhash header. 2023-03-07 14:01:29 -06:00
BearOso
8907541f28 vulkan/slang: Allow a cache for spv. 2023-03-07 14:01:29 -06:00
BearOso
1c787cd309 slang: Remove remnants of using Snes9x's conffile. 2023-03-07 14:01:29 -06:00
BearOso
8e38e14ea9 Vulkan/Slang: Load shader files asynchronously. 2023-03-07 14:01:29 -06:00
BearOso
54770ef3cc win32: Try to handle race in changing drivers. 2023-03-07 14:01:29 -06:00
BearOso
4f08da4cd8 vulkan/win32: Provide reasonable default swapchain.
If extents are reported 0xffffffff, swapchain expects a provided
default size.
2023-03-07 14:01:29 -06:00
BearOso
19787b12f1 win32: Add default option to not add entries to registry. 2023-03-07 14:01:29 -06:00
BearOso
3c1d330169 Gtk: Make it possible to build without Slang/Vulkan. 2023-03-07 14:01:29 -06:00
BearOso
948506ad95 Gtk: Add dynamic rate control to SDL driver. 2023-03-07 14:01:29 -06:00
BearOso
eb24fd599f apu: Clean up a bit.
Also fixes MSU not reflecting input rate setting.
2023-03-07 14:01:29 -06:00
BearOso
49b7d45fd0 libretro: Try c++14 for macOS. 2023-03-07 14:01:29 -06:00
BearOso
38603e8a0d libretro: Add -std=c++17 to macOS target. 2023-03-07 14:01:29 -06:00
BearOso
cb8eae1486 cirrus.yml: Update targets.
Switch to arm and see if macos builds.
Remove psp target.
2023-03-07 14:00:36 -06:00
BearOso
c7d4c2e478 win32: Clean up some warnings. 2023-03-07 13:58:22 -06:00
BearOso
2914fdf64c win32: Handle p.min properly in shader dialog.
Windows trackbars with integral values are annoying.
2023-03-07 13:58:22 -06:00
BearOso
8270c1c658 win32: Tweak the shader parameter dialog a bit. 2023-03-07 13:58:22 -06:00
BearOso
6ffca967f7 win32: Request 32-bit color on Win32/OpenGL. 2023-03-07 13:58:22 -06:00
BearOso
0bbecf042a win32: Use simple vulkan output. 2023-03-07 13:58:22 -06:00
BearOso
bb210dc1a1 Gtk: Move simple vulkan output into separate class. 2023-03-07 13:58:22 -06:00
BearOso
410696ce4e Gtk: Remove SDL_GetDefaultAudioInfo. 2023-03-07 13:58:22 -06:00
BearOso
5a9e3a96b1 Oops. Don't free c, it's added to vector. 2023-03-07 13:58:22 -06:00
BearOso
f67bdbef3f vulkan: Handle case when no vulkan library is available.
Use one copy of the dynamic loader, if it can't load a library,
drop out of instance creation.
2023-03-07 13:58:22 -06:00
BearOso
edbffb9a53 vulkan: Keep dynamic loader around. 2023-03-07 13:58:22 -06:00
BearOso
08bf7a8696 Don't allocate 8MB for patching. 2023-03-07 13:58:22 -06:00
BearOso
2fb67c7329 Gtk: Clean up asan leaks. 2023-03-07 13:58:22 -06:00
BearOso
3bbed09867 Condense CheckForAnyPatch with lambdas. 2023-03-07 13:58:22 -06:00
BearOso
db10ed33e1 Don't close zip file when checking patches. 2023-03-07 13:58:22 -06:00
BearOso
bb9037fe98 Fix sequenced ips patch loading outside of zip. 2023-03-07 13:58:22 -06:00
BearOso
13eefd9944 unix: Make port compile. 2023-03-07 13:58:22 -06:00
BearOso
b7704733ec win32: Fix vk_mem_alloc.h compatibility break.
Set WINVER to less than Vista to maintain compatibility with Windows XP.
2023-03-07 13:58:22 -06:00
BearOso
93a242312f win32: Fix a couple of crashes. 2023-03-07 13:58:22 -06:00
BearOso
c3366477a7 Gtk: Lower CMake required version. 2023-03-07 13:58:22 -06:00
BearOso
7fa64f4781 See if this works for CI fixes. 2023-03-07 13:58:22 -06:00
BearOso
18b5a09a16 Fix libretro compilation. 2023-03-07 13:58:22 -06:00
BearOso
f4f7f03be3 Remove meson as build option for Gtk.
Meson isn't flexible with our port subdirectory approach.
2023-03-07 13:58:22 -06:00
BearOso
076c6bfaf4 Use length instead of size with strings. 2023-03-07 13:58:22 -06:00
BearOso
b578ce434b Remove fmt from shader files. 2023-03-07 13:58:22 -06:00