summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2021-06-02common: fs: fs_util: Move PathToUTF8String to fs_utilMorph
2021-06-02common: fs: fs_util: Add more string conversion functionsMorph
2021-06-01Merge pull request #6361 from lat9nq/per-hb-cfgbunnei
yuzu qt: Handle per-game configs for title id 0
2021-06-01Merge pull request #6318 from german77/dualJoyconbunnei
input_common: Add dual joycon support
2021-05-31Merge pull request #6367 from ReinUsesLisp/vma-hostbunnei
vulkan_memory_allocator: Allow textures to be allocated in host memory
2021-05-30Merge pull request #6385 from degasus/save_memory_accessbunnei
core/memory: Check our memory fallbacks for out-of-bound behavior.
2021-05-30Merge pull request #6377 from lioncash/pointbunnei
common: Extract Point struct into common
2021-05-29Merge pull request #6387 from lioncash/class-tokenbunnei
k_class_token: Use variable templates where applicable
2021-05-29Merge pull request #6386 from bunnei/shutdown-fixbunnei
video_core: gpu: WaitFence: Do not block threads during shutdown.
2021-05-29Merge pull request #6374 from Morph1984/swkbd-textcheck-encodingMai M
applets/swkbd: Only read the text check message on Failure/Confirm
2021-05-29Merge pull request #6364 from german77/stub-lp2pMai M
ldn: Add and stub lp2p:sys lp2p:app INetworkServiceMonitor INetworkService Mario Kart Live: Home Circuit needs lp2p:sys lp2p:app INetworkServiceMonitor INetworkService to be able to progress. Note: The game still fails to boot from unimplemented LDN and BSD services.
2021-05-29Merge pull request #6379 from degasus/update_dynarmicbunnei
externals: Update dynarmic.
2021-05-29k_class_token: Use variable templates where applicableLioncash
Same behavior, less code.
2021-05-29Merge pull request #6384 from lioncash/virtualbunnei
kernel: Add missing override specifiers
2021-05-29Merge pull request #6382 from lioncash/nullbunnei
k_thread: Move dereference after null check in Initialize()
2021-05-29video_core: gpu: WaitFence: Do not block threads during shutdown.bunnei
- Fixes a hang on shutdown when NVFlinger thread is waiting on a syncpoint that will never occur. - Commonly observed when stopping emulation in Super Mario Odyssey.
2021-05-29core/memory: Check our memory fallbacks for out-of-bound behavior.Markus Wick
This makes it by far harder to crash yuzu. Also implement the 48bit masking of AARCH64 while touching this code.
2021-05-29Merge pull request #6373 from bunnei/use-slabheap-tlsbunnei
hle: kernel: KSlabHeap: Allow host or guest allocations.
2021-05-29core/arm_interface: Improve the performance of memory fallbacks.Markus Wick
We just create one memory subsystem. This is a constant all the time. So there is no need to call the non-inlined parent.Memory() helper on every callback.
2021-05-29kernel: Add missing override specifiersLioncash
Over the course of the kernel refactoring a tiny bit of missing overrides slipped through review, so we can add these. While we're at it, we can remove redundant virtual keywords where applicable as well.
2021-05-29Fix two GCC 11 warnings: Unneeded copies.Markus Wick
std::move created an unneeded copy. iterating without reference also created copies.
2021-05-29externals: Update dynarmic.Markus Wick
The new version supports fastmem on a64.
2021-05-29k_thread: Move dereference after null check in Initialize()Lioncash
Prevents a -Wnonnull warning on GCC.
2021-05-28Merge pull request #6371 from degasus/drop_ExceptionalExitbunnei
core/arm_interface: Call SVC after end of dynarmic block.
2021-05-28hle: kernel: KSlabHeap: Allow host or guest allocations.bunnei
- Use host allocations for kernel memory, as this is not properly emulated yet. - Use guest allocations for TLS, as this needs to be backed by DeviceMemory.
2021-05-28Merge pull request #6356 from ogniK5377/ApplyNpadSystemCommonPolicybunnei
hid: ApplyNpadSystemCommonPolicy
2021-05-28touchscreen: Make use of common point structLioncash
2021-05-28common: Extract point into a common structLioncash
This is generic enough that it can be moved into the Common class for reuse.
2021-05-28common/fs/file: Explicitly delete copy constructorsLioncash
Relocates them to the same place the move equivalents are at for consistent viewing.
2021-05-28common/fs/file: Devirtualize destructorLioncash
IOFile is a final class, so there's no need for a virtual destructor.
2021-05-28common/fs/file: Default initialize IOFile membersLioncash
Prevents a potential uninitialized read vector in the move constructor.
2021-05-27applets/swkbd: Make use of std::move where applicableMorph
Avoids redundant string copies
2021-05-27applets/swkbd: Only read the text check message on Failure/ConfirmMorph
Applications may leave this region of memory uninitialized when the text check result is not either Failure or Confirm. Attempting to read uninitialized memory may cause an exception within the UTF16 to UTF8 string converter. Fix this by only reading the text check message on Failure or Confirm.
2021-05-27video_core: rasterizer_cache: Use u16 for cached page count.bunnei
- Greatly reduces the risk of overflow, at the cost of doubling the size of this array.
2021-05-27core/arm_interface: Call SVC after end of dynarmic block.Markus Wick
So we can modify all of dynarmic states within SVC without ExceptionalExit. Especially as the ExceptionalExit hack is dropped on upstream dynarmic.
2021-05-27Merge pull request #6346 from lat9nq/apply-config-pgcAmeer J
yuzu qt: Add an Apply button to configuration dialogs
2021-05-27vulkan_memory_allocator: Allow textures to be allocated in host memoryReinUsesLisp
Allow Vulkan's allocator to use host memory when there's no more device local memory. This delays OOM, but it will eventually still happen.
2021-05-26Merge pull request #6366 from lat9nq/bundled-qt-linuxMai M
cmake: Download Qt binaries on Linux if needed
2021-05-26cmake: Download Qt binaries on Linux if neededlat9nq
If the local version of Qt is older than the minimum version required by yuzu, download a pre-built binary package from yuzu-emu/ext-linux-bin and build yuzu with it, instead. This also requires linking yuzu to the correct libraries after building it, and copying over the required binaries when building yuzu. This sets the Qt requirement to 5.12, which is intentionally behind the versions used by our toolchains since they are not all updated yet to 5.15.
2021-05-26core/arm: Drop ChangeProcessorID.Markus Wick
This code was used to switch the CPU ID on thread switches. However since "hle: kernel: multicore: Replace n-JITs impl. with 4 JITs.", the CPU ID is not a constant. This has been dead code since this rewrite, and dropped in dynarmic as well. So there is no need to keep it.
2021-05-26ldn: Add and stub lp2p:sys lp2p:app INetworkServiceMonitor INetworkServicegerman77
2021-05-26Merge pull request #6331 from lioncash/gestureMorph
hid/gesture: Simplify point related code
2021-05-25yuzu qt: Restore const qualifierslat9nq
This addresses review comments. Co-authored-by: LC <mathew1800@gmail.com>
2021-05-25Merge pull request #6339 from Morph1984/swkbd-queuedconnectionbunnei
applets/swkbd: Make use of QueuedConnection in returnPressed signal
2021-05-25yuzu qt: Handle per-game configs for title id 0lat9nq
Currently with programs that have a 0 title id, yuzu loads the custom configuration 0000000000000000.ini for per-game configs. This is not ideal since many homebrews share this id. Instead for these programs, we load a config that is simply the file name and `.ini` appended to it.
2021-05-25common: fs: Rework the Common Filesystem interface to make use of ↵Morph
std::filesystem (#6270) * common: fs: fs_types: Create filesystem types Contains various filesystem types used by the Common::FS library * common: fs: fs_util: Add std::string to std::u8string conversion utility * common: fs: path_util: Add utlity functions for paths Contains various utility functions for getting or manipulating filesystem paths used by the Common::FS library * common: fs: file: Rewrite the IOFile implementation * common: fs: Reimplement Common::FS library using std::filesystem * common: fs: fs_paths: Add fs_paths to replace common_paths * common: fs: path_util: Add the rest of the path functions * common: Remove the previous Common::FS implementation * general: Remove unused fs includes * string_util: Remove unused function and include * nvidia_flags: Migrate to the new Common::FS library * settings: Migrate to the new Common::FS library * logging: backend: Migrate to the new Common::FS library * core: Migrate to the new Common::FS library * perf_stats: Migrate to the new Common::FS library * reporter: Migrate to the new Common::FS library * telemetry_session: Migrate to the new Common::FS library * key_manager: Migrate to the new Common::FS library * bis_factory: Migrate to the new Common::FS library * registered_cache: Migrate to the new Common::FS library * xts_archive: Migrate to the new Common::FS library * service: acc: Migrate to the new Common::FS library * applets/profile: Migrate to the new Common::FS library * applets/web: Migrate to the new Common::FS library * service: filesystem: Migrate to the new Common::FS library * loader: Migrate to the new Common::FS library * gl_shader_disk_cache: Migrate to the new Common::FS library * nsight_aftermath_tracker: Migrate to the new Common::FS library * vulkan_library: Migrate to the new Common::FS library * configure_debug: Migrate to the new Common::FS library * game_list_worker: Migrate to the new Common::FS library * config: Migrate to the new Common::FS library * configure_filesystem: Migrate to the new Common::FS library * configure_per_game_addons: Migrate to the new Common::FS library * configure_profile_manager: Migrate to the new Common::FS library * configure_ui: Migrate to the new Common::FS library * input_profiles: Migrate to the new Common::FS library * yuzu_cmd: config: Migrate to the new Common::FS library * yuzu_cmd: Migrate to the new Common::FS library * vfs_real: Migrate to the new Common::FS library * vfs: Migrate to the new Common::FS library * vfs_libzip: Migrate to the new Common::FS library * service: bcat: Migrate to the new Common::FS library * yuzu: main: Migrate to the new Common::FS library * vfs_real: Delete the contents of an existing file in CreateFile Current usages of CreateFile expect to delete the contents of an existing file, retain this behavior for now. * input_profiles: Don't iterate the input profile dir if it does not exist Silences an error produced in the log if the directory does not exist. * game_list_worker: Skip parsing file if the returned VfsFile is nullptr Prevents crashes in GetLoader when the virtual file is nullptr * common: fs: Validate paths for path length * service: filesystem: Open the mod load directory as read only
2021-05-25Merge pull request #6349 from german77/suppress_config_warningbunnei
settings: Suppress duplicate label name warning
2021-05-25Merge pull request #6353 from german77/handheld_dockedbunnei
settings: Forbid docked mode on handheld
2021-05-25yuzu qt: Add an Apply button to configuration dialogslat9nq
Most of the code already exists to do this, but the Apply button itself was never added. This adds a button and boolean that tells yuzu to save the configuration after applying settings, even if close/Cancel is pressed on the dialog. Changes after applying will not be saved when Cancel is pressed, though.
2021-05-25kernel: process_capability: Add MapRegion capabilityMorph
- Used by nx-hbloader