aboutsummaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2024-02-22Migrate Audio service to new IPC (#6285)1.1.1211gdkchan
* 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)1.1.1210riperiperi
* 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)1.1.1209gdkchan
2024-02-22Implement virtual buffer dependencies (#6190)1.1.1208gdkchan
* Implement virtual buffer copies * Introduce TranslateAndCreateMultiBuffersPhysicalOnly, use it for copy and clear * Rename VirtualBufferCache to VirtualRangeCache * Fix potential issue where virtual range could exist in the cache, without a physical buffer * Fix bug that could cause copy with negative size on CopyToDependantVirtualBuffer * Remove virtual copy back for SyncAction * GetData XML docs * Make field readonly * Fix virtual buffer modification tracking * Remove CopyFromDependantVirtualBuffers from ExternalFlush * Move things around a little to avoid perf impact - Inline null check for CopyFromDependantVirtualBuffers - Remove extra method call for SynchronizeMemoryWithVirtualCopyBack, prefer calling CopyFromDependantVirtualBuffers separately * Fix up XML doc --------- Co-authored-by: riperiperi <rhy3756547@hotmail.com>
2024-02-22Vulkan: Properly reset barrier batch when splitting due to mismatching flags ↵1.1.1207riperiperi
(#6345) Forgot to set the end variable here. Should stop it from crashing when this path is taken.
2024-02-21Vulkan: Disable push descriptors on older NVIDIA GPUs (#6340)1.1.1206riperiperi
Disables push descriptors on older NVIDIA GPUs (10xx and below), since it is clearly broken beyond comprehension. The existing workaround wasn't good enough and a more thorough one will probably cost more performance than the feature gains. The workaround has been removed. Fixes #6331.
2024-02-21Vulkan: Fix barrier batching past limit (#6339)1.1.1205riperiperi
If more than 16 barriers were queued at one time, the _queuedBarrierCount would no longer match the number of remaining barriers, because when breaking out of the loop consuming them it deleted all barriers, not just the 16 that were consumed. Should fix freezes that started occurring with #6240. Fixes issue #6338.
2024-02-19Avalonia UI: Update English tooltips (#6305)1.1.1204MetrosexualGarbodor
* update English tooltips * missed a dot
2024-02-19Avalonia: Fix gamescope once and for all (#6301)1.1.1203Mary Guillemard
Enable input focus proxy, makes WM_TAKE_FOCUS capability to be exposed. This fix menu on gamescope, for real this time.... Signed-off-by: Mary Guillemard <mary@mary.zone>
2024-02-17LightningJit: Add a limit on the number of instructions per function for ↵1.1.1202gdkchan
Arm64 (#6328)
2024-02-17hid: Stub SetTouchScreenResolution (#6322)1.1.12011.1.1200Exhigh
* hid: Implement SetTouchScreenResolution * Fix Tomb Raider I-III Remastered from crashing without enabling Ignore Missing Services * PR Feedback: Update Comments
2024-02-17Vulkan: Improve texture barrier usage, timing and batching (#6240)1.1.1199riperiperi
* WIP barrier batch * Add store op to image usage barrier * Dispose the barrier batch * Fix encoding? * Handle read and write on the load op barrier. Load op consumes read accesses but does not add one, as the only other operation that can read is another load. * Simplify null check * Insert barriers on program change in case stale bindings are reintroduced * Not sure how I messed this one up * Improve location of bindings barrier update This is also important for emergency deferred clear * Update src/Ryujinx.Graphics.Vulkan/BarrierBatch.cs Co-authored-by: Mary Guillemard <thog@protonmail.com> --------- Co-authored-by: Mary Guillemard <thog@protonmail.com>
2024-02-16Vulkan: Use push descriptors for uniform bindings when possible (#6154)1.1.1198riperiperi
* Fix Push Descriptors * Use push descriptor templates * Use reserved bindings * Formatting * Disable when using MVK ("my heart will go on" starts playing as thousands of mac users shed a tear in unison) * Introduce limit on push descriptor binding number The bitmask used for updating push descriptors is ulong, so only 64 bindings can be tracked for now. * Address feedback * Fix logic for binding rejection Should only offset limit when reserved bindings are less than the requested one. * Workaround pascal and older nv bug * Add GPU number detection for nvidia * Only do workaround if it's valid to do so.
2024-02-15Implement X8Z24 texture format (#6315)1.1.1197gdkchan
2024-02-15Fix PermissionLocked check on UnmapProcessCodeMemory (#6314)1.1.1196gdkchan
2024-02-15Remove Vulkan SubgroupSizeControl enablement code (#6317)1.1.1195gdkchan
2024-02-15Stub VSMS related ioctls (#6313)1.1.1194gdkchan
* Stub VSMS related ioctls * Clean up usings
2024-02-15Updaters: Fix ARM Linux Updater (#6316)1.1.1193Isaac Marovitz
* Remove Arch Checks * Fix ARM Linux updater
2024-02-12Handle exceptions when checking user data directory for symlink (#6304)1.1.1192jcm
Co-authored-by: jcm <butt@butts.com>
2024-02-11macOS: Stop storing user data in Documents for some users; fix symlinks (#6241)1.1.1191jcm
* macOS: Stop storing user data in Documents for some users; fix symlinks * Use SupportedOSPlatform tag, catch exceptions, log warning instead of error * Provide best path hints to user if symlink fixup fails --------- Co-authored-by: jcm <butt@butts.com>
2024-02-11Old buttons (#6237)1.1.1188Isaac Marovitz
2024-02-11Infra: Capitalisation Consistency (#6296)1.1.1187Isaac Marovitz
* Rename Ryujinx.UI.Common * Rename Ryujinx.UI.LocaleGenerator * Update in Files AboutWindow * Configuration State * Rename projects * Ryujinx/UI * Fix build * Main remaining inconsistencies * HLE.UI Namespace * HLE.UI Files * Namespace * Ryujinx.UI.Common.Configuration.UI * Ryujinx.UI.Common,Configuration.UI Files * More instances
2024-02-11Standardize logging locations across desktop platforms (#6238)1.1.1186jcm
* Standardize logging locations across desktop platforms * Return null instead of empty literal on exceptions * Remove LogDirectoryPath from LoggerModule * Catch exception when creating DirectoryInfo in FileLogTarget * Remove redundant log path vars, handle exception better, add null check * Address styling issues * Remove extra newline, quote file path in log, move directory check to OpenHelper * Add GetOrCreateLogsDir to get/create log directory during runtime * misc format changes * Update src/Ryujinx.Common/Configuration/AppDataManager.cs --------- Co-authored-by: jcm <butt@butts.com> Co-authored-by: TSR Berry <20988865+TSRBerry@users.noreply.github.com> Co-authored-by: Ac_K <Acoustik666@gmail.com>
2024-02-11Remove ReflectionBinding in Mod Manager (#6280)1.1.1184Isaac Marovitz
2024-02-11Update Avalonia About Window like requested in PR #6267 (#6278)1.1.1183sunshineinabox
* Update About Window like requested in PR #6267 * Feedback * Apply suggestions from code review Co-authored-by: Isaac Marovitz <42140194+IsaacMarovitz@users.noreply.github.com> * Fix indents --------- Co-authored-by: Isaac Marovitz <42140194+IsaacMarovitz@users.noreply.github.com>
2024-02-11Fix mip offset/size for full 3D texture upload on Vulkan (#6294)1.1.1182gdkchan
2024-02-10Add missing RID exclusions for linux-arm64 (#6298)1.1.11811.1.1180Mary Guillemard
* Add missing RID exclusions for linux-arm64 Signed-off-by: Mary Guillemard <mary@mary.zone> * Remove libsoundio.so from linux-arm64 deployment This is a x86_64 library. Signed-off-by: Mary Guillemard <mary@mary.zone> --------- Signed-off-by: Mary Guillemard <mary@mary.zone>
2024-02-10ci: Enable Linux ARM64 on build and release (#6291)1.1.1179Mary Guillemard
* ci: Enable Linux ARM64 on build and release Signed-off-by: Mary <mary@mary.zone> * Address gdkchan comment Signed-off-by: Mary <mary@mary.zone> --------- Signed-off-by: Mary <mary@mary.zone>
2024-02-10Set PointSize in shader on OpenGL (#6292)1.1.1178Mary Guillemard
Previously we were only doing it for Vulkan, but it turns out that not setting it when PROGRAM_POINT_SIZE is set is considered UB on OpenGL Core. Signed-off-by: Mary <mary@mary.zone>
2024-02-10Make IOpenGLContext.HasContext context dependent (#6290)1.1.1177Mary Guillemard
This makes IOpenGLContext.HasContext not static and be implementable. By doing this, we can support more than WGL and WGL. This also allows the SDL2 headless version to run under Wayland. Signed-off-by: Mary <mary@mary.zone>
2024-02-10Load custom SDL mappings from application data folder (#6295)1.1.1176jcm
Co-authored-by: jcm <butt@butts.com>
2024-02-10Force CPU copy for non-identity DMA remap (#6293)1.1.1175gdkchan
2024-02-08Revert "Bump Ava (#6271)"1.1.1173Mary Guillemard
This reverts commit dfc0819e7273e6887135546d32e2fed6e6d26073. X popup position broke entirely (my fault oops), waiting for next release with a fix (see https://github.com/AvaloniaUI/Avalonia/pull/14551)
2024-02-08Remove SDC (#6275)1.1.1172Isaac Marovitz
2024-02-08LightningJit: Reduce stack usage for Arm32 code (#6245)1.1.1171gdkchan
* Write/read guest state to context for sync points, stop reserving stack for them * Fix UsedGprsMask not being updated when allocating with preferencing * POP should be also considered a return
2024-02-08Remove Vic Reference to Host1x (#6277)1.1.1170Isaac Marovitz
2024-02-08Implement BGR10A2 render target format (#6273)1.1.1169gdkchan
2024-02-08Bump Ava (#6271)1.1.1168Isaac Marovitz
2024-02-08Replace Flex Panels in favor of Wrap Panels for Avalonia (#6267)1.1.1166sunshineinabox
* Switch from using Flex panel to a Wrap panel for Grid view. This allows keyboard navigation. * Stop using Flex panel in favor of Avalonia Wrap Panel.
2024-02-08Clamp vertex buffer size to mapped size if too high (#6272)1.1.1165gdkchan
* Clamp vertex buffer size to mapped size if too high * Update comment
2024-02-06Redact usernames from logs (#6255)1.1.1163SamusAranX
* Redact usernames from logs * Changed internal vars to private and applied naming rules * Use Directory.GetParent() instead of DirectoryInfo * Update src/Ryujinx.Common/Logging/Logger.cs --------- Co-authored-by: Ac_K <Acoustik666@gmail.com>
2024-02-06AccountService: Cache token data (#6260)1.1.1162riperiperi
* AccountService: Cache token data This method appears to indicate that the token returned should be cached. I've made it so that it generates a token that lasts until its expiration time, and reuses it on subsequent calls. * Private naming convention
2024-02-06Resolve an issue where changes to the main window's positioning could cause ↵1.1.1161sharmander
the application to crash if a modal was dismissed beforehand. (#6223)
2024-02-04Revert change to skip flush when range size is 0 (#6254)1.1.1159gdkchan
2024-02-04Fix depth compare value for TLD4S shader instruction with offset (#6253)1.1.1158gdkchan
* Fix depth compare value for TLD4S shader instruction with offset * Shader cache version bump
2024-02-04Remove component operand for texture gather with depth compare (#6247)1.1.1157gdkchan
2024-02-03Limit remote closed session removal to SM service (#6248)1.1.1156gdkchan
2024-02-02Ensure SM service won't listen to closed sessions (#6246)1.1.1155gdkchan
* Ensure SM service won't listen to closed sessions * PR feedback
2024-01-31Vulkan: Add Render Pass / Framebuffer Cache (#6182)1.1.1154riperiperi
* Vulkan: Add Render Pass / Framebuffer Cache Cache is owned by each texture view. - Window's way of getting framebuffer cache for swapchain images is really messy - it creates a TextureView out of just a vk image view, with invalid info and no storage. * Clear up limited use of alternate TextureView constructor * Formatting and messages * More formatting and messages I apologize for `_colorsCanonical[index]?.Storage?.InsertReadToWriteBarrier`, the compiler made me do it * Self review, change GetFramebuffer to GetPassAndFramebuffer * Avoid allocations on Remove for HashTableSlim * Member can be readonly * Generate texture create info for swapchain images * Improve hashcode * Remove format, samples, size and isDepthStencil when possible Tested in a number of games, seems fine. * Removed load op barriers These can be introduced later. * Reintroduce UpdateModifications Technically meant to be replaced by load op stuff.
2024-01-30Fix opening the wrong log directory (#6220)1.1.1152TSRBerry