Commit Graph

22608 Commits

Author SHA1 Message Date
comex 3b997a6083 Merge remote-tracking branch 'origin/master' into ssl 2023-07-01 15:01:11 -07:00
Steveice10 9961fc6754 yuzu: Use test window with VulkanSurface to check for present modes.
It is probably not correct to create a surface on a non-VulkanSurface window.
On macOS this causes a preferences crash due to missing CAMetalLayer.
2023-07-01 14:15:26 -07:00
Morph abe7f7c0a0 kernel: Synchronize 2023-07-01 16:21:22 -04:00
comex 1e1b0dccaf Minor cleanup in BufferCacheRuntime::ReserveNullBuffer
As far as I can tell, there is no reason to OR this bit in separately.
2023-07-01 12:00:25 -07:00
GPUCode 4270b443f8 renderer_vulkan: Fix some missing view formats
* Many times the format itself wouldn't have been added to the list causing device losses for nvidia GPUs

* Also account for ASTC acceleration storage views
2023-07-01 16:03:35 +03:00
GPUCode b7e726669e renderer_vulkan: Add support for VK_KHR_image_format_list 2023-07-01 16:03:29 +03:00
Steveice10 19a0345f69 vulkan: Use newer VK_EXT_metal_surface to create surface for MoltenVK. 2023-06-30 23:46:03 -07:00
Morph acfb053333 parcel: Optimize small_vector sizes 2023-06-30 22:05:28 -04:00
Morph 10f95299eb maxwell_dma: Specify dst_operand.pitch instead of a temp var 2023-06-30 21:49:59 -04:00
Morph b8004b2472 general: Use ScratchBuffer where possible 2023-06-30 21:49:59 -04:00
german77 921f9baf58 yuzu: Ensure mouse panning can't be enabled with real mouse emulation 2023-06-30 18:59:39 -06:00
Fernando S 9cb5d582d6 Merge pull request #10953 from FernandoS27/oh-oopsies-yfc
Texture cache: Fix YFC regression due to code testing
2023-06-30 20:25:09 +02:00
Charles Lombardo a81e654c4d android: Show memory warning once 2023-06-30 13:46:35 -04:00
Morph accc43e31f ring_buffer: Fix const usage on std::span 2023-06-30 13:33:14 -04:00
Morph 8d75397bd9 scratch_buffer: Add member types to ScratchBuffer
Allows for implicit conversion to std::span<T>.
2023-06-30 13:33:13 -04:00
Fernando S 068fdeb0e8 Merge pull request #10956 from FernandoS27/pikmin-another-game-ill-hate
AccelerateDMA: Don't accelerate 3D texture DMA operations
2023-06-30 09:37:07 +02:00
Charles Lombardo 79637a9038 android: Rework MemoryUtil
Uses string templates and rounds up memory amount for potentially inaccurate checks now
2023-06-30 01:00:19 -04:00
Morph 885090dc13 sink_stream: Resolve heap buffer corruption due to out of bounds write
Also, remove the use of ScratchBuffer when upmixing, as other channels may not be initialized with zeroed out data.
2023-06-30 00:54:23 -04:00
bunnei bdf171633f video_core: vulkan_device: Scope S8Gen2 checks to just Qualcomm. 2023-06-29 18:41:38 -07:00
bunnei de534a8b82 video_core: vulkan_device: Fix S8Gen2 dynamic state checks. 2023-06-29 17:37:42 -07:00
Fernando Sahmkow 71c38a6eb3 AccelerateDMA: Don't accelerate 3D texture DMA operations 2023-06-29 17:23:29 +02:00
Charles Lombardo 5b4cceec9b Merge pull request #10955 from 8bitDream/gradle
android: Suppress a known incompatibility
2023-06-29 11:07:00 -04:00
liamwhite fe61fc5f33 Merge pull request #10935 from Morph1984/mwaitx
x64: Make use of monitorx instructions for power efficient sleeps (AMD)
2023-06-29 10:01:26 -04:00
liamwhite e82922f723 Merge pull request #10937 from german77/ring
input_common: Remove duplicated enum and fix ring detection
2023-06-29 10:01:19 -04:00
liamwhite 15cffade78 Merge pull request #10946 from goldenx86/amdBlending
Blacklist EDS3 blending from new AMD drivers
2023-06-29 10:01:11 -04:00
Abandoned Cart 17d8ad19b9 android: Suppress a known incompatibility
Android Gradle plugin 8.0.2 is designed for API 33, but a newer plugin hasn't been released yet. The warning message is rather extravagant, but also suggests adding this property if you are aware of the risks.
2023-06-29 07:32:12 -04:00
Fernando Sahmkow d1200cd5c6 Memory Tracker: Use 64 bit atomics instead of 128 bits 2023-06-29 12:25:12 +02:00
Fernando Sahmkow 8efc8dba3e Texture cache: Fix YFC regression due to code testing 2023-06-29 11:58:45 +02:00
german77 c6a065cb08 input_common: Allow timeouts to happen while scanning for a ring 2023-06-29 01:07:39 -06:00
Narr the Reg 3241ff028c input_common: Tune mouse controls 2023-06-28 21:04:33 -06:00
Charles Lombardo 03db05843a android: Make MemoryUtil an object 2023-06-28 20:00:25 -04:00
Matías Locatti 64640b6d07 Blacklist EDS3 blending from new AMD drivers 2023-06-28 20:10:27 -03:00
Charles Lombardo fc8362a875 android: Android 14 support
Specifies the permissions needed for the changes to foreground services in Android 14.
2023-06-28 16:15:18 -04:00
Fernando Sahmkow 4f68a8f45a Memory Tracking: Optimize tracking to only use atomic writes when contested with the host GPU 2023-06-28 21:32:45 +02:00
Fernando Sahmkow 7ae0cdbb09 MemoryTracking: Initial setup of atomic writes. 2023-06-28 19:34:21 +02:00
german77 38b68d1783 input_common: Remove duplicated DriverResult enum 2023-06-28 09:49:47 -06:00
Morph 037e683b94 x64: cpu_wait: Implement MWAITX for non-MSVC compilers 2023-06-28 01:39:15 -04:00
Morph 88efcaf44e x64: cpu_wait: Remove magic values 2023-06-28 01:39:06 -04:00
Morph cffefaf8a7 x64: cpu_wait: Make use of MWAITX in MicroSleep
MWAITX is equivalent to UMWAIT on Intel's Alder Lake CPUs.
We can emulate TPAUSE by using MONITORX in conjunction with MWAITX to wait for 100K cycles.
2023-06-28 01:38:55 -04:00
Morph 841a3559a5 x64: Add detection of monitorx instructions
monitorx introduces 2 instructions: MONITORX and MWAITX.
2023-06-28 01:36:06 -04:00
Liam d54f9ea34f fsmitm_romfsbuild: avoid full path lookups 2023-06-27 23:25:47 -04:00
GPUCode 9e58301aec renderer_vulkan: Prevent crashes when blitting depth stencil 2023-06-27 18:00:09 -07:00
GPUCode 5196f05cec video_core: Add BCn decoding support 2023-06-27 18:00:09 -07:00
GPUCode 8a829a12b6 renderer_vulkan: Add more feature checking 2023-06-27 18:00:09 -07:00
GPUCode d8a98f124a renderer_vulkan: Don't assume debug tool with debug renderer
* Causes crashes because mali drivers don't support debug utils
2023-06-27 18:00:09 -07:00
GPUCode 5011526a94 renderer_vulkan: Bump minimum SPIRV version
* 1.3 is guaranteed on all 1.1 drivers
2023-06-27 18:00:09 -07:00
GPUCode 035b4eaf46 renderer_vulkan: Respect viewport limit 2023-06-27 18:00:09 -07:00
GPUCode 1af4dc2ed7 renderer_vulkan: Don't add transform feedback flag if unsupported 2023-06-27 18:00:09 -07:00
GPUCode 843d93b951 renderer_vulkan: Add suport for debug report callback 2023-06-27 18:00:09 -07:00
liamwhite c64b5c642f Merge pull request #10933 from merryhime/dunno
arm_dynarmic_32: Remove disabling of block linking on arm64
2023-06-27 20:50:24 -04:00
lat9nq dfc7afe44d settings: Clean up includes
Adds <version> since we are looking at C++ implementation version
details. Also moves exception header includes into the if preprocessor
command since we only use it there.
2023-06-27 19:13:54 -04:00
Merry 09012476db arm_dynarmic_32: Remove disabling of block linking on arm64 2023-06-27 23:51:49 +01:00
lat9nq 4bbb9fa29e settings: Catch runtime_error, fallback time zone
Windows will let you select time zones that  will fail in their
own C++ implementation library. Evidently from the stack trace, we get a
runtime error to work with, so catch it and use the fallback.
2023-06-27 18:12:26 -04:00
german77 7dee0cf567 yuzu: Fix clang format 2023-06-27 15:55:23 -06:00
Narr the Reg f8e461e9f2 Merge pull request #9663 from EBADBEEF/disable-controller-applet
qt: add option to disable controller applet
2023-06-27 10:32:51 -06:00
liamwhite 8a679be44b Merge pull request #10867 from Kelebek1/dma_safe
Use safe reads in DMA engine
2023-06-27 11:21:47 -04:00
liamwhite 4f21c05522 Merge pull request #10473 from GPUCode/vma
Use vulkan memory allocator
2023-06-27 11:21:36 -04:00
liamwhite 4696a032a8 Merge pull request #10495 from bm01/master
input_common: Redesign mouse panning
2023-06-27 11:21:28 -04:00
liamwhite f91cc2c72f Merge pull request #10679 from zeltermann/wakelock-reason
Only use SDL wakelock on Linux
2023-06-27 11:21:20 -04:00
liamwhite c869dcd931 Merge pull request #10916 from ameerj/lolmem
OpenGL: Add Local Memory warmup shader for Nvidia
2023-06-27 11:21:10 -04:00
Charles Lombardo 2810786adc android: Fix size check for content uris
Fix for checking file size for android content uris
2023-06-26 22:24:18 -04:00
liamwhite 8affea6a4b Merge pull request #10908 from kiri11/clarify-ring-ui
Clarify Ring-Con configuration message in UI
2023-06-26 14:31:30 -04:00
liamwhite 71949a6077 Merge pull request #10903 from german77/nfc_state
input_common: Improve nfc state handling and 3rd party support
2023-06-26 14:31:23 -04:00
liamwhite 2793f6cf7e Merge pull request #10901 from german77/sdl_fix
input_common: Make use of new SDL features
2023-06-26 14:31:14 -04:00
liamwhite 6121aed4a8 Merge pull request #10888 from 8bitDream/native
android: (native) Parameter types from Android Studio
2023-06-26 14:31:00 -04:00
liamwhite 30cae69b33 Merge pull request #10865 from t895/extension-meme
android: Clean up file extension checks
2023-06-26 14:30:49 -04:00
Charles Lombardo f56487bf3e android: Clean up file extension checks 2023-06-26 13:25:56 -04:00
GPUCode 7a8631cd45 externals: Use cmake subdirectory 2023-06-26 18:59:24 +03:00
Kelebek1 c80b6bfb83 Use safe reads in DMA engine 2023-06-26 11:34:02 +01:00
comex 930b7ac6ee PR feedback + constification 2023-06-25 19:24:49 -07:00
comex 73fb0e03a4 network.cpp: include expected.h 2023-06-25 18:51:39 -07:00
comex ae42f278cb re-format 2023-06-25 17:09:54 -07:00
comex 742d780d77 Fix more Windows build errors
I did test this beforehand, but not on MinGW, and the error that showed
up on the msvc builder didn't happen for me...
2023-06-25 17:06:57 -07:00
comex 3cc874f079 ssl: fix compatibility with OpenSSL 1.1.1
Turns out changes were needed after all.
2023-06-25 16:09:16 -07:00
ameerj 5ae4d9983b OpenGL: Limit lmem warmup to NVIDIA
🐸
2023-06-25 19:06:51 -04:00
ameerj 28cecc6cd8 shaders: Track local memory usage 2023-06-25 18:59:33 -04:00
ameerj a2b344ab9d emit_glasm: Fix lmem size computation 2023-06-25 18:43:52 -04:00
ameerj b2349d75f4 OpenGL: Add Local Memory warmup shader 2023-06-25 18:43:23 -04:00
comex 6018b182fc Fixes:
- Add missing virtual destructor on `SSLBackend`.

- On Windows, filter out `POLLWRBAND` (one of the new flags added) when
  calling `WSAPoll`, because despite the constant being defined on
  Windows, passing it calls `WSAPoll` to yield `EINVAL`.

- Reduce OpenSSL version requirement to satisfy CI; I haven't tested
  whether it actually builds (or runs) against 1.1.1, but if not, I'll
  figure it out.

- Change an instance of memcpy to memmove, even though the arguments
  cannot overlap, to avoid a [strange GCC
  error](https://github.com/yuzu-emu/yuzu/pull/10912#issuecomment-1606283351).
2023-06-25 15:06:52 -07:00
comex 7fc1efe740 ssl: rename argument to avoid false positive codespell warning
The original name `larg` was copied from the OpenSSL documentation and
is not a typo of 'large' but rather an abbreviation of '`long`
argument'.  But whatever, no harm in adding an underscore.
2023-06-25 13:10:41 -07:00
comex 12321ae076 socket_types: Improve comment 2023-06-25 13:10:15 -07:00
comex 6f8d5f068f Implement SSL service
This implements some missing network APIs including a large chunk of the SSL
service, enough for Mario Maker (with an appropriate mod applied) to connect to
the fan server [Open Course World](https://opencourse.world/).

Connecting to first-party servers is out of scope of this PR and is a
minefield I'd rather not step into.

 ## TLS

TLS is implemented with multiple backends depending on the system's 'native'
TLS library.  Currently there are two backends: Schannel for Windows, and
OpenSSL for Linux.  (In reality Linux is a bit of a free-for-all where there's
no one 'native' library, but OpenSSL is the closest it gets.)  On macOS the
'native' library is SecureTransport but that isn't implemented in this PR.
(Instead, all non-Windows OSes will use OpenSSL unless disabled with
`-DENABLE_OPENSSL=OFF`.)

Why have multiple backends instead of just using a single library, especially
given that Yuzu already embeds mbedtls for cryptographic algorithms?  Well, I
tried implementing this on mbedtls first, but the problem is TLS policies -
mainly trusted certificate policies, and to a lesser extent trusted algorithms,
SSL versions, etc.

...In practice, the chance that someone is going to conduct a man-in-the-middle
attack on a third-party game server is pretty low, but I'm a security nerd so I
like to do the right security things.

My base assumption is that we want to use the host system's TLS policies.  An
alternative would be to more closely emulate the Switch's TLS implementation
(which is based on NSS).  But for one thing, I don't feel like reverse
engineering it.  And I'd argue that for third-party servers such as Open Course
World, it's theoretically preferable to use the system's policies rather than
the Switch's, for two reasons

1. Someday the Switch will stop being updated, and the trusted cert list,
   algorithms, etc. will start to go stale, but users will still want to
   connect to third-party servers, and there's no reason they shouldn't have
   up-to-date security when doing so.  At that point, homebrew users on actual
   hardware may patch the TLS implementation, but for emulators it's simpler to
   just use the host's stack.

2. Also, it's good to respect any custom certificate policies the user may have
   added systemwide.  For example, they may have added custom trusted CAs in
   order to use TLS debugging tools or pass through corporate MitM middleboxes.
   Or they may have removed some CAs that are normally trusted out of paranoia.

Note that this policy wouldn't work as-is for connecting to first-party
servers, because some of them serve certificates based on Nintendo's own CA
rather than a publicly trusted one.  However, this could probably be solved
easily by using appropriate APIs to adding Nintendo's CA as an alternate
trusted cert for Yuzu's connections.  That is not implemented in this PR
because, again, first-party servers are out of scope.

(If anything I'd rather have an option to _block_ connections to Nintendo
servers, but that's not implemented here.)

To use the host's TLS policies, there are three theoretical options:

a) Import the host's trusted certificate list into a cross-platform TLS
   library (presumably mbedtls).

b) Use the native TLS library to verify certificates but use a cross-platform
   TLS library for everything else.

c) Use the native TLS library for everything.

Two problems with option a).  First, importing the trusted certificate list at
minimum requires a bunch of platform-specific code, which mbedtls does not have
built in.  Interestingly, OpenSSL recently gained the ability to import the
Windows certificate trust store... but that leads to the second problem, which
is that a list of trusted certificates is [not expressive
enough](https://bugs.archlinux.org/task/41909) to express a modern certificate
trust policy.  For example, Windows has the concept of [explicitly distrusted
certificates](https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2012-r2-and-2012/dn265983(v=ws.11)),
and macOS requires Certificate Transparency validation for some certificates
with complex rules for when it's required.

Option b) (using native library just to verify certs) is probably feasible, but
it would miss aspects of TLS policy other than trusted certs (like allowed
algorithms), and in any case it might well require writing more code, not less,
compared to using the native library for everything.

So I ended up at option c), using the native library for everything.

What I'd *really* prefer would be to use a third-party library that does option
c) for me.  Rust has a good library for this,
[native-tls](https://docs.rs/native-tls/latest/native_tls/).  I did search, but
I couldn't find a good option in the C or C++ ecosystem, at least not any that
wasn't part of some much larger framework.  I was surprised - isn't this a
pretty common use case?  Well, many applications only need TLS for HTTPS, and they can
use libcurl, which has a TLS abstraction layer internally but doesn't expose
it.  Other applications only support a single TLS library, or use one of the
aforementioned larger frameworks, or are platform-specific to begin with, or of
course are written in a non-C/C++ language, most of which have some canonical
choice for TLS.  But there are also many applications that have a set of TLS
backends just like this; it's just that nobody has gone ahead and abstracted
the pattern into a library, at least not a widespread one.

Amusingly, there is one TLS abstraction layer that Yuzu already bundles: the
one in ffmpeg.  But it is missing some features that would be needed to use it
here (like reusing an existing socket rather than managing the socket itself).
Though, that does mean that the wiki's build instructions for Linux (and macOS
for some reason?) already recommend installing OpenSSL, so no need to update
those.

 ## Other APIs implemented

- Sockets:
    - GetSockOpt(`SO_ERROR`)
    - SetSockOpt(`SO_NOSIGPIPE`) (stub, I have no idea what this does on Switch)
    - `DuplicateSocket` (because the SSL sysmodule calls it internally)
    - More `PollEvents` values

- NSD:
    - `Resolve` and `ResolveEx` (stub, good enough for Open Course World and
      probably most third-party servers, but not first-party)

- SFDNSRES:
    - `GetHostByNameRequest` and `GetHostByNameRequestWithOptions`
    - `ResolverSetOptionRequest` (stub)

 ## Fixes

- Parts of the socket code were previously allocating a `sockaddr` object on
  the stack when calling functions that take a `sockaddr*` (e.g. `accept`).
  This might seem like the right thing to do to avoid illegal aliasing, but in
  fact `sockaddr` is not guaranteed to be large enough to hold any particular
  type of address, only the header.  This worked in practice because in
  practice `sockaddr` is the same size as `sockaddr_in`, but it's not how the
  API is meant to be used.  I changed this to allocate an `sockaddr_in` on the
  stack and `reinterpret_cast` it.  I could try to do something cleverer with
  `aligned_storage`, but casting is the idiomatic way to use these particular
  APIs, so it's really the system's responsibility to avoid any aliasing
  issues.

- I rewrote most of the `GetAddrInfoRequest[WithOptions]` implementation.  The
  old implementation invoked the host's getaddrinfo directly from sfdnsres.cpp,
  and directly passed through the host's socket type, protocol, etc. values
  rather than looking up the corresponding constants on the Switch.  To be
  fair, these constants don't tend to actually vary across systems, but
  still... I added a wrapper for `getaddrinfo` in
  `internal_network/network.cpp` similar to the ones for other socket APIs, and
  changed the `GetAddrInfoRequest` implementation to use it.  While I was at
  it, I rewrote the serialization to use the same approach I used to implement
  `GetHostByNameRequest`, because it reduces the number of size calculations.
  While doing so I removed `AF_INET6` support because the Switch doesn't
  support IPv6; it might be nice to support IPv6 anyway, but that would have to
  apply to all of the socket APIs.

  I also corrected the IPC wrappers for `GetAddrInfoRequest` and
  `GetAddrInfoRequestWithOptions` based on reverse engineering and hardware
  testing.  Every call to `GetAddrInfoRequestWithOptions` returns *four*
  different error codes (IPC status, getaddrinfo error code, netdb error code,
  and errno), and `GetAddrInfoRequest` returns three of those but in a
  different order, and it doesn't really matter but the existing implementation
  was a bit off, as I discovered while testing `GetHostByNameRequest`.

  - The new serialization code is based on two simple helper functions:

    ```cpp
    template <typename T> static void Append(std::vector<u8>& vec, T t);
    void AppendNulTerminated(std::vector<u8>& vec, std::string_view str);
    ```

    I was thinking there must be existing functions somewhere that assist with
    serialization/deserialization of binary data, but all I could find was the
    helper methods in `IOFile` and `HLERequestContext`, not anything that could
    be used with a generic byte buffer.  If I'm not missing something, then
    maybe I should move the above functions to a new header in `common`...
    right now they're just sitting in `sfdnsres.cpp` where they're used.

- Not a fix, but `SocketBase::Recv`/`Send` is changed to use `std::span<u8>`
  rather than `std::vector<u8>&` to avoid needing to copy the data to/from a
  vector when those methods are called from the TLS implementation.
2023-06-25 12:53:31 -07:00
Kirill Ignatev ba51f27437 Hyphenate Joy-Con and clarify further 2023-06-25 12:51:16 -04:00
Kirill Ignatev d113954bec Clarify Ring-Con configuration message in UI
Not obvious how left controller should be set up
Mention that it should be left physical dual emulated
2023-06-25 11:52:15 -04:00
german77 9e204b0308 core: hid: Allow to read bin files while switch controller is available 2023-06-24 18:59:55 -06:00
german77 4c2f8ac0eb input_common: Dont try to read/write data from 3rd party controllers 2023-06-24 18:59:55 -06:00
german77 b16b2a486b input_common: Make use of new SDL features 2023-06-24 17:42:56 -06:00
zeltermann 377ffa277c Only use SDL wakelock on Linux
SDL has internally fixed shenanigans related to wakelocking through DBus
from inside sandboxes from around August 2022, so we can now remove the
workaround we used since 2021.
2023-06-24 14:51:41 +07:00
Abandoned Cart 51068a23af android: define [[maybe_unused]] (const) auto 2023-06-23 14:05:14 -04:00
Abandoned Cart f2aeaddf52 android: Parameter types from Android Studio
Android Studio marked these parameters as errors because it is an instance, not a class, that is being passed from Java.
2023-06-23 10:36:30 -04:00
liamwhite 188f3d786f Merge pull request #10811 from 8bitDream/pip_mute
android: Add a PiP interface to mute / unmute
2023-06-23 09:27:28 -04:00
liamwhite fa8419f54e Merge pull request #10859 from liamwhite/no-more-atomic-wait
general: remove atomic signal and wait
2023-06-23 09:27:14 -04:00
liamwhite 67778a69b0 Merge pull request #10842 from german77/native_mifare
input_common: Implement native mifare/skylander support for joycons/pro controller
2023-06-23 09:27:00 -04:00
Liam 217bb87494 vfs_real: lock concurrent accesses 2023-06-23 00:57:24 -04:00
bunnei 7a546be139 Merge pull request #10457 from Kelebek1/optimise
Remove memory allocations in some hot paths
2023-06-22 21:53:07 -07:00
bunnei 5b3787e8a3 Merge pull request #10806 from liamwhite/worst-fs-implementation-ever
vfs_real: misc optimizations
2023-06-22 21:46:50 -07:00
bunnei 889371ab35 Merge pull request #10794 from 8bitDream/multiples
android: Add support for multiple installs
2023-06-22 14:26:24 -07:00
Morph 0ad233da22 Merge pull request #10878 from GPUCode/log-droid
android: Log settings
2023-06-22 16:16:20 -04:00
bunnei 3963d06e86 Merge pull request #10869 from 8bitDream/memory
android: Add a notice when RAM inadequate
2023-06-22 10:26:32 -07:00
GPUCode 925a069402 android: Log settings 2023-06-22 20:17:52 +03:00
GPUCode c813876c5a vulkan_common: Remove required flags
* Allows VMA to fallback to system RAM instead of crashing
2023-06-22 20:03:12 +03:00
Liam db40a2f430 general: remove atomic signal and wait 2023-06-22 09:25:23 -04:00
Kelebek1 c7430e51e3 Remove memory allocations in some hot paths 2023-06-22 08:05:10 +01:00
bunnei 72a469b967 Merge pull request #10086 from Morph1984/coretiming-ng-1
core_timing: Use CNTPCT as the guest CPU tick
2023-06-21 21:12:46 -07:00
bunnei 5a5080ba4e Merge pull request #10777 from liamwhite/no-barrier
video_core: optionally skip barriers on feedback loops
2023-06-21 21:10:08 -07:00
bunnei feb4104440 Merge pull request #10841 from liamwhite/math-is-hard
vfs_concat: fix offset calculation when not aligned to file boundary
2023-06-21 21:07:08 -07:00
bunnei 1642b5217e Merge pull request #10863 from lat9nq/tz-end-of-string
time_zone_manager: Stop on comma
2023-06-21 21:05:03 -07:00
Narr the Reg b24451c571 input_common: Implement native mifare support 2023-06-21 17:54:58 -06:00
Abandoned Cart c955fc20b3 android: Generalize string message dialog 2023-06-21 18:25:15 -04:00
Abandoned Cart 42548ded9d android: Add support for concurrent installs 2023-06-21 18:25:15 -04:00
Abandoned Cart 25ad652787 android: Convert memory sizes to resource 2023-06-21 18:24:49 -04:00
Abandoned Cart 0891b3e775 android: Add a notice when RAM inadequate 2023-06-21 18:24:49 -04:00
Abandoned Cart f06174ed2b android: Refactor native and corresponding variables 2023-06-21 18:23:13 -04:00
Abandoned Cart 777567975e Fix JNI and expose mute settings to Android 2023-06-21 18:23:13 -04:00
Abandoned Cart 67ec04ddd5 android: Add a PiP interface to mute / unmute 2023-06-21 17:21:36 -04:00
Charles Lombardo 839e5f65e4 android: Don't show custom driver button on mali and x86 2023-06-20 20:06:36 -04:00
lat9nq 9357aaf637 time_zone_manager: Add null terminator
We aren't null-terminating this string after the copy, and we need to.
2023-06-20 15:54:28 -04:00
lat9nq aedaa1aa19 time_zone_manager: Stop on comma
This is a deviation from the reference time zone implementation. The
actual code will set a pointer to the time zone name here, but for us we
have a limited number of characters to work with, and the name of the
time zone here could be larger than 8 characters.

We can make the assumption that time zone names greater than five
characters in length include a comma that denotes more data. Nintendo
just truncates that data for the name, so we can do the same.

time_zone_manager: Check for length of array

Just to be double sure that we never break past the array length,
directly compare against it.
2023-06-20 15:54:05 -04:00
liamwhite 10f2beb17a Merge pull request #10818 from vonchenplus/render_target_samples
video_core: add samples check when find render target
2023-06-20 09:55:23 -04:00
liamwhite 5df094850f Merge pull request #10835 from lat9nq/intel-restrict-compute-disable
vulkan_device: Restrict compute disable only to affected Intel drivers
2023-06-20 09:55:14 -04:00
liamwhite 50fe67c0f1 Merge pull request #10840 from Kelebek1/unbug_blinks_brain
Use current GPU address when unmapping GPU pages, not the base
2023-06-20 09:55:01 -04:00
toast2903 f68b01a8cf vulkan_device: Remove brace initializer
Co-authored-by: Tobias <thm.frey@gmail.com>
2023-06-19 17:35:12 -04:00
lat9nq 1ad8df763f video_core: Check broken compute earlier
Checks it as the system is determining what settings to enable. Reduces
the need to check settings while the system is running.
2023-06-19 17:33:30 -04:00
Liam e1d8e0d842 vfs_concat: verify short read 2023-06-19 09:47:05 -04:00
Liam 0faeac4fcb vfs_concat: fix offset calculation when not aligned to file boundary 2023-06-18 22:21:29 -04:00
Kelebek1 6bd6e24d6e Use current GPU address when unmapping GPU pages, not the base 2023-06-19 00:19:50 +01:00
lat9nq eb2c848912 vk_device_info: Check only affected Intel drivers
Renames is_intel_proprietary to has_broken_compute for accuracy.

vk_device_info: Use vulkan::device to check compute
2023-06-18 16:15:51 -04:00
lat9nq a74f77bbbc video_core: Formalize HasBrokenCompute
Also limits it to only affected Intel proprietrary driver versions.

vulkan_device: Move broken compute determination

vk_device: Remove errant back quote
2023-06-18 16:15:47 -04:00
liamwhite 1ddf844419 Merge pull request #10829 from lat9nq/remove-external-mem
vulkan_device: Remove external memory extension
2023-06-18 09:43:03 -04:00
liamwhite 843f80ae60 Merge pull request #10486 from lat9nq/vk-device-find-once
yuzu-qt: Load Vulkan device info at startup
2023-06-18 09:42:55 -04:00
liamwhite 2f65ed20b7 Merge pull request #10798 from vonchenplus/draw_texture_scale
video_core: drawtexture support upscale
2023-06-18 09:42:41 -04:00
liamwhite e48b4b0b36 Merge pull request #10809 from Kelebek1/reduce_vertex_bindings
Synchronize vertex buffer even when it doesn't require binding
2023-06-18 09:42:32 -04:00
GPUCode 7b3718dc9c renderer_vulkan: Add missing initializers 2023-06-18 14:14:03 +03:00
GPUCode 66d3a1c5c7 renderer_vulkan: Use VMA for buffers 2023-06-18 12:45:18 +03:00
GPUCode d84d595dab renderer_vulkan: Use VMA for images 2023-06-18 12:45:18 +03:00
GPUCode fd9b920d2d memory_allocator: Remove OpenGL interop
* Appears to be unused atm
2023-06-18 12:45:18 +03:00
lat9nq 0a4650cd2b externals: Add vma and initialize it
video_core: Move vma implementation to library
2023-06-18 12:45:12 +03:00
bunnei 6d055a21e3 Merge pull request #10797 from lat9nq/tzdb-patch
time: Various time zone fixes
2023-06-17 23:47:16 -07:00
lat9nq 38fe34a43f vulkan_device: Remove external memory extension
Unused in yuzu. Enables yuzu to boot games in Wine using Vulkan.
2023-06-18 01:20:08 -04:00
Liam e62d452bd9 renderer_vulkan: add missing include 2023-06-17 23:57:47 -04:00
lat9nq e260539065 time_zone_service: Always write time zone rule data
Switch firmware will initialize this data even if the given parameters
are invalid. We should do the same.
2023-06-17 20:53:39 -04:00
Morph 5cf658d2e6 Merge pull request #10813 from lat9nq/no-atomic-bool
k_thread: Use a mutex and cond_var to sync bool
2023-06-17 20:29:57 -04:00
Fernando S 06f47d34c8 Merge pull request #10744 from Wollnashorn/af-for-all
video_core: Improved anisotropic filtering heuristics
2023-06-18 00:02:05 +02:00
Kelebek1 547e837f78 Synchronize vertex buffer even when it doesn't require binding 2023-06-17 17:47:00 -04:00
lat9nq 59236a458c k_thread: Use a mutex and cond_var to sync bool
std::atomic<bool> is broken on MinGW and causes deadlocks there.
Use a normal cond var in its stead.
2023-06-17 15:25:36 -04:00
FengChen 255ab12789 video_core: add samples check when find render target 2023-06-17 23:48:51 +08:00
Wollnashorn e10113e853 video_core: Only apply AF to 2D (array) image types 2023-06-17 14:20:44 +02:00
Wollnashorn 62b0b6bde0 video_core: Removed AF for all mip modes option as it's default now 2023-06-17 11:19:39 +02:00
bunnei 853249121d Merge pull request #10783 from liamwhite/memory
video_core: preallocate fewer IR blocks
2023-06-16 16:53:25 -07:00
bunnei e979299431 Merge pull request #10808 from t895/settings-stuffs
android: Expose settings
2023-06-16 16:52:54 -07:00
bunnei 2854efee65 Merge pull request #10807 from t895/ktlint-fixes
android: Ktlint fixes
2023-06-16 16:47:14 -07:00
liamwhite 4c7987cded Merge pull request #10731 from german77/misc_fixes
service: nfc: Accuracy fixes
2023-06-16 18:18:24 -04:00
Liam 3191a97b22 vfs_real: ensure size cache is reset on write 2023-06-16 16:43:14 -04:00
Charles Lombardo 8586ed3bfe android: Expose audio output engine setting 2023-06-16 16:42:56 -04:00
Charles Lombardo cb65166fac android: Bump ktlint version to 0.47.1 2023-06-16 16:32:08 -04:00
Charles Lombardo fa67cd8edf android: Disable import-ordering ktlint check 2023-06-16 16:31:49 -04:00
Liam b73cc6d51c patch_manager: remove unnecessary GetSize calls 2023-06-16 16:29:10 -04:00
Liam 0f7b1f067f vfs_real: misc optimizations 2023-06-16 16:29:06 -04:00
Charles Lombardo a88166f870 android: Expose CPU debugging option 2023-06-16 16:25:06 -04:00
Charles Lombardo 6c18ceff4d android: Expose fastmem option 2023-06-16 16:24:40 -04:00
Charles Lombardo c050dd3122 android: Support changing multiple settings at once 2023-06-16 15:49:49 -04:00
Abandoned Cart 465927f4c5 android: Fix aspect ratio when rotating screen 2023-06-16 10:11:18 -04:00
Feng Chen c362895572 video_core: drawtexture support upscale 2023-06-16 20:51:15 +08:00
Wollnashorn 815f54385a video_core: Use sampler IDs instead pointers in the pipeline config
The previous approach of storing pointers returned by `GetGraphicsSampler`/`GetComputeSampler` caused UB, as these functions can cause reallocation of the sampler slot vector and therefore invalidate the pointers
2023-06-16 13:45:14 +02:00
liamwhite c637971ae3 Merge pull request #10795 from german77/foomiibo
input_common: Add foomiibo support
2023-06-16 00:08:30 -04:00
lat9nq 5173821cfa time_zone_manager: Compare to the correct boolean
Reference implementation does not compare the booleans as we had them.
Use the correct ones as in the reference.

Also adds an assert. I have been made aware of a crash here and am
not able to reproduce currently.
2023-06-15 23:05:41 -04:00
lat9nq 2ed870c2a8 nx_tzdb: Correct Antarctica spelling 2023-06-15 23:03:54 -04:00
Charles Lombardo 37cbf16322 android: Apply ktlint codestyle 2023-06-15 22:36:54 -04:00
Charles Lombardo 98f711100e Android: Use ktlint for Kotlin code style 2023-06-15 22:22:49 -04:00
Charles Lombardo 1ad4a05d64 android: Enable android linting 2023-06-15 22:19:58 -04:00
bunnei 947e258ac2 Merge pull request #10796 from bunnei/fix-saf
android: fs: Fix Exists / IsFile for SAF.
2023-06-15 18:39:14 -07:00
bunnei 837d487905 Merge pull request #10790 from liamwhite/arm-driver-moment
vulkan_device: disable extended_dynamic_state2 on ARM drivers
2023-06-15 18:34:31 -07:00
bunnei 981332d727 Merge pull request #10775 from liamwhite/cb2
renderer_vulkan: propagate conditional barrier support
2023-06-15 17:37:03 -07:00
Narr the Reg 4a5f56645a input_common: Add amiibo with originality signature support 2023-06-15 18:22:13 -06:00
bunnei bc21da779e android: fs: Fix Exists / IsFile for SAF. 2023-06-15 17:20:56 -07:00
bunnei da26ff3e0f Merge pull request #10639 from 8bitDream/pictureinpicture
android: Support for Picture in Picture / Portrait
2023-06-15 16:40:13 -07:00
Wollnashorn eff77dae59 video_core: Fallback to default anisotropy instead to 1x anisotropy 2023-06-15 23:16:26 +02:00
Wollnashorn e405fb1c72 video_core: Disable AF for non-color image formats 2023-06-15 20:59:33 +02:00
Wollnashorn 1f7c69934d video_core: Fixed compilation errors because of name shadowing 2023-06-15 18:46:40 +02:00
Liam 0875e158fe vulkan_device: disable extended_dynamic_state2 on ARM drivers 2023-06-15 12:29:54 -04:00
Wollnashorn 1844cad9d4 video_core: Add per-image anisotropy heuristics (format & mip count) 2023-06-15 18:19:32 +02:00
Liam c913c891e0 video_core: preallocate fewer IR blocks 2023-06-14 21:37:57 -04:00
bunnei c307399340 Merge pull request #10729 from liamwhite/windows-is-a-meme
vfs_real: add file LRU cache for open file limits
2023-06-14 18:32:25 -07:00
Narr the Reg 6ae2249f88 service: nfc: Read tag protocol only for nfc backend 2023-06-14 18:16:23 -06:00
Narr the Reg 05fcd73843 service: nfc: Accuracy fixes 2023-06-14 18:08:35 -06:00
Morph 6a4ebf7dd6 Merge pull request #10749 from Morph1984/strong-typing
buffer_cache_base: Specify buffer type in HostBindings
2023-06-14 18:03:11 -04:00
Abandoned Cart dfa23c70c6 android: Move overlays to their own layout 2023-06-14 16:43:24 -04:00
Abandoned Cart 5d37de1e70 android: Initialize defaults for each orientations 2023-06-14 16:35:58 -04:00
Abandoned Cart e438f2e053 android: Display FPS with emulation on hinge 2023-06-14 16:35:57 -04:00
Abandoned Cart 468a6c5555 android: Remove PiP reliance on fragment 2023-06-14 16:35:56 -04:00
Abandoned Cart 5417700e64 android: Set layout by fragment, not view 2023-06-14 16:35:54 -04:00
Abandoned Cart be83a80f62 android: Add a separate foldable layout set 2023-06-14 16:34:23 -04:00
Abandoned Cart df42e34dfb android: Set portrait default control params 2023-06-14 16:34:22 -04:00
Abandoned Cart f24d322941 android: Actually implement portrait controls 2023-06-14 16:34:19 -04:00
Abandoned Cart 78826a0afd android: Enable automated portrait controls 2023-06-14 16:34:16 -04:00
Abandoned Cart 399fb74890 android: Add Picture in Picture / Orientation 2023-06-14 16:34:14 -04:00
Charles Lombardo 8e33b7993d android: Adapt EmulationActivity to navigation component 2023-06-14 14:55:25 -04:00
Liam d0837e10ae video_core: optionally skip barriers on feedback loops 2023-06-14 14:11:46 -04:00
Liam e77190ffab renderer_vulkan: propagate conditional barrier support 2023-06-14 10:49:40 -04:00
Wollnashorn 04782a922d video_core: Apply AF only to samplers with normal LOD range [0, 1+x] 2023-06-14 13:27:27 +02:00
Wollnashorn 9f46c7724b video_core: Fix default anisotropic heuristic 2023-06-14 11:21:22 +02:00
Wollnashorn 614f8a0429 video_core: Never apply AF to None mipmap mode
Should fix some artifacts with the "apply anisotropic filtering for all mipmap modes" option
2023-06-14 03:57:39 +02:00
Liam 863d5c23d0 vfs_real: require file existence on open 2023-06-13 17:22:47 -04:00
Liam 87087b768b vfs_real: add simplified open file cache 2023-06-13 17:16:14 -04:00
bunnei 4abd6e552c Merge pull request #10603 from lat9nq/tz-more-complete
core,common: Implement missing time zone data/computations
2023-06-13 13:28:45 -07:00
Charles Lombardo 8395dcea78 Merge pull request #10760 from FearlessTobi/translations
android: Declare languages in locales_config.xml
2023-06-13 15:48:45 -04:00
Wollnashorn ff4c4a45e6 video_core: Disable anisotropic filtering for samplers with depth compare 2023-06-13 21:32:32 +02:00
FearlessTobi f437542a7f android: Declare languages in locales_config.xml
This is required to make per-app language swithcing possible on Android 13.
2023-06-13 20:26:45 +02:00
Charles Lombardo 33812b0c24 Merge pull request #10751 from german77/touch
android: Fix touch input
2023-06-13 14:01:02 -04:00
bunnei 8f68196ecc Merge pull request #10747 from liamwhite/arm-interface-decouple
core: decouple ARM interface from Dynarmic
2023-06-13 09:45:09 -07:00
Liam 729216e5d8 vfs_real: lazily open files 2023-06-13 10:37:34 -04:00
Liam efaaa6e0bf vfs_real: add file LRU cache for open file limits 2023-06-13 10:37:34 -04:00
german77 110f8ea167 android: Fix touch input 2023-06-13 00:17:10 -06:00
Morph 9da90de908 buffer_cache_base: Specify buffer type in HostBindings
Avoid reinterpret-casting from void pointer since the type is already known at compile time.
2023-06-13 00:59:42 -04:00
bunnei 0c919d1704 Merge pull request #10746 from bunnei/update-android-settings
android: Update settings, remove unused translations
2023-06-12 21:15:26 -07:00
Liam 5b858c8306 core: decouple ARM interface from Dynarmic 2023-06-12 22:11:51 -04:00
Wollnashorn 6f1fb4c28a video_core: Option to apply anisotropic filtering for all mipmap modes 2023-06-13 03:21:01 +02:00
liamwhite aab6e3098d Merge pull request #10675 from liamwhite/scaler
image_info: adjust rescale thresholds and refactor constant use
2023-06-12 21:16:36 -04:00
bunnei 5f6c1b5243 android: settings: Disable force_max_clock by default. 2023-06-12 17:57:48 -07:00
bunnei 501e43a053 android: settings: Add reactive flushing as a default-disabled setting. 2023-06-12 17:56:44 -07:00
bunnei 5c6c48fe24 android: res: Remove translated strings that no longer exist. 2023-06-12 17:45:02 -07:00
bunnei f631b3a39a Merge pull request #10743 from FearlessTobi/translations
android: Add translation files manually
2023-06-12 17:20:27 -07:00
bunnei 72db3f10d0 Merge pull request #10705 from german77/updates
android: Add update and DLC support
2023-06-12 17:03:44 -07:00
FearlessTobi cf118cecd0 android: Add translation files manually 2023-06-13 01:00:23 +02:00
bunnei 5f6814da47 Merge pull request #10728 from t895/game-hash
android: Use autogenerated hash code function for Game class
2023-06-12 14:45:18 -07:00
bunnei a7d42ec05b Merge pull request #10724 from t895/auto-version-property
android: Use autoVersion when gradle property is set
2023-06-12 13:12:32 -07:00
Matías Locatti 28e1429daf Merge pull request #10699 from liamwhite/conditional-barrier
shader_recompiler: remove barriers in conditional control flow when device lacks support
2023-06-12 16:50:59 -03:00
bunnei d40c8428a0 Merge pull request #10693 from liamwhite/f64-to-f32
shader_recompiler: translate f64 to f32 when unsupported on host
2023-06-12 12:46:54 -07:00
Narr the Reg 707999d4c0 android: Add update support 2023-06-11 23:33:50 -06:00
Morph 492a4c705a Merge pull request #10718 from liamwhite/buffered-io
qt: use larger buffer for update install
2023-06-12 00:58:34 -04:00
Charles Lombardo c62bbe270a android: Use autogenerated hash code function for Game class 2023-06-11 21:15:13 -04:00
Charles Lombardo 8180d213d7 android: Use autoVersion when gradle property is set 2023-06-11 20:04:08 -04:00
Baptiste Marie 83f4158d6c input_common: Redesign mouse panning 2023-06-12 00:47:52 +02:00
bunnei 866b7c0632 Merge pull request #10668 from Kelebek1/reduce_vertex_bindings
Combine vertex/transform feedback buffer binding into a single call
2023-06-11 11:33:48 -07:00
bunnei e35f1fc123 Merge pull request #10713 from t895/gradle-updates
android: Gradle updates
2023-06-11 11:31:03 -07:00
Liam 26a9ebf326 qt: use larger buffer for update install 2023-06-11 11:43:04 -04:00
Charles Lombardo 81d4145aca android: Update dependencies 2023-06-11 02:17:29 -04:00
Charles Lombardo 6d1b8d6ca4 android: Differentiate build types with new names
Change the applicationIdSuffix and app launcher title based on build type
2023-06-11 02:16:45 -04:00
Charles Lombardo 4ad4f6cf26 Android: Remove unused relWithVersionCode build type 2023-06-11 02:15:28 -04:00
Charles Lombardo 62a8bb65be android: Use ContentResolver to get file extension
Fixes an issue where we try to resolve file extension from URIs. Sometimes the URI will not contain the file name at all and instead a string of numbers. Here we query the content resolver and guarantee that we get a file name every time.
2023-06-11 01:41:58 -04:00
bunnei e1402935d9 android: Fix screen orientation & blurriness. 2023-06-10 15:13:06 -07:00
bunnei 2259f8a788 Merge pull request #10670 from liamwhite/fxaa2
vk_blit_screen: use higher bit depth for fxaa
2023-06-10 14:35:23 -07:00
Liam 947a4f6141 shader_recompiler: translate f64 to f32 when unsupported on host 2023-06-10 12:38:49 -04:00
Liam b646ac2908 shader_recompiler: remove barriers in conditional control flow when device lacks support 2023-06-10 12:30:39 -04:00
Morph 2affb40418 Merge pull request #10685 from liamwhite/serialization-is-hard
qt: persist framerate sync option
2023-06-10 12:28:00 -04:00
bunnei 33fe748bd3 Merge pull request #10691 from t895/nro-check
android: Add proper homebrew check
2023-06-09 23:59:51 -07:00
Charles Lombardo b1b9075f2d android: Add proper homebrew check 2023-06-09 20:17:51 -04:00
Charles Lombardo 1595600bf2 android: Fix input overlay version check 2023-06-09 15:15:57 -04:00
liamwhite dbe291a1b2 Merge pull request #10614 from xcfrg/shader-backend-status-bar
yuzu: add opengl shader backend info in status bar
2023-06-09 09:46:11 -04:00
Liam 99580c36b0 qt: persist framerate sync option 2023-06-09 09:40:34 -04:00
liamwhite 82dace133c Merge pull request #10623 from german77/backup
service: nfc: Add backup support
2023-06-08 21:54:12 -04:00
liamwhite b1fb8817dc Merge pull request #10666 from liamwhite/my-framerate-is-fine
nvnflinger: allow locking framerate during video playback
2023-06-08 21:53:57 -04:00
liamwhite 4db4eeb321 Merge pull request #10676 from bunnei/fix-mi-5-android
android: EmulationActivity: Fix orientation on Mi Pad 5.
2023-06-08 21:53:51 -04:00
bunnei 571c5c728e android: EmulationActivity: Fix orientation on Mi Pad 5. 2023-06-08 17:20:13 -07:00
Tokarev Artem 07000c5c4c Fix potentially uninitialized local variable warning 2023-06-09 05:12:22 +05:00
Liam 2046bead0e image_info: adjust rescale thresholds and refactor constant use 2023-06-08 17:46:40 -04:00
Liam 7e5be01a48 vk_blit_screen: use higher bit depth for fxaa 2023-06-08 11:27:57 -04:00
Kelebek1 ac23abacac Combine vertex/transform feedback buffer binding into a single call 2023-06-08 12:13:27 +01:00
Liam 1b33ebdde2 nvnflinger: allow locking framerate during video playback 2023-06-08 01:15:51 -04:00
Morph 6b460f860e nvdisp: Fix SingleCore frametime reporting 2023-06-07 22:04:02 -04:00
Morph 52a219cfe9 core_timing: Fix SingleCore cycle timer 2023-06-07 21:44:42 -04:00
Morph 1b83c7eab4 (wall, native)_clock: Add GetGPUTick
Allows us to directly calculate the GPU tick without double conversion to and from the host clock tick.
2023-06-07 21:44:42 -04:00
Morph e25d41580b time: Use compile time division for TimeSpanType conversion 2023-06-07 21:44:42 -04:00
Morph 2856fadaa0 core_timing: Use CNTPCT as the guest CPU tick
Previously, we were mixing the raw CPU frequency and CNTFRQ.
The raw CPU frequency (1020 MHz) should've never been used as CNTPCT (whose frequency is CNTFRQ) is the only counter available.
2023-06-07 21:44:42 -04:00
Morph fb3bb63880 nvnflinger: Acquire lock prior to signaling the vsync variable 2023-06-07 21:44:42 -04:00
Morph c264630ba4 (wall, native)_clock: Rework NativeClock 2023-06-07 21:44:42 -04:00
Morph 728048edfe x64: Deduplicate RDTSC usage 2023-06-07 21:44:42 -04:00
bunnei 400286b7a0 Merge pull request #10650 from qurious-pixel/android_tv
Android TV banner
2023-06-07 16:32:25 -07:00
qurious-pixel 2984cc4b30 remove version code declaration 2023-06-07 13:27:51 -07:00
liamwhite c537713dc2 Merge pull request #10655 from Morph1984/msvc-cxx20
CMakeLists: Force C++20 on MSVC due to conflicts with C++23 modules
2023-06-07 14:04:25 -04:00
liamwhite 06a6786a42 Merge pull request #10635 from mrcmunir/l4t-tx1-nvidia
Make VK_EXT_robustness2 optional
2023-06-07 14:04:14 -04:00
liamwhite 93372f503a Merge pull request #10476 from ameerj/gl-memory-maps
OpenGL: Make use of persistent buffer maps in buffer cache
2023-06-07 14:03:57 -04:00
liamwhite c2958ae5b6 Merge pull request #10583 from ameerj/ill-logic
AccelerateDMA: Fix incorrect check in Buffer<->Texture copies
2023-06-07 14:03:40 -04:00
liamwhite c99586dc47 Merge pull request #10591 from keve1227/localized-game-icons
Localize game icons
2023-06-07 14:03:28 -04:00
Morph 4d37337551 CMakeLists: Force C++20 on MSVC due to conflicts with C++23 modules
The latest version of MSVC STL brings C++23 standard library modules, which conflict with precompiled headers.
Disabling with /experimental:module- has no effect, so force C++20 in the meantime while we wait for module support in other compilers.
2023-06-06 20:20:09 -04:00
german77 4255ac45d1 service: nfc: Add backup support 2023-06-06 17:06:21 -06:00
Live session user 9cf85cb9e3 Android TV banner 2023-06-06 11:32:25 -07:00
Narr the Reg fa13ede502 android: Set version code 2023-06-06 12:14:38 -06:00
Carlos Estrague / Mrc_munir 1de6e7a3e5 Updated to lexicographical order suggestions 2023-06-06 19:33:52 +02:00
Abandoned Cart 5e1a62e7af android: Improve Gradle build configuration 2023-06-06 12:46:21 -04:00
lat9nq 7856e40be5 vk_device_info: Clean up includes [IWYU] 2023-06-06 01:54:44 -04:00
lat9nq b381d140f9 vk_device_info: Add SPDX data 2023-06-06 01:54:44 -04:00
lat9nq 3263f49390 yuzu-qt: Load Vulkan device info at startup
Loading it when the configuration opens now incurs a noticeable delay.
We also don't need to rediscover the same data repeatedly each time the
configuration opens.

Moves vulkan device info discovery to yuzu's startup as opposed to the
configure_graphics constructor.
2023-06-06 01:54:44 -04:00
bunnei 5b8f185151 android: audio_core: sink_stream: Remove unnecessary check. 2023-06-05 21:47:36 -07:00
bunnei 31ad92b287 Merge pull request #10508 from yuzu-emu/lime
Project Lime - yuzu Android Port
2023-06-05 21:43:43 -07:00
Carlos Estrague / Mrc_munir e450a7d28c Make VK_EXT_robustness2 optional
For some reason nvidia implemented Vulkan 1.2 supported without support for VK_EXT_robustness2 in tegra X1/X2 .

Fix vulkan work in TX1/TX2  L4T drivers .
2023-06-06 06:32:47 +02:00
bunnei f9db8b7c70 Merge pull request #10633 from t895/variable-surface-ratio
android: Use a custom view for changing emulation aspect ratio
2023-06-05 20:27:58 -07:00
bunnei 09ee7b07a0 Merge pull request #10578 from PabloG02/lime-firmware&logs
Add UI to import firmware and share logs
2023-06-05 17:41:19 -07:00
bunnei c09c2c9292 android: HomeSettingsFragment: Use string resource for "Share log". 2023-06-05 17:40:43 -07:00
Charles Lombardo f83acbd1ae android: Use a custom view for changing emulation aspect ratio
Credit to the Skyline team for the FixedRatioSurfaceView.
2023-06-05 20:24:36 -04:00
bunnei 12f79c6844 Merge pull request #10611 from liamwhite/audio-deadlock
audio_renderer: resolve adsp thread deadlock shutdown
2023-06-05 17:15:19 -07:00
bunnei eb0ebf2282 Merge pull request #10618 from t895/licenses
android: Add licenses page
2023-06-05 17:14:15 -07:00
PabloG02 582f6df48c Address feedback 2023-06-06 00:07:54 +02:00
lat9nq 2556a6c78c tz_manager: Fix comparison to wrong integer 2023-06-05 15:15:23 -04:00
lat9nq c95977a29f tz_manager: Implement missing transition times
time_zone_manager: Use s64 storage
2023-06-05 15:15:23 -04:00
lat9nq 021df7a2e1 tz_manager: Warn on unimplemented code 2023-06-05 15:15:23 -04:00
lat9nq c82d11ff73 tz_manager: Fix character offset not advancing 2023-06-05 15:15:23 -04:00
lat9nq 95faad1413 tz_manager: Fix off-by-one error 2023-06-05 15:15:23 -04:00
lat9nq 5ab84435dc time_zone: Handle offset time zones
time_zone: Remove maybe_unused

time_zone: Use s64 storages

time_zone: Catch by reference
2023-06-05 15:15:23 -04:00
lat9nq 60e705fd6d time_zone_binary: Add zoneinfo data
Adds the basic time zone data for the system archive.

time_zone_binary: Implement full system archive

time_zone_binary: Remove unneeded template

tz_binary: Make GenerateFiles static
2023-06-05 15:15:23 -04:00
Narr the Reg c934089969 time: Implement missing services
Implements GetTotalLocationNameCount LoadLocationNameList and
GetTimeZoneRuleVersion.

tz-manager: Fix sign issue
2023-06-05 15:15:11 -04:00
lat9nq 99d8774310 time_zone_manager: Implement go_ahead/go_back 2023-06-05 15:15:11 -04:00
lat9nq bd9ab73ba8 tz_content_manager: Try the system time zone first
If we can't find the normal time zone string, try searching for the
closest one.
2023-06-05 15:15:11 -04:00
lat9nq 2c92d48491 common: Move system time zone string detection
Moves it from Settings to Common::TimeZone, since this algorithm doesn't
depend on the setting. It also lets us use it in other libraries.

common: Various fixes

time_zone: Don't double up the std::abs

Too many absolute values were causing mirrored time zones to resolve
as the same.
2023-06-05 15:15:11 -04:00
lat9nq 29c66764bb configure_system: Remove external offset on custom rtc 2023-06-05 15:15:11 -04:00
lat9nq a379c50acc time: Remove auto timezone consideration
GetTimeZoneString no longer reports a setting unique to yuzu, so we
can assume a valid timezone string in core.
2023-06-05 15:15:11 -04:00
lat9nq e2bb24f012 settings: Always report a valid time zone
Prevents needing to deduce the non-Switch setting in core. Instead, we
deduce the meaning of this setting where the heresy is committed, in
common.

settings: Remove strftime usage

GetTimeZoneString: Use standard features

Also forces GMT on MinGW due to broken strftime.
2023-06-05 15:15:11 -04:00
lat9nq 5ecd76f619 time_manager: Don't offset RTC by system time zone
This causes the emulated system's universal time to be on the user's clock, and the user time to
be off if they set a time zone.

time_manager: Remove GetExternalRtcTime
2023-06-05 15:15:11 -04:00
lat9nq 6457b99586 tz_content_manager: Detect system time zone
Uses C++20 tzdb to determine the system timezone. The switch uses the
597 posix time zones, so this needs tests if the system time zone isn't
posix-compliant.
2023-06-05 15:15:11 -04:00
Charles Lombardo f51882a9ae android: Create licenses page 2023-06-05 14:34:23 -04:00
bunnei 29d01cd2a7 Merge pull request #10613 from t895/settings-changes
android: String and settings organization changes
2023-06-04 19:17:42 -07:00
Charles Lombardo 079a3deced android: Move settings to debug submenu 2023-06-04 19:53:27 -04:00
Charles Lombardo 73440cbb01 android: Load settings at the start of each activity 2023-06-04 19:37:10 -04:00
xcfrg 178b2a0b69 yuzu: add opengl shader backend info in status bar 2023-06-04 17:24:30 -04:00
bunnei 1c624b1b29 Merge pull request #10594 from liamwhite/double-patch
fsp-srv: avoid patching romfs multiple times
2023-06-04 13:24:47 -07:00
PabloG02 14665c97f2 Attempt to move the unzip coroutine to a ViewModel 2023-06-04 20:52:12 +02:00
PabloG02 25be1f62cd android: update strings 2023-06-04 20:52:12 +02:00
PabloG02 1b3b1592ea android: add option to share log 2023-06-04 20:52:12 +02:00
PabloG02 b63d3b7fce android: add option to install firmware 2023-06-04 20:52:12 +02:00
PabloG02 3c15b89b78 android: move unzip function to FileUtil and use SecurityException 2023-06-04 20:50:00 +02:00
Charles Lombardo 546a2653b9 android: Several string changes 2023-06-04 13:30:56 -04:00
Liam 16bd50f9b4 audio_renderer: resolve adsp thread deadlock shutdown 2023-06-04 13:00:10 -04:00
bunnei eb15ff27dd Merge pull request #10588 from liamwhite/vfs-cached
vfs: add vfs_cached for romfs build
2023-06-03 23:23:45 -07:00
Abandoned Cart d3b46a88af android: Resolve a couple Gradle warnings 2023-06-04 02:06:38 -04:00
Abandoned Cart fa02375617 android: Add support for split foldable view 2023-06-03 22:57:28 -04:00
Kevin Sundqvist Norlén 596dc7ebb7 Fix typo
Co-authored-by: liamwhite <liamwhite@users.noreply.github.com>
2023-06-03 21:31:44 +02:00
Abandoned Cart b360aa794e android: Replace deprecated and Java code 2023-06-03 15:16:25 -04:00
Liam 22d0bf11f1 fsp-srv: avoid patching romfs multiple times 2023-06-03 14:27:08 -04:00
Keve1227 0cadb7a705 Update Chinese NX language names
... as per the TLoZ: TotK icon files. Would this conflict with older games?
2023-06-03 17:23:14 +02:00
Keve1227 69daffcc2f Issue a reload if the system language changed 2023-06-03 17:17:03 +02:00
Keve1227 7f4c596af2 Pick game icon based on the configured system language 2023-06-03 17:13:24 +02:00
Liam 445948d297 romfs: use vfs_cached for romfs output 2023-06-03 08:56:59 -04:00
Liam 3fd364d3bb vfs: add vfs_cached for romfs build 2023-06-03 08:50:54 -04:00
Charles Lombardo 80069f2bc4 android: Fix crash on importing invalid save 2023-06-03 00:06:08 -07:00
bunnei f4dd94ab58 android: vk_presentation_manager: Fix unusued needs_recreation. 2023-06-03 00:06:08 -07:00
Charles Lombardo 82cf343786 android: Rename "Input Overlay" to "Overlay Options" 2023-06-03 00:06:08 -07:00
Charles Lombardo 53547f7f37 android: Adjust import/export saves dialog 2023-06-03 00:06:08 -07:00
Charles Lombardo 30c65465d8 android: Warning dialogs for key errors 2023-06-03 00:06:08 -07:00
bunnei 8e9813a618 android: vk_turbo_mode: Remove unnecessary device recreation.
- Fixes a rare crash.
2023-06-03 00:06:08 -07:00
bunnei cb077cc1b0 android: EmulationFragment: Remove unnecessary surface destroy on pause. 2023-06-03 00:06:08 -07:00
bunnei fb362f0b6e android: renderer_vulkan: Fix crash with surface recreation. 2023-06-03 00:06:07 -07:00
bunnei d57495d3c0 android: Fix presentation layout on foldable and tablet devices. 2023-06-03 00:06:07 -07:00
Charles Lombardo cbfc1d7809 android: Enable overlay scale/opacity dialog 2023-06-03 00:06:07 -07:00
PabloG02 09bbcceec6 Add image to card_game.xml to preview in the Layout Editor 2023-06-03 00:06:07 -07:00
PabloG02 aa5437bc16 Save the position of buttons as a percentage 2023-06-03 00:06:07 -07:00
Charles Lombardo 0153f39bc1 android: Don't crash the app when selecting a zip that causes a SecurityException 2023-06-03 00:06:07 -07:00
bunnei 122ff50c1a input_common: Fix virtual amiibos 2023-06-03 00:06:06 -07:00
bunnei bbd4f9c722 android: audio_core: Avoid shutdown hang. 2023-06-03 00:06:06 -07:00
bunnei a7696575f1 android: ForegroundService: Handle null intent. 2023-06-03 00:06:06 -07:00
bunnei a01f8ae529 android: ImportExportSavesFragment: Cleanup strings. 2023-06-03 00:06:06 -07:00
bunnei 29f677f10d Update src/android/app/src/main/java/org/yuzu/yuzu_emu/fragments/ImportExportSavesFragment.kt 2023-06-03 00:06:06 -07:00
PabloG02 5091df34bf Remove `?.` 2023-06-03 00:06:06 -07:00
PabloG02 b96e520f89 Check if folder exists before letting the user import/export saves 2023-06-03 00:06:06 -07:00
PabloG02 fdfea60242 Add save import/export in UI 2023-06-03 00:06:06 -07:00
Charles Lombardo 57afc35f1a android: Fix FPS text getting cut off by rounded display corners 2023-06-03 00:06:05 -07:00
Charles Lombardo 074fc0bc13 android: Prevent deleting the settings file while a game is running 2023-06-03 00:06:05 -07:00
Charles Lombardo 64110e582c android: Fix link text color for base theme dialog 2023-06-03 00:06:05 -07:00
bunnei 04eabc45e5 android: Various fixes for CI. 2023-06-03 00:06:05 -07:00
bunnei cb9ba1b004 android: externals: Update libadrenotools, use useLegacyPackaging. 2023-06-03 00:06:05 -07:00
Charles Lombardo 70b013ab2f android: Re-enable service notification 2023-06-03 00:06:05 -07:00
Charles Lombardo ecdbaecea2 android: Ensure keys are loaded before populating games list 2023-06-03 00:06:05 -07:00
Charles Lombardo aadc63e1b5 android: Use dialog fragment for the reset settings dialog 2023-06-03 00:06:05 -07:00
Charles Lombardo 1ca8ba6864 android: Upgrade AGP to 8.0.2 2023-06-03 00:06:04 -07:00
Charles Lombardo f4077c398b android: Show notification permission page during setup 2023-06-03 00:06:04 -07:00
Charles Lombardo aa9911ade5 android: DIsable FPS counter by default 2023-06-03 00:06:04 -07:00
Charles Lombardo dbe7cc58e3 android: Improve searches with one character
The Jaccard algorithm is great for searches with 2 or more characters but nothing is returned for searches with one character. To get around this, just search with JaroWinkler for single character searches.
2023-06-03 00:06:04 -07:00
Charles Lombardo 15e3bb4cfb android: Stop building x86 packages in APKs
This was really only meant for building the app to run in an emulator. If this is necessary, just add manually.
2023-06-03 00:06:04 -07:00
Charles Lombardo f2e0a38157 android: Add FPS toggle 2023-06-03 00:06:04 -07:00
Charles Lombardo 75ae2c948e android: Clean up app build.gradle
Removes the conflicting declaration of "version" and changes to versionCode that did nothing.
2023-06-03 00:06:04 -07:00
bunnei 445a1f1b18 video_core: vk_rasterizer: Decrease draw dispatch count for Android. 2023-06-03 00:06:04 -07:00
bunnei 803c50a861 android: config: Expose VSync as a configurable setting. 2023-06-03 00:06:04 -07:00
bunnei 230dd8192d android: GPU: Enable async presentation, increase frames in flight. 2023-06-03 00:06:03 -07:00
Charles Lombardo bb48ac9fe3 android: Enable onBackInvokedCallback
For now this enables the ability to see the new Android 13 back gesture animations but later we can create custom animations that follow the back gesture.
2023-06-03 00:06:03 -07:00
Charles Lombardo a7fa14edd3 android: Remove deprecated use of onBackPressed() 2023-06-03 00:06:03 -07:00
Charles Lombardo 83bd1cf20c android: Add option for touch overlay haptics
Disabled by default
2023-06-03 00:06:03 -07:00
Charles Lombardo 5341f58f2f android: Improve missing game handling
Previously the app would crash if you selected a game that no longer existed. Now we show an error message and reload the games list to remove any invalid games from the list.
2023-06-03 00:06:03 -07:00
Charles Lombardo f0beadece2 android: Clean up dependencies
Additionally updates material and androidx core libraries
2023-06-03 00:06:03 -07:00
Charles Lombardo e470a37e61 android: Delete java code style file 2023-06-03 00:06:03 -07:00
Charles Lombardo 04afc03500 android: Settings UI tweaks
New spacing and fonts for list items
2023-06-03 00:06:03 -07:00
Charles Lombardo 3dbe044910 android: Simplify setup in search and games fragments 2023-06-03 00:06:03 -07:00
Charles Lombardo cb564b067b android: Use collapsing toolbar layout in settings 2023-06-03 00:06:03 -07:00
Charles Lombardo d0d7e555aa android: Remove unnecessary JvmStatic/JvmField annotations 2023-06-03 00:06:02 -07:00
Charles Lombardo 00d0a93e65 android: Fix navigation rail animation in rtl layout 2023-06-03 00:06:02 -07:00
Charles Lombardo 39de6c6e54 android: Use cutout insets on setup fragment 2023-06-03 00:06:02 -07:00
Charles Lombardo 54bf98ef0b android: Button to reset all settings 2023-06-03 00:06:02 -07:00
Charles Lombardo 3c6b472134 android: Use proguard file in relWithDebInfo 2023-06-03 00:06:02 -07:00
Charles Lombardo 537fcc8339 android: Fix background color within inset areas 2023-06-03 00:06:02 -07:00
Charles Lombardo 715f83a060 android: Shortcut to settings activity on reselection 2023-06-03 00:06:01 -07:00
Charles Lombardo 6be54d1aa8 android: Expose custom RTC setting 2023-06-03 00:06:01 -07:00
Charles Lombardo 6b1767ac32 android: Reset setting on long press 2023-06-03 00:06:01 -07:00
Charles Lombardo 5fd13f02fd android: Fix issues with ea/main icons and version codes
Now all yuzu icon variants are taken care of and now we have a build variant that uses the versioning we need for the play store.
2023-06-03 00:06:01 -07:00
Charles Lombardo 5fa9b35e3f android: Move theme options out of advanced settings 2023-06-03 00:06:01 -07:00
Charles Lombardo a3844cc597 android: Check if cached games are valid
Fixes bug when you close yuzu, delete games, and reopen to an instant crash.
2023-06-03 00:06:01 -07:00
german77 3e1613dc20 android: Invert rotation to match phone orientation 2023-06-03 00:06:01 -07:00
bunnei c55db7e03d android: vulkan_device: Skip BGR565 emulation on S8gen2. 2023-06-03 00:06:01 -07:00
bunnei 576cfa137b android: config: Use default anisotropic filtering. 2023-06-03 00:06:01 -07:00
Charles Lombardo 7c5e6bc895 android: Remove top padding from in game menu items 2023-06-03 00:06:00 -07:00
Charles Lombardo c478f51b46 android: Use different icons for mainline/ea 2023-06-03 00:06:00 -07:00
Charles Lombardo 7072a9b19c android: Add early access upgrade fragment
We now have a second build flavor that will determine whether the "Get Early Access" button appears.
2023-06-03 00:06:00 -07:00
bunnei 4e2cdf74a3 android: vulkan_device: Only compile OverrideBcnFormats when used. 2023-06-03 00:06:00 -07:00
Liam 5d9250daf4 android: remove spurious warnings about BCn formats when patched with adrenotools 2023-06-03 00:06:00 -07:00
bunnei ac32fd08e9 android: video_core: Disable some problematic things on GPU Normal. 2023-06-03 00:06:00 -07:00
bunnei 0f676451b3 android: settings: Use mailbox vsync by default. 2023-06-03 00:06:00 -07:00
bunnei baa09b9cef android: video_core: Disable problematic compute shaders.
- Fixes #104.
2023-06-03 00:06:00 -07:00
Charles Lombardo 053f0fb1fe android: Update progard to fix settings crash
R8 full mode was removing important classes from Wini that would cause a crash on saving settings. This keeps the relevant classes and suppresses warnings about irrelevant ones.
2023-06-03 00:05:59 -07:00
bunnei 2650faea9d android: vulkan: Recreate surface after suspension & adapt to async. presentation. 2023-06-03 00:05:59 -07:00
Charles Lombardo 710e19a4bb android: Game data cache 2023-06-03 00:05:59 -07:00
Charles Lombardo 50187bc017 android: Update to Kotlin 1.8.21 2023-06-03 00:05:59 -07:00
Charles Lombardo 1601f9e435 android: Disable jetifier
We no longer depend on any legacy libraries that required this flag
2023-06-03 00:05:59 -07:00
Charles Lombardo 76108cee0a android: Update dependencies 2023-06-03 00:05:59 -07:00
Charles Lombardo 1367956b05 android: Migrate to AGP 8.0.1 2023-06-03 00:05:59 -07:00
Charles Lombardo 3c3f7dcf2e android: Enable non-transitive R classes
New default going forward for new android projects. Best to follow the new standard.
2023-06-03 00:05:59 -07:00
bunnei 4059d2f11d android: config: Enable asynchronous presentation by default on Android. 2023-06-03 00:05:59 -07:00
bunnei 3571f28cde video_core: Enable support_descriptor_aliasing on Turnip, disable storage atomic otherwise. 2023-06-03 00:05:58 -07:00
german77 91596d5fd5 android: fix deadzone calculation 2023-06-03 00:05:58 -07:00
Charles Lombardo da26114d3f android: Fix background color when starting emulation 2023-06-03 00:05:58 -07:00
Charles Lombardo 2071d4fdc1 android: Persistent scrollbars on home settings fragment 2023-06-03 00:05:58 -07:00
Charles Lombardo 7930f6ea5d android: Use short build hash 2023-06-03 00:05:58 -07:00
Charles Lombardo fcebfe8943 android: Use navigation bar shade view 2023-06-03 00:05:58 -07:00
Charles Lombardo c1a972d2a7 android: About fragment 2023-06-03 00:05:58 -07:00
Charles Lombardo 6a38aa2a7d android: Use x-axis animation for navigation rail 2023-06-03 00:05:58 -07:00
Charles Lombardo dfd0055339 android: Sort games alphabetically by default 2023-06-03 00:05:58 -07:00
Charles Lombardo 3287ba7d91 android: New icons for navigation bar 2023-06-03 00:05:57 -07:00
Charles Lombardo 790445276e android: New icons for home settings fragment 2023-06-03 00:05:57 -07:00
Charles Lombardo 0928955a44 android: Add navigation rail 2023-06-03 00:05:57 -07:00
Charles Lombardo 0c04d1be50 android: Search Fragment 2023-06-03 00:05:57 -07:00
Charles Lombardo 932a6f42a2 android: Fix potential zip traversal exploit 2023-06-03 00:05:57 -07:00
german77 c7f27b72be android: Add dedicated show overlay checkbox 2023-06-03 00:05:57 -07:00
Charles Lombardo e53f927cb6 android: Add user directory shortcut 2023-06-03 00:05:57 -07:00
german77 87eacd09a0 android: Fix inline keyboard input 2023-06-03 00:05:57 -07:00
Charles Lombardo 766347e44d android: Fix grammatical mistake in video core error message 2023-06-03 00:05:56 -07:00
Charles Lombardo 4010d5e9a3 android: Adjust wording on GPU driver install button 2023-06-03 00:05:56 -07:00
Narr the Reg 9d1c4a25a0 android: Add deadzone to stick input 2023-06-03 00:05:56 -07:00
german77 de7428c61e android: Move motion listener to emulation activity 2023-06-03 00:05:56 -07:00
Narr the Reg c4925fc96a core: hid: Finish linking motion from virtual controllers 2023-06-03 00:05:56 -07:00
Charles Lombardo 06104b04b6 android: Change wording for "Add Games" button (#100)
Co-authored-by: bunnei <bunneidev@gmail.com>
2023-06-03 00:05:56 -07:00
Charles Lombardo 2e39fbd326 android: Scroll shortcut for games list
If you reselect the "Games" menu item in the bottom navigation menu, the list smoothly scrolls to the top.
2023-06-03 00:05:56 -07:00
Charles Lombardo 1113a08228 android: Setup screen hotfix
Added help button link for add games warning and a check for whether a task was completed on a given screen.
2023-06-03 00:05:56 -07:00
Charles Lombardo 92ce6a09cc android: Swap Default and Install buttons for GPU driver installation dialog 2023-06-03 00:05:56 -07:00
Charles Lombardo 84be5142e1 android: Add warnings to setup screens 2023-06-03 00:05:56 -07:00
Charles Lombardo 1684d4905f android: Allow search bar to scroll offscreen 2023-06-03 00:05:55 -07:00
Charles Lombardo c191c5e33b android: Update app icon
Small icon updates from Flam
2023-06-03 00:05:55 -07:00
Charles Lombardo 86c037531e android: Change organization of the settings tab in the home screen 2023-06-03 00:05:55 -07:00
Charles Lombardo e749fa534c android: Properly pop setup fragment from the back stack 2023-06-03 00:05:55 -07:00
Charles Lombardo fa3dbb7f01 android: Vertically scalable setup pages
Previously the setup pages would remain at a fixed height but now the icon and two text boxes will give up space as a device gets shorter. This eliminates the need for a scrolling view further problems with padding.
2023-06-03 00:05:55 -07:00
Charles Lombardo 7c08648906 android: Fix setup rotation bug
If you rotated the device at the "Add Games" screen the buttons would disappear until you trigged them from the beginning page swap. Now button state is saved across recreation.
2023-06-03 00:05:55 -07:00
Charles Lombardo 07d295f231 android: Temporarily switch for a fixed version code for testing 2023-06-03 00:05:55 -07:00
Charles Lombardo f0ea804186 android: Fix alignment of SwipeRefreshLayout 2023-06-03 00:05:55 -07:00
Charles Lombardo 4677e684ec android: Shape/spacing adjustments to game card
Ripple effect now reaches into rounded corners, icon size changed, company text removed, title font adjusted, and spacing around the card was adjusted as well. Text also doesn't get cut off anymore and instead scrolls indefinitely on one line.
2023-06-03 00:05:55 -07:00
Charles Lombardo aa6a2ec832 android: Manual tweaks for dialog colors
Small fix for Flam
2023-06-03 00:05:54 -07:00
Charles Lombardo 4e727a4abf android: Fix black backgrounds bug
Start using a specific night mode check because black backgrounds could apply incorrectly when using the light app mode, dark system mode, and black backgrounds. Launching the settings activity will show light mode colors/navigation bars but with black backgrounds.
2023-06-03 00:05:54 -07:00
Charles Lombardo 6b3335cf12 android: Use navigation bar shade view for settings activity 2023-06-03 00:05:54 -07:00
Charles Lombardo f74a2c1bfa android: Disable editing themes during emulation 2023-06-03 00:05:54 -07:00
Charles Lombardo a38c9d2651 android: Prevent situation where binding is called on a null view 2023-06-03 00:05:54 -07:00
Charles Lombardo 744ec1961c android: Add black backgrounds toggle 2023-06-03 00:05:54 -07:00
Charles Lombardo c24322ce4c android: Add theme mode picker 2023-06-03 00:05:54 -07:00
Charles Lombardo ab3ff694d5 android: Add theme picker 2023-06-03 00:05:54 -07:00
Charles Lombardo 119fe3996d android: Prevent potential abstract settings crash 2023-06-03 00:05:54 -07:00
Charles Lombardo 77131b8ab0 android: Fix cast for abstract settings 2023-06-03 00:05:54 -07:00
Charles Lombardo 7f765aa0a1 android: Create xml for Material You theme 2023-06-03 00:05:54 -07:00
Charles Lombardo 386aaea2b3 android: Remove check for API 29 in themes 2023-06-03 00:05:53 -07:00
Charles Lombardo 0f6270ca65 android: Adjustments to home option card
Several spacing/color adjustments provided by Flam
2023-06-03 00:05:53 -07:00
Charles Lombardo 55a2496645 android: Use different colors for logo in options menu
Reverting to the official logo colors
2023-06-03 00:05:53 -07:00
Charles Lombardo 80e38750aa android: New default theme colors 2023-06-03 00:05:53 -07:00
Charles Lombardo 0d689b87e9 android: Use libnx default icon
Credit to jaames for the original icon
2023-06-03 00:05:53 -07:00
Liam 96e9f4d582 android: enable LTO 2023-06-03 00:05:53 -07:00
Charles Lombardo 97286fee7e android: Show error if invalid keys file is selected
There aren't MIME types specific enough for filtering out files that aren't amiibo or production keys. So here we just check for the extensions "bin" or "keys" where appropriate and stop the process if incorrect. Previously you could select any document and it could cause the app to hang.
2023-06-03 00:05:53 -07:00
Charles Lombardo 159d55223b android: Fix first time setup scrolling bug
If you quickly scrolled from the second page to the first and then back, the next/back buttons would disappear.
2023-06-03 00:05:53 -07:00
Charles Lombardo 61864877d7 android: Fix A button preference key 2023-06-03 00:05:53 -07:00
Charles Lombardo bdf4119fa4 android: First time setup screen 2023-06-03 00:05:52 -07:00
Charles Lombardo fe113db2f2 android: Prevent editing unsafe settings at runtime
There currently isn't a visual "disabled" cue for any of the view holders that aren't the switch setting. This will be improved in the future.
2023-06-03 00:05:52 -07:00
Charles Lombardo e691d74a1a android: Abstract settings
Previously we could only add settings that would change our ini file. Now we can create abstract settings in our presenter to alter things like shared preferences for theme support!
2023-06-03 00:05:52 -07:00
german77 f88fce2c11 android: Implement gamepad input 2023-06-03 00:05:52 -07:00
Charles Lombardo 0d2549b062 android: Bump minimum version to Android 11 2023-06-03 00:05:52 -07:00
Charles Lombardo 373eab5529 android: Decouple status bar shade from navigation bar visibility 2023-06-03 00:05:52 -07:00
Charles Lombardo 0ee7e74fb8 android: Enable code minification 2023-06-03 00:05:52 -07:00
Charles Lombardo 75d3612139 android: Switch from a colored status bar to a custom view
Allows for smoother transitions with the search bar
2023-06-03 00:05:52 -07:00
Charles Lombardo ac8bcc98a4 android: Adjustments to card_game
Removed a currently unused text view and moved to material text views.
2023-06-03 00:05:51 -07:00
Charles Lombardo f556705914 android: MainActivity overhaul
This moves several parts of the main activity into fragments that manage themselves to react to changes. UI changes like the appearance of a new search view or when the games list changes now gets updated via multiple view models. This also starts a conversion to the androidx navigation component which furthers the goals mentioned previously with more fragment responsibility. This will eventually allow us to use one activity with interchanging fragments and multiple view models that are stored within that central activity.

fdas
2023-06-03 00:05:51 -07:00
Charles Lombardo 6735b5dd2a android: Enforce Vulkan 1.1 support as minimum 2023-06-03 00:05:51 -07:00
Charles Lombardo 1c23ed27dd android: Update gradle version to 8.1 2023-06-03 00:05:51 -07:00
Charles Lombardo 929e93f0b5 android: Update app dependencies 2023-06-03 00:05:51 -07:00
Charles Lombardo ea8a2aa8c8 android: Convert gradle scripts to Kotlin DSL 2023-06-03 00:05:51 -07:00
bunnei 2810793b17 android: vulkan: Disable vertex_input_dynamic_state on Qualcomm. 2023-06-03 00:05:51 -07:00
bunnei 9cba432a12 android: settings: Add scaling filter & anti-aliasing options. (#66) 2023-06-03 00:05:50 -07:00
bunnei da0db2da17 android: video_core: Add support for disk shader cache. (#64) 2023-06-03 00:05:50 -07:00
bunnei e8efc6121d android: vulkan_debug_callback: Ignore many innocuous errors. 2023-06-03 00:05:50 -07:00
bunnei 9a9c860d55 android: config: Change docked mode and GPU accuracy to favor performance on Android. 2023-06-03 00:05:50 -07:00
german77 8da09657e6 service: account: Save user profile folder on first user creation 2023-06-03 00:05:50 -07:00
german77 a21d1dcd1e android: Initialize account manager 2023-06-03 00:05:50 -07:00
german77 ea63f26a20 android: Remove unsafe null check 2023-06-03 00:05:50 -07:00
Charles Lombardo 5b201decb8 android: Scale input overlay independently of system display scale 2023-06-03 00:05:50 -07:00
Charles Lombardo 61346cfe43 android: Use apply instead of commit for shared preferences
Previously we were operating on the assumption that apply'd settings wouldn't be visible immediately. This isn't true and settings will be accessible via memory before being stored to disk. This reduces any potential stutters caused by saving to shared preferences.
2023-06-03 00:05:50 -07:00
Charles Lombardo 4b3b59611b android: Add DPad slide toggle 2023-06-03 00:05:50 -07:00
Charles Lombardo 9f477c9592 android: Add relative stick center toggle 2023-06-03 00:05:49 -07:00
Charles Lombardo 5880b3d18d android: Make hash and branch accessible from BuildConfig 2023-06-03 00:05:49 -07:00
Charles Lombardo c04cc1b4f4 android: Backup shared preferences where applicable 2023-06-03 00:05:49 -07:00
Charles Lombardo e9aa7de8d2 android: Enable retaining app data after uninstall 2023-06-03 00:05:49 -07:00
Charles Lombardo aeeb148d1a android: Remove unused doFrame function 2023-06-03 00:05:49 -07:00
Charles Lombardo 485074b57f android: Convert NativeLibrary to Kotlin 2023-06-03 00:05:49 -07:00
Charles Lombardo 939dc1813e android: Remove LocalBroadcastManager
This causes a couple of minor changes to directory initialization. We don't have a lengthy initialization step so we could spend less time creating state receivers and just run initialization on the main thread. We also don't have a situation where external storage will be a concern so checks are removed in favor of a binary check to see if initialization is ready.

This additionally removes the unused DoFrame callback.
2023-06-03 00:05:49 -07:00
Charles Lombardo f41bca4873 android: Remove game database
The content provider + database solution was excessive and is now replaced with the simple file checks from before but turned into an array list held within a viewmodel.
2023-06-03 00:05:49 -07:00
Charles Lombardo df2e69f896 android: Adjust game icon loading 2023-06-03 00:05:49 -07:00
Charles Lombardo 229c4f5895 android: Remove unused dimensions files 2023-06-03 00:05:48 -07:00
Charles Lombardo 7c887a4901 android: Slightly reduce game card size 2023-06-03 00:05:48 -07:00
Charles Lombardo 157c5286c1 android: Only show company text view if it has content 2023-06-03 00:05:48 -07:00
Charles Lombardo 40d7b3724b android: Fix check for ok text in software keyboard 2023-06-03 00:05:48 -07:00
Narr the Reg 9d11e03d61 android: Implement amiibo reading from nfc tag 2023-06-03 00:05:48 -07:00
bunnei bf598273e9 android: vulkan_device: Disable VK_EXT_custom_border_color on Adreno.
- Causes crashes on sampler creation with Super Mario Odyssey.
2023-06-03 00:05:48 -07:00
Charles Lombardo 702b1a30ad android: Add toggle controls option to input overlay 2023-06-03 00:05:48 -07:00
Charles Lombardo 8c40cdbb5c android: Do not update FPS text on null view 2023-06-03 00:05:48 -07:00
Charles Lombardo 03275e4114 android: Convert keyboard applet to kotlin and refactor 2023-06-03 00:05:48 -07:00
bunnei 3a4270dbc2 android: Implement basic software keyboard applet. 2023-06-03 00:05:47 -07:00
bunnei f3dfb76eb6 android: config: Disable shader cache by default on Android. 2023-06-03 00:05:47 -07:00
german77 2e0e20e86b android: Fix fps counter not showing up 2023-06-03 00:05:47 -07:00
Charles Lombardo 4a06d464ff android: Prevent showing games on an invalid view 2023-06-03 00:05:47 -07:00
Charles Lombardo a8834fa20c android: Re-implement overlay editing 2023-06-03 00:05:47 -07:00
Charles Lombardo bbee31810f android: Fix popup menu going out of bounds 2023-06-03 00:05:47 -07:00
Charles Lombardo 5e2695275e android: Use autofit grid for games fragment 2023-06-03 00:05:47 -07:00
Charles Lombardo 8962c3456f android: Prevent updating empty game list text on invalid view 2023-06-03 00:05:47 -07:00
Charles Lombardo 8a76f253e4 android: Persist settings across configuration changes
Mostly things get refactored here to remove previous assumptions made about how the activity/fragment lifecycles would operate. The important change for persistence is removing the assumption that the user will be at the first settings fragment on recreation when deciding whether or not to reload settings. Now we check a flag in Settings to know if we loaded the settings within this lifecycle.
2023-06-03 00:05:47 -07:00
Charles Lombardo 4bc0f87d96 android: Store settings object in viewmodel 2023-06-03 00:05:47 -07:00
Charles Lombardo 8fa08abdb3 android: Remove configChanges exceptions 2023-06-03 00:05:46 -07:00
Charles Lombardo 188516a016 Android: Enable resizeable activities 2023-06-03 00:05:46 -07:00
Charles Lombardo 59b20e67da android: Fix emulation fragment comments 2023-06-03 00:05:46 -07:00
Charles Lombardo 947e46ef2e android: Use modal navigation drawer as in game menu 2023-06-03 00:05:46 -07:00
Charles Lombardo 99d76acb77 android: Make Game class parcelable 2023-06-03 00:05:46 -07:00
Charles Lombardo c41072feb0 android: Add kotlin parcelize plugin 2023-06-03 00:05:46 -07:00
Charles Lombardo ef1b2561ef android: Remove deprecated use of onActivityResult 2023-06-03 00:05:46 -07:00
Charles Lombardo bb5faf6558 android: Fix RTL layouts 2023-06-03 00:05:46 -07:00
Charles Lombardo f7fc5d6e07 android: Use ellipsis character 2023-06-03 00:05:46 -07:00
Charles Lombardo 6d28b14f2d android: Move all array strings to main strings file 2023-06-03 00:05:46 -07:00
Charles Lombardo c86d7eb8c2 android: Remove unused strings 2023-06-03 00:05:45 -07:00
Charles Lombardo 49417520ef android: Remove unused colors 2023-06-03 00:05:45 -07:00
Charles Lombardo 5fd53f09c3 android: Remove citra date time picker 2023-06-03 00:05:45 -07:00
Charles Lombardo f4fdf5a4ce android: Remove unused premium header layout 2023-06-03 00:05:45 -07:00
Charles Lombardo 1c00ddcd05 android: Remove unused fragment animations 2023-06-03 00:05:45 -07:00
Charles Lombardo 4155bd2144 android: Remove unused string arrays 2023-06-03 00:05:45 -07:00
Charles Lombardo 85e9d656b9 android: Remove unused integer xmls 2023-06-03 00:05:45 -07:00
Charles Lombardo 155ce37214 android: Refactor ic_launcher.xml to drawables 2023-06-03 00:05:45 -07:00
Charles Lombardo b17d58b523 android: Suppress lint in InsetsHelper 2023-06-03 00:05:45 -07:00
Charles Lombardo 8add51924f android: Add data extraction rules 2023-06-03 00:05:44 -07:00
Charles Lombardo 9af7547774 android: Remove requestLegacyExternalStorage attribute 2023-06-03 00:05:44 -07:00
Charles Lombardo cfb821e680 android: Remove unused permissions 2023-06-03 00:05:44 -07:00
Charles Lombardo 4330135912 android: Inset input overlay based on system cutouts 2023-06-03 00:05:44 -07:00
Narr the Reg 1eb2e781ff Use yuzu as category instead of citra 2023-06-03 00:05:44 -07:00
Charles Lombardo 6cebdba191 android: Stop updating fps counter when emulation stops 2023-06-03 00:05:44 -07:00
Charles Lombardo 5ef7478141 android: Move driver installation off of main thread
Additionally creates an indeterminate loading dialog during installation
2023-06-03 00:05:44 -07:00
Charles Lombardo 8ee6154d6d android: Fix crash when decodeGameIcon creates a null Bitmap 2023-06-03 00:05:44 -07:00
Charles Lombardo 3e088c768b android: Use view binding 2023-06-03 00:05:44 -07:00
Charles Lombardo dd0a0955eb android: Enable view binding 2023-06-03 00:05:44 -07:00
Charles Lombardo 7e48948d54 android: Refactor CheckBoxSetting to SwitchSetting 2023-06-03 00:05:44 -07:00
bunnei 542e0c39f7 android: EmulationActivity: Fix variable shadowing in fragment creation. 2023-06-03 00:05:43 -07:00
bunnei 43394945c9 android: res: fragment_emulation: Ensure FPS counter is shown. 2023-06-03 00:05:43 -07:00
Liam e3c37d97f9 common: link libandroid on android 2023-06-03 00:05:43 -07:00
Liam d54605d1a5 build: only enable adrenotools on arm64 2023-06-03 00:05:43 -07:00
Charles Lombardo e6740530e5 android: Use Skyline's document provider 2023-06-03 00:05:43 -07:00
Charles Lombardo 9238214837 android: Use androidx splash screen 2023-06-03 00:05:43 -07:00
Charles Lombardo 77075417b0 android: Replace Picasso with Coil 2023-06-03 00:05:43 -07:00
Charles Lombardo 0caa228190 android: New swipe to refresh color scheme 2023-06-03 00:05:43 -07:00
Charles Lombardo c550f3bfff android: New settings fragment animations 2023-06-03 00:05:43 -07:00
Charles Lombardo ee29f2a875 android: Use edge to edge 2023-06-03 00:05:43 -07:00
Charles Lombardo 6581821e39 android: Use Material 3 components 2023-06-03 00:05:42 -07:00
Charles Lombardo e73d0adc16 android: Modernize theme system 2023-06-03 00:05:42 -07:00
Charles Lombardo ff36c209a5 android: Use vector icons 2023-06-03 00:05:42 -07:00
Charles Lombardo cc5ee75b52 android: Use adaptive icon 2023-06-03 00:05:42 -07:00
bunnei 374f9cbfa2 android: settings: Dynamically evaluate valueAsString
Co-Authored-By: bunnei <bunneidev@gmail.com>
2023-06-03 00:05:42 -07:00
Charles Lombardo 13ee2288d2 android: Add license identifier 2023-06-03 00:05:42 -07:00
Charles Lombardo d88c5b4ea5 android: Convert YuzuApplication to Kotlin 2023-06-03 00:05:42 -07:00
Charles Lombardo 1234a59f8a android: Convert Action1 to Kotlin 2023-06-03 00:05:42 -07:00
Charles Lombardo bc26a0af50 android: Convert GameViewHolder to Kotlin 2023-06-03 00:05:41 -07:00
Charles Lombardo 4090e875d5 android: Remove ThemeUtil 2023-06-03 00:05:41 -07:00
Charles Lombardo 2ad75ab815 android: Convert StartupHandler to Kotlin 2023-06-03 00:05:41 -07:00
Charles Lombardo 8841429c4b android: Convert Log to Kotlin 2023-06-03 00:05:41 -07:00
Charles Lombardo b8b70aa422 android: Convert GpuDriverMetadata to Kotlin 2023-06-03 00:05:41 -07:00
Charles Lombardo 69ed6725b1 android: Convert GpuDriverHelper to Kotlin 2023-06-03 00:05:41 -07:00
Charles Lombardo f1b93071cc android: Convert GameIconRequestHandler to Kotlin 2023-06-03 00:05:41 -07:00
Charles Lombardo 5ffe5b5293 android: Convert ForegroundService to Kotlin 2023-06-03 00:05:41 -07:00
Charles Lombardo b13e6c53f3 android: Convert FileUtil to Kotlin 2023-06-03 00:05:41 -07:00
Charles Lombardo 35d37a1a4f android: Convert FileBrowserHelper to Kotlin 2023-06-03 00:05:41 -07:00
Charles Lombardo e0814f8716 android: Convert EmulationMenuSettings to Kotlin 2023-06-03 00:05:40 -07:00
Charles Lombardo 8f973863ae android: Convert DocumentsTree to Kotlin 2023-06-03 00:05:40 -07:00
Charles Lombardo 0fc825b449 android: Convert DirectoryStateReceiver to Kotlin 2023-06-03 00:05:40 -07:00
Charles Lombardo faf21f9d5d android: Convert DirectoryInitialization to Kotlin 2023-06-03 00:05:40 -07:00
Charles Lombardo f608dddeb2 android: Convert ControllerMappingHelper to Kotlin 2023-06-03 00:05:40 -07:00
Charles Lombardo 3b7e0f6fc2 android: Convert BiMap to Kotlin 2023-06-03 00:05:40 -07:00
Charles Lombardo dbac879874 android: Convert AddDirectoryHelper to Kotlin 2023-06-03 00:05:40 -07:00
Charles Lombardo 319e2017ef android: Convert PlatformGamesView to Kotlin 2023-06-03 00:05:40 -07:00
Charles Lombardo 7847ddab17 android: Convert PlatformGamesPresenter to Kotlin 2023-06-03 00:05:40 -07:00
Charles Lombardo f76121ec08 android: Convert PlatformGamesFragment to Kotlin 2023-06-03 00:05:40 -07:00
Charles Lombardo cdd8fc4b7f android: Convert MainView to Kotlin 2023-06-03 00:05:39 -07:00
Charles Lombardo f8d6cbc6f3 android: Convert MainPresenter to Kotlin 2023-06-03 00:05:39 -07:00
Charles Lombardo 242ecff4a1 android: Convert InputOverlayDrawableJoystick to Kotlin 2023-06-03 00:05:39 -07:00
Charles Lombardo d9bf961928 android: Convert MainActivity to Kotlin 2023-06-03 00:05:39 -07:00
Charles Lombardo e729ae33f5 android: Remove ExampleInstrumentedTest 2023-06-03 00:05:39 -07:00
Charles Lombardo 4f48baf769 android: Remove TwoPaneOnBackPressedCallback
Leftover UI code for dolphin's cheat system. Removing for now.
2023-06-03 00:05:39 -07:00
Charles Lombardo fec032d9b3 android: Convert InputOverlayDrawableDpad to Kotlin 2023-06-03 00:05:39 -07:00
Charles Lombardo bd1a31d467 android: Convert InputOverlayDrawableButton to Kotlin 2023-06-03 00:05:39 -07:00
Charles Lombardo d60daf7565 android: Convert InputOverlay to Kotlin 2023-06-03 00:05:39 -07:00
Charles Lombardo 75f608ff14 android: Remove DividerItemDecoration
Removed in favor of material components version
2023-06-03 00:05:39 -07:00
Charles Lombardo 4dff09a32b android: Inherit from Material 3 themes
Partially breaks the UI for now but is necessary to use new material components.
2023-06-03 00:05:38 -07:00
Charles Lombardo 2bfa1fcc36 android: Convert MinimalDocumentFile to Kotlin 2023-06-03 00:05:38 -07:00
Charles Lombardo 9725bf8103 android: Convert GameProvider to Kotlin 2023-06-03 00:05:38 -07:00
Charles Lombardo cf0f69d13d android: Convert GameDatabase to Kotlin 2023-06-03 00:05:38 -07:00
Charles Lombardo 0bf21f04c1 android: Convert Game to Kotlin 2023-06-03 00:05:38 -07:00
Charles Lombardo 569a7b7ae4 android: Convert EmulationFragment to Kotlin 2023-06-03 00:05:38 -07:00
Charles Lombardo ede993a8c3 android: Convert SettingsFile to Kotlin 2023-06-03 00:05:38 -07:00
Charles Lombardo 76b357cfe9 android: Convert SettingsFrameLayout to Kotlin 2023-06-03 00:05:38 -07:00
Charles Lombardo 51583a8842 android: Convert SettingsFragmentView to Kotlin 2023-06-03 00:05:38 -07:00
Charles Lombardo 1b9472a2d3 android: Convert SettingsFragmentPresenter to Kotlin 2023-06-03 00:05:38 -07:00
Charles Lombardo 7fc1459dad android: Convert SettingsFragment to Kotlin 2023-06-03 00:05:37 -07:00
Charles Lombardo 9dc5e6357a android: Convert SettingsActivityView to Kotlin 2023-06-03 00:05:37 -07:00
Charles Lombardo 7d5891fd2c android: Convert SettingsActivityPresenter to Kotlin 2023-06-03 00:05:37 -07:00
Charles Lombardo 8ae265d457 android: Convert SettingsActivity to Kotlin 2023-06-03 00:05:37 -07:00
Charles Lombardo 86d10dc029 android: Convert SubmenuViewHolder to Kotlin 2023-06-03 00:05:37 -07:00
Charles Lombardo 77129e3de3 android: Convert SliderViewHolder to Kotlin 2023-06-03 00:05:37 -07:00
Charles Lombardo 2bc7a87424 android: Convert SingleChoiceViewHolder to Kotlin 2023-06-03 00:05:37 -07:00
Charles Lombardo b468c5d052 android: Convert SettingViewHolder to Kotlin 2023-06-03 00:05:37 -07:00
Charles Lombardo 93d87111c5 android: Convert HeaderViewHolder to Kotlin 2023-06-03 00:05:37 -07:00
Charles Lombardo 4d38000140 android: Convert DateTimeViewHolder to Kotlin 2023-06-03 00:05:37 -07:00
Charles Lombardo 769fcb4a2d android: Convert CheckBoxSettingViewHolder to Kotlin 2023-06-03 00:05:36 -07:00
Charles Lombardo 28a069de34 android: Convert StringSetting to Kotlin 2023-06-03 00:05:36 -07:00
Charles Lombardo 48f959540c android: Convert SettingSection to Kotlin 2023-06-03 00:05:36 -07:00
Charles Lombardo f6d37365cf android: Convert Setting to Kotlin 2023-06-03 00:05:36 -07:00
Charles Lombardo 0cbd5545db android: Convert IntSetting to Kotlin 2023-06-03 00:05:36 -07:00
Charles Lombardo 1a04e1e0c0 android: Convert FloatSetting to Kotlin 2023-06-03 00:05:36 -07:00
Charles Lombardo 372bf73aef android: Convert BooleanSetting to Kotlin 2023-06-03 00:05:36 -07:00
Charles Lombardo bab9335bcb android: Convert SubmenuSetting to Kotlin 2023-06-03 00:05:36 -07:00
Charles Lombardo b0acee2098 android: Convert StringSingleChoiceSetting to Kotlin 2023-06-03 00:05:36 -07:00
Charles Lombardo 1abd7828b9 android: Convert SliderSetting to Kotlin 2023-06-03 00:05:36 -07:00
Charles Lombardo 5452399d41 android: Convert SingleChoiceSetting to Kotlin 2023-06-03 00:05:35 -07:00
Charles Lombardo 73c51dc89f android: Convert SettingsItem to Kotlin 2023-06-03 00:05:35 -07:00
Charles Lombardo e243d6d2d7 android: Convert HeaderSetting to Kotlin 2023-06-03 00:05:35 -07:00
Charles Lombardo 87523b434b android: Convert DateTimeSetting to Kotlin 2023-06-03 00:05:35 -07:00
Charles Lombardo fba3550c64 android: Convert CheckBoxSetting to Kotlin 2023-06-03 00:05:35 -07:00
Charles Lombardo c3c3c0c2e6 android: Convert GameAdapter to Kotlin 2023-06-03 00:05:35 -07:00
Charles Lombardo 729faf93e0 android: Convert SettingsAdapter to Kotlin
Update SettingsAdapter.kt
2023-06-03 00:05:35 -07:00
Charles Lombardo 69e52b6ef9 android: Convert EmulationActivity to Kotlin 2023-06-03 00:05:35 -07:00
Charles Lombardo 28215f6d7d android: Use material slider in settings dialog 2023-06-03 00:05:35 -07:00
Charles Lombardo 53f09ed61b android: Convert Settings to Kotlin 2023-06-03 00:05:35 -07:00
Charles Lombardo 107087b5a4 android: Use androidx preferences 2023-06-03 00:05:34 -07:00
bunnei 815cafacb2 android: frontend: Add unique error strings for Vulkan initialization errors. 2023-06-03 00:05:34 -07:00
german77 ada3a4085a android: Use the center of the object and reduce draw calls 2023-06-03 00:05:34 -07:00
german77 76b5181bdf android: Replace old buttons with vectors 2023-06-03 00:05:34 -07:00
Charles Lombardo b07a640036 android: Enable Kotlin support 2023-06-03 00:05:34 -07:00
Charles Lombardo a65a6e7b36 android: Upgrade java version to 11 2023-06-03 00:05:33 -07:00
Charles Lombardo ae08a9e1ed android: Upgrade dependencies 2023-06-03 00:05:33 -07:00
Charles Lombardo 4ec3ebeb00 android: Upgrade to AGP 7.4.2 2023-06-03 00:05:33 -07:00
Charles Lombardo a72f2e1493 android: Replace lintOptions with lint 2023-06-03 00:05:33 -07:00
Charles Lombardo 57060fc7cd android: Move namespace to app module build.gradle 2023-06-03 00:05:33 -07:00
Charles Lombardo 0e6b181f17 android: bump compile/target sdk to 33 2023-06-03 00:05:33 -07:00
Charles Lombardo 3356f96505 android: Upgrade gradle to 8.0.1 2023-06-03 00:05:33 -07:00
liushuyu 44a629e584 video_core: fix clang-format errors 2023-06-03 00:05:33 -07:00
liushuyu 0492011af7 CMake: fix pkg-config behavior when building for Android 2023-06-03 00:05:33 -07:00
liushuyu bca45d1588 CI: add Android build systems 2023-06-03 00:05:33 -07:00
bunnei 041fab3165 android: build.gradle: Cleanup build types. 2023-06-03 00:05:32 -07:00
bunnei aabb796b6d android: frontend: settings: Add graphics debugging. 2023-06-03 00:05:32 -07:00
bunnei 8b30f10dd1 android: jni: Ensure system is only initialized once.
- Fixes likelihood that fastmem allocation succeeds.
2023-06-03 00:05:32 -07:00
bunnei ea54161dbf video_core: vulkan_device: Correct error message for unsuitable driver. 2023-06-03 00:05:32 -07:00
bunnei 7330adf87b android: frontend: Cleanup framerate counter. 2023-06-03 00:05:32 -07:00
bunnei 27250ee9ad android: vulkan: Implement adrenotools turbo mode. 2023-06-03 00:05:32 -07:00
bunnei 6ae51eff8a android: vulkan_device: Disable VK_EXT_extended_dynamic_state2 on Qualcomm.
- Newer drivers report this as supported, but it is broken.
2023-06-03 00:05:32 -07:00
bunnei a4a4784553 android: frontend: Add support for GPU driver selection. 2023-06-03 00:05:32 -07:00
bunnei 74e76421e6 android: native: Add support for custom Vulkan driver loading. 2023-06-03 00:05:31 -07:00
bunnei 56600190e4 core: frontend: Refactor GraphicsContext to its own module. 2023-06-03 00:05:31 -07:00
bunnei f644380506 common: dynamic_library: Add ctor for existing handle. 2023-06-03 00:05:31 -07:00
bunnei f292a3a357 android: EmulationFragment: Always reset overlay.
- Ensures correct placement until we have better overlay configuration.
2023-06-03 00:05:31 -07:00
Billy Laws cfbe4b09eb Avoid using VectorExtractDynamic for subgroup mask on Adreno GPUs
This crashes their shader compiler for some reason.
2023-06-03 00:05:31 -07:00
Billy Laws 2beb3051c1 Implement scaled vertex buffer format emulation
These formats are unsupported by mobile GPUs so they need to be emulated in shaders instead.
2023-06-03 00:05:31 -07:00
Billy Laws 58d420937c Disable push descriptors on adreno drivers
Regular descriptors are around 1.5x faster to update.
2023-06-03 00:05:31 -07:00
Billy Laws ca2c3a6d5a Disable VK_EXT_extended_dynamic_state on mali 2023-06-03 00:05:31 -07:00
Billy Laws b2b069279e Disable multithreaded pipeline compilation on Qualcomm drivers
This causes crashes during compilation on several 6xx and 5xx driver versions.
2023-06-03 00:05:31 -07:00
Narr the Reg 38b030ac58 android: Add motion sensor 2023-06-03 00:05:30 -07:00
Narr the Reg 580e65192c android: Hook jni input properly 2023-06-03 00:05:30 -07:00
Narr the Reg c478528dca android: cleanup touch update loop 2023-06-03 00:05:30 -07:00
Narr the Reg dbca0637a1 android: Clean joystick overlay 2023-06-03 00:05:30 -07:00
Narr the Reg 28f4ee78f6 android: Clean dpad overlay 2023-06-03 00:05:30 -07:00
Narr the Reg f465b2aa69 android: Clean button overlay 2023-06-03 00:05:30 -07:00
Narr the Reg 99eb289722 android: Add all buttons to screen controller 2023-06-03 00:05:30 -07:00
Narr the Reg f7f126520c android: Apply clang format 2023-06-03 00:05:30 -07:00
bunnei a75fe2e2c3 android: frontend: Implement game grid view. (#9) 2023-06-03 00:05:30 -07:00
german77 ceed69d9a5 android: Replace notification icon with yuzu 2023-06-03 00:05:30 -07:00
bunnei bc4213e6dc android: strings: Refresh key dumping URL. 2023-06-03 00:05:29 -07:00
bunnei 6ec92cc172 android: frontend: Modify ROM load messaging for invalid keys. 2023-06-03 00:05:29 -07:00
bunnei af1855e0ad android: frontend: Integrate key installation for SAF. 2023-06-03 00:05:29 -07:00
bunnei a42184f92e android: jni: Add function to reload keys. 2023-06-03 00:05:29 -07:00
bunnei 4fb2d06a8c core: crypto: key_manager: Add methods to reload & validate keys. 2023-06-03 00:05:29 -07:00
bunnei 9da136ffdc android: EmulationActivity: Temporarily disable running notification. 2023-06-03 00:05:29 -07:00
bunnei 44b082af08 android: Implement SAF support & migrate to SDK 31. (#4) 2023-06-03 00:05:29 -07:00
bunnei 8d2b8927a4 android: Harden emulation shutdown when loader fails. 2023-06-03 00:05:29 -07:00
bunnei 0f4119c966 android: SettingsFragmentPresenter: Fix default renderer backend. 2023-06-03 00:05:29 -07:00
bunnei 1286403687 android: jni: native: Add lock around HaltEmulation, tighten run loop. 2023-06-03 00:05:29 -07:00
bunnei d3217eaa4b android: jni: native: Refactor locking for is_running. 2023-06-03 00:05:28 -07:00
bunnei 09ad9ed549 android: jni: native: Remove unnecessary atomic for is_running. 2023-06-03 00:05:28 -07:00
bunnei 5dbae4cd4d android: jni: native: Tighten up emulation start/stop signaling. 2023-06-03 00:05:28 -07:00
bunnei ea4b6e3d8b android: jni: native: Consolidate emulation state into EmulationSession singleton.
- Fixes state management issues across multiple boots.
- Fixes crashes related to unsafe access of perf stats.
2023-06-03 00:05:28 -07:00
bunnei ca686f1ab7 android: Frontend: Fix rendering aspect ratio & add a setting for it. 2023-06-03 00:05:28 -07:00
bunnei ffdb02ea5e android: Integrate settings frontend with yuzu & remove unused code. 2023-06-03 00:05:28 -07:00
Liam 46927d217c externals: add adrenotools for bcenabler 2023-06-03 00:05:28 -07:00
Liam 120b8baebb device_memory: Use smaller virtual reservation size for compatibility with 39-bit paging 2023-06-03 00:05:28 -07:00
bunnei b3a74d7f73 video_core: vulkan_device: Device initialization for Adreno. 2023-06-03 00:05:28 -07:00
bunnei ce06e9e7fc video_core: vk_pipeline_cache: Disable support_descriptor_aliasing on Android. 2023-06-03 00:05:28 -07:00
bunnei f6f470fb4b video_core: vk_swapchain: Fix image format for Android. 2023-06-03 00:05:28 -07:00
bunnei 3f736b377a android: Minimize frontend & convert to yuzu. 2023-06-03 00:05:27 -07:00
bunnei 189bb7602c video_core: vk_blit_screen: Rotate viewport for Android landscape. 2023-06-03 00:05:27 -07:00
bunnei c5b29ef3b7 common: error: Fix for Android. 2023-06-03 00:05:27 -07:00
bunnei 48835ce81b common: fs: Implement for Android. 2023-06-03 00:05:27 -07:00
bunnei fa9b38c400 common: logging: Implement Android logcat backend. 2023-06-03 00:05:26 -07:00
bunnei 699d6751d8 common: host_memory: Implement for Android. 2023-06-03 00:05:26 -07:00
bunnei 573b88b179 android: Minimal JNI for yuzu. 2023-06-03 00:05:26 -07:00
bunnei 5fa0293c19 android: Add Citra frontend. 2023-06-03 00:05:26 -07:00
bunnei 6549cf8bd0 cmake: Integrate bundled FFmpeg for Android. 2023-06-03 00:05:26 -07:00
ameerj e9c07146d8 texture_cache: Fix incorrect logic for AccelerateDMA 2023-06-02 18:07:52 -04:00
kkoniuszy 802d30d421 host_memory: merge adjacent placeholder mappings on Linux
Track the private anonymous placeholder mappings created by Unmap() and
wherever possible, replace existing placeholders with larger ones
instead of creating many small ones.

This helps with the buildup of mappings in /proc/YUZU_PID/maps after a
longer gaming session, improving stability without having to increase
vm.max_map_count to a ridiculous value. The amount of placeholder
mappings will no longer outgrow the amount of actual memfd mappings in
cases of high memory fragmentation.
2023-06-01 22:57:27 +02:00
liamwhite cd9f88e483 Merge pull request #10091 from Kelebek1/bc_bugggggg
Fix buffer overlap checking skipping a page for stream score right expand
2023-06-01 09:06:07 -04:00
liamwhite 2d92f940d7 Merge pull request #10530 from Kelebek1/syncpt_oob
Fix incorrect syncpt id bounds check and potential out of bounds lookup
2023-06-01 09:05:42 -04:00
liamwhite 90a3955fbb Merge pull request #10474 from GPUCode/you-left-me-waiting
Remove timeline semaphore wait
2023-06-01 09:05:30 -04:00
liamwhite c60fc2d416 Merge pull request #10352 from grimkor/add-context-menu-status-bar-settings
add context menu for status bar settings
2023-06-01 09:05:23 -04:00
liamwhite 38a5299599 Merge pull request #10482 from german77/gamelist
yuzu: Disable game list while game is running
2023-06-01 09:05:18 -04:00
Kelebek1 f50f69f07c Fix incorrect id check and potential out of bounds lookup 2023-05-31 19:10:00 +01:00
Kelebek1 3da7eafba7 Skip BufferCache tickframe with no channel state set 2023-05-30 21:57:13 +01:00
12101111 3f3e986098 input_common: rename PAGE_SIZE to avoid conflict
See also: https://github.com/yuzu-emu/yuzu/issues/8779
2023-05-30 16:59:06 +08:00
german77 e1f99c566b yuzu: Disable game list while game is running 2023-05-29 10:00:34 -06:00
Morph ef9b1765fa externals: Update to fmt 10 and add format_as formatter for BitField
Implicit conversions are now disallowed in fmt 10. Use format_as to convert to the underlying type.
2023-05-28 15:05:55 -04:00
liamwhite a4a3df9e69 Merge pull request #10483 from ameerj/gl-cpu-astc
gl_texture_cache: Fix ASTC CPU decoding with compression disabled
2023-05-28 13:18:31 -04:00
liamwhite ca2c5a9243 Merge pull request #10280 from danilaml/cmake-bin-dir
Use TARGET_FILE_DIR generator expression
2023-05-28 13:18:06 -04:00
liamwhite 01008297aa Merge pull request #10283 from danilaml/support-interlaced-videos
Add support for deinterlaced video playback
2023-05-28 13:17:58 -04:00
liamwhite e39dde5cd6 Merge pull request #10463 from liamwhite/this-is-why-we-need-g
vfs_concat: fix time complexity of read
2023-05-28 13:17:42 -04:00
liamwhite c0e8e6b617 Merge pull request #10464 from liamwhite/clear-cache
qt: add menu item to remove cache storage
2023-05-28 13:17:33 -04:00
liamwhite 56e0201201 Merge pull request #10469 from Kelebek1/bc_state
Move buffer bindings to per-channel state
2023-05-28 13:17:26 -04:00
ameerj 514c224679 gl_texture_cache: Fix ASTC CPU decoding with compression disabled
gl_format was incorrectly being overwritten when compression was disabled
2023-05-28 13:14:51 -04:00
ameerj 41dfd9e4ec gl_staging_buffers: Optimization to reduce fence waiting 2023-05-28 00:38:47 -04:00
ameerj 8d223e8092 OpenGL: Make use of persistent buffer maps in buffer cache downloads
Persistent buffer maps were already used by the texture cache, this extends their usage for the buffer cache.

In my testing, using the memory maps for uploads was slower than the existing "ImmediateUpload" path, so the memory map usage is limited to downloads for the time being.
2023-05-28 00:38:46 -04:00
GPUCode 0dc4778654 renderer_vulkan: Remove timeline semaphore wait 2023-05-28 02:39:44 +03:00
Kelebek1 29e1cdf7e1 Audren wait as suggested by ByLaws 2023-05-27 17:38:07 +01:00
Kelebek1 62c747f8a1 Move buffer bindings to per-channel state 2023-05-27 17:04:18 +01:00
Liam 0627c4622f qt: add menu item to remove cache storage 2023-05-26 23:29:44 -04:00
Matías Locatti ebcfe440ba Merge pull request #10414 from liamwhite/anv-push-descriptor
vulkan_device: Enable VK_KHR_push_descriptor on newer ANV
2023-05-26 17:36:37 -03:00
Matías Locatti 9eab38567c Merge pull request #10418 from liamwhite/blink-and-youll-miss-it
texture_cache: process aliases and overlaps in the correct order
2023-05-26 17:36:09 -03:00
Liam 18088c67cd vfs_concat: fix time complexity of read 2023-05-26 16:07:38 -04:00
Kelebek1 eea071bf87 Fix buffer overlap checking skipping a page for stream score right expand 2023-05-26 10:35:46 +01:00
Liam e19d49925a shader_recompiler: fix copy-paste error 2023-05-26 00:36:12 -04:00
bunnei eeef4170e3 Merge pull request #10221 from Kelebek1/partial_dsp_revert
Add a 5ms tiemout to the DSP processing wait
2023-05-25 21:34:50 -07:00
bunnei 39fcbfead6 Merge pull request #10396 from german77/amiibo_write
input_common: Implement amiibo writing
2023-05-25 14:07:16 -07:00
liamwhite bdebdf83fb Merge pull request #10454 from 521337/fix-u-option
Don't exit when using "-u" option in yuzu-cmd
2023-05-25 14:12:51 -04:00
Fernando S 987c98fdec Merge pull request #10452 from liamwhite/ibgc
video_core: don't garbage collect during configuration
2023-05-25 20:09:08 +02:00
Ariel Cabello c44d17b35d Don't exit when using "-u" option in yuzu-cmd 2023-05-25 20:07:52 +02:00
Liam 6c77a107a4 video_core: don't garbage collect during configuration 2023-05-25 12:03:12 -04:00
Ariel Cabello df0f80f55c Add short "-u" option for yuzu_cmd.
The -u short option was documented but not implemented in yuzu_cmd.
The same long option --user worked before.
2023-05-25 16:05:22 +02:00
bunnei d9ed2052d8 Merge pull request #10415 from german77/amiibo-no-key
service: nfc: Remove encryption key requirement
2023-05-24 22:14:55 -07:00
bunnei 62301e0f65 Merge pull request #10435 from FernandoS27/gotta-clean-mess-ups
Texture cache: revert wrong acceleration assumption
2023-05-24 21:00:53 -07:00
Fernando Sahmkow b0e5aa6725 Texture cache: revert wrong acceleration assumption 2023-05-24 10:52:02 +02:00
Fernando Sahmkow 769b1f0264 Texture Cache Util: Fix block depth adjustment on slices. 2023-05-24 10:06:58 +02:00
Fernando Sahmkow ce9a97ca48 texture_cache: process aliases and overlaps in the correct order 2023-05-24 09:53:42 +02:00
Fernando S 72c3cf6b32 Merge pull request #10422 from liamwhite/gc
video_core: tune garbage collection aggressiveness
2023-05-24 03:58:49 +02:00
Fernando S 7a201e9218 Merge pull request #10417 from liamwhite/check-state
k_memory_block_manager: remove auditing calls
2023-05-24 03:56:58 +02:00
Fernando S 178e8a6b0e Merge pull request #10398 from liamwhite/bcn
video_core: add ASTC recompression
2023-05-24 03:55:45 +02:00
grimkor 1e7b656c29 add context menu for filter and anti-aliasing status buttons 2023-05-24 00:21:04 +00:00
Liam 4a54cea69a video_core: tune garbage collection aggressiveness 2023-05-23 12:55:14 -04:00
Liam 011dfe1db7 textures: add BC1 and BC3 compressors and recompression setting 2023-05-23 12:54:40 -04:00
liamwhite a496e853ff Merge pull request #10388 from GPUCode/fence-wait
vk_master_semaphore: Move fence wait on separate thread
2023-05-23 09:42:56 -04:00
liamwhite 7515655327 Merge pull request #10402 from liamwhite/uh
renderer_vulkan: barrier attachment feedback loops
2023-05-23 09:42:49 -04:00
liamwhite 246a1407cb Merge pull request #10411 from scorpion81/gc-steamdeck-fix-attempt
Limit device access memory for integrated devices to 4 GB
2023-05-23 09:42:39 -04:00
Liam d23a532bf4 k_memory_block_manager: remove auditing calls 2023-05-23 09:15:16 -04:00
Narr the Reg 6a217dd7a5 service: nfc: Remove encryption key requirement 2023-05-22 18:42:09 -06:00
Liam cdd20c6231 vulkan_device: Enable VK_KHR_push_descriptor on newer ANV 2023-05-22 19:53:20 -04:00
Liam 147f6129f4 renderer_vulkan: barrier attachment feedback loops 2023-05-22 18:10:16 -04:00
scorpion81 9c33fade59 Limit the device access memory to 4 GB
Hardly limiting the device access memory to 4 GB for integrated vulkan devices here. This works for the Steam Deck in order not to go above 4 GB VRAM usage any more (above this value the likelihood to crash when the RAM exceeds 12 GB as well raises).

But there will be perhaps a detection mechanism necessary for detecting the real memory limit for integrated vulkan devices. Those likely might have small limits anyway, but what about integrated GPUs on machines with > 16 GB RAM, aka larger amounts ?
2023-05-22 16:48:55 +02:00
Narr the Reg 60ba48c5e2 input_common: Implement amiibo writting 2023-05-21 21:09:20 -06:00
Danila Malyutin 6ab723eace Add support for deinterlaced videos playback
This is a follow up to #10254 to improve the playback of cut scenes in Layton's Mystery Journey.
It uses ffmpeg's yadif filter for deinterlacing.
2023-05-22 01:43:44 +04:00
GPUCode 7732ce8a92 vk_master_semaphore: Move fence wait on separate thread 2023-05-20 19:23:53 +03:00
german77 7a3b44abc8 input_common: Map motion with relative values not absolute ones 2023-05-19 21:19:29 -06:00
bunnei ea0d8c4119 Merge pull request #10344 from german77/pro-amiibo
input_common: Fix pro controller amiibo support
2023-05-18 18:10:38 -07:00
Liam f532faa5c3 renderer_vulkan: remove wrong constexpr 2023-05-18 18:01:01 -04:00
Kelebek1 ba0d258a3f Smooth out the DSP callback by adding a 5ms wait time limit 2023-05-18 13:03:32 +01:00
lat9nq 6597d2a5d3 vulkan_device: Disable VK_KHR_push_descriptor on ANV
Mesa commit ff91c5ca42bc80aa411cb3fd8f550aa6fdd16bdc breaks
VK_KHR_push_descriptor usage on ANV drivers 22.3.0, so disable it
and allow games to boot.
2023-05-17 22:19:57 -04:00
bunnei de9a79402d Merge pull request #10262 from liamwhite/depth-clamp
vulkan_common: disable depth clamp dynamic state for older radv
2023-05-17 12:19:03 -07:00
Narr the Reg e0d140581b input_common: Fix pro controller amiibo support 2023-05-16 18:37:22 -06:00
liamwhite 12a4dbe8f1 Merge pull request #10217 from Kelebek1/clear_value
Use the rendertarget format of the correct RT rather than the first valid
2023-05-16 10:06:30 -04:00
liamwhite d0244da5bf Merge pull request #10107 from grimkor/allow-fully-customised-hotkeys
Allow fully customised controller hotkeys
2023-05-16 10:06:15 -04:00
liamwhite c8356ee137 Merge pull request #10181 from lat9nq/intel-compute-toggle
configure_graphics: Add option to enable compute pipelines for Intel proprietary
2023-05-15 12:05:24 -04:00
liamwhite f3223a5238 Merge pull request #10234 from Kelebek1/clouds_depth
Fix Tears of the Kingdom flickering clouds and depths geometry.
2023-05-15 12:03:31 -04:00
liamwhite 896bf929d9 Merge pull request #10249 from FernandoS27/sorry-i-am-late
Buffer Cache: Clear sync code.
2023-05-15 12:03:25 -04:00
liamwhite cee8ef154e Merge pull request #10254 from danilaml/fix-h264-decode
Fix missing pic_order_present_flag in h264 header
2023-05-15 12:03:14 -04:00
liamwhite 2f464411e6 Merge pull request #10265 from german77/amiibo-lag
input_common: Make amiibo scanning less demanding
2023-05-15 12:03:08 -04:00
liamwhite 57e4acaa57 Merge pull request #10294 from german77/vibration_span
service: hid: Use span instead of vector reference
2023-05-15 12:03:00 -04:00
german77 5e95870b1f service: hid: Use span instead of vector reference 2023-05-14 18:07:04 -06:00
Fernando Sahmkow 525cb91e3b Buffer Cache: Clear sync code. 2023-05-15 01:50:21 +02:00
liamwhite 836b8e1d64 Merge pull request #10288 from liamwhite/vram-limits
vulkan_device: reserve extra memory to prevent swaps
2023-05-14 17:02:15 -04:00
Liam 41353d738a vulkan_device: reserve extra memory to prevent swaps 2023-05-14 16:49:59 -04:00
german77 62d019dd72 input_common: Make amiibo scanning less demanding 2023-05-14 09:04:37 -06:00
Liam b10b8b7a57 vulkan_common: fix incompatible property flags 2023-05-14 01:13:11 -04:00
Danila Malyutin bed7daa987 Use TARGET_FILE_DIR generator expression
Use $<TARGET_FILE_DIR:...> where appropriate instead of trying to guess where the binary will end up.
2023-05-13 23:58:17 +04:00
Liam 50b42ab980 vulkan_common: disable depth clamp dynamic state for older radv 2023-05-13 00:37:17 -04:00
Fernando S 789be8368f Merge pull request #10244 from liamwhite/lower-upper
time: implement ContinuousAdjustmentTimePoint
2023-05-13 03:51:05 +02:00
Fernando S 1f2c5e89ee Merge pull request #10243 from Kelebek1/red_dot
Correctly track render target index in the framebuffer for image aspects
2023-05-13 03:50:31 +02:00
bunnei ad99f6eccc Merge pull request #10237 from liamwhite/cache-storage
fs: stub cache storage
2023-05-12 16:42:17 -07:00
Danila Malyutin 84df6eb7f9 Fix missing pic_order_present_flag in h264 header
Fixes #9635
2023-05-12 22:30:59 +04:00
Liam 78b97867cb time: implement ContinuousAdjustmentTimePoint 2023-05-11 21:05:27 -04:00
Kelebek1 8a5db1aeff Correctly track RT indexes for image aspect lookup during clears 2023-05-12 01:40:21 +01:00
Liam 7e3c5fa38a fs: adjust future save path 2023-05-11 17:30:30 -04:00
Liam 1fc6519671 am: stub CreateCacheStorage 2023-05-11 17:26:02 -04:00
Liam 6bee9352b7 fs: stub cache storage and fix params alignment 2023-05-11 17:23:28 -04:00
Liam c59b0c9715 nvnflinger: fix Parcel serialization 2023-05-11 17:09:19 -04:00
Liam b929ebf49e nvnflinger: fix producer slot fence init 2023-05-11 17:08:14 -04:00
Kelebek1 2e478a66cf Fix Tears of the Kingdom flickering clouds and depths. 2023-05-11 19:25:24 +01:00
liamwhite 4838605114 Merge pull request #10132 from Kelebek1/fermi_blit2
Allow Fermi blit accelerate to work without images in cache
2023-05-11 10:45:59 -04:00
liamwhite 855502e669 Merge pull request #10216 from Kelebek1/buffer_cache_region_checks
Swap order of checking/setting region modifications in the buffer_cache
2023-05-11 10:45:47 -04:00
Kelebek1 fc6c77f7ae Allow Fermi blit accelerate to add src/dst to the cache if they don't exist already. Use ScratchBuffers in the software blit path. 2023-05-11 06:42:38 +01:00
grimkor ba492a616d Allow fully customisable controller hotkeys 2023-05-10 19:28:11 +01:00
Liam 66732f3e22 renderer_vulkan: separate guest and host compute descriptor queues 2023-05-10 13:46:48 -04:00
liamwhite c6ac5d9d74 Merge pull request #10207 from german77/amiibo_cheater
service: nfp: Allow to load with a different amiibo id
2023-05-10 10:25:48 -04:00
Narr the Reg 4c16baf028 Merge pull request #10119 from marius851000/improved_non_hd_feeback
Attempt at improving HD Rumble emulation
2023-05-09 22:59:32 -06:00
Narr the Reg cc610d369c service: nfc: Seed all random values 2023-05-09 17:54:07 -06:00
german77 e43d1c20d5 service: nfp: Allow to load with a different amiibo id 2023-05-09 17:51:59 -06:00
Kelebek1 b72b1f0a4e Use the rendertarget format of the correct RT rather than the first valid 2023-05-09 22:13:15 +01:00
Kelebek1 05dcdf5793 Swap order of checking/setting region modifications in the buffer_cache 2023-05-09 20:21:08 +01:00
liamwhite 0365c544c5 Merge pull request #10183 from liamwhite/mods
vfs_vector: avoid n^2 lookup in layeredfs building
2023-05-09 09:47:36 -04:00
liamwhite a6dbefe99e Merge pull request #10203 from german77/calibration
core: hid: Allow to calibrate gyro sensor
2023-05-09 09:47:29 -04:00
liamwhite 53f6273e15 Merge pull request #10206 from FernandoS27/astc-3d
Texture Cache: Fix 3D ASTC textures
2023-05-09 09:47:22 -04:00
german77 5d49fffd67 input_common: Fix nfc detection for joycons 2023-05-09 00:32:53 -06:00
Fernando Sahmkow a1317c3a6e Texture Cache: Fix ASTC textures 2023-05-09 02:42:10 +02:00
Jan Beich 5a4e361862 qt_common: consistently ifdef QPlatform after 17507c4849
src/yuzu/qt_common.cpp:45:33: error: member access into incomplete type 'QPlatformNativeInterface'
    wsi.display_connection = pni->nativeResourceForWindow("display", window);
                                ^
/usr/include/qt6/QtGui/qguiapplication.h:20:7: note: forward declaration of 'QPlatformNativeInterface'
class QPlatformNativeInterface;
      ^
src/yuzu/qt_common.cpp:47:42: error: member access into incomplete type 'QPlatformNativeInterface'
        wsi.render_surface = window ? pni->nativeResourceForWindow("surface", window) : nullptr;
                                         ^
/usr/include/qt6/QtGui/qguiapplication.h:20:7: note: forward declaration of 'QPlatformNativeInterface'
class QPlatformNativeInterface;
      ^
2023-05-08 20:47:16 +00:00
Narr the Reg 5dd7748371 yuzu: Make 3d cube with joycon shape 2023-05-08 12:06:39 -06:00
Narr the Reg 63ab5ee887 core: hid: Allow to calibrate gyro sensor 2023-05-08 12:06:38 -06:00
lat9nq f7cd4ecf9b configure_graphics_advanced: Hide input compute toggle a little later
SetColoredTristate causes the setting to become visible as it calls
`show()` on it.
2023-05-08 12:32:56 -04:00
bunnei 0b1cffbd9c Merge pull request #10075 from Kelebek1/silence_nifm_spam
Silence network spam
2023-05-07 17:45:32 -07:00
Liam 69b754f096 bootmanager: remove stop_token header 2023-05-07 19:20:09 -04:00
liamwhite 11e88239ec Merge pull request #10195 from german77/mutex
core: hid: Update motion on a better place
2023-05-07 19:06:10 -04:00
Liam 174bad7011 vfs_layered: avoid n^2 lookup in layeredfs building 2023-05-07 19:03:41 -04:00
german77 62acd50c0b core: hid: Update motion on a better place 2023-05-07 17:01:57 -06:00
Fernando Sahmkow 5fa8c8685e Texture cache: Only force flush the dma downloads 2023-05-07 23:46:12 +02:00
Fernando Sahmkow 8203f2d8e1 Buffer Cache: disable reactive flushing in it. 2023-05-07 23:46:12 +02:00
Fernando Sahmkow a7a63d119c Texture cache: reverse inmediate flush changes 2023-05-07 23:46:12 +02:00
Fernando Sahmkow 1a2ed85a28 Buffer cache: always use async buffer downloads and fix regression. 2023-05-07 23:46:12 +02:00
Fernando Sahmkow 134c14f089 Address feedback, add CR notice, etc 2023-05-07 23:46:12 +02:00
Fernando Sahmkow dffc48b942 Query cache: stop updating pages as it's not affected by cpu writes 2023-05-07 23:46:12 +02:00
Fernando Sahmkow 62295b5069 Settings: add option to enable / disable reactive flushing 2023-05-07 23:46:12 +02:00
Fernando Sahmkow f1aa574448 Texture cache: sync the first flush. 2023-05-07 23:46:12 +02:00
Fernando Sahmkow 6bc60f78d9 GPU: Add Reactive flushing 2023-05-07 23:46:12 +02:00
Liam b0c0344388 vfs_vector: avoid n^2 lookup in layeredfs building 2023-05-07 16:50:35 -04:00
bunnei 36a670a4c9 Merge pull request #10097 from german77/nfp_full
service: nfc: Merge device interfaces and create the device manager
2023-05-07 12:18:09 -07:00
liamwhite 28ed548196 Merge pull request #10081 from Kelebek1/copy_overlap_tick
Sort overlap_ids by modification tick before copy
2023-05-07 14:09:10 -04:00
liamwhite de45be2681 Merge pull request #10172 from Kelebek1/debug_validation_names
Log object names with debug renderer, add a GPU address to ImageViews
2023-05-07 14:09:03 -04:00
QGJ 5c66c9dec4 yuzu/applets/qt_profile_select: connect double-click to accept()
In the profile selection window:

Allow the user to start the game by double-clicking a profile to avoid having to additionally click the OK button. This avoids an unnecessary "step" to the start of the game...
2023-05-07 18:05:42 +02:00
Kelebek1 ac49a29b85 Fix address space allocator slow path to avoid OOB 2023-05-07 15:11:16 +01:00
bunnei 8be489f752 Merge pull request #10180 from german77/debug
input_common: Revert debugging changes
2023-05-06 22:26:53 -07:00
german77 5776810598 input_common: Revert debugging changes 2023-05-06 23:06:44 -06:00
lat9nq 409c6af0e4 yuzu-qt/config: Add option to disable compute on Intel
This option is only visible if an Intel GPU using the proprietary
driver is found during Vulkan device enumeration.

configure_graphics: More directly get driver id

Vulkan::Device does quite a bit more than we need just to see the
driver ID here.
2023-05-07 01:06:22 -04:00
lat9nq 98f6fbd31c vk_pipeline_cache: Use setting to disable intel compute 2023-05-07 01:06:22 -04:00
lat9nq 90f4126609 settings: Add enable compute pipelines
For the Intel proprietary driver's deficiencies.

settings: Restore compute option global state
2023-05-07 01:06:20 -04:00
bunnei 12c4c09b3f Merge pull request #10125 from lat9nq/vsync-select
configuration: Expose separate swap present modes
2023-05-06 21:55:39 -07:00
bunnei fdb3652f12 Merge pull request #10174 from german77/motriod
input_common: Add experimental motion to button
2023-05-06 21:40:20 -07:00
liamwhite 0018e53745 Merge pull request #10162 from lat9nq/sdl-remove-old
yuzu-sdl,audio_core: Remove antiquated warning ignore
2023-05-06 23:10:09 -04:00
liamwhite 1911b50d34 Merge pull request #10167 from german77/motion_preview
yuzu: Add motion preview to controller input
2023-05-06 23:09:55 -04:00
Roni Kirla 5d02eca7c9 Fix read access violation 2023-05-07 00:13:33 +03:00
german77 7b41e71877 input_common: Add experimental motion to button 2023-05-05 22:49:56 -06:00
Narr the Reg 2a36d667c9 service: nfc: Merge device interfaces and create the device manager 2023-05-05 22:02:59 -06:00
Kelebek1 d43a18a6ef Log object names with debug renderer, add a GPU address to ImageViews 2023-05-06 04:48:32 +01:00
Narr the Reg 53ec77c62c input_common: Add property to invert an axis button 2023-05-05 17:18:35 -06:00
Narr the Reg 94c16132ba yuzu: Add motion preview to controller input 2023-05-05 13:53:38 -06:00
bunnei 7ef5ca4f59 Merge pull request #10159 from german77/home_screenshot
core: hid: Fix state of capture and home buttons
2023-05-05 12:02:15 -07:00
marius david f5827baefe Improve emulation of HD Rumble 2023-05-05 19:30:40 +02:00
lat9nq be5eee647e yuzu-sdl,audio_core: Remove antiquated warning ignore
Issue was fixed a long time ago, both by SDL2 and in yuzu by including
SDL2 as a system library.
2023-05-05 03:48:28 -04:00
german77 dbef75ecdd core: hid: Fix state of capture and home buttons 2023-05-04 22:36:59 -06:00
liamwhite fceef23303 Merge pull request #10128 from Kelebek1/audren_terminate
Wait for the terminate event before destroying a system instance
2023-05-04 14:44:09 -04:00
liamwhite 64e46e723a Merge pull request #10145 from Kelebek1/code_size
Fix shader code resize to use word size rather than byte size
2023-05-04 14:44:02 -04:00
Fernando S c9a31835b6 Merge pull request #10153 from FernandoS27/a-quickie-fixie
Memory manager: Fix possible softlock
2023-05-04 03:56:53 +02:00
Fernando S 9f2dd6f328 Merge pull request #10154 from liamwhite/optimistic
settings: remove pessimistic flushing
2023-05-04 01:55:51 +02:00
bunnei edac11f6c8 Merge pull request #10142 from FernandoS27/missing-astc
GPU: implement missing ASTC
2023-05-03 16:49:27 -07:00
Liam f50b8635b3 settings: remove pessimistic flushing 2023-05-03 18:52:42 -04:00
Fernando Sahmkow d9b4380457 Memory manager: Fix possible softlock 2023-05-04 00:15:21 +02:00
lat9nq fa8da0ded9 qt_common: Remove yuzu prefix 2023-05-03 18:11:53 -04:00
bunnei 6f10c3fcd8 Merge pull request #10088 from FernandoS27/100-gelato-flavor-test-builds-later
Y.F.C Implement Asynchronous Fence manager and Rework Query async downloads
2023-05-03 15:10:22 -07:00
bunnei dd78368441 Merge pull request #10117 from liamwhite/sync-register
kernel: match calls to Register and Unregister
2023-05-03 09:07:19 -07:00
Fernando Sahmkow 94ecd260e3 GPU: implement missing ASTC 2023-05-03 11:33:28 -04:00
liamwhite 58b38d1761 Merge pull request #10151 from GPUCode/no-softlocks-please
Fix softlocks when disabling async present
2023-05-03 10:54:24 -04:00
Morph 2f29ad9d7e Merge pull request #10144 from liamwhite/dont-turbo
vulkan: disable turbo when debugging tool is attached
2023-05-03 10:53:03 -04:00
Morph 5e21f326b2 Merge pull request #10143 from liamwhite/fruit-company-moment
video_core: fix build on Apple Clang
2023-05-03 10:52:56 -04:00
Morph 069637f4ff Merge pull request #10124 from liamwhite/pebkac
settings: rename extended memory layout to unsafe, move from general to system
2023-05-03 10:52:45 -04:00
GPUCode 40fa53e6d7 vk_present_manager: Fix softlocks when disabling async present 2023-05-03 07:50:10 +03:00
lat9nq 047ee6733f configure_graphics: No there isn't a hyphen in VSync
Most sources seem to suggest VSync and not V-Sync
2023-05-02 21:52:43 -04:00
lat9nq 41e7765eb5 configure_input_player: Add missing include
Cleaning up includes in bootmanager and configure_graphics has exposed a
missing include here.
2023-05-02 21:52:43 -04:00
lat9nq e382ab8058 configure_graphics: Clean up includes [IWYU] 2023-05-02 21:52:43 -04:00
lat9nq a4322198be bootmanager: Clean up includes [IWYU]
bootmanager: Remove system-specific headers

IWYU can be too complete I suppose.
2023-05-02 21:52:43 -04:00
lat9nq 40108e515b configure_graphics: Actively find present modes
When Vulkan devices are enumerated, this also determines the available
present modes for each device, maps them to a vector, and gives
those options to the user.
OpenGL options are limited to On/Off.

Required creating a VkSurfaceKHR during device enumeration, which
may or may not be desireable. For the sake of a less confusing UI.

Also fixes a bug where if a graphics device disappears on the host, we
don't try and select the non-existant devices.

configure_graphics: Remove vsync runtime lock for Vulkan

configure_graphics: Recommend Mailbox present mode

configure_graphics: Fix type-limits warning

configure_graphics: Clean up includes

configure_graphics: Add tooltip
2023-05-02 21:52:43 -04:00
lat9nq cef9dca85f vk_swapchain: Use certain modes for unlocked
Uses mailbox, then immediate for unlocked framerate depending on
support for either. Also adds support for FIFO_RELAXED.

This function now assumes vsync_mode was originially configured to a value
that the driver supports.

vk_swapchain: ChooseSwapPresentMode determines updates

Simplifies swapchain a bit and allows us to change the present mode
during guest runtime.

vk_swapchain: Fix MSVC error

vk_swapchain: Enforce available present modes

Some frontends don't check the value of vsync_mode before comitting it.
Just as well, since a driver update or misconfiguration could problems
in the swap chain.

vk_swapchain: Silence warnings

Silences GCC warnings implicit-fallthrough and shadow, which apparently
are not enabled on clang.
2023-05-02 21:52:43 -04:00
lat9nq 3573979d27 bootmanager: Remove inaccurate switch
Those vulkan settings do not correspond 1:1 to the swap intervals that
they set for OpenGL, so remove it.

bootmanager: Add missing include

I didn't add this log why did it break
2023-05-02 21:51:30 -04:00
lat9nq 17507c4849 qt_common: Move window info function out of bootmanager
Function is useful outside of bootmanager, so put it in a common place.

qt_common: Add missing include

qt_common: Add some newlines

qt_common: Add trailing newline

qt_common: Add trainline newline
2023-05-02 21:51:30 -04:00
lat9nq ff2197130f vulkan_surface: Pass only window info for surface creation
We don't need the whole EmuWindow when creating a surface,
and it creates onerous requirements outside of typical usage for
creating a surface elsewhere.
2023-05-02 21:51:30 -04:00
lat9nq 2cca81495e settings: Enable FIFO relaxed
Not entirely sure if we need this, but there's also no reason not to
support it.

settings: Give VSyncMode values
2023-05-02 21:51:30 -04:00
lat9nq bd25f22842 configure_graphics: Fix another typo 2023-05-02 21:51:29 -04:00
lat9nq 7bffe8ce02 telemetry_session: Make translate function static
Addresses review feedback

Co-authored-by: Lioncash <mathew1800@gmail.com>
2023-05-02 21:51:29 -04:00
lat9nq 178a4e3e2d bootmanager: Return value in impossible case
The setting is ranged, so this return statement is unreachable.
But GCC can't tell I guess.
2023-05-02 21:51:29 -04:00
lat9nq 01d93d094f configure_graphics: Fix typo 2023-05-02 21:51:29 -04:00
lat9nq a0f34fb0a1 default_ini: Update V-Sync description
default_ini: Update vsync text

default_ini: Add tooltip from configure_graphics
2023-05-02 21:51:29 -04:00
lat9nq 581d8f34ee configuration: Expose separate swap present modes
Previously, yuzu would try and guess which vsync mode to use given
different scenarios, but apparently we didn't always get it right. This
exposes the separate modes in a drop-down the user can select.

If a mode isn't available in Vulkan, it defaults to FIFO.
2023-05-02 21:51:29 -04:00
bunnei 35b4802239 Merge pull request #9973 from GPUCode/async-present
Implement asynchronous presentation
2023-05-02 17:54:57 -07:00
Kelebek1 3fc1615e28 Fix code resize to use word size rather than byte size 2023-05-02 23:52:21 +01:00
liamwhite 28126a6754 Merge pull request #10133 from lat9nq/clang-shadow-and-fallthrough
CMakeLists: Enable more checks on Clang
2023-05-02 18:18:46 -04:00
liamwhite 7b7531a7f3 Merge pull request #10130 from liamwhite/keys
qt: warn on inoperable keys
2023-05-02 18:17:24 -04:00
liamwhite ccea9408c7 Merge pull request #10123 from Kelebek1/sample_mask
Define SampleMask as an array
2023-05-02 18:17:15 -04:00
Liam 44b15592e8 vulkan: disable turbo when debugging tool is attached 2023-05-02 18:14:57 -04:00
Liam 2438a0b087 video_core: fix build on Apple Clang 2023-05-02 18:05:30 -04:00
lat9nq 13a0b058bb CMake: Enable type limits on Clang 2023-05-02 02:07:36 -04:00
lat9nq bcb8e1491a CMakeLists: Enable checks on Clang
Enables shadow-uncaptured-locals and implicit-fallthrough for Clang.
implicit-fallthrough is not enabled by default in -Wall or -Wextra, and
shadow-uncaptured-local doesn't seem to be enabled by default by
-Wshadow, even though GCC has both of these by their respective cases.
2023-05-02 01:57:22 -04:00
GPUCode d56a40606c vk_present_manager: Add toggle for async presentation 2023-05-01 23:13:24 +03:00
GPUCode f9514cbc51 vk_blit_screen: Recreate FSR when frame is recreated
* Depends on the layout dimentions and thus should be recreated as well
2023-05-01 23:13:24 +03:00
GPUCode 373cfc636c renderer_vulkan: Fix crashing when updating descriptors
* During pipeline configure the function would acquire some payload space from the descriptor update queue,
  write the descriptor data on the GPU thread and give the scheduler a pointer to the beginning of said space to update it later.
  TickFrame resets the payload cursor, used to track acquires, back to the beginning of the buffer.
  This wasn't a problem before since WaitWorker was called at the end of the frame but now it is.
  If a frame writes to a cursor before the scheduler catches up, it will crash

* To fix this the payload buffer has been increased to account for the in flight frames that are allowed to exist now.
  TickFrame will switch between the payload spaces instead of resetting
2023-05-01 23:13:24 +03:00
GPUCode 8eede48a39 renderer_vulkan: Async presentation 2023-05-01 23:13:24 +03:00
Morph 98d1e50fb9 Merge pull request #10084 from FernandoS27/yuzu-goes-broom-broom
Y.F.C Buffer Cache Revamp
2023-05-01 11:08:02 -04:00
liamwhite 5de7095aa9 Merge pull request #10116 from liamwhite/deboost
kernel: remove boost intrusive lists
2023-05-01 09:27:23 -04:00
Fernando Sahmkow bd8abfe654 BufferCache: Fixes and address feedback 2023-05-01 11:43:26 +02:00
Liam 0dcc190ccc qt: warn on inoperable keys 2023-04-30 23:47:42 -04:00
Kelebek1 967e5b2873 Wait for the terminate event before destroying a system instance 2023-05-01 00:27:12 +01:00
Liam bdaf10ec9e settings: rename extended memory layout to unsafe, move from general to system 2023-04-30 14:24:22 -04:00
Kelebek1 dc9546fe26 Define SampleMask as an array 2023-04-30 18:37:37 +01:00
bunnei 4bcb509bbb Merge pull request #10110 from Morph1984/intel-disable-compute
vk_pipeline_cache: Skip compute pipelines on Intel proprietary drivers
2023-04-29 23:02:45 -07:00
Liam 370a0526a5 kernel: remove general boost lists 2023-04-29 22:11:32 -04:00
Liam 7afcc29ac8 kernel: match calls to Register and Unregister 2023-04-29 21:52:26 -04:00
Liam 1458a4cdc3 common: add intrusive list type 2023-04-29 17:46:26 -04:00
Fernando Sahmkow f5d2ae4c5e Texture Cache: Release stagging buffers on tick frame 2023-04-29 15:31:38 +02:00
Fernando Sahmkow 6e18a08510 Buffer Cache: Release stagging buffers on tick frame 2023-04-29 00:46:31 +02:00
Fernando Sahmkow b328059505 Tests: Add memory tracker tests. 2023-04-29 00:46:31 +02:00
Fernando Sahmkow 917a21317f Clang: format and ficx compile errors. 2023-04-29 00:46:31 +02:00
Fernando Sahmkow cd4d4072c7 Implement Async downloads in normal and fix a few issues. 2023-04-29 00:46:31 +02:00
Fernando Sahmkow 139995905e Buffer Cache rework: Setup async downloads. 2023-04-29 00:46:31 +02:00
Fernando Sahmkow 64c9a90c20 Buffer Cache: Fully rework the buffer cache. 2023-04-29 00:46:31 +02:00
Fernando Sahmkow cf34f7c745 Address Feedback & Clang Format 2023-04-29 00:18:21 +02:00
Fernando Sahmkow 3595172637 Maxwell3D: only update parameters on High 2023-04-29 00:18:21 +02:00
Fernando Sahmkow b22e1a2bce Accelerate DMA: Use texture cache async downloads to perform the copies
to host.

WIP
2023-04-29 00:18:21 +02:00
Fernando Sahmkow e2bfd9e8c4 TextureCache: refactor DMA downloads to allow multiple buffers. 2023-04-29 00:18:21 +02:00
Morph 79d97d07e2 vk_pipeline_cache: Skip compute pipelines on Intel proprietary drivers
Intel's SPIR-V shader compiler is broken. For now, skip compiling any compute pipelines until they fix this issue.
This is not a perfect workaround, as there are a small subset of non-compute pipelines that still cause it to crash, but this should cover the majority of crashes.
It is unfortunate that even with a test case reported 6 months ago the issue has not been fixed in favor of fixing "the most popular games and apps".
Intel, you can do better than this.
2023-04-28 17:59:36 -04:00
Fernando Sahmkow 0da4b879eb QueryCache: Fix write invalidation. 2023-04-28 23:53:46 +02:00
Fernando Sahmkow ff3cf7c1d9 MemoryManager: Fix race conditions. 2023-04-28 23:53:02 +02:00
german77 7ed3f00c30 core: service: Add FunctionInfoTyped to allow expanding existing interfaces 2023-04-25 23:36:24 -06:00
Fernando Sahmkow f606fa3515 Clang format and ddress feedback 2023-04-24 12:38:47 +02:00
Fernando S f430449ddb Merge pull request #10051 from liamwhite/surface-capabilities
vulkan: pick alpha composite flags based on available values
2023-04-24 12:37:13 +02:00
Fernando S fa3ff7a6d5 Merge pull request #10056 from vonchenplus/audout_u
core: audio: return result when audio_out initialize failed
2023-04-24 12:36:52 +02:00
Fernando S f151023e45 Merge pull request #10069 from liamwhite/log
maxwell_3d: fix out of bounds array access in size estimation
2023-04-24 12:36:24 +02:00
Narr the Reg f8d2ab4660 service: nfc: Create mifare interface 2023-04-23 23:28:09 -06:00
Narr the Reg db242ac13f service: nfc: Create interface 2023-04-23 23:28:09 -06:00
Fernando Sahmkow abe4e83b45 QueryCache: rework async downloads. 2023-04-23 22:04:14 +02:00
Fernando Sahmkow eeffe68b7f Accuracy Normal: reduce accuracy further for perf improvements in Project Lime 2023-04-23 22:03:44 +02:00
Fernando Sahmkow ae99dcd531 Fence Manager: implement async fence management in a sepparate thread. 2023-04-23 04:48:50 +02:00
Liam b84bab419c maxwell_3d: fix out of bounds array access in size estimation 2023-04-22 10:35:26 -04:00
Kelebek1 325a8febfc Silence nifm spam 2023-04-22 14:29:58 +01:00
Kelebek1 477cbd067e Sort overlap_ids by modification tick before copy 2023-04-22 14:02:10 +01:00
Fernando S abcc622dae Merge pull request #10074 from Kelebek1/fermi_blit
Account for a pre-added offset when using Corner sample mode for 2D blits
2023-04-22 12:06:00 +02:00
bunnei afe8b9f018 Merge pull request #10076 from german77/TryPopMyFriend
core: am: Demote TryPopFromFriendInvitationStorageChannel Log level
2023-04-21 23:15:07 -07:00