aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-01-09Support copy of slices to 3D textures, remove old 3D render target layered ↵gdk
render support, do not delete textures with existing views created from them
2020-01-09Add shader support for the round mode on the F2F instruction, support ↵gdk
mipmaps on ASTC compressed textures
2020-01-09Fix shader FMUL32I instruction saturationgdk
2020-01-09Flush buffers on copiesgdk
2020-01-09Add per-source type memory change tracking, simplified state change ↵gdk
tracking, other fixes
2020-01-09Initial support for image stores, support texture sample on computegdk
2020-01-09Fix incorrect saturation on HADD2 and HMUL2 shader instructionsgdk
2020-01-09Fix BC6 Signed/Unsigned float texture formatsgdk
2020-01-09Handle quad and quad strip primitive types using triangle fansgdk
2020-01-09Improved Min/Mip -> MinFilter enum conversiongdk
2020-01-09Calculate width from stride on texture copiesgdk
2020-01-09Initial workgdk
2020-01-09Fix timezone month being reported incorrectly to games (#861)Thog
Nintendo actually uses range from 1 to 12 for months (when original timezone code manage 0-11)
2020-01-05Fix ReactiveObject initial event not being propagated with boolean types (#860)Thog
* Fix ReactiveObject initial event not being propagated with boolean types. This fix the logger configuration initial state being ignored.
2020-01-05Make sure to reload keys after MigrationThog
This fix keys not being loaded on the first run right after migration.
2020-01-05Rename "RyuFs" directory to "Ryujinx" and use the same savedata system the ↵Alex Barney
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>
2020-01-04Fix EphemeralNetworkSystemClock wrong steady clock (#858)Thog
oops
2019-12-29Implemented fast paths for: (#846)LDj3SNuD
* opt * Nit. * opt_p2 * Nit.
2019-12-29Fix GUI freeze wehn closing without any emulation running (#853)Thog
2019-12-26Fix LibHac.IStorage not being disposed in FileSystem proxy (#851)Thog
2019-12-26Make HLE disposable safely (#850)Thog
* Make HLE disposable safely This fix the oldest issue with the HLE code: the kernel side disposability. Changelog: - Implement KProcess::UnpauseAndTerminateAllThreadsExcept, KThread::Terminate, KThread::TerminateCurrentProcess, KThread::PrepareForTermiation and the svc post handler accurately. - Implement svcTerminateProcess and svcExitProcess. (both untested) - Fix KHandleTable::Destroy not decrementing refcount of all objects stored in the table. - Spawn a custom KProcess with the maximum priority to terminate every guest KProcess. (terminating kernel emulation safely) - General system stability improvements to enhance the user's experience. * Fix a typo in a comment in KProcess.cs * Address gdk's comments
2019-12-25Fix remap ioctl map offset (#852)gdkchan
* Fix remap ioctl map offset * Correct offset type
2019-12-23Also use Github Actions as a CI" (#847)Thog
2019-12-23Fix an endge case in bsd IClient::Poll implementation (#848)Thog
This add some code to handle usage of poll without any fds. This is required by Dark Souls Remastered main loop logic as it's calling it without any fds during initialization. === General system stability improvements to enhance the user's experience.
2019-12-22GUI: Implement context menu for the game table (#840)Xpl0itR
* Add context menu to the game table * Minor bugfix and cleanup * add ability to create directory if it doesn't exist * nit * dont show menu when right-clicking nothing
2019-12-21Rewrite the configuration system (#831)Thog
The configuration system was quite fragile and too dependent on everything, this fix #812 . The changes: The file configuration is now entirely independent from the internal configuration state. The file configuration is versioned (current version is 1). Every configuration elements are now reactive properties that the emulator can register on to handle initialization and configuration changes. The configuration system is now in Ryujinx.Common to be accessible on every projects. Discord integration is now independent from the UI and can be reloaded. The primary controller is now configurable at runtime (NOTE: the UI currently doesn't have any options to configure real controller). The logger is entirely reloadable. You can now hotplug your controller when the emulator is running. The logger now takes name for every LogTarget to make them removable at runtime. The logger now always add the default "console" target to avoid loosing early init logs. The configuration system now generates a default file configuration if it's missing or too new. General system stability improvements to enhance the user's experience
2019-12-14Add a limit for the number of instructions in a function (#843)gdkchan
2019-12-08Fix ILogger type and size decoding (#842)Thog
* Fix ILogger type and size decoding The type and size are custom encoded integer not byte. This fix issues on games that send messages longer than 127 characters. * Address gdk's comments
2019-12-07Implemented fast paths for: (#841)LDj3SNuD
* cpu-misc_opt * B = ~b * ;
2019-12-03Fully reverse swkbd configuration structure and follow-up to swkbd ↵jduncanator
implementation (#839) * am: Fully reverse swkbd configuration structure * Add documentation * Remove explicit access modifiers * Fix formatting * Fix further formatting issues
2019-11-29prepo: Silent error while parsing report (#837)Ac_K
Due to a guessed parsing implementation of the report, sometime it throw an error, since the data isn't really useful, it's better to silent possible exceptions with a message.
2019-11-29Add features to GUI (#757)Xpl0itR
* controller image changes depending on the selected controller type the new controller image assets are temporary until i get new ones * Game list scans subdirs for games * Key file existence check * Only shows Program NCAs in Application list * Change shown GUI columns without restarting * Sort by column if you click on the column header Columns are sorted as text so there are inaccuracies on some columns * Fix sort on Time Played, Last Played and File Size columns * Add ability to designate favourite games #1 TODO: - Make fav games persistent - Fix invisible check marks due to theme * Add ability to designate favourite games #2 Also removed default theme * Added a Windows specific build condition and a Linux bug fix * bugfix * Load metadata from JSONs * Temp bug fix for MacOS * lil clean up * requested changes * Misc fixes * edited schema and config * Show the TitleID of games on the title bar * gui column config option have names * Async loading of game list * bugfix and cleanup * thog's requested changes * requested changes and cleanup still need to fix the gtk seizure * Fix issue where an ExeFS as a NSP didn't show up in the application list * Minor fixes * catch glib unhandled exceptions * Make sure to do UI manipulation in the main thread * Print path of invalid files * Ac_k's requested changes * Return of the dark theme * move AboutInfo struct to another file * sort usings * changes - gdkchan's requested changes that have been marked resolved - made some structs internal as they aren't used outside of the GUI - renamed Ryujinx.UI to Ryujinx.Ui to fit naming convention and folder structure - fixed bug where controller type dropdown box is stretched
2019-11-27time: Fix wrong buffer usage in ↵Thog
CalculateStandardUserSystemClockDifferenceByUser & CalculateSpanBetween (#836)
2019-11-26Fix issues on ro implementation (#834)Thog
* ro: Fixes some bugs * Fix critical overflow in random computation
2019-11-25prepo: Implement calls of IPrepoService (#830)Ac_K
* prepo: Implement calls of IPrepoService - Implement `SaveReportOld`, `SaveReportWithUserOld`, `SaveReport`, `SaveReportWithUser` not accurate by RE (except for result codes). It's here to do something with the data since we will never use the `Play Report` sent by the game. So it's better than just a stub. - Fix a typo in `ldn` result code. Close #807 * Add a processing method * Address some comments * remove unneeded using * Resolve requested changes * Typo * Update IPrepoService.cs
2019-11-25Remove one extraneous incrementation (#833)Thog
This incrementation is entirely wrong.
2019-11-23Fix appveyor link and badge to master branchAc_K
2019-11-23Use BinaryPrimitives.ReverseEndianness instead EndianSwap class (#832)Ac_K
This PR remove the `EndianSwap` class who isn't needed anymore since .NET Core 3.0 got a buildin method `BinaryPrimitives.ReverseEndianness` who did the same thing.
2019-11-21ldn: Implement calls of UserLocalCommunicationService (#829)Ac_K
* ldn: Implement calls of UserLocalCommunicationService - Implement `IUserServiceCreator: CreateUserLocalCommunicationService` according to RE. - Implement `IUserLocalCommunicationService` calls: - Every calls in this interface are layered to `NetworkInterface`. - `GetState` according to RE. - `InitializeOld`, `Initialize` and `Finalize` stubbed with the appropriate result code and some TODO according to RE. - `AttachStateChangeEvent` according to RE. * Fix var name and TODO comments * Fix review
2019-11-18Initial swkbd implementation (#826)jduncanator
* am: Initial swkbd implementation Currently only implements the full screen keyboard, inline keyboard will come later. * Remove unnecessary logging * Miscellaneous tidy up * am: Always pop incoming interactive session data * am: Add a reminder to implement the full config struct * am: Check for a max length of zero We should only limit/truncate text when the max length is set to a non-zero value. * Add documentation * am: Return IStorage not available when queue is empty We should be returning the appropriate error code when the FIFO is empty, rather than just throwing an exception and killing the emulator. * Fix typo * Code style changes
2019-11-15Implement IApplicationFunctions & IQueryService commands (#823)Ac_K
* Implement IApplicationFunctions & IQueryService commands - Fix some nits in `IApplicationFunctions` - Implement `QueryApplicationPlayStatistics` and `QueryApplicationPlayStatisticsByUid` checked by RE. - Implement `QueryApplicationPlayStatisticsForSystem` and `QueryApplicationPlayStatisticsByUserAccountIdForSystem` checked by RE. - Implement `QueryPlayStatisticsManager` to get/set played games statistics. We currently don't store any statistics because it's handled by qlaunch (or maybe am service?) on Switch. We can add support later if games use returned statistics for something. * Fix reviews
2019-11-14Set AArch32 mode in KThread (#818)Natalie C
* Set AArch32 mode in KThread * Update ProgramLoader.cs
2019-11-14Fix GetAudioDeviceServiceWithRevisionInfo logging (#822)Ac_K
* Fix GetAudioDeviceServiceWithRevisionInfo logging `revisionInfo` and `appletResourceUserId` were read in the wrong order. * Fix comment
2019-11-14Implement a rudimentary applets system (#804)jduncanator
* Implement Player Select applet * Initialize the Horizon system reference * Tidy up namespaces * Resolve nits * Resolve nits * Rename stack to queue * Implement an applet FIFO * Remove debugging log * Log applet creation events * Reorganise AppletFifo * More reorganisation * Final changes
2019-11-14Add Mrs & Msr (Nzcv) Inst., with Tests. (#819)LDj3SNuD
* Add Mrs & Msr (Nzcv) Inst., with Tests. * Don't use `NativeInterface`.
2019-11-10Update KEYS.md to use a new dumping guide and correct title.key formatting ↵MysticExile
(#814) * Update title.keys formatting and add key dumping guide * Update README.md to reflect changes in KEYS.md * Address feedback and minor style changes * Remove key templates * Fix Co-Authored-By: Ac_K <Acoustik666@gmail.com> * Fix 2 Co-Authored-By: jduncanator <1518948+jduncanator@users.noreply.github.com> * Add a description of what keys are * Minor changes and style fixes * Fix 3
2019-11-09Fix Fcmge_S/V & Fcmgt_S/V Inst.s (#815)LDj3SNuD
* Fix Fcmge_S/V & Fcmgt_S/V. Follow-up Fcm**_S/V & Fc*mp*_S. Improve CmpCondition enum. Nits. * Optimize Fccmp*_S & Fcmp*_S. * Fix cvtsd2si opcode. * Address PR feedback.
2019-11-08Improve IRoInterface logic (#809)Thomas Guillemard
* hle: Improve IRoInterface logic This commit contains a little rewrite of IRoInterface to fix some issues that we were facing on some recent games (AC3 Remastered & Final Fantasy VIII Remastered) Related issues: - https://github.com/Ryujinx/Ryujinx-Games-List/issues/196 * Address comments
2019-11-08Add detail of ZbcSetTableArguments (#810)Thomas Guillemard
* Add detail of ZbcSetTableArguments This is a missing part of the #800 PR that cause an assert to be triggered in debug mode. Also, remove Fence in SurfaceFlinger as it's a duplicate of NvFence. * Fix critical issue in size checking of ioctl oops
2019-11-08Update README.md to reflect new changes in the Homebrew used and mentioned ↵MysticExile
(#813)