aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-07-23Avoid adding shader buffer descriptors for constant buffers that are not ↵1.1.183gdkchan
used (#3478) * Avoid adding shader buffer descriptors for constant buffers that are not used * Shader cache version
2022-07-15Avoid scaling 2d textures that could be used as 3d (#3464)1.1.182riperiperi
2022-07-14Reduce some unnecessary allocations in DMA handler (#2886)1.1.181Logan Stromberg
* experimental changes to try and reduce allocations in kernel threading and DMA handler * Simplify the changes in this branch to just 1. Don't make unnecessary copies of data just for texture-texture transfers and 2. Add a fast path for 1bpp linear byte copies * forgot to check src + dst linearity in 1bpp DMA fast path. Fixes the UE4 regression. * removing dev log I left in * Generalizing the DMA linear fast path to cases other than 1bpp copies * revert kernel changes * revert whitespace * remove unneeded references * PR feedback Co-authored-by: Logan Stromberg <lostromb@microsoft.com> Co-authored-by: gdk <gab.dark.100@gmail.com>
2022-07-14Remove dependency for FFmpeg.AutoGen and Update FFmpeg to 5.0.1 for Windows ↵1.1.180Mary
(#3466) * Remove dependency for FFMpeg.AutoGen Also prepare for FFMpeg 5.0 and 5.1 * Update Ryujinx.Graphics.Nvdec.Dependencies to 5.0.1-build10 * Address gdkchan's comments * Address Ack's comment * Address gdkchan's comment
2022-07-14BSD: Allow use of DontWait flag in Receive (#3462)1.1.179Fruityloops
2022-07-12Ava/MainWindow: Do not show Show Console menu item on non-Windows (#3461)1.1.178merry
2022-07-12Handle the case where byte optionValues are sent to BSD (#3405)1.1.177riperiperi
Some games and the Mario Odyssey Multiplayer mod do this. The SMO multiplayer mod also needs you to revert #3394 as it uses a blocking socket to receive (otherwise it hangs), and it doesn't seem to like being forced as non-blocking.
2022-07-12Avalonia - Add border to Flyouts (#3341)1.1.176Emmanuel Hansen
* add borders to menus * apply to dropdowns * darken the border for dark theme * fix duplicate keys
2022-07-12Propagate Shader phi nodes with the same source value from all blocks (#3457)1.1.175gdkchan
* Propagate Shader phi nodes with the same source value from all incoming blocks * Shader cache version bump
2022-07-12Avalonia - Make tooltips more useful and descriptive, update Spanish ↵1.1.174MetrosexualGarbodor
localization (#3453) * expand English tooltips and clean up * small oversight * update Spanish locale * wording * Internet * address feedback * update localization accordingly
2022-07-12Avalonia - Couple fixes and improvements (#3451)1.1.173Emmanuel Hansen
* fix updater check crash * remove line * reduce cheat window sizes * enable tiered compilation and r2r * remove warning on LaunchState * remove warnings related to tasks * addressed review * undo csproj indentation * fix tabs in axaml file * remove double line * remove R2R
2022-07-12Avalonia - Further Optimize Chinese Translation (#3452)1.1.172Narugakuruga
* Optimize Chinese Translation * Update zh_CN.json * Update zh_CN.json * Update zh_CN.json * Update zh_CN.json * Update zh_CN.json * Update zh_CN.json * Update zh_CN.json * test * Update zh_CN.json * Update zh_CN.json * Update zh_CN.json * Update zh_CN.json * Delete zh_CN.json * Add files via upload * Update zh_CN.json * Update zh_CN.json
2022-07-08UI - Avalonia Part 3 (#3441)1.1.171Emmanuel Hansen
* Add all other windows * addreesed review * Prevent "No Update" option from being deleted * Select no update is the current update is removed from the title update window * fix amiibo crash
2022-07-08Avalonia - Use loaded config when assigning controller input (#3447)1.1.170Emmanuel Hansen
* Use loaded config when assigning controller input * Fix crash when switch player in controller window
2022-07-08ensure mouse cursor is only hidden when mouse is in renderer (#3448)1.1.169Emmanuel Hansen
2022-07-08misc: Relicense Ryujinx.Audio under the terms of the MIT license (#3449)1.1.168Mary
* Ryujinx.Audio: Remove BOM from files * misc: Relicense Ryujinx.Audio under the terms of the MIT license With the approvals of all the Ryujinx.Audio contributors, this commit changes Ryujinx.Audio license from LGPLv3 to MIT.
2022-07-08Fix deadlock in mouse input on Avalonia (#3444)1.1.167Emmanuel Hansen
* fix deadlock in mouse input * apply @AcK77 changes
2022-07-06Fix Vi managed and stray layers open/close/destroy (#3438)1.1.166gdkchan
* Fix Vi managed and stray layers open/close/destroy * OpenLayer should set the state to ManagedOpened
2022-07-06Implement CPU FCVT Half <-> Double conversion variants (#3439)1.1.165gdkchan
* Half <-> Double conversion support * Add tests, fast path and deduplicate SoftFloat code * PPTC version
2022-07-05Add support for alpha to coverage dithering (#3069)1.1.164gdkchan
* Add support for alpha to coverage dithering * Shader cache version bump * Fix wrong alpha register * Ensure support buffer is cleared * New shader specialization based approach
2022-07-05UI - Avalonia Part 2 (#3351)1.1.163Emmanuel Hansen
* add settings windows and children views * Expose hotkeys configuration on the UI * Remove double spacing from locale JSON * simplify button assigner * add cemuhook buttons and title to locale * move common button assigner to own class * cancel button assigner when window is closed * remove unused setting * address review. fix controller profile not loading default when switching devices * fix updater file name * Input cleanup (#37) * addressed review * add device type to controller device checks * change accessibility modifier of public classes to internal * Update Ryujinx.Ava/Ui/ViewModels/ControllerSettingsViewModel.cs Co-authored-by: gdkchan <gab.dark.100@gmail.com> * Update de_DE.json * Update de_DE.json * Update tr_TR.json Translated newly added lines * Update it_IT.json * fix rebase * update avalonia * fix wrong key used for button text * Align settings window elements * Tabs to spaces * Update brazilian portuguese translation * Minor improvement on brazilian portuguese translation * fix turkish translation * remove unused text * change view related classes to public * unsubscribe from deferred event if dialog is closed * Load the default language before loading any other when switching languages * Make controller settings more compact * increase default width of settings window, reduce profile buttons width Co-authored-by: gdk <gab.dark.100@gmail.com> Co-authored-by: MutantAura <44103205+MutantAura@users.noreply.github.com> Co-authored-by: Niwu34 <67392333+Niwu34@users.noreply.github.com> Co-authored-by: aegiff <99728970+aegiff@users.noreply.github.com> Co-authored-by: Antonio Brugnolo <36473846+AntoSkate@users.noreply.github.com>
2022-07-03Stub GetTemperature (#3429)1.1.162Ac_K
2022-07-02Bindless elimination for constant sampler handle (#3424)1.1.161gdkchan
* Bindless elimination for constant sampler handle * Shader cache version bump * Update TextureHandle.ReadPackedId for new bindless elimination
2022-06-29ui: Fix timezone abbreviation since #3361 (#3430)1.1.160Mary
As title say
2022-06-25Add Simplified Chinese to Avalonia (V2) (#3416)1.1.159Narugakuruga
* Add files via upload * Update Ryujinx.Ava.csproj * Update MainWindow.axaml
2022-06-25Account for pool change on texture bindings cache (#3420)1.1.158gdkchan
* Account for pool change on texture bindings cache * Reduce the number of checks needed
2022-06-24timezone: Fix regression caused by #3361 (#3418)1.1.157Mary
Because of that PR, TimeZoneRule was bigger than 0x4000 thanks to a misuse of a constant. This commit address this issue and add a new unit test to ensure the size of TimeZoneRule is 0x4000 bytes. Also address suggestions that were lost on the original PR.
2022-06-24time: Make TimeZoneRule blittable and avoid copies (#3361)1.1.156Mary
* time: Make TimeZoneRule blittable and avoid copies This drastically reduce overhead of using TimeZoneRule around the codebase. Effect on games is unknown * Add missing Box type * Ensure we clean the structure still This doesn't perform any copies * Address gdkchan's comments * Simplify Box
2022-06-24Fix ThreadingLock deadlock on invalid access and TerminateProcess (#3407)1.1.155gdkchan
2022-06-24Ensure texture ID is valid before getting texture descriptor (#3406)1.1.154gdkchan
2022-06-23UI: Some Avalonia cleanup (#3358)1.1.153Ac_K
2022-06-22Rewrite kernel memory allocator (#3316)1.1.152gdkchan
* Rewrite kernel memory allocator * Remove unused using * Adjust private static field naming * Change UlongBitSize to UInt64BitSize * Fix unused argument, change argument order to be inline with official code and disable random allocation
2022-06-20Fix doubling of detected gamepads on program start (#3398)1.1.151RhavoX
* Fix doubling of detected gamepads (sometimes the connected event is fired when the app starts even though the pad was connected for some time now). The fix rejects the gamepad if one with the same ID is already present. * Fixed review findings
2022-06-17Account for res scale changes when updating bindings (#3403)1.1.150riperiperi
Fixes a regression introduced by the texture bindings PR. Also renames TextureStatePerStage, as it's no longer per stage.
2022-06-17Optimize Texture Binding and Shader Specialization Checks (#3399)1.1.149riperiperi
* Changes 1 * Changes 2 * Better ModifiedSequence handling This should handle PreciseEvents properly, and simplifies a few things. * Minor changes, remove debug log * Handle stage.Info being null Hopefully fixes Catherine crash * Fix shader specialization fast texture lookup * Fix some things. * Address Feedback Part 1 * Make method static.
2022-06-17Fix VIC out of bounds copy (#3386)1.1.148gdkchan
* Fix VIC out of bounds copy * Update the assert
2022-06-14Support Array/3D depth-stencil render target, and single layer clears (#3400)1.1.147gdkchan
* Support Array/3D depth-stencil render target, and single layer clears * Alignment
2022-06-12Less invasive fix for EventFd blocking operations (#3394)1.1.146gdkchan
2022-06-11Allow concurrent BSD EventFd read/write (#3385)1.1.145gdkchan
2022-06-11Ignore ClipControl on draw texture fallback (#3388)1.1.144gdkchan
2022-06-10Fix instanced indexed inline draw index count (#3389)1.1.143gdkchan
2022-06-05Fix instanced indexed inline draws (#3383)1.1.142gdkchan
2022-06-05Remove freed memory range from tree on memory block disposal (#3347)1.1.141gdkchan
* Remove freed memory range from tree on memory block disposal * PR feedback
2022-06-05Extend uses count from ushort to uint on Operand Data structure (#3374)1.1.140gdkchan
2022-06-05Copy dependency for multisample and non-multisample textures (#3382)1.1.139gdkchan
* Use copy dependency for textures that differs in multisample but are otherwise compatible * Remove allowMs flag as it's no longer required for correctness, it's just an optimization now * Dispose intermmediate pool
2022-06-04Fix a potential GPFIFO submission race (#3378)1.1.138Billy Laws
The syncpoint maximum value represents the maximum possible syncpt value at a given time, however due to PBs being submitted before max was incremented, for a brief moment of time this is not the case which could lead to invalid behaviour if a game waits on the fence at that specific time.
2022-06-02Fix 3D semaphore counter type 0 handling (#3380)1.1.137Billy Laws
Counter type 0 actually releases the semaphore payload rather than a constant zero as was previously thought. This is required by Skyrim.
2022-06-01infra: Switch to win10-x64 RID and fix PR comment for Avalonia and SDL2 ↵1.1.136Mary
artifact rename (#3375) * infra: Switch to win10-x64 RID and fix PR comment for Avalonia and SDL2 artifact rename * Address gdkchan's comments
2022-05-31Rewrite SVC handler using source generators rather than IL emit (#3371)1.1.135gdkchan
* Implement syscall handlers using a source generator * Copy FlushProcessDataCache implementation to Syscall since it was only implemented on Syscall32 * Fix wrong argument order in some syscalls * Delete old Reflection.Emit based syscall handling code * Improvements to the code generation * ControlCodeMemory address and size is always 64-bit
2022-05-31Refactor CPU interface to allow the implementation of other CPU emulators ↵1.1.134gdkchan
(#3362) * Refactor CPU interface * Use IExecutionContext interface on SVC handler, change how CPU interrupts invokes the handlers * Make CpuEngine take a ITickSource rather than returning one The previous implementation had the scenario where the CPU engine had to implement the tick source in mind, like for example, when we have a hypervisor and the game can read CNTPCT on the host directly. However given that we need to do conversion due to different frequencies anyway, it's not worth it. It's better to just let the user pass the tick source and redirect any reads to CNTPCT to the user tick source * XML docs for the public interfaces * PPTC invalidation due to NativeInterface function name changes * Fix build of the CPU tests * PR feedback