aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-04-14Initial support for the new 12.x IPC system (#2182)Mary
* Rename CommandAttribute as CommandHIpcAttribute to prepare for 12.x changes * Implement inital support for TIPC and adds SM command ids * *Ipc to *ipc * Missed a ref in last commit... * CommandAttributeTIpc to CommandAttributeTipc * Addresses comment and fixes some bugs around TIPC doesn't have any padding requirements as buffer C isn't a thing Fix for RegisterService inverting two argument only on TIPC
2021-04-13Improves logging to console. (#2146)Mark Araujo
* Restore removed text * Adds more items to logs: - Remove #1942 * Further removal of changes from #1942 * Removes hardcoded config state variables for logging - Adds Configuration logging * Decoupled logging from ReactiveObject - Event handler added to Configuration state to handle logging of value changes * Decoupled logging from ReactiveObject - Event handler added to Configuration state to handle logging of value changes
2021-04-13PPTC vs. giant ExeFS. (#2168)LDj3SNuD
* PPTC vs. giant ExeFS. * InternalVersion = 2168 * Add new heuristic algorithm for calculating the number of threads for parallel translations that also takes into account the user's free physical memory and not just the number of CPU cores. * Nit. * Add an outer Header structure and add the hashes for both this new structure and the existing "inner" Header structure. * InternalVersion = 2169
2021-04-13account: Adds AccountManager (#2184)Ac_K
* account: Adds Account Manager In a way to have Custom User Profiles merged in master faster, this PR adds a `AccountManager` class (based on `AccountUtils` class) and the following changes have been made: - Adds a "default profile values" which were the old hardcoded ones. - The image profile is moved to the Account service folder. - The hardcoded UserId for the savedata is now using the `AccountManager` last opened one. - The DeviceId in Mii service is changed to the right value (checked by REd sys:set call). * Fix csproj * Addresses gdkchan's comments * Fix UserProfile fields * Fix mii GetDeviceId() * Update Ryujinx.HLE.csproj
2021-04-13Fix sub-image copies on intel GPUs (#2198)gdkchan
2021-04-13nifm/ssl: Implement GetCurrentNetworkProfile and stub Ssl Service (#2186)Ac_K
* nifm/ssl: Implement GetCurrentNetworkProfile and stub Ssl Service * remove InterfaceVersion
2021-04-13Surface Flinger: Fix an oversight when closing a layer (#2192)Mary
* Surface Flinger: Fix an oversight when closing a layer As the title say. I also took the liberty of changing the logic on how we select the current layer being rendered to make it more explicit when opening and creating layers. NOTE: Found by Ac_k. * check for RenderLayerId and not the dictionary size This fix a possible race condition between the time you create a layer and set the one currently used for rendering
2021-04-09Enable updates in portable mode. (related to #1885) (#2181)jms-c
* Enable updates in portable mode. * Added update test! * Enable update test again! * Triggering CI * Made this PR mergeable.
2021-04-08friend: Fixes PermissionLevel names (#2185)Ac_K
This PR fixes the permission level names, nothing more.
2021-04-07(CPU) Fix CRC32 instruction when constant values are used as input (#2183)gdkchan
2021-04-07CI: Add option to manually trigger github actionsMary
2021-04-07CI: Add temporary fix for Windows nuget issues and fix git hashes for PRsMary
2021-04-04Allow DRAM size to be increased from 4GB to 6GB (#2174)gdkchan
* Allow DRAM size to be increased from 4GB to 6GB * Add option on the UI
2021-04-03Hide debug artifacts (#2171)Itamai
2021-04-03Only flush commands when creating sync on Intel/AMD (windows) (#2165)riperiperi
2021-04-02Improve `StoreToContext` emission (#2155)FICTURE7
* Improve StoreToContext emission Hoist StoreToContext in dynamic branch fast & slow paths out into their predecessor. Reduces register pressure, code size and compile time because we're throwing less stuff down the pipeline. * Set PTC internal version * Turn EmitDynamicTableCall private * Re-trigger CI
2021-04-02Update README.MD to reflect new OpenGL requirements, gamedb statistics, mods ↵EmulationFanatic
support (#2167)
2021-04-02Reduce allocation during SSA construction (#2162)FICTURE7
* Reduce allocation during SSA construction * Re-trigger CI
2021-04-02Update Pro Controller Image + Trigger view (#2128)Ayato (Shahil)
* Update Pro Controller Image This Updates the Pro controller Images. * fix some nits
2021-04-02Hold reference for render targets in use (#2156)gdkchan
2021-04-02Fix Tamper Machine crash and timings (#2159)Caian Benedicto
* Add missing return * Change TamperMachine sleep to 83ms * Change constant name to PascalCase
2021-04-02Implement shader HelperThreadNV (#2163)gdkchan
* Implement shader HelperThreadNV * Bump shader cache version * Use gl_HelperInvocation since its supported across all vendors * Nit
2021-03-30Force command flush after creating a syncpoint (#2056)riperiperi
* Force command flush after creating GL sync * This is not required, as the commands were flushed on creation. * Move comment.
2021-03-30Patch up DNS Blacklist (#2153)mageven
Make the regex patterns case insensitive for robustness
2021-03-29Optimize PrintRoSectionInfo (#2151)mageven
2021-03-28am: Stub ILibraryAppletAccessor RequestExit (#2142)Ac_K
This PR stub ILibraryAppletAccessor (20) RequestExit call which is needed by Monster Hunter Rise when you press "Private Policy" at the beginning. The game try to run the `WebApplet` which is already partially stubbed, then call `RequestExit` to know when the applet exits. If the call does nothing, the game just hang forever. If you signals the event, you can interracts with the menu again.
2021-03-27Fix ZN flags set for shader instructions using RZ.CC dest (#2147)gdkchan
* Fix ZN flags set for shader instructions using RZ.CC dest * Shader cache version bump and nits
2021-03-27misc: Add credit to AmiiboAPI properly and fix a wrong warning code (#2150)Ac_K
* misc: Add credit to AmiiboAPI properly and fix a warning disable This PR adds a properly credit to AmiiboAPI which is used in our Amiibo emulation in the Readme and in the about window. I've changed a wrong warning code added in a recent PR too. * Update README.md * Fix aligment
2021-03-27Add the TamperMachine module for runtime mods and cheats (#1928)Caian Benedicto
* Add initial implementation of the Tamper Machine * Implement Atmosphere opcodes 0, 4 and 9 * Add missing TamperCompilationException class * Implement Atmosphere conditional and loop opcodes 1, 2 and 3 * Inplement input conditional opcode 8 * Add register store opcode A * Implement extended pause/resume opcodes FF0 and FF1 * Implement extended log opcode FFF * Implement extended register conditional opcode C0 * Refactor TamperProgram to an interface * Moved Atmosphere classes to a separate subdirectory * Fix OpProcCtrl class not setting process * Implement extended register save/restore opcodes C1, C2 and C3 * Refactor code emitters to separate classes * Supress memory access errors from the Tamper Machine * Add debug information to tamper register and memory writes * Add block stack check to Atmosphere Cheat compiler * Add handheld input support to Tamper Machine * Fix code styling * Fix build id and cheat case mismatch * Fix invalid immediate size selection * Print build ids of the title * Prevent Tamper Machine from change code regions * Remove Atmosphere namespace * Remove empty cheats from the list * Prevent code modification without disabling the tampering * Fix missing addressing mode in LoadRegisterWithMemory * Fix wrong addressing in RegisterConditional * Add name to the tamper machine thread * Fix code styling
2021-03-27Shader Cache: Move bindless checking from translation to decode (#2145)mageven
2021-03-26caps: Implement SaveScreenShot calls and cleanup (#2140)Ac_K
* caps: Implement SaveScreenShot calls and cleanup This PR implement: - caps:u IAlbumApplicationService (32) SetShimLibraryVersion - caps:c IAlbumControlService (33) SetShimLibraryVersion - caps:su IScreenShotApplicationService (32) SetShimLibraryVersion - caps:su IScreenShotApplicationService (203/205/210) SaveScreenShotEx0/SaveScreenShotEx1/SaveScreenShotEx2 ImageSharp is used to save the raw screenshot data as a JPG file following what the service does. All screenshots are save in: `%AppData%\Ryujinx\sdcard\Nintendo\Album` folder. (as example a screenshot file path will be `%AppData%\Ryujinx\sdcard\Nintendo\Album\2021\03\26\2021032601020300-0123456789ABCDEF0123456789ABCDEF.jpg` This is needed by Animal Crossing: New Horizon where screenshots looks like this: And this is needed in Monster Hunter Rise but screenshots are currently empty due to another issue. * remove useless comment * Addresses gdkchan feedback * Addresses gdkchan feedback 2 * remove useless comment 2 * Fix nits
2021-03-25Add Sqdmulh_Ve & Sqrdmulh_Ve Inst.s with Tests. (#2139)LDj3SNuD
2021-03-25am/ectx: Implement SetRequestExitToLibraryAppletAtExecuteNextProgramEnabled ↵Ac_K
and add service placeholder (#2136) * am/ectx: Implement SetRequestExitToLibraryAppletAtExecuteNextProgramEnabled and add service placeholder This PR implements `am` service call `SetRequestExitToLibraryAppletAtExecuteNextProgramEnabled` (closes #2028) accordingly to RE and adds placeholder for the `ectx` service. Both were added in 11.0.0+ firmware and are needed to boots games which needs this version. Some games are now playable/bootable: * Remove unused warning
2021-03-24sfdnsres: Cleanup service and implements some calls (#2130)Ac_K
* sfdnsres: Cleanup service and implements some calls This PR is a big cleanup to our current implementation of `sfdnsres` service. Additionnaly to that, some calls and fix have been done by @Thog (PRd with approval, thanks to her). - Implementation of `GetAddrInfoRequest` (Fixes #637). - Partial implementation of `GetHostByNameRequestWithOptions`, `GetHostByAddrRequestWithOptions` and `GetAddrInfoRequestWithOptions` (Fixes #642, Fixes #1233). A DNS Blacklist have been done by @riperiperi (which is currently used in LDN build, then that reduces code differences between the LDN build and master. Now a lot of games are playable or are blocked to the menu because it needs online service: Co-Authored-By: Mary <1760003+Thog@users.noreply.github.com> Co-Authored-By: riperiperi <6294155+riperiperi@users.noreply.github.com> * Addressed gdkchan's comments * IPAddress[] to IEnumerable * Nits Co-authored-by: Mary <1760003+Thog@users.noreply.github.com> Co-authored-by: riperiperi <6294155+riperiperi@users.noreply.github.com>
2021-03-22Fix inconsistencies in progress reporting (#2129)mageven
Signal and setup events correctly Eliminate possible races Use a single event Mark volatiles and reduce scope of waithandles Common handler 100ms -> 50ms
2021-03-20oops for last commit..Mary
2021-03-20ci: Tune Github Actions artifactsMary
Let's github actions pack zip for all os, put the real name in the output artifact and ensure to only publish the Ryujinx project
2021-03-19Salieri: Detect and avoid caching shaders using bindless textures (#2097)Mary
* Salieri: Add blacklist system and blacklist shaders using bindless Currently the shader cache doesn't have the right format to support bindless textures correctly and may cache shaders that it cannot rebuild after host invalidation. This PR address the issue by blacklisting shaders using bindless textures. THis also support detection of already cached broken shader and handle removal of those. * Move to a feature flags design to avoid intrusive changes in the translator This remove the auto correct behaviour * Reduce diff on TranslationFlags * Reduce comma on last entry of TranslationFlags * Fix inverted logic and remove leftovers * remove debug edits oops
2021-03-19Improve linear texture compatibility rules (#2099)riperiperi
* Improve linear texture compatibility rules Fixes an issue where small or width-aligned (rather than byte aligned) textures would fail to create a view of existing data. Creates a copy dependency as size change may be risky. * Minor cleanup * Remove Size Change for Copy Depenedencies The copy to the target (potentially different sized) texture can properly deal with cropping by itself. * Move StrideAlignment and GobAlignment into Constants
2021-03-19IPC: Remove IIpcService interface (#2121)Ac_K
This PR remove the IIpcService.cs interface usage which isn't needed anymore since the interface is only used by IpcService class. We can use it directly.
2021-03-19Add items to standard logs (#1942)Joshi234
* Added more items to log * Update MainWindow.cs * Added log when changing settings * fix formating and add log when toggling vsync and docked * Update Ryujinx/Ui/MainWindow.cs Co-authored-by: Ac_K <Acoustik666@gmail.com> * Update Ryujinx/Ui/MainWindow.cs Co-authored-by: Ac_K <Acoustik666@gmail.com> * Update Ryujinx/Ui/Windows/SettingsWindow.cs Co-authored-by: Ac_K <Acoustik666@gmail.com> * Fix formating * Change Location according to suggestion * Implemented OpenDataStorageWithProgramIndex * Update IFileSystemProxy.cs * Update IFileSystemProxy.cs * Commited that file on accidant * Revert "Merge branch 'master' of https://github.com/Joshi234/Ryujinx" This reverts commit 375f43045507bc12e743ae1babc6f47bd72987f5, reversing changes made to 672e2c8f7da28160f2f575a16aaa135d232bf655. * Revert "Update IFileSystemProxy.cs" This reverts commit 672e2c8f7da28160f2f575a16aaa135d232bf655. * Update IFileSystemProxy.cs * Update ISystemSettingsServer.cs * removed accidantel addition of IFileSystemProxy.OpenDataStorageWithProgramIndex * Fix formating and add missing stub * Update ISystemSettingsServer.cs * Added more items to log * Update MainWindow.cs * Added log when changing settings * fix formating and add log when toggling vsync and docked * Fix formating * Update Ryujinx/Ui/MainWindow.cs Co-authored-by: Ac_K <Acoustik666@gmail.com> * Update Ryujinx/Ui/MainWindow.cs Co-authored-by: Ac_K <Acoustik666@gmail.com> * Update Ryujinx/Ui/Windows/SettingsWindow.cs Co-authored-by: Ac_K <Acoustik666@gmail.com> * Change Location according to suggestion * Fix Rebase stuff * Change Logger.Notice to Loger.Info * Update ISystemSettingsServer.cs * Update ISystemSettingsServer.cs Co-authored-by: Ac_K <Acoustik666@gmail.com>
2021-03-19ErrorApplet: Implement ApplicationErrorArg (#2123)Ac_K
This PR implement `ApplicationErrorArg` to the Error Applet. It's used by the guest to throw some specific error messages. The code was done for (and merged) LDN2 build since long time ago and have been tested a bunch of times because of that! In a way to reduce the differences between LDN and master build it's fine to add it to master.
2021-03-18Minor wording fixes... Except I'm doing it for all of Ryujinx. (#2078)VocalFan
* Minor wording fixes * Exit dialogue. * Update MainWindow.cs * Update DlcWindow.cs * I found an actual typo for once. * There we go. * Fix * Update MainWindow.cs * MainWindow is done * Update ControllerWindow.cs
2021-03-18nfp: Amiibo scanning support (#2006)Ac_K
* Initial Impl. * You just want me cause I'm next * Fix some logics * Fix close button
2021-03-17Fix typos (#2109)EmulationFanatic
2021-03-15Implement friendlier portable mode (#1885)mageven
* Implement friendlier portable mode * Remove first run dialog * Disable updates in portable mode for now * Convert relative custom paths to absolute ones Also, fix a regression when custom path doesn't exist
2021-03-14Fix typo in assert in OpenAL implementation detail (#2106)Mary
That one missing patch oops.
2021-03-14Report active audio device as TV, rather than internal speakers. (#2103)riperiperi
2021-03-13Override openal-soft configuration (#2101)Mary
This enforce speaker mode to avoid weird audio quality reduction with output considered as headphones by Windows (It applies a HRTF or crossfeed filter supposed to improve audio quality, might be a bug on their end)
2021-03-13Test: Fixes github action warning (#2100)Ac_K
This PR fixes a GitHub Action warning, nothing more.