Abandoned Cart
bd9050f6c7
Add an emulator pause button to the OSC
2023-03-14 23:22:32 +00:00
Abandoned Cart
69e322b76b
Pausing should mute audio for looped music
...
Also adds pausing the surface in onPause and restoring it in onResume to avoid wasting resources when the activity is legitimately in the background.
2023-03-14 23:22:32 +00:00
Abandoned Cart
df96d74ca1
No use assigning null surface if null already
...
This also prevents any possibility a null value is falsely assigned to a valid surface for whatever reason.
2023-03-14 23:22:32 +00:00
Abandoned Cart
95a679e5cd
Add an action to pause the emulator process
2023-03-14 23:22:32 +00:00
Abandoned Cart
a1143ee5de
Respect the existing "mute" user preference
2023-03-14 23:22:32 +00:00
Abandoned Cart
bdc368e039
Add a mute button as a PiP window action
2023-03-14 23:22:32 +00:00
Abandoned Cart
4298415134
Add picture in picture for emulation activity
2023-03-14 23:22:32 +00:00
Billy Laws
179363a5e7
Fix depth-stencil formats
2023-03-14 23:22:12 +00:00
PabloG02
b4280a61ac
Stub IApplicationFunctions::GetSaveDataSize
2023-03-11 18:27:36 +00:00
Abandoned Cart
6703a875f0
Support deprecation of getSerializableExtra
2023-03-11 18:27:15 +00:00
Billy Laws
6d582566f9
Use AdaptiveSingleWaiterConditionVariable for thread scheduling
...
Some games, for example PGLE, have heavy contention in code that locks mutexes for only a brief period of time. This heavy contention over multiple threads results in futex latency (often ~20us) impacting performance heavily. Using an adaptive condition variable helps to reduce this latency.
2023-03-11 18:26:02 +00:00
Billy Laws
b1e57bc7bc
Introduce adapting condition variable class
...
By spin waiting for a small period before falling back to an actual condition variable, some of the overheads inherent to futex's can be avoided. The used constants were tuned for optimal performance on 8G1 on Skyrim and PGLE.
2023-03-11 18:26:02 +00:00
TheASVigilante
444e35e34f
Fix swizzling regression + minor optimizations to swizzling
2023-03-06 21:56:31 +00:00
TheASVigilante
3e1db818cf
Address review
2023-03-06 21:56:31 +00:00
TheASVigilante
caf1abbe31
Fix 3D swizzled copies & a small bug with DMA clears
2023-03-06 21:56:31 +00:00
TheASVigilante
70ee36e85c
Add support for 1D remapped buffer clears
2023-03-06 21:56:31 +00:00
TheASVigilante
4c3fed6cd0
Hookup various DMA engine features
...
The DMA engine now supports these additional functions: pitch (to pitch) copies, subrect copies, split copies.
2023-03-06 21:56:31 +00:00
TheASVigilante
fd205ff0a9
Implement rest of I2M engine copies
2023-03-06 21:56:31 +00:00
TheASVigilante
72c2d94cbe
Implement subrect copies
2023-03-06 21:56:31 +00:00
TheASVigilante
df0fd88991
Implement pitch swizzled copies
2023-03-06 21:56:31 +00:00
TheASVigilante
5c4bb1c44e
Fix incorrect remapping register layout
2023-03-06 21:56:31 +00:00
Billy Laws
55176c2a72
Update patreon names
2023-03-05 20:16:45 +00:00
Niccolò Betto
20130f1182
Update translations ( #2235 )
...
* Apply translations in zh-Hans
* Apply translations in zh-Hant
* Apply translations in pt_BR
* Apply translations in es_419
* Apply translations in pt
Co-authored-by: transifex-integration[bot] <43880903+transifex-integration[bot]@users.noreply.github.com>
2023-03-05 13:04:34 +01:00
lynxnb
b724bc2309
Adjust default OSC opacity and color
2023-03-05 12:45:07 +01:00
KikiManjaro
1282362fce
Add color selection to OSC
...
* Add bold text and antialiasing for osc buttons
* Fix osc dpad and button position (widder than taller)
* Set default OSC color to white background with black text
2023-03-05 12:45:07 +01:00
KikiManjaro
66d2965c63
Fix resetControls for opacity of OSC
2023-03-05 12:45:07 +01:00
Abandoned Cart
1f608da8e0
Drop local app path in preview summary
2023-03-05 11:48:46 +01:00
Abandoned Cart
bcd38460be
Align ChipGroup to center when space exists
2023-03-05 11:42:20 +01:00
Billy Laws
750dfb8f00
Disable extended dynamic state on <r42 mali drivers
2023-03-04 18:55:44 +00:00
Billy Laws
acf118155d
Submit an execution on invalidate{Sampler,TextureHeader}Cache accesses
2023-03-04 18:55:44 +00:00
Billy Laws
6ce5202b8e
Add exceptions for some more unimplemented maxwell draw regs
2023-03-04 18:55:44 +00:00
Billy Laws
7150ce0d1d
Allow disabling the freeing of texture guest memory
...
This helps to prevent issues that result from the overlapping of buffer and texture data, by only ever syncing back textures if they are actually used as RTs, which are much less likely to overlap buffers.
2023-03-04 18:55:44 +00:00
Billy Laws
5e8cdfda92
Don't populate colour targets with an empty write mask
...
Avoids breaking VK spec in BOTW, as it has the same colour attachment bound twice, but the former is masked out entirely.
2023-03-04 18:55:44 +00:00
Billy Laws
8baf06c9ab
Never free memory for GPU dirty buffers
...
Fixes Persona 5 textures in some cases due to overlaps with textures.
2023-03-04 18:55:44 +00:00
Billy Laws
1dd13e90b0
Use channel sequence number for TIC cache validity tracking
...
Fixes some OpenGL games which update a TIC with I2M but never end up triggering an execution otherwise.
2023-03-04 18:55:44 +00:00
Billy Laws
34fddfccba
Only clear requested aspect for depth/stencil clears
...
Fixes water in Skyrim (depth was being cleared when only stencil should have been)
2023-03-04 18:55:44 +00:00
Billy Laws
330f402398
Clear chained fence cycles on the waiter thread
...
This avoids some sporadic random crashes that happen during fence cycle destruction in BOTW/SMO.
2023-03-04 18:55:44 +00:00
lynxnb
787f2bde02
Enable localization for app strings
...
A setting has been added to override the system default language, should a user want a different language for the app.
2023-02-27 22:19:53 +01:00
transifex-integration[bot]
8e7455fb04
Initial translations sync with Transifex
...
* Apply translations in fr
* Apply translations in ru
* Apply translations in b+zh+Hans
* Apply translations in b+zh+Hant
* Apply translations in de
* Apply translations in el
* Apply translations in ja
* Apply translations in ar
* Apply translations in ta
* Apply translations in pl
* Apply translations in ko
* Apply translations in es
* Apply translations in pl
* Apply translations in in
* Apply translations in it
* Apply translations in b+es+419
* Apply translations in hu
2023-02-27 22:19:53 +01:00
lynxnb
3b849393c2
Fix capitalization in settings title strings
2023-02-27 19:56:53 +01:00
lynxnb
aa1da257f8
Add an option to copy global settings to per-game ones
2023-02-27 19:56:53 +01:00
lynxnb
485bd2031c
Only hide validation_layer
setting on release instead of debug category
2023-02-27 19:56:53 +01:00
lynxnb
b2228a93da
Reorder settings pt.2
2023-02-27 19:56:53 +01:00
lynxnb
ddfa9013a9
Use a proper tag for AppItem
in intent extras and arguments
2023-02-27 19:56:53 +01:00
lynxnb
2f4778247c
Use per-game settings during emulation
2023-02-27 19:56:53 +01:00
lynxnb
1a11aaa651
Add per-game settings configuration functionality
2023-02-27 19:56:53 +01:00
lynxnb
0467614dc0
Add per-game support to EmulationSettings
...
Implements support for retrieving per-game emulation settings
2023-02-27 19:56:53 +01:00
lynxnb
cd426d9f18
Split PreferenceSettings
into AppSettings
and EmulationSettings
...
`PreferenceSettings` was removed in favor of:
* `AppSettings`: stores general purpose settings mostly used for UI configuration and state
* `EmulationSettings`: stores emulation-related settings, most of these are passed to native emulation code
2023-02-27 19:56:53 +01:00
lynxnb
854ea1a42d
Make NativeSettings
a serializable data class
2023-02-27 19:56:53 +01:00
lynxnb
ee98aaaed1
Add a method to return format in AppItem
2023-02-27 19:56:53 +01:00