Age | Commit message (Collapse) | Author |
|
applets: Use subdirectory of main data directory for QtWebEngine storage
|
|
buffer_cache, maxwell_dma: Minor refactoring and code fixes
|
|
style: Remove extra space preceding the :: operator
|
|
gl_texture_cache: Unify BGR copy passes using PBOs
|
|
|
|
|
|
audin_u: stub Start, RegisterBufferEvent, AppendAudioInBufferAuto
|
|
Hide XInput bypass on non-Windows OSes
|
|
vk_texture_cache: Disable cube compatibility flag on non-mesa AMD GCN4 and earlier
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
video_core: Fix jthread related hangs when stopping emulation
|
|
- Used by Diablo II: Resurrected
|
|
- Used by Diablo II: Resurrected
|
|
|
|
common/uuid: Add validity checking functions to interface
|
|
jthread on some compilers is more picky when it comes to the order in which objects are destroyed.
|
|
earlier
Fixes rainbow textures on BOTW.
|
|
Debug Config Ui: Clean-up and nits
|
|
Previously, an unrelated directory was used for this. Keep everything together for consistency.
|
|
Tas configure ui nits
|
|
The default constructor of UUID doesn't initialize its data members, so
we need to directly initialize it to be invalid.
|
|
Given we have a function to invalidate, we should also have ones to
query the validity. Also makes the code more straightforward to read.
|
|
Remove redundent label, rearange checkboxs to keep same 3 per column layout, remove unneeded properties.
|
|
Numerize names, remove unneeded properties and spacer.
|
|
vk_swapchain: Use immediate present mode when mailbox is unavailable and FPS is unlocked
|
|
Spir-V: Rescale the frag depth to 0,1 mode when -1,1 mode is used in Vulkan.
|
|
|
|
Loop through the tmp_intervals by reference, rather than by copy, and fix gl clear buffer size calculation.
|
|
videocore: Use std::jthread for worker threads
|
|
Text looked cramped on my pc (Ubuntu 21.04). Re-flowed text as well for nicer read.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
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.
|
|
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.
|
|
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.
|
|
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>
|
|
Remove audio stretching
|
|
This way, if someone copies their Windows config to other OS, they won't be stuck without web applet for no apparent reason.
|