summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2021-03-11Fix casing on DeallocateAesKeySlotzkitx
2021-03-11Update SPL to fit N's service refactor (4.0.0+) which split into new services.zkitx
2021-03-09Merge pull request #5891 from ameerj/bgra-oglRodrigo Locatti
renderer_opengl: Use compute shaders to swizzle BGR textures on copy
2021-03-08Merge pull request #6021 from ReinUsesLisp/skip-cache-heuristicbunnei
buffer_cache: Heuristically decide to skip cache on uniform buffers
2021-03-08Merge pull request #5990 from german77/mousePanningV2bunnei
InputCommon: Mouse fixes
2021-03-07common: Fiber: use a reference for YieldTo.bunnei
- Fixes another small leak.
2021-03-05common: fiber: Use weak_ptr when yielding.bunnei
- Avoids a memory leak, as taking a strong reference of the fiber here causes a circular reference. - Supersedes #6006 with a more narrow fix.
2021-03-05Merge pull request #6036 from bunnei/thread-leakbunnei
hle: kernel: KThread: Rework dummy threads & fix memory leak.
2021-03-05hle: kernel: KThread: Rework dummy threads & fix memory leak.bunnei
- Dummy threads are created on thread local storage for all host threads. - Fixes a leak by removing creation of fibers, which are not applicable here.
2021-03-05Merge pull request #6029 from Morph1984/compile-utf8LC
CMakeLists: Add /utf-8 compile option for MSVC
2021-03-05Revert "core: Switch to unique_ptr for usage of Common::Fiber."bunnei
2021-03-05Merge pull request #6034 from Morph1984/mbedtlsbunnei
externals: Update mbedtls to 2.16.9
2021-03-04Merge pull request #6006 from bunnei/fiber-unique-ptrbunnei
core: Switch to unique_ptr for usage of Common::Fiber.
2021-03-05aes_util: Remove malformed mbedtls_cipher_finish function callMorph
2021-03-05CMakeLists: Add /utf-8 compile option for MSVCMorph
Ensures that the source and execution character sets are in UTF-8
2021-03-04texture_cache: Blacklist BGRA8 copies and views on OpenGLameerj
In order to force the BGRA8 conversion on Nvidia using OpenGL, we need to forbid texture copies and views with other formats. This commit also adds a boolean relating to this, as this needs to be done only for the OpenGL api, Vulkan must remain unchanged.
2021-03-04renderer_opengl: Swizzle BGR textures on copyameerj
OpenGL does not natively support BGR internal formats, which causes many BGR textures to render incorrectly, with Red and Blue channels swapped. This commit aims to address this by swizzling the blue and red channels on texture copies when a BGR format is encountered.
2021-03-04Merge pull request #5989 from ReinUsesLisp/cmdpoolbunnei
vk_command_pool: Reduce the command pool size from 4096 to 4
2021-03-03Merge pull request #6004 from german77/udprandombunnei
InputCommon: Use an unique client id for each udp socket instance
2021-03-02Merge pull request #5815 from comex/net-error-reformbunnei
Network error handling reform
2021-03-02buffer_cache: Heuristically decide to skip cache on uniform buffersReinUsesLisp
Some games benefit from skipping caches (Pokémon Sword), and others don't (Animal Crossing: New Horizons). Add an heuristic to decide this at runtime. The cache hit ratio has to be ~98% or better to not skip the cache. There are 16 frames of buffer.
2021-03-01core: Shutdown: Move kernel cleanup to later in shutdown.bunnei
- Fixes a shutdown crash due to a race condition with GPU still accessing memory.
2021-03-02Fix default bcat_backend initKelebek1
2021-03-01inputCommon: Use an unique client id for each socket instancegerman
2021-02-28gpu_thread: Remove Async NVDEC placeholdersameerj
This commit removes early placeholders for an implementation of async nvdec. With recent changes to the source code, the placeholders are no longer accurate, and can cause a nullptr dereference due to the nature of the cdma_pusher lifetime.
2021-02-28[network] Error handling reformcomex
`network.cpp` has several error paths which either: - report "Unhandled host socket error=n" and return `SUCCESS`, or - switch on a few possible errors, log them, and translate them to Errno; the same switch statement is copied and pasted in multiple places in the code Convert these paths to use a helper function `GetAndLogLastError`, which is roughly the equivalent of one of the switch statements, but: - handling more cases (both ones that were already in `Errno`, and a few more I added), and - using OS functions to convert the error to a string when logging, so it'll describe the error even if it's not one of the ones in the switch statement. - To handle this, refactor the logic in `GetLastErrorMsg` to expose a new function `NativeErrorToString` which takes the error number explicitly as an argument. And improve the Windows version a bit. Also, add a test which exercises two random error paths.
2021-02-28Merge pull request #6007 from bunnei/ldn-errorbunnei
core: hle: ldn: Error out on call to Initialization.
2021-02-27Merge pull request #5276 from german77/gesturesMorph
HID: Implement gestures
2021-02-27Implements touch, pan, pinch and rotation gesturesgerman
2021-02-27inputCommon: Mouse fixesgerman77
2021-02-27Merge pull request #5984 from jbeich/gcc-freebsdbunnei
common,video-core: unbreak GCC 11 build on FreeBSD 13
2021-02-27core: hle: ldn: Error out on call to Initialization.bunnei
- Since we do not emulate LDN, returning an error here makes more sense.
2021-02-27core: Switch to unique_ptr for usage of Common::Fiber.bunnei
- With using unique_ptr instead of shared_ptr, we have more explicit ownership of the context. - Fixes a memory leak due to circular reference of the shared pointer.
2021-02-27Merge pull request #5953 from bunnei/memory-refactor-1bunnei
Kernel Rework: Memory updates and refactoring (Part 1)
2021-02-26Merge pull request #5944 from Morph1984/gc-vibrationsbunnei
hid: Implement GameCube Controller Vibrations
2021-02-26Merge pull request #5997 from Kelebek1/Depthbunnei
[OpenGL] Implement glDepthRangeIndexeddNV
2021-02-24Merge pull request #5977 from Morph1984/stub-accbunnei
acc: Stub GetNintendoAccountUserResourceCacheForApplication
2021-02-24Implement glDepthRangeIndexeddNVKelebek1
2021-02-23vk_command_pool: Reduce the command pool size from 4096 to 4ReinUsesLisp
This allows drivers to reuse memory more easily and preallocate less. The optimal number has been measured booting Pokémon Sword.
2021-02-23video_core: add missing header after 468bd9c1b0f9Jan Beich
src/video_core/shader_notify.cpp: In member function 'void VideoCore::ShaderNotify::MarkShaderComplete()': src/video_core/shader_notify.cpp:33:10: error: 'unique_lock' is not a member of 'std' 33 | std::unique_lock lock{mutex}; | ^~~~~~~~~~~ src/video_core/shader_notify.cpp:6:1: note: 'std::unique_lock' is defined in header '<mutex>'; did you forget to '#include <mutex>'? 5 | #include "video_core/shader_notify.h" +++ |+#include <mutex> 6 | src/video_core/shader_notify.cpp: In member function 'void VideoCore::ShaderNotify::MarkSharderBuilding()': src/video_core/shader_notify.cpp:38:10: error: 'unique_lock' is not a member of 'std' 38 | std::unique_lock lock{mutex}; | ^~~~~~~~~~~ src/video_core/shader_notify.cpp:38:10: note: 'std::unique_lock' is defined in header '<mutex>'; did you forget to '#include <mutex>'?
2021-02-23common: add missing header after f3805376f726Jan Beich
In file included from src/video_core/dma_pusher.cpp:5: src/./common/cityhash.h:69:47: error: 'size_t' has not been declared 69 | [[nodiscard]] u64 CityHash64(const char* buf, size_t len); | ^~~~~~ src/./common/cityhash.h:73:55: error: 'size_t' has not been declared 73 | [[nodiscard]] u64 CityHash64WithSeed(const char* buf, size_t len, u64 seed); | ^~~~~~ src/./common/cityhash.h:77:56: error: 'size_t' has not been declared 77 | [[nodiscard]] u64 CityHash64WithSeeds(const char* buf, size_t len, u64 seed0, u64 seed1); | ^~~~~~ src/./common/cityhash.h:80:47: error: 'size_t' has not been declared 80 | [[nodiscard]] u128 CityHash128(const char* s, size_t len); | ^~~~~~ src/./common/cityhash.h:84:55: error: 'size_t' has not been declared 84 | [[nodiscard]] u128 CityHash128WithSeed(const char* s, size_t len, u128 seed); | ^~~~~~
2021-02-21Merge pull request #5936 from Kelebek1/Offsetsbunnei
Offsets for TexelFetch and TextureGather in Vulkan
2021-02-21hid: Implement GameCube Controller VibrationsMorph
Implements both SendVibrationGcErmCommand and GetActualVibrationGcErmCommand, and modifies GetVibrationDeviceInfo to account for additional controllers.
2021-02-21acc: Stub GetNintendoAccountUserResourceCacheForApplicationMorph
This command returns a Nintendo Account ID and writes 2 output buffers. The first output buffer is a NasUserBaseForApplication and the second output buffer is currently empty. Used by: - Pokken Tournament DX - Super Smash Bros. Ultimate - Super Nintendo Entertainment System - Nintendo Switch Online - Mario Kart 8 Deluxe
2021-02-20kernel: Fix resource release exception on exitameerj
After rewriting the resource limit, objects releasing reserved resources require a live kernel instance. This commit fixes exceptions that occur due to the kernel being destroyed before some objects released their resources, allowing for a graceful exit.
2021-02-20gl_disk_shader_cache: Log total shader entries count on game loadMorph
2021-02-19common: wall_clock: Fix integer overflow with StandardWallClock.bunnei
- Previous optimized impl. resulted in an integer overflow, so revert. - This is our slow/fallback path that should never be really be used, so the optimization in unimportant.
2021-02-19Merge pull request #5924 from ReinUsesLisp/inline-bindingsbunnei
vk_update_descriptor: Inline and improve code for binding buffers
2021-02-18hle: kernel: Migrate PageHeap/PageTable to KPageHeap/KPageTable.bunnei
2021-02-18hle: kernel: Migrate MemoryManager to KMemoryManager.bunnei