Commit graph

2275 commits

Author SHA1 Message Date
gdk
6a38d22dd7 Fix texture 0 not being bound for compute 2024-02-22 19:14:37 -05:00
gdk
14064061a2 Partial support for branch with CC, and fix a edge case of branch out of loop on shaders 2024-02-22 19:14:37 -05:00
gdk
889090fb6a Simplified F2I shader instruction codegen 2024-02-22 19:14:37 -05:00
gdk
31dd3ecf34 Implement HSET2 shader instruction and fix errors uncovered by Rodrigo tests 2024-02-22 19:14:37 -05:00
gdk
290762192e Fix shader code comparison method 2024-02-22 19:14:37 -05:00
gdk
d767af9985 Optimize RangeList by not doing an allocation on every call to the Find methods 2024-02-22 19:14:37 -05:00
gdk
10c9ef35c6 Add PSET shader instruction 2024-02-22 19:14:37 -05:00
gdk
731d58e42d Revert "Simplify shader uniform buffer access codegen"
This reverts commit 2fe9ebaf118d690be8d0cb302529dd359d7c402b.
2024-02-22 19:14:37 -05:00
gdk
517f5d4ff0 Simplify shader uniform buffer access codegen 2024-02-22 19:14:36 -05:00
gdk
0b2cf9c6cd Improved and simplified window texture presentation 2024-02-22 19:14:36 -05:00
gdk
7e6ba6b554 Small optimizations on texture and sampler pool invalidation 2024-02-22 19:14:36 -05:00
gdk
b19ac2b1cf Correct ordering of compute buffer bind 2024-02-22 19:14:36 -05:00
gdk
06c510932b Share texture pool cache between graphics and compute 2024-02-22 19:14:36 -05:00
gdk
c5f633b892 Separate sub-channel state 2024-02-22 19:14:36 -05:00
gdk
39bf6c5239 Remove TranslatorConfig struct 2024-02-22 19:14:36 -05:00
gdk
acd6245584 Add R2P shader instruction 2024-02-22 19:14:36 -05:00
gdk
eea2ae7599 Make the shader translator more error resilient (part 2) 2024-02-22 19:14:36 -05:00
gdk
2d807fd789 Make the shader translator more error resilient 2024-02-22 19:14:36 -05:00
gdk
987611fdf4 Add missing check for BRX, do not add a out of bounds block to the queue 2024-02-22 19:14:36 -05:00
gdk
74e3f3ee1c Invalidate shaders when they are modified 2024-02-22 19:14:36 -05:00
gdk
0d1fb50a53 Add partial support for the BRX shader instruction 2024-02-22 19:14:36 -05:00
gdk
dde40abaf1 Fix image units bindings and shader dump in the presence of NOPs 2024-02-22 19:14:36 -05:00
gdk
774b7038e3 Revert "Check for ASTC support on the list of supported compressed formats"
This reverts commit 38a993510f64346649529b8fd2af6683bef05aa6.
2024-02-22 19:14:36 -05:00
gdk
f1c48d4a1e Check for ASTC support on the list of supported compressed formats 2024-02-22 19:14:36 -05:00
gdk
98cd25c3cc Fix regression on load/store local (wrong type) 2024-02-22 19:14:36 -05:00
gdk
0811a6ca7c Do not throw for invalid ASTC compressed textures 2024-02-22 19:14:35 -05:00
gdk
360df1e42f Add ATOMS, LDS, POPC, RED, STS and VOTE shader instructions, start changing the way how global memory is handled 2024-02-22 19:14:35 -05:00
gdk
c7dccda2fc Use a more efficient range list on the buffer manager 2024-02-22 19:14:35 -05:00
gdk
fc8af96ad9 Remove some unused constants and other code 2024-02-22 19:14:35 -05:00
gdk
6ffc3baa91 Add partial support for array of samplers, and add pass to identify them from bindless texture accesses 2024-02-22 19:14:35 -05:00
gdk
55b1eaa6bd Support window resizing 2024-02-22 19:14:35 -05:00
gdk
a16a9d9aba Implement BFI, BRK, FLO, FSWZADD, PBK, SHFL and TXD shader instructions, misc. fixes 2024-02-22 19:14:35 -05:00
gdk
34f3d30991 Support copy of slices to 3D textures, remove old 3D render target layered render support, do not delete textures with existing views created from them 2024-02-22 19:14:35 -05:00
gdk
120a62fe64 Add shader support for the round mode on the F2F instruction, support mipmaps on ASTC compressed textures 2024-02-22 19:14:35 -05:00
gdk
6849e2f949 Fix shader FMUL32I instruction saturation 2024-02-22 19:14:35 -05:00
gdk
5df3dea349 Flush buffers on copies 2024-02-22 19:14:35 -05:00
gdk
d7f753bf52 Add per-source type memory change tracking, simplified state change tracking, other fixes 2024-02-22 19:14:35 -05:00
gdk
1a3eef1528 Initial support for image stores, support texture sample on compute 2024-02-22 19:14:34 -05:00
gdk
e02d201596 Fix incorrect saturation on HADD2 and HMUL2 shader instructions 2024-02-22 19:14:34 -05:00
gdk
d91e352f1f Fix BC6 Signed/Unsigned float texture formats 2024-02-22 19:14:34 -05:00
gdk
364b7a4ec2 Handle quad and quad strip primitive types using triangle fans 2024-02-22 19:14:34 -05:00
gdk
115687db97 Improved Min/Mip -> MinFilter enum conversion 2024-02-22 19:14:34 -05:00
gdk
8737d7d61f Calculate width from stride on texture copies 2024-02-22 19:14:34 -05:00
gdk
4705bdc8d5 Initial work 2024-02-22 19:14:33 -05:00
Thog
a46c1d9470 Fix timezone month being reported incorrectly to games (#861)
Nintendo actually uses range from 1 to 12 for months (when original timezone code manage 0-11)
2024-02-22 19:14:33 -05:00
Thog
ffabda4be3 Fix ReactiveObject initial event not being propagated with boolean types (#860)
* Fix ReactiveObject initial event not being propagated with boolean types.

This fix the logger configuration initial state being ignored.
2024-02-22 19:14:32 -05:00
Thog
69723e5b62 Make sure to reload keys after Migration
This fix keys not being loaded on the first run right after migration.
2024-02-22 19:14:32 -05:00
Alex Barney
e0d3b55635 Rename "RyuFs" directory to "Ryujinx" and use the same savedata system the Switch uses (#801)
* Use savedata FS commands from LibHac

* Add EnsureSaveData. Use ApplicationControlProperty struct

* Add a function to migrate to the new directory layout

* LibHac update

* Change backup structure

* Don't create UI files in the save path

* Update RyuFs paths

* Add GetProgramIndexForAccessLog

Ryujinx only runs one program at a time, so always return values reflecting that

* Load control NCA when loading from an NSP

* Skip over UI stats when exiting

* Set TitleName and TitleId in more cases. Fix TitleID naming style

* Completely comment out GUI play stats code

* rebase

* Update LibHac

* Update LibHac

* Revert UI changes

* Do migration automatically at startup

* Rename RyuFs directory to Ryujinx

* Update RyuFs text

* Store savedata paths in the GUI

* Make "Open Save Directory" work

* Use a dummy NACP in EnsureSaveData if one is not loaded

* Remove manual migration button

* Respond to feedback

* Don't read the installer config to get a version string

* Delete nuget.config

* Exclude 'sdcard' and 'bis' during migration

Co-authored-by: Thog <thog@protonmail.com>
2024-02-22 19:14:32 -05:00
Thog
8754499310 Fix EphemeralNetworkSystemClock wrong steady clock (#858)
oops
2024-02-22 19:14:32 -05:00
LDj3SNuD
e6b34dbf61 Implemented fast paths for: (#846)
* opt

* Nit.

* opt_p2

* Nit.
2024-02-22 19:14:32 -05:00