gdkchan
e78737089c
Remove some calls generated on the CPU for inexistent intrinsic methods
2018-05-23 00:27:48 -03:00
gdkchan
79e0070363
Improve shader sending method to GAL, use a memory interface instead of reading a fixed array size and sending every time
2018-05-22 22:43:31 -03:00
Starlet
84996ccd36
[SvcSystem/SvcMemory] Implement SvcGetInfo 16, SvcMapPhysicalMemory & SvcUnmapPhysicalMemory ( #126 )
...
* [SvcSystem] Implement SvcGetInfo 16
SvcGetInfo 16 always should be 1(?)
* Implement SvcMapPhysicalMemory & SvcUnmapPhysicalMemory
* Adjusted to review.
2018-05-22 17:40:46 -03:00
Thomas Guillemard
fa4b34bd19
Add a C++ demangler ( #119 )
...
* Add a C++ demangler for PrintStackTrace
This is a simple C++ demangler (only supporting name demangling) that will
probably be enough for any stacktrace cases.
* Create Ryujinx.Core.OsHle.Diagnostics.Demangler and move DemangleName
* Rename Demangler -> Demangle + Fix coding style
* Starting a real parsing for demangler (still simple and no compression support yet)
* Partially implement decompression
* Improve compression support (still need to fix errored compression indexing)
* Some cleanup
* Fix Demangle.Parse call in PrintStackTrace
* Trim parameters result to get more clear prototypes
* Rename Demangle -> Demangler and fix access level
* Fix substitution possible issues also improve code readability
* Redo compression indexing to be more accurate
* Add support of not nested function name
2018-05-22 17:40:02 -03:00
gdkchan
b19c474082
Added more shader instructions, including BFE, BRA (partial), FMNMX, ISCADD, SHL, LD_C, some shader related fixes, added support for texture component selection
2018-05-17 15:25:42 -03:00
gdkchan
9b9ead94cd
Only use higher priority on yield, change reschedule to be per-thread instead of using SchedulerThread to store the reschedule flag
2018-05-15 23:49:57 -03:00
gdkchan
73a3233d57
Fix some races in SvcThreadSync and change the way how yield works
2018-05-15 22:37:54 -03:00
gdkchan
fdfa9424c8
Fix typo and update priority/avoid duplicates on UpdateMutexOwner
2018-05-14 03:09:08 -03:00
gdkchan
ee0b14ba08
Some improvements to SetThreadCoreMask, simplified implementation of wait lists
2018-05-14 03:01:10 -03:00
gdkchan
9e50ed53e6
Implement GetTpcMasks on nvservices
2018-05-13 22:10:45 -03:00
gdkchan
b2b1d7dcd7
Better implementation of SetThreadCoreMask that allows changing the Core Mask (untested, no clue if it actually works)
2018-05-13 22:00:29 -03:00
gdkchan
4546d1b9be
Initial work to support changing thread core on the scheduler, also some cond var priority fixes
2018-05-13 00:22:42 -03:00
gdkchan
3603497a13
Allow using self thread id on some svcs ( fixes #117 )
2018-05-11 23:05:06 -03:00
gdkchan
0381a09227
Fix WidthInGobs on the GPU
2018-05-11 20:20:44 -03:00
gdkchan
f9f111bc85
Add intrinsics support ( #121 )
...
* Initial intrinsics support
* Update tests to work with the new Vector128 type and intrinsics
* Drop SSE4.1 requirement
* Fix copy-paste mistake
2018-05-11 20:10:27 -03:00
Starlet
8e306b3ac1
Fix NV stubs ( #124 )
...
* Fix NV stubs
* Compliant with feedback
* Oops, Compliant with feedback #2
2018-05-11 00:19:51 -03:00
Thomas Guillemard
0979426e63
Implement ISystemDisplayService::GetDisplayMode & Add IManagerDisplayService::SetLayerVisibility stub ( #118 )
...
* Add ISystemDisplayService::GetDisplayMode & IManagerDisplayService::SetLayerVisibility
Also add some missing PrintStub calls
* Fix import ordering & Fix incorrect value for the third word in GetDisplayMode
2018-05-10 23:40:52 -03:00
gdkchan
ac91607ac3
Fix regression caused by wrong endian on GetAudioRendererWorkBufferSize version check
2018-05-07 16:03:30 -03:00
gdkchan
34037701c7
NvServices refactoring ( #120 )
...
* Initial implementation of NvMap/NvHostCtrl
* More work on NvHostCtrl
* Refactoring of nvservices, move GPU Vmm, make Vmm per-process, refactor most gpu devices, move Gpu to Core, fix CbBind
* Implement GetGpuTime, support CancelSynchronization, fix issue on InsertWaitingMutex, proper double buffering support (again, not working properly for commercial games, only hb)
* Try to fix perf regression reading/writing textures, moved syncpts and events to a UserCtx class, delete global state when the process exits, other minor tweaks
* Remove now unused code, add comment about probably wrong result codes
2018-05-07 15:53:23 -03:00
Ac_K
4419e8d6b4
Update IAudioRendererManager.cs
2018-05-04 16:52:07 +02:00
Ac_K
d0afc8e380
A REAL fix for some games. ( #116 )
...
* Update IAudioRendererManager.cs
* Update IAudioRendererManager.cs
* Update IAudioRendererManager.cs
2018-05-01 21:02:28 -03:00
gdkchan
071754aaeb
Fix GetDesiredLanguage and expose a way to set the desired language, default to english
2018-04-29 20:18:46 -03:00
gdkchan
f73a182b20
Properly support multiple vertex buffers, stub 2 ioctls, fix a shader issue, change the way how the vertex buffer size is calculated for the buffers with limit = 0
2018-04-29 17:58:38 -03:00
gdkchan
17f4ccf2d5
Remove unnecessary casts from NxSettings
2018-04-26 13:57:25 -03:00
gdkchan
1af78416d1
Add null terminator to audio device names when writing to the output buffer
2018-04-26 11:34:40 -03:00
gdkchan
81e74ebd86
Remove thread from the threads list when it finishes, remove debug code
2018-04-26 00:07:12 -03:00
gdkchan
a38a72b062
Some small sync primitive fixes, logging fixes, started to implement the 2D engine on the GPU, fixed DrawArrays, implemented a few more shader instructions, made a start on nvdrv refactor, etc...
2018-04-25 23:12:26 -03:00
Ac_K
211f7f69db
Update ISystemSettingsServer.cs ( #107 )
...
* Update ISystemSettingsServer.cs
Implement `GetSettingsItemValue`.
* Add NxSettings.cs
Generated automatically from a Switch 3.0 config file (Tid: 0100000000000818).
* Update ISystemSettingsServer.cs
* Update ISystemSettingsServer.cs
* Update ISystemSettingsServer.cs
2018-04-25 21:52:22 -03:00
gdkchan
2a985de88c
[HLE/Audio] Use correct audio device names
2018-04-24 17:14:26 -03:00
gdkchan
a8ba340dde
Improved logging ( #103 )
2018-04-24 15:57:39 -03:00
Ac_K
4e24866b47
Update IAudioController.cs
2018-04-23 05:02:30 +02:00
gdkchan
db0aa54233
Print guest stack trace on a few points that can throw exceptions
2018-04-22 02:48:17 -03:00
gdkchan
bd9b1e2c6b
Stub a few services, add support for generating call stacks on the CPU
2018-04-22 01:22:46 -03:00
Ac_K
4906acdde9
Some implementations ( #99 )
...
* Some implementations
- ICommonStateGetter
* GetBootMode
- ISelfController
* SetHandlesRequestToDisplay
- IServiceGetterInterface
- ISystemUpdateInterface
- IVulnerabilityManagerInterface
- IPrepoService
- ISettingsServer
* GetLanguageCode
- ISystemSettingsServer
* GetFirmwareVersion2
- IHOSBinderDriver
* TransactParcelAuto
* Fix Implementations
* Fix Implementations 2
2018-04-21 20:04:43 -03:00
Ac_K
434e40b8a0
Update am service ( #98 )
...
* am services implementations
Implement:
- IAllSystemAppletProxiesService
- IApplicationCreator
- IGlobalStateController
- IHomeMenuFunctions
* RequestToGetForeground stub.
* GetPopFromGeneralChannelEvent stub event.
- ISystemAppletProxy
* GetCommonStateGetter
* GetSelfController
* GetWindowController
* GetAudioController
* GetDisplayController
* GetLibraryAppletCreator
* GetHomeMenuFunctions
* GetGlobalStateController
* GetApplicationCreator
* GetDebugFunctions
* Update ServiceFactory.cs
* Update IHomeMenuFunctions.cs
* Update IHomeMenuFunctions.cs
* Update ServiceFactory.cs
2018-04-21 16:30:06 -03:00
gdkchan
90279d96ea
Implement the synchronization primitives like the Horizon kernel does ( #97 )
...
* Started to work in improving the sync primitives
* Some fixes
* Check that the mutex address matches before waking a waiting thread
* Add MutexOwner field to keep track of the thread owning the mutex, update wait list when priority changes, other tweaks
* Add new priority information to the log
* SvcSetThreadPriority should update just the WantedPriority
2018-04-21 16:07:16 -03:00
emmauss
267ea14cb5
fix typo in log ( #93 )
2018-04-20 12:40:33 -03:00
gdkchan
03002f6537
Add SvcSetThreadActivity, tweak SignalProcessWideKey, add fmul32i shader instructions and other small fixes
2018-04-19 16:18:30 -03:00
gdkchan
33ae6e544b
[HLE/Kernel] Fix SetThreadPriority, allow nano seconds values > int.MaxValue, fix on WaitProcessWideKeyAtomic (althrough looks like it still doesn't work properly
2018-04-19 04:06:23 -03:00
gdkchan
62b2124c03
[HLE/Kernel] Dispose the thread wait even on exit
2018-04-19 01:01:46 -03:00
gdkchan
6e69cd9284
Fix bad merge, and a few other fixes
2018-04-19 00:19:22 -03:00
gdkchan
ac80e7d3f9
[HLE/Kernel] Yield when cond var is signaled
2018-04-19 00:00:29 -03:00
gdkchan
b9af34f3dd
[HLE/Kernel] Somewhat improved sync primitives
2018-04-18 23:52:36 -03:00
Ac_K
7450b9d68a
Update IAudioDeviceService.cs ( #87 )
...
* Update IAudioDeviceService.cs
Stubs:
- QueryAudioDeviceSystemEvent
- GetActiveChannelCount
* Update IAudioDeviceService.cs
* Update IAudioDeviceService.cs
2018-04-17 22:52:20 -03:00
Ac_K
ee6794e397
Update IAudioController.cs ( #86 )
...
* Update IAudioController.cs
Stubs:
- SetExpectedMasterVolume
- GetMainAppletExpectedMasterVolume
- GetLibraryAppletExpectedMasterVolume
- ChangeMainAppletMasterVolume
- SetTransparentVolumeRate
* Update IAudioController.cs
2018-04-17 22:39:27 -03:00
Ac_K
917fb7ad21
Update IAccountServiceForApplication.cs ( #85 )
...
Stubs:
- GetUserCount (`Write(0);` throw userland error)
2018-04-17 13:41:14 -03:00
Ac_K
ed155e6f4e
Update IHidServer.cs ( #84 )
...
* Update IHidServer.cs
Stubs:
- SetGyroscopeZeroDriftMode
- SetNpadHandheldActivationMode
- SendVibrationValue
- GetPlayerLedPattern
* Update IHidServer.cs
updated
2018-04-17 13:40:22 -03:00
emmauss
b334aab435
Add special log for stubs ( #81 )
...
* add stub loglevel
* add log for stubbed methods
2018-04-16 21:24:42 -03:00
gdkchan
42ebfdff7f
[GPU] Fix frame buffer being upside down in some cases
2018-04-14 00:39:24 -03:00
emmauss
bbcad307bd
Add logclass, made changes to logging calls ( #79 )
...
* add logclass, made changes to logging calls
* made enum parsing case insensitive
* enable logclass on partial or complete match
2018-04-13 22:02:24 -03:00