Commit Graph

19693 Commits

Author SHA1 Message Date
fba301155b Merge pull request #7042 from v1993/patch-7
Hide XInput bypass on non-Windows OSes
2021-09-28 17:07:12 -04:00
24c0dde958 Merge pull request #7076 from ameerj/amd-botw
vk_texture_cache: Disable cube compatibility flag on non-mesa AMD GCN4 and earlier
2021-09-28 10:46:56 -07:00
90014ada8f Merge pull request #7096 from german77/update_13.0.0
Update function tables to FW 13.0.0
2021-09-27 11:44:17 -07:00
bc4b4e3f56 service/es: Update to 13.0.0 2021-09-26 20:17:07 -05:00
d780eab357 service/npns: Update to 13.0.0 2021-09-26 20:13:09 -05:00
b0e83f949e service/vi: Update to 13.0.0 2021-09-26 20:12:02 -05:00
321c64a122 service/am: Update to 13.0.0 2021-09-26 20:00:12 -05:00
d103e2daf9 service/audio: Update to 13.0.0 2021-09-26 19:49:09 -05:00
e401c77351 service/hid: Update to 13.0.0 2021-09-26 19:45:47 -05:00
4b5f0af3fd service/btdrv: Update to 13.0.0 2021-09-26 19:32:45 -05:00
f5b41068e6 service/usb: Update to 13.0.0 2021-09-26 19:26:52 -05:00
5114819b6b Merge pull request #7078 from ameerj/vc-jthread-fixes
video_core: Fix jthread related hangs when stopping emulation
2021-09-26 16:40:13 -04:00
4f9d58621c Merge pull request #7085 from Morph1984/bsd-read-stub
service: bsd: Stub Read
2021-09-25 05:12:23 -07:00
7dd7c54add service: bsd: Stub Read
- Used by Diablo II: Resurrected
2021-09-25 08:04:33 -04:00
db9b80399b Merge pull request #7082 from Morph1984/bsd-read
service: bsd: Implement Read
2021-09-24 22:34:32 -07:00
06f22c3d28 service: bsd: Implement Read
- Used by Diablo II: Resurrected
2021-09-24 16:46:52 -04:00
9a53173e4d Merge pull request #7084 from ameerj/clang-12
general: Update style to clang-format-12
2021-09-24 16:44:25 -04:00
9266bad229 CMakeLists: Update to clang format version 12 2021-09-24 16:36:43 -04:00
73666fb262 general: Update style to clang-format-12 2021-09-24 15:52:05 -04:00
31c0f6ca33 ci: Update clang format version 2021-09-24 15:52:05 -04:00
c8512839d7 Merge pull request #7069 from lioncash/uuid
common/uuid: Add validity checking functions to interface
2021-09-24 08:02:11 -04:00
4baef7905e Merge pull request #7043 from astrelsky/cmake
Fix "Unknown C standard control flag" warning
2021-09-23 19:07:09 -07:00
ab63a193d7 video_core: Fix jthread related hangs when stopping emulation
jthread on some compilers is more picky when it comes to the order in which objects are destroyed.
2021-09-23 20:34:02 -04:00
1e1ecca691 vk_texture_cache: Disable cube compatibility flag on non-mesa AMD GCN4 and earlier
Fixes rainbow textures on BOTW.
2021-09-23 19:40:53 -04:00
326a449ef0 Merge pull request #7068 from behunin/patch-3
Debug Config Ui: Clean-up and nits
2021-09-23 15:19:22 -07:00
17bf40f405 Merge pull request #7045 from behunin/patch-1
Tas configure ui nits
2021-09-23 09:29:55 -07:00
091e141142 core/profile_select: Avoid uninitialized read in SelectProfile()
The default constructor of UUID doesn't initialize its data members, so
we need to directly initialize it to be invalid.
2021-09-22 18:10:39 -04:00
40314cc586 common/uuid: Add validity checking functions to interface
Given we have a function to invalidate, we should also have ones to
query the validity. Also makes the code more straightforward to read.
2021-09-22 17:59:00 -04:00
2b3c9c61db Clean-up and nits
Remove redundent label, rearange checkboxs to keep same 3 per column layout, remove unneeded properties.
2021-09-22 00:56:03 -06:00
77e327dd1a Clean-up
Numerize names, remove unneeded properties and spacer.
2021-09-20 20:02:54 -06:00
7b22d61fb1 Merge pull request #7003 from ameerj/unlocked-present-mode
vk_swapchain: Use immediate present mode when mailbox is unavailable and FPS is unlocked
2021-09-20 14:34:21 -07:00
cd973d6037 Merge pull request #7017 from FernandoS27/i-am-barbie-girl
Spir-V: Rescale the frag depth to 0,1 mode when -1,1 mode is used in Vulkan.
2021-09-19 23:56:08 -04:00
a9c3619d26 Merge pull request #7019 from ameerj/videocore-jthread
videocore: Use std::jthread for worker threads
2021-09-18 20:37:40 -07:00
ad85689417 Tas configure ui nits
Text looked cramped on my pc (Ubuntu 21.04). Re-flowed text as well for nicer read.
2021-09-18 19:41:59 -06:00
6e376c27a3 Merge pull request #6485 from MonsterDruide1/tas
input_common: TAS with script playback & recording
2021-09-18 16:30:06 -07:00
75d8ec1e9f UI: Relocate tas menu and add brief description 2021-09-18 23:23:03 +02:00
5401cf6eb5 input_common/tas: new update method 2021-09-18 23:22:57 +02:00
33a1d790e8 input_common/tas: Document the main class 2021-09-18 23:22:48 +02:00
e6c4bf52f0 input_common/tas: Add swap controller 2021-09-18 23:22:42 +02:00
9bb6580d89 input_common/tas: overwrite file dialog 2021-09-18 23:22:42 +02:00
f078b15565 input_common/tas: Fallback to simple update 2021-09-18 23:22:30 +02:00
c01a872c8e config: Move TAS options to it's own menu 2021-09-18 23:22:30 +02:00
4297d2fea2 core: Hacky TAS syncing & load pausing
To keep the TAS inputs synced to the game speed even through lag spikes and loading zones, deeper access is required.

First, the `TAS::UpdateThread` has to be executed exactly once per frame. This is done by connecting it to the service method the game calls to pass parameters to the GPU: `Service::VI::QueueBuffer`.

Second, the loading time of new subareas and/or kingdoms (SMO) can vary. To counteract that, the `CPU_BOOST_MODE` can be detected: In the `APM`-interface, the call to enabling/disabling the boost mode can be caught and forwarded to the TASing system, which can pause the script execution if neccessary and enabled in the settings.
2021-09-18 23:22:20 +02:00
3a7b37238b main: TAS Playback state label
During script playback/recording, the user has to see what happens currently. For that, a new label has been added to the bottom-left corner, always displaying the current state of the TASing system.
2021-09-18 23:22:12 +02:00
f25d6ebc45 settings: File selector & other settings
First of all, TASing requires a script to play back. The user can select the parent directory at `System -> Filesystem`, next to an option to pause TAS during loads: This requires a "hacky" setup deeper in the code and will be added in the last commit.

Also, Hotkeys are being introduced: CTRL+F5 for playback start/stop, CTRL+F6 for re-reading the script and CTRL+F7 for recording a new script.
2021-09-18 23:22:11 +02:00
b42c3ce21d input_common/tas: Base playback & recording system
The base playback system supports up to 8 controllers (specified by `PLAYER_NUMBER` in `tas_input.h`), which all change their inputs simulataneously when `TAS::UpdateThread` is called.

The recording system uses the controller debugger to read the state of the first controller and forwards that data to the TASing system for recording. Currently, this process sadly is not frame-perfect and pixel-accurate.

Co-authored-by: Naii-the-Baf <sfabian200@gmail.com>
Co-authored-by: Narr-the-Reg <juangerman-13@hotmail.com>
2021-09-18 23:22:00 +02:00
35f46fc079 Merge pull request #7020 from Moonlacer/remove_audio_stretching
Remove audio stretching
2021-09-18 11:18:24 -07:00
25cd0342c4 Fix "Unknown C standard control flag" warning 2021-09-18 08:37:34 -04:00
738cd1896b If not on Windows, disable raw input
This way, if someone copies their Windows config to other OS, they won't be stuck without web applet for no apparent reason.
2021-09-18 15:10:00 +03:00
b54bf126f7 Hide XInput bypass on non-Windows OSes
Follow-up to #6950. This option is a no-op on other OSes and only serves to spread confusion there.
2021-09-18 14:41:51 +03:00