aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2024-04-06Add mod enablement status in the log message (#6571)WilliamWsyHK
2024-04-06Update README.md (#6575)czcx
2024-04-06"Task.Wait()" synchronously blocks, use "await" instead (#6598)Marco Carvalho
2024-04-05ts: Migrate service to Horizon project (#6514)Ac_K
* ts: Migrate service to Horizon project This PR migrate the `ts` service (stored in `ptm`) to the Horizon project: - It stubs all known IPCs. - IpcServer consts are checked by RE. Closes #6480 * Fix args
2024-04-05Ignore diacritics on game search (#6602)gdkchan
2024-04-05Add missing ModWindowTitle locale key (#6601)gdkchan
* Add missing ModWindowTitle locale key * Fix this while I'm at it
2024-04-04Add support to IVirtualMemoryManager for zero-copy reads (#6251)jhorv
* - WritableRegion: enable wrapping IMemoryOwner<byte> - IVirtualMemoryManager impls of GetWritableRegion() use pooled memory when region is non-contiguous. - IVirtualMemoryManager: add GetReadOnlySequence() and impls - ByteMemoryPool: add new method RentCopy() - ByteMemoryPool: make class static, remove ctor and singleton field from earlier impl * - BytesReadOnlySequenceSegment: move from Ryujinx.Common.Memory to Ryujinx.Memory - BytesReadOnlySequenceSegment: add IsContiguousWith() and Replace() methods - VirtualMemoryManagerBase: - remove generic type parameters, instead use ulong for virtual addresses and nuint for host/physical addresses - implement IWritableBlock - add virtual GetReadOnlySequence() with coalescing of contiguous segments - add virtual GetSpan() - add virtual GetWritableRegion() - add abstract IsMapped() - add virtual MapForeign(ulong, nuint, ulong) - add virtual Read<T>() - add virtual Read(ulong, Span<byte>) - add virtual ReadTracked<T>() - add virtual SignalMemoryTracking() - add virtual Write() - add virtual Write<T>() - add virtual WriteUntracked() - add virtual WriteWithRedundancyCheck() - VirtualMemoryManagerRefCountedBase: remove generic type parameters - AddressSpaceManager: remove redundant methods, add required overrides - HvMemoryManager: remove redundant methods, add required overrides, add overrides for _invalidAccessHandler handling - MemoryManager: remove redundant methods, add required overrides, add overrides for _invalidAccessHandler handling - MemoryManagerHostMapped: remove redundant methods, add required overrides, add overrides for _invalidAccessHandler handling - NativeMemoryManager: add get properties for Pointer and Length - throughout: removed invalid <inheritdoc/> comments * make HvMemoryManager class sealed * remove unused method * adjust MemoryManagerHostTracked * let MemoryManagerHostTracked override WriteImpl()
2024-04-03Stop clearing Modified flag on DiscardData (#6591)gdkchan
2024-04-02New Crowdin updates (#6550)Ac_K
* New translations en_us.json (Spanish) * New translations en_us.json (Arabic) * New translations en_us.json (German) * New translations en_us.json (Greek) * New translations en_us.json (Italian) * New translations en_us.json (Korean) * New translations en_us.json (Polish) * New translations en_us.json (Russian) * New translations en_us.json (Turkish) * New translations en_us.json (Ukrainian) * New translations en_us.json (Chinese Traditional) * New translations en_us.json (Portuguese, Brazilian) * New translations en_us.json (Spanish) * New translations en_us.json (Arabic) * New translations en_us.json (German) * New translations en_us.json (Greek) * New translations en_us.json (Hebrew) * New translations en_us.json (Italian) * New translations en_us.json (Japanese) * New translations en_us.json (Korean) * New translations en_us.json (Polish) * New translations en_us.json (Russian) * New translations en_us.json (Turkish) * New translations en_us.json (French) * New translations en_us.json (Ukrainian) * New translations en_us.json (Chinese Simplified) * New translations en_us.json (Chinese Traditional) * New translations en_us.json (Portuguese, Brazilian) * New translations en_us.json (Thai) * New translations en_us.json (Italian) * New translations en_us.json (Japanese) * New translations en_us.json (Polish) * New translations en_us.json (Ukrainian) * New translations en_us.json (Chinese Simplified) * New translations en_us.json (Arabic) * New translations en_us.json (Italian) * New translations en_us.json (Russian) * New translations en_us.json (Chinese Simplified) * New translations en_us.json (Italian) * New translations en_us.json (German) * New translations en_us.json (Korean) * New translations en_us.json (Chinese Simplified) * New translations en_us.json (Arabic) * New translations en_us.json (Hebrew) * New translations en_us.json (Chinese Simplified) * New translations en_us.json (Arabic)
2024-03-27UI: Friendly driver name reporting. (#6530)MutantAura
* Implement friendly VkDriverID names for UI. * Capitalise NVIDIA * Prefer vendor name on macOS * Typo fix Co-authored-by: gdkchan <gab.dark.100@gmail.com> --------- Co-authored-by: gdkchan <gab.dark.100@gmail.com>
2024-03-26Implement host tracked memory manager mode (#6356)gdkchan
* Add host tracked memory manager mode * Skipping flush is no longer needed * Formatting + revert unrelated change * LightningJit: Ensure that dest register is saved for load ops that do partial updates * avoid allocations when doing address space lookup Add missing improvement * IsRmwMemory -> IsPartialRegisterUpdateMemory * Ensure we iterate all private allocations in range * PR feedback and potential fixes * Simplified bridges a lot * Skip calling SignalMappingChanged if Guest is true * Late map bridge too * Force address masking for prefetch instructions * Reprotection for bridges * Move partition list validation to separate debug method * Move host tracked related classes to HostTracked folder * New HostTracked namespace * Move host tracked modes to the end of enum to avoid PPTC invalidation --------- Co-authored-by: riperiperi <rhy3756547@hotmail.com>
2024-03-26Recreate swapchain correctly when toggling VSync (#6521)jcm
Co-authored-by: jcm <butt@butts.com>
2024-03-26Disable push descriptors for Intel ARC GPUs on Windows (#6551)gdkchan
* Move some init logic out of PrintGpuInformation, then delete it * Disable push descriptors for Intel ARC on Windows * Re-add PrintGpuInformation just to show it in the log
2024-03-23New gamecard icons (#6557)SamusAranX
* Replaced all gamecard images and added a blank variant * File optimization
2024-03-23Add a few missing locale strings on Avalonia (#6556)gdkchan
* Add a few missing locale strings on Avalonia * Rename LDN MitM to ldn_mitm
2024-03-21Updates the default value for BufferedQuery (#6351)Matt Heins
AMD GPUs (possibly just RDNA 3) could hang with the previous value until the MaxQueryRetries was hit. Fix #6056 Co-authored-by: riperiperi <rhy3756547@hotmail.com>
2024-03-21[UI] Fix Display Name Translations & Update some Chinese Translations (#6388)WilliamWsyHK
* Remove incorrect additional back-slash * Touch-up on TChinese translations * Little touch-up on SChinese translations
2024-03-20New Crowdin updates (#6541)Ac_K
* New translations en_us.json (French) * New translations en_us.json (Spanish) * New translations en_us.json (Arabic) * New translations en_us.json (German) * New translations en_us.json (Greek) * New translations en_us.json (Hebrew) * New translations en_us.json (Italian) * New translations en_us.json (Japanese) * New translations en_us.json (Korean) * New translations en_us.json (Polish) * New translations en_us.json (Russian) * New translations en_us.json (Turkish) * New translations en_us.json (Ukrainian) * New translations en_us.json (Chinese Simplified) * New translations en_us.json (Chinese Traditional) * New translations en_us.json (Portuguese, Brazilian) * New translations en_us.json (Thai) * Add missing Thai language name * Add new languages * Enable RTL for Arabic --------- Co-authored-by: gdkchan <gab.dark.100@gmail.com>
2024-03-17nuget: bump Microsoft.CodeAnalysis.CSharp from 4.8.0 to 4.9.2 (#6397)dependabot[bot]
Bumps [Microsoft.CodeAnalysis.CSharp](https://github.com/dotnet/roslyn) from 4.8.0 to 4.9.2. - [Release notes](https://github.com/dotnet/roslyn/releases) - [Changelog](https://github.com/dotnet/roslyn/blob/main/docs/Breaking%20API%20Changes.md) - [Commits](https://github.com/dotnet/roslyn/commits) --- updated-dependencies: - dependency-name: Microsoft.CodeAnalysis.CSharp dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-17Ava UI: Fix locale crash (#6385)Isaac Marovitz
* Fix locale crash * Apply suggestions from code review --------- Co-authored-by: Ac_K <Acoustik666@gmail.com>
2024-03-16Ava UI: Content Dialog Fixes (#6482)Isaac Marovitz
* Don’t use ContentDialogHelper when not necessary * Remove `ExtendClientAreaToDecorationsHint`
2024-03-16nuget: bump Microsoft.IdentityModel.JsonWebTokens from 7.3.0 to 7.4.0 (#6366)dependabot[bot]
Bumps [Microsoft.IdentityModel.JsonWebTokens](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet) from 7.3.0 to 7.4.0. - [Release notes](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/releases) - [Changelog](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/blob/dev/CHANGELOG.md) - [Commits](https://github.com/AzureAD/azure-activedirectory-identitymodel-extensions-for-dotnet/compare/7.3.0...v7.4.0) --- updated-dependencies: - dependency-name: Microsoft.IdentityModel.JsonWebTokens dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-16nuget: bump the avalonia group with 2 updates (#6505)dependabot[bot]
Bumps the avalonia group with 2 updates: [Avalonia.Svg](https://github.com/wieslawsoltes/Svg.Skia) and [Avalonia.Svg.Skia](https://github.com/wieslawsoltes/Svg.Skia). Updates `Avalonia.Svg` from 11.0.0.14 to 11.0.0.16 - [Release notes](https://github.com/wieslawsoltes/Svg.Skia/releases) - [Changelog](https://github.com/wieslawsoltes/Svg.Skia/blob/master/CHANGELOG.md) - [Commits](https://github.com/wieslawsoltes/Svg.Skia/commits) Updates `Avalonia.Svg.Skia` from 11.0.0.14 to 11.0.0.16 - [Release notes](https://github.com/wieslawsoltes/Svg.Skia/releases) - [Changelog](https://github.com/wieslawsoltes/Svg.Skia/blob/master/CHANGELOG.md) - [Commits](https://github.com/wieslawsoltes/Svg.Skia/commits) --- updated-dependencies: - dependency-name: Avalonia.Svg dependency-type: direct:production update-type: version-update:semver-patch dependency-group: avalonia - dependency-name: Avalonia.Svg.Skia dependency-type: direct:production update-type: version-update:semver-patch dependency-group: avalonia ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-16chore: remove repetitive words (#6500)standstaff
Signed-off-by: standstaff <zhengxingru@yeah.net>
2024-03-16Fix Title Update Manager not refreshing app list (#6507)Isaac Marovitz
2024-03-16discord: Update ApplicationID (#6513)TSRBerry
2024-03-14GPU: Rebind RTs if scale changes when binding textures (#6493)riperiperi
This fixes a longstanding issue with resolution scale that could result in flickering graphics, typically the first frame something is drawn, or on camera cuts in cutscenes. The root cause of the issue is that texture scale can be changed when binding textures or images. This typically happens because a texture becomes a view of a larger texture, such as a 400x225 texture becoming a view of a 800x450 texture with two levels. If the 400x225 texture is bound as a render target and has state [1x Undesired], but the storage texture is [2x Scaled], the render target texture's scale is changed to [2x Scaled] to match its new storage. This means the scale changed after the render target state was processed... This can cause a number of issues. When render target state is processed, texture scales are examined and potentially changed so that they are all the same value. If one texture is scaled, all textures must be. If one texture is blacklisted from scaling, all of them must be. This results in a single resolution scale value being assigned to the TextureManager, which also scales the scissor and viewport values. If the scale is chosen as 1x, and a later texture binding changes one of the textures to be 2x, the scale in TextureManager no longer matches all of the bound textures. What's worse, the scales in these textures could mismatch entirely. This typically results in the support buffer scale, viewport and scissor being wrong for at least one of the bound render targets. This PR fixes the issue by re-evaluating render target state if any scale mismatches the expected scale after texture bindings happen. This can actually cause scale to change again, so it must loop back to perform texture bindings again. This can happen as many times as it needs to, but I don't expect it to happen more than once. Problematic bindings will just result in a blacklist, which will propagate to other bound targets.
2024-03-14Consider Polygon as unsupported is triangle fans are unsupported on Vulkan ↵gdkchan
(#6490)
2024-03-14Separate guest/host tracking + unaligned protection (#6486)riperiperi
* WIP: Separate guest/host tracking + unaligned protection Allow memory manager to define support for single byte guest tracking * Formatting * Improve docs * Properly handle cases where the address space bits are too low * Address feedback
2024-03-14Ava UI: Update Ava (#6430)Isaac Marovitz
* Update Ava * Newline
2024-03-13infra: Fix updater for old Ava users (#6441)TSRBerry
* Add binaries with both names to release archives * Add migration code for the new filename * Add Ryujinx.Ava to all win/linux releases for a while
2024-03-13Update AutoDeleteCache.cs (#6471)Keaton
Increase the texture cache limit from 512 MB to 1 GB.
2024-03-13Fix geometry shader passthrough issue (#6462)Nicolas Abram
* Fix geometry shader passthrough issue (Diagnosed by gdkchan) * Fix whitespace formatting * Fix whitespace formatting * Bump shader cache version * Don't apply PassthroughNV decorations to output geometry shader variables
2024-03-11Passthrough mouse for win32 (#6450)Emmanuel Hansen
* passthrough mouse for win32 * remove unused enums
2024-03-10Fix lost copy and swap problem on shader SSA deconstruction (#6455)gdkchan
* Fix lost copy on shader SSA deconstruction * Shader cache version bump
2024-03-09Refactor memory managers to a common base class, consolidate Read() method ↵jhorv
logic (#6360) * - add new abstract class `VirtualMemoryManagerBase` - rename `MemoryManagerBase` to `VirtualMemoryManagerRefCountedBase` and derive from `VirtualMemoryManagerBase` - change `AddressSpaceManager`, `HvMemoryManager`, `MemoryManager`, and `MemoryManagerHostMapped` to implement abstract members and use the inherited `void VirtualMemoryManagerBase.Read(TVirtual va, Span<byte> data)` implementation. * move property `AddressSpaceSize` up by the other properties
2024-03-08Update dependencies from SixLabors to the latest version before the license ↵TSRBerry
change (#6440) * nuget: bump SixLabors.ImageSharp from 1.0.4 to 2.1.3 (#3976) * nuget: bump SixLabors.ImageSharp from 1.0.4 to 2.1.3 Bumps [SixLabors.ImageSharp](https://github.com/SixLabors/ImageSharp) from 1.0.4 to 2.1.3. - [Release notes](https://github.com/SixLabors/ImageSharp/releases) - [Commits](https://github.com/SixLabors/ImageSharp/compare/v1.0.4...v2.1.3) --- updated-dependencies: - dependency-name: SixLabors.ImageSharp dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] <support@github.com> * Update for 2.x changes Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Mary <mary@mary.zone> * Update SixLabors.ImageSharp to 2.1.7 This is the latest version we can update to without the license change. * Update SixLabors.ImageSharp.Drawing to v1.0.0 This is the latest version we can update to without the license change. --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Mary <mary@mary.zone>
2024-03-07LightningJit: Disable some cache ops and CTR_EL0 access on Windows Arm (#6326)gdkchan
* LightningJit: Disable some cache ops and CTR_EL0 access on Windows Arm * Format whitespace * Delete unused code * Fix typo Co-authored-by: riperiperi <rhy3756547@hotmail.com> --------- Co-authored-by: riperiperi <rhy3756547@hotmail.com>
2024-03-07UI: Update minimum window size to 800x500 (#6425)MutantAura
2024-03-07Add title of game to screenshot text (#6266)Kyle
* Add sanitize method * Add app name to screenshot text output * Add app name to screenshot text
2024-03-05misc: Remove myself from reviewsMary Guillemard
I have been mostly inactive on the project for the past year and a half apart from handling CI and reviews because of a lack of motivation and time.
2024-03-02ci: try to fix toctou on release creationMary Guillemard
Signed-off-by: Mary Guillemard <mary@mary.zone>
2024-03-02infra: Make Avalonia the default UI (#6375)Mary Guillemard
* misc: Move Ryujinx project to Ryujinx.Gtk3 This breaks release CI for now but that's fine. Signed-off-by: Mary Guillemard <mary@mary.zone> * misc: Move Ryujinx.Ava project to Ryujinx This breaks CI for now, but it's fine. Signed-off-by: Mary Guillemard <mary@mary.zone> * infra: Make Avalonia the default UI Should fix CI after the previous changes. GTK3 isn't build by the release job anymore, only by PR CI. This also ensure that the test-ava update package is still generated to allow update from the old testing channel. Signed-off-by: Mary Guillemard <mary@mary.zone> * Fix missing copy in create_app_bundle.sh Signed-off-by: Mary Guillemard <mary@mary.zone> * Fix syntax error Signed-off-by: Mary Guillemard <mary@mary.zone> --------- Signed-off-by: Mary Guillemard <mary@mary.zone>
2024-03-02Avalonia: only enable gamescope workaround under it (#6374)Mary Guillemard
Signed-off-by: Mary Guillemard <mary@mary.zone>
2024-02-24Change packed aliasing formats to UInt (#6358)gdkchan
2024-02-24nuget: bump System.Drawing.Common from 8.0.1 to 8.0.2 (#6308)dependabot[bot]
Bumps [System.Drawing.Common](https://github.com/dotnet/winforms) from 8.0.1 to 8.0.2. - [Release notes](https://github.com/dotnet/winforms/releases) - [Changelog](https://github.com/dotnet/winforms/blob/main/docs/release-activity.md) - [Commits](https://github.com/dotnet/winforms/compare/v8.0.1...v8.0.2) --- updated-dependencies: - dependency-name: System.Drawing.Common dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-23IPC code gen improvements (#6352)jhorv
* HipcGenerator: skip do-nothing call to MemoryMarshal.Cast<byte, byte>() in generated code * HipcGenerator: fix method name typos * HipcGenerator: make generated methods use stackalloc for `isBufferMapAlias` bool array * HipcGenerator: make generated GetCommandHandlers() method return a FrozenDictionary<int, CommandHandler> * HipcGenerator: return `FrozenDictionary<,>.Empty` when there are no command implementations, otherwise create `FrozenDictionary` from a `IEnumerable<KeyValuePair<,>>`` instead of a `Dictionary<,>``
2024-02-22Migrate Audio service to new IPC (#6285)gdkchan
* Migrate audren to new IPC * Migrate audout * Migrate audin * Migrate hwopus * Bye bye old audio service * Switch volume control to IHardwareDeviceDriver * Somewhat unrelated changes * Remove Concentus reference from HLE * Implement OpenAudioRendererForManualExecution * Remove SetVolume/GetVolume methods that are not necessary * Remove SetVolume/GetVolume methods that are not necessary (2) * Fix incorrect volume update * PR feedback * PR feedback * Stub audrec * Init outParameter * Make FinalOutputRecorderParameter/Internal readonly * Make FinalOutputRecorder IDisposable * Fix HardwareOpusDecoderManager parameter buffers * Opus work buffer size and error handling improvements * Add AudioInProtocolName enum * Fix potential divisions by zero
2024-02-22OpenGL: Mask out all color outputs with no fragment shader (#6341)riperiperi
* OpenGL: Mask out all color outputs with no fragment shader This appears to match Vulkan's behaviour, which is needed for stencil shadows in Penny's Big Breakaway. It's far from the only issue, you can try the Full Bindless PR if you want to see it in a more intact state. * Remove unused member
2024-02-22Ensure service init runs after Horizon constructor (#6342)gdkchan