Commit graph

231 commits

Author SHA1 Message Date
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
LDj3SNuD 302c1d2861 Fix Addp_S in AOpCodeTable. Add 5 Tests: ADDP (scalar), ADDP (vector), ADDV. (#96)
* Update AOpCodeTable.cs

* Update Pseudocode.cs

* Update Instructions.cs

* Update CpuTestSimd.cs

* Update CpuTestSimdReg.cs

* Update Instructions.cs

* Revert "Started to work in improving the sync primitives"
2018-04-21 16:15:04 -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
LDj3SNuD 2ccd995cb2 Add ADDHN{2}, RADDHN{2}, SUBHN{2}, RSUBHN{2} (vector) instructions. Add 8 Tests. (#92)
* Update AOpCodeTable.cs

* Update AInstEmitSimdArithmetic.cs

* Update Pseudocode.cs

* Update Instructions.cs

* Update Bits.cs

* Create CpuTestSimd.cs

* Create CpuTestSimdReg.cs

* Update CpuTestSimd.cs

Provide a better supply of input values for the 20 Simd Tests.

* Update CpuTestSimdReg.cs

Provide a better supply of input values for the 20 Simd Tests.

* Update AOpCodeTable.cs

* Update AInstEmitSimdArithmetic.cs

* Update CpuTestSimd.cs

* Update CpuTestSimdReg.cs
2018-04-20 12:40:15 -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
MS-DOS1999 76a5972378 Fix Fmin/max and add vector version, add and modifying fmin/max tests (#89) 2018-04-19 00:22:12 -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
LDj3SNuD e9a96e3522 Add 151 complete tests for 71 base instructions of types: Alu; AluImm; AluRs; AluRx; Bfm; CcmpImm; CcmpReg; Csel; Mov; Mul. (#80)
* Add files via upload

* Update Ryujinx.Tests.csproj
2018-04-18 17:22:45 -03:00
LDj3SNuD 8b75080639 Add ABS (scalar & vector), ADD (scalar), NEG (scalar) instructions. (#88)
* Update AOpCodeTable.cs

* Update AInstEmitSimdArithmetic.cs

* Update AOpCodeTable.cs
2018-04-18 10:56:27 -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 494e6dfa1e [GPU] Set frame buffer texture size to window size 2018-04-14 01:31:27 -03:00
gdkchan 7dd14a4f3a [GPU] Send correct window size to the vertex shader 2018-04-14 01:14:42 -03:00
gdkchan 42ebfdff7f [GPU] Fix frame buffer being upside down in some cases 2018-04-14 00:39:24 -03:00
gdkchan 47100ec8c1 [GPU] Avoid drawing the frame buffer with alpha blend enabled, use correct blend enable register, clear the buffer before drawing 2018-04-13 22:42:55 -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
gdkchan 435f9ffad8 [HLE] Fix hid issues on some games 2018-04-13 17:39:45 -03:00
gdkchan 032c442505 [GPU] Remove 1f in RCP instruction emitter on glsl decompiler 2018-04-13 16:01:29 -03:00
gdkchan 8ab76a7bd4 [GPU] Do not use the f suffix on float contants on the shader glsl code 2018-04-13 15:53:16 -03:00
gdkchan 237eaeb920 Bump glsl version to support layout qualifier 2018-04-13 15:36:12 -03:00
gdkchan c8c86a3854
Fix for current framebuffer issues (#78)
[GPU] Fix some of the current framebuffer issues
2018-04-13 15:12:58 -03:00
LDj3SNuD 262b5b8054 Add TRN1 & TRN2 (vector) instructions. Add 4 simple tests (4S, 8B). (#77)
* Update AOpCodeTable.cs

* Update AInstEmitSimdMove.cs

* Update CpuTestSimdMove.cs

* Update AInstEmitSimdMove.cs

* Update CpuTestSimdMove.cs
2018-04-12 11:52:00 -03:00
gdkchan 9227b0ea59 [CPU] Speed up translation a little bit 2018-04-11 14:44:03 -03:00
gdkchan 46548bbc41 [HLE/Service] Fix ToCalendarTimeWithMyRule (for real this time) 2018-04-10 21:18:20 -03:00
gdkchan 29a4fb6a57 [HLE/Service] Fix ToCalendarTimeWithMyRule 2018-04-10 21:16:27 -03:00
gdkchan cb29b4303c [CPU] Fix CNT instruction 2018-04-10 20:58:32 -03:00
gdkchan 7b2f471d4f [GPU] Add support for the BC4/5 texture formats 2018-04-10 18:54:50 -03:00
gdkchan f57fd95fd9 Fix regression -- enable raw frame buffer rendering 2018-04-10 16:56:03 -03:00
gdkchan feb2680a6c [GPU] Add more shader instructions, add support for rgb565 textures 2018-04-10 16:50:32 -03:00
LDj3SNuD e9cfdef098 Add A1B5G5R5 texture format. (#76)
* Update GalTextureFormat.cs

* Update TextureReader.cs
2018-04-08 18:08:36 -03:00
gdkchan ecf02f525f Remove line numbers from log 2018-04-08 17:38:27 -03:00
emmauss b2668e659c log calling method in logs (#71) 2018-04-08 17:30:50 -03:00
gdkchan 36dfd20c87 Use correct pitch value when decoding linear swizzle textures 2018-04-08 17:09:41 -03:00
gdkchan b9aa3966c0 Merge shader branch, adding support for GLSL decompilation, a macro
interpreter, and a rewrite of the GPU code.
2018-04-08 16:41:38 -03:00
LDj3SNuD 7acd0e0122 Add FMUL (scalar, by element) instruction; add FRECPE, FRECPS (scalar & vector) instructions. Add 5 simple tests. (#74)
* Update AOpCodeTable.cs

* Update AInstEmitSimdArithmetic.cs

* Update AInstEmitSimdHelper.cs

* Update CpuTestSimdArithmetic.cs

* Update AOpCodeTable.cs

* Update AInstEmitSimdArithmetic.cs
2018-04-08 16:08:57 -03:00
gdkchan 980691f36b [CPU] Fix CBZ/CBNZ with 32 bits operands 2018-04-06 17:22:26 -03:00
gdkchan 702daf2ff4 [CPU] Fail early when the index/size of the vector is invalid 2018-04-06 15:39:39 -03:00
gdkchan b27944c0b5 Bump the maximum number of threads 2018-04-06 10:53:18 -03:00
gdkchan df3cbadceb Fix FRSQRTS and FCM* (scalar) instructions 2018-04-06 10:20:17 -03:00