aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.HLE/HOS/Services
AgeCommit message (Collapse)Author
2020-07-27audin: Implement IAudioInManager ListAudioIns (#1419)Ac_K
* audin: Implement IAudioInManager ListAudioIns This implement some calls of IAudioInManager: - ListAudioIns - ListAudioInsAuto - ListAudioInsAutoFiltered Accordingly to RE. Close #1056 * Fix count * Comment condition * Fix comment
2020-07-26Implement BGRA texture support (#1418)gdkchan
* Implement BGRA texture support * Missing AppendLine * Remove empty lines * Address PR feedback
2020-07-23New GPFifo and fast guest constant buffer updates (#1400)gdkchan
* Add new structures from official docs, start migrating GPFifo * Finish migration to new GPFifo processor * Implement fast constant buffer data upload * Migrate to new GPFifo class * XML docs
2020-07-23vi: Implement GetIndirectLayerImageRequiredMemoryInfo (#1415)Ac_K
This implement GetIndirectLayerImageRequiredMemoryInfo call from vi service, accordingly to RE. Thanks to Thog and gdkchan for helping me to understand some GPU things. Close #942
2020-07-22Add multiple calls to am service (#1411)Ac_K
* Add multiple calls to am service This implement/stub some am calls: - SetAutoSleepDisabled - IsAutoSleepDisabled - SetAlbumImageTakenNotificationEnabled - EnableApplicationCrashReport - GetPreviousProgramIndex - NeedsToExitProcess - RequestForAppletToGetForeground - GetIndirectLayerConsumerHandle All checked by RE. Additionnaly to that, there is some cleanup here and there. Fix #1387, #1324, #1165, #1163, #1065 * Fix casting * Thread safe assign
2020-07-21Better TimeZone entry in System Settings (#1254)mageven
* Better timezone labels in System TimeZone Replace with GtkEntry with auto-complete Also removed async task as now loading is fast Address Thog's comments self-nit: Remove string alias Address AcK's comments * Improve parsing * Optimize and fix string matching Address jD's comments * Also, make abbreviations searchable * Optimize EntryCompletion's MatchFunc * nit: Result.IsFailure() * Fix potential crash on opening Settings window w/o FW installed
2020-07-21Fix IDeliveryCacheProgressService GetEvent (#1409)gdkchan
2020-07-20ipc hle: Fix disposing of session created with MakeObject (#1404)Mary
This fix a missing part of #1397, making HLE ipc session being disposed when needed. THis is needed for upcoming wip changes.
2020-07-19Fix session service disposal and improve transfer memory implementation (#1397)gdkchan
* Fix session service disposal and improve transfer memory implementation * Remove useless assignment
2020-07-12New NVDEC and VIC implementation (#1384)gdkchan
* Initial NVDEC and VIC implementation * Update FFmpeg.AutoGen to 4.3.0 * Add nvdec dependencies for Windows * Unify some VP9 structures * Rename VP9 structure fields * Improvements to Video API * XML docs for Common.Memory * Remove now unused or redundant overloads from MemoryAccessor * NVDEC UV surface read/write scalar paths * Add FIXME comments about hacky things/stuff that will need to be fixed in the future * Cleaned up VP9 memory allocation * Remove some debug logs * Rename some VP9 structs * Remove unused struct * No need to compile Ryujinx.Graphics.Host1x with unsafe anymore * Name AsyncWorkQueue threads to make debugging easier * Make Vp9PictureInfo a ref struct * LayoutConverter no longer needs the depth argument (broken by rebase) * Pooling of VP9 buffers, plus fix a memory leak on VP9 * Really wish VS could rename projects properly... * Address feedback * Remove using * Catch OperationCanceledException * Add licensing informations * Add THIRDPARTY.md to release too Co-authored-by: Thog <me@thog.eu>
2020-07-09Implement modding support (#1249)mageven
* Implement Modding Support * Executables: Rewrite to use contiguous mem and Spans * Reorder ExeFs, Npdm, ControlData and SaveData calls After discussion with gdkchan, it was decided it's best to call LoadExeFs after all other loads are done as it starts the guest process. * Build RomFs manually instead of Layering FS Layered FS approach has considerable latency when building the final romfs. So, we manually replace files in a single romfs instance. * Add RomFs modding via storage file * Fix and cleanup MemPatch * Add dynamically loaded NRO patching * Support exefs file replacement * Rewrite ModLoader to use mods-search architecture * Disable PPTC when exefs patches are detected Disable PPTC on exefs replacements too * Rewrite ModLoader, again * Increased maintainability and matches Atmosphere closely * Creates base mods structure if it doesn't exist * Add Exefs partition replacement * IPSwitch: Fix nsobid parsing * Move mod logs to new LogClass * Allow custom suffixes to title dirs again * Address nits * Add a per-App "Open Mods Directory" context menu item Creates the path if not present. * Normalize tooltips verbiage * Use LocalStorage and remove unused namespaces
2020-07-05prepo: Update implementation for 10.x changes (#1361)Mary
* prepo: Update implementation for 10.x changes On 10.x, Nintendo changed yet another time the prepo SaveReport & SaveReportWithUser command ids. This PR add support for command 10104 & 10105 and update naming of the old variants to match switchbrew. * Fix misalign and remove a ToString * Address jD's comment
2020-07-04Fix compilation warnings and use new LibHac APIs for executable loading (#1350)Mary
* Fix compilation warnings and use new LibHac APIs for executable loading * Migrate NSO loader to the new reader and fix kip loader * Fix CS0162 restore * Remove extra return lines * Address Moose's comment
2020-07-04Stub nifm IRequest GetAppletInfo (#1326)mageven
* Stub GetAppletInfo to be consistent with GetResult * Fix formatting and enum * Update and use ResultCode
2020-07-04sockets: Make sure to write the receivedBuffer (#1346)Mary
Fix #1341
2020-06-22Update NRR structs (#1291)VolcaEM
* Update NRR structs This was based on Switchbrew page: switchbrew.org/wiki/NRR * Address review comments
2020-06-20Implement aoc:u and support loading AddOnContent (#1221)mageven
* Initial rebased AddOnContent support * Fix bounds calculation * Use existing GameCard in VFS per Xpl0itR's suggestion + Add dummy IPurchaseEventManager per AcK's suggestion * Support multiple containers * Add option to selectively disable addons * Import tickets from AOC FS * Load all nsps in base directory automatically * Revert LoadNsp renaming Removes conflicts with Mods PR. Not much is lost, old names were fine. * Address AcK's comments * Address Thog's comments Dispose opened nsp files Fix potential bug by clearing metadata on load
2020-06-06Stubbing ImportServerPki (#1281)Shrek5InTheatres2019
* Stubbed ImportServerPki * thought it might be nice to name this variable properly * i really need to name variables better * Change Var Co-authored-by: Thog <thog@protonmail.com> * Change .ReadBytes(5) to IPC send buffer Co-authored-by: Thog <thog@protonmail.com> * Add description comment Co-authored-by: Thog <thog@protonmail.com> * fix build issue * Resolve final suggestion Co-authored-by: Thog <thog@protonmail.com> * uhh * it should work now shut up * aligned variables just look so much nicer :) * better variable alignment * aligned Co-authored-by: Thog <thog@protonmail.com>
2020-06-02SurfaceFlinger: fix some bugs (#1262)Thog
* SurfaceFlinger: fix some bugs This fixes some bugs in the current implementation and make it closer to the real implementation. * Fix align of some variables
2020-05-27Fix GetDesiredLanguage (#1275)mageven
* Fix GetDesiredLanguage * Correct tzcnt slip-up * Address gdkchan's comments
2020-05-27Fix GetDisplayVersion (#1276)mageven
2020-05-15surfaceflinger: FreeBufferLocked doesn't reset the graphic bufferThog
That's the job of the user on Horizon (via SetPreallocatedBuffer).
2020-05-15Refactor out Application details from Horizon (#1236)mageven
* Initial Application refactor * Misc typo and access modifier fixes * Clean unused namespaces * Address gdkchan's comments * Move ticket reading to common method * Change IParentalControlService to use ApplicationLoader.ControlData
2020-05-15Surface Flinger: Implement GetBufferHistory (#1232)Thog
* Surface Flinger: Implement GetBufferHistory Also fix some bugs on the Surface Flinger implementation * Address Ac_K's comment
2020-05-15pctl: refactoring IParentalControlServiceFactory and IParentalControl… (#1219)Ac_K
* pctl: refactoring IParentalControlServiceFactory and IParentalControlService call Our previous implementation was totally guessed. Now it's implemented according to RE, even if it's stubbed because we will not support Parental Control for now. * unknownFlag > permissionFlag
2020-05-13nvdrv: Partially implementation of GetStatus (#1215)Ac_K
* nvdrv: Partially implementation of GetStatus This implement GetStatus call according to RE. Since we don't handle tranfert memory on the initialize of the service, it's fine sets fields at 0 for now. Tested on Undertale. Fix #635 * Fix struct
2020-05-13Add missing error code to Time (#1237)VolcaEM
The error code was taken from Switchbrew (https://switchbrew.org/wiki/Error_codes) Even if TimeServiceNotInitialized's "description" is 0, the result "value" of "(0 << ErrorCodeShift) | ModuleId" is 0x74 so it is not the same as "Success" (0)
2020-05-12am: Implement GetFriendInvitationStorageChannelEvent (#1220)Ac_K
* am: Implement GetFriendInvitationStorageChannelEvent This implement GetFriendInvitationStorageChannelEvent according to RE, needed by Streets of Rage 4 * Fix handle name * add GetNotificationStorageChannelEvent
2020-05-10Suppress CS0169 CS0649 warns from HID structs (#1222)mageven
Also fix typo in a pragma restore in Logger
2020-05-10Add various error codes to Settings (#1229)VolcaEM
The error codes were taken from Switchbrew (https://switchbrew.org/wiki/Error_codes)
2020-05-09Add two error codes to SDB PDM (#1230)VolcaEM
* Add two error codes to SDB PDM The error codes were taken from Switchbrew (https://switchbrew.org/wiki/Error_codes) * Remove empty line
2020-05-08Add two error codes to Mii (#1224)VolcaEM
* Add two error codes to Mii The two errors added are InvalidDatabaseSignatureValue and InvalidDatabaseEntryCount, which were taken from Switchbrew (https://switchbrew.org/wiki/Error_codes) * Fix typo * Remove unnecessary empty line
2020-05-08Add various error codes to NCM LR (#1225)VolcaEM
The error codes were taken from Switchbrew (https://switchbrew.org/wiki/Error_codes)
2020-05-05set: Quick implementation of GetKeyCodeMap/GetKeyCodeMap2 (#1210)plutoo
* set: Quick implementation of GetKeyCodeMap/GetKeyCodeMap2 This fixed USB keyboard access in official titles. * hid: Stub SendKeyboardLockKeyEvent * Update Ryujinx.HLE/HOS/Services/Settings/ISettingsServer.cs Co-authored-by: Ac_K <Acoustik666@gmail.com> * Update Ryujinx.HLE/HOS/Services/Hid/IHidServer.cs Co-authored-by: Ac_K <Acoustik666@gmail.com> * set: KeyboardLayout bringup * set: Small bugfix * Fix GetKeyCodeMapImpl * Revert SystemRegion > RegionCode in Configuration * Fix SendKeyboardLockKeyEvent Co-authored-by: Ac_K <Acoustik666@gmail.com>
2020-05-04Add error code for denied internet request in Friends (#1207)VolcaEM
* Add error code for denied internet request in Friends * Fix formatting from previous PR
2020-05-04Add various error codes to Loader (#1208)VolcaEM
* Add various result codes to Loader The error codes were taken from Switchbrew (switchbrew.org/wiki/Error_codes) For the last 9 errors, Switchbrew says: ACID/ACI0 don't match for descriptor (descriptor) * Fix typo
2020-05-04Move kernel state out of the Horizon class (#1107)gdkchan
* Move kernel state from Horizon to KernelContext * Merge syscalls partial classes, split 32 and 64-bit variants * Sort usings
2020-05-04Implement a new physical memory manager and replace DeviceMemory (#856)gdkchan
* Implement a new physical memory manager and replace DeviceMemory * Proper generic constraints * Fix debug build * Add memory tests * New CPU memory manager and general code cleanup * Remove host memory management from CPU project, use Ryujinx.Memory instead * Fix tests * Document exceptions on MemoryBlock * Fix leak on unix memory allocation * Proper disposal of some objects on tests * Fix JitCache not being set as initialized * GetRef without checks for 8-bits and 16-bits CAS * Add MemoryBlock destructor * Throw in separate method to improve codegen * Address PR feedback * QueryModified improvements * Fix memory write tracking not marking all pages as modified in some cases * Simplify MarkRegionAsModified * Remove XML doc for ghost param * Add back optimization to avoid useless buffer updates * Add Ryujinx.Cpu project, move MemoryManager there and remove MemoryBlockWrapper * Some nits * Do not perform address translation when size is 0 * Address PR feedback and format NativeInterface class * Remove ghost parameter description * Update Ryujinx.Cpu to .NET Core 3.1 * Address PR feedback * Fix build * Return a well defined value for GetPhysicalAddress with invalid VA, and do not return unmapped ranges as modified * Typo
2020-05-03Add various error codes to Audio (#1201)VolcaEM
The error codes were taken from Switchbrew (switchbrew.org/wiki/Error_codes)
2020-05-03Add various error codes to BCAT (#1202)VolcaEM
* Add various error codes to BCAT The error codes were taken from Switchbrew (switchbrew.org/wiki/Error_codes) As for InternetRequestDenied, it seems that this error is common for multiple services like Account for example I already added this error code in Account in PR #1182 * Add some results codes from Libhac and keep names consistent
2020-05-03Improvements to input and input configuration in the GUI. (#849)Xpl0itR
* Improvements to input and input configuration in the GUI * Requested changes * nits * more nits
2020-05-02nvservice: add a lock around NvHostEvent and remove release fence on SFv2 ↵Thog
(#1197) * nvservice: add a lock to NvHostEvent * Disable surface flinger release fence and readd infinite timeout * FenceAction: Add a timeout of 1 seconds as this shouldn't wait forever anyuway * surfaceflinger: remove leftovers from the release fence * Don't allow infinite timeout on syncpoint while printing all timeout for better debugging
2020-05-02Add error code for denied internet request in Account (#1182)VolcaEM
InternetRequestDenied (I can't find a better name) was taken from Switchbrew (switchbrew.org/wiki/Error_codes) Regarding this error, SwitchBrew notes: "IsAnyInternetRequestAccepted with the output from GetClientId returned false."
2020-05-02Add various error codes to AM (#1183)VolcaEM
* Add various error codes to AM The error codes were taken from Switchbrew (https://switchbrew.org/wiki/Error_codes) * TitleID -> TitleId
2020-05-01nvservices: mitigate abort with heavy load on the GPU processing thread (#1173)Thog
* nvservices: mitigate abort with heavy load on the GPU processing thread. This should fix Mario Tennis and LM3 regressions with syncpoints. NOTE: Mario Tennis seems to have another issue related to the texture cache that happens randomly when starting a match. PS: Also add a debug logger for all known ioctl call to facilitate debugging and add a missing UpdateMin in EventSignal. * Address LDj3SNuD's comment * Address gdkchan's comment
2020-05-01am: add IsVrModeEnabled (#1189)Thog
* am: stub IsVrMode Needed by SSBU 7.0.0 * Address Ac_K's comments
2020-04-30Add BCAT delivery cache support (#1154)Alex Barney
* Initial bcat delivery cache support * Use LibHac 0.11.0 * Add option to open the BCAT savedata directory
2020-04-30audren: implement Renderer Info output informations (#1179)Thog
This implement the rendering information output informations of RequestUpdate. This is needed by some games to keep track of the count of update on the DSP.
2020-04-28Fix hbl 2.3.1 and hbmenu 3.3.0 (#1171)Thog
* Fix hbl 2.3.1 and hbmenu 3.3.0 * log class: Add ServicePtm * fix build issue * do not cast titleId to byte * Address Ac_K's comment
2020-04-25SurfaceFlinger: fix SetPreallocatedBuffer correctness (#1153)Thog
Nintendo sets the buffer count in SetPreallocatedBuffer too. This fix triple buffering on all games and finally fix SSBU flickering.