867 Commits

Author SHA1 Message Date
ReinUsesLisp
45657062e4 Avoid querying and setting texture bindings in hot code (#376) 2018-08-23 01:54:32 -03:00
Thomas Guillemard
de483f52dd Improve LM implementation (#373)
- Manage end of the log packet correctly.
- Add drop count, time, and program name parsing.
- Use the correct buffer type. (0x21 not 0x9)
- Prefix unknown fields with "Field"
2018-08-22 18:06:29 -03:00
Thomas Guillemard
6096764e3b SvcSetHeapSize: match kernel check for invalid size (#374)
This fix games like DK Country
2018-08-21 13:05:12 -03:00
ReinUsesLisp
a729e59ffa Avoid gpr overwritting on Ld_C instruction (#371)
* Avoid gpr overwritting on LD_C instruction

* Address feedback

* Ignore invalid registers
2018-08-20 23:31:10 -03:00
ReinUsesLisp
97bcf897a0 Use signed and unsigned vertex types (#370) 2018-08-20 16:02:38 -03:00
LDj3SNuD
cd18d9ac78 Add AESD, AESE, AESIMC, AESMC instructions; add 4 simple Tests (closed box). (#365)
* Create CpuTestSimdCrypto.cs

* Update AOpCodeTable.cs

* Create AInstEmitSimdCrypto.cs

* Update ASoftFallback.cs

* Create ACryptoHelper.cs
2018-08-20 01:20:26 -03:00
ReinUsesLisp
fbf4386b52 Rendertarget attachments, texture and image changes (#358)
* Add multiple color outputs for fragment shaders

* Add registers and gal enums

* Use textures for framebuffers and split color and zeta framebuffers

* Abstract texture and framebuffer targets as an image

* Share images between framebuffers and textures

* Unstub formats

* Add some formats

* Disable multiple attachments

* Cache framebuffer attachments

* Handle format types

* Add some rendertarget formats

* Code cleanup

* Fixup half float types

* Address feedback

* Disable multiple attachments in shaders

* Add A4B4G4R4 image format

* Add reversed section for image enums
2018-08-19 22:25:26 -03:00
gdkchan
2d944822e2 Fix MapPhysicalMemory when block position is less than map position (#359)
* Fix MapPhysicalMemory when block position is less than map position

* Only try to free pages that are actually mapped

* Only unmap after freeing the memory
2018-08-17 10:39:35 -03:00
LDj3SNuD
8fb76fd03e Add SHA256H, SHA256H2, SHA256SU0, SHA256SU1 instructions; add 4 Tests (closed box). (#352)
* Update CpuTestSimd.cs

* Update CpuTestSimdReg.cs

* Update Pseudocode.cs

* Update Instructions.cs

* Update Bits.cs

* Update Integer.cs

* Update AOpCodeTable.cs

* Create AInstEmitSimdHash.cs

* Update ASoftFallback.cs
2018-08-16 21:44:44 -03:00
gdkchan
35c06c7f44 Code style fixes and nits on the HLE project (#355)
* Some style fixes and nits on ITimeZoneService

* Remove some unneeded usings

* Remove the Ryujinx.HLE.OsHle.Handles namespace

* Remove hbmenu automatic load on process exit

* Rename Ns to Device, rename Os to System, rename SystemState to State

* Move Exceptions and Utilities out of OsHle

* Rename OsHle to HOS

* Rename OsHle folder to HOS

* IManagerDisplayService and ISystemDisplayService style fixes

* BsdError shouldn't be public

* Add a empty new line before using static

* Remove unused file

* Some style fixes on NPDM

* Exit gracefully when the application is closed

* Code style fixes on IGeneralService

* Add 0x prefix on values printed as hex

* Small improvements on finalization code

* Move ProcessId and ThreadId out of AThreadState

* Rename VFs to FileSystem

* FsAccessHeader shouldn't be public. Also fix file names casing

* More case changes on NPDM

* Remove unused files

* Move using to the correct place on NPDM

* Use properties on KernelAccessControlMmio

* Address PR feedback
2018-08-16 20:47:36 -03:00
gdkchan
3ec37c0a2f Remove artificial call count limit for EndGl (#357) 2018-08-16 20:45:00 -03:00
ReinUsesLisp
1858dd5c4c Implement PointCoord and PointSize shader attributes (#353)
* Implement PointCoord and PointSize shader attributes

* Address feedback
2018-08-16 02:26:03 -03:00
gdkchan
935eef96e8 More flexible memory manager (#307)
* Keep track mapped buffers with fixed offsets

* Started rewriting the memory manager

* Initial support for MapPhysicalMemory and UnmapPhysicalMemory, other tweaks

* MapPhysicalMemory/UnmapPhysicalMemory support, other tweaks

* Rebased

* Optimize the map/unmap physical memory svcs

* Integrate shared font support

* Fix address space reserve alignment

* Some fixes related to gpu memory mapping

* Some cleanup

* Only try uploading const buffers that are really used

* Check if memory region is contiguous

* Rebased

* Add missing count increment on IsRegionModified

* Check for reads/writes outside of the address space, optimize translation with a tail call
2018-08-15 15:59:51 -03:00
emmauss
21b668061d Implement ITimeZone 201, 202 (#327)
* Implement ITimeZone 201, 202

* fix alignment

* fix array count

* fix mismatching datetime kind and timezone
2018-08-15 15:53:23 -03:00
gdkchan
0ea9a116ff Zero out bits 63:32 of scalar float operations with SSE intrinsics (#273) 2018-08-14 23:54:12 -03:00
ReinUsesLisp
9afa1f6d08 Reset cache on command buffer execution instead of sync calls (#341)
Also resets const buffer cache on CbData calls.
Non-const buffer data might also change while a command buffer is
executing but that's very unlikely.
2018-08-14 22:27:05 -03:00
gdkchan
87ff1eb12e Better support for user accounts (#349)
* Better support for user accounts

* Nits

* Check for invalid ids
2018-08-14 19:02:42 -03:00
emmauss
94ac7d3840 Implement IProfile Get and GetBase (#266)
* implement IProfile Get(Base)

* use default user

* changed userid
2018-08-13 21:13:01 -03:00
gdkchan
ea1685008c Fix FMUL and TEXS shader instructions (#347) 2018-08-13 19:46:36 -03:00
emmauss
2ac564d2b8 Implement AcquireNpadStyleSetUpdate event (#306)
* implement get npad set event

* move npad style set event to hid service

* fix spacing

* change event to field

* dispose event
2018-08-13 18:31:09 -03:00
gdkchan
8bf6a11a3a Add partial support to the TEX.B shader instruction (#342)
* Add partial support to the TEX.B shader instruction, fix for mixed indexed and non-indexed drawing

* Better exception
2018-08-13 18:22:09 -03:00
LDj3SNuD
543ed093ca Add Sadalp_V, Saddlp_V, Uadalp_V, Uaddlp_V instructions; add 8 Tests. (#340)
* Update Instructions.cs

* Update CpuTestSimd.cs

* Update AOpCodeTable.cs

* Update AInstEmitSimdArithmetic.cs
2018-08-13 18:10:02 -03:00
emmauss
7b96bec7ad Merge pull request #344 from greggameplayer/patch-1
fix toggleable variable in config to set the docked mode
2018-08-11 16:33:12 +03:00
Unknown
2d4eb9601f fix DockedMode variable
delete unneeded spaces

fix DockedMode variable

fix DockedMode variable

change PerformanceMode cast to int
align ICommonStateGetter Commands
2018-08-11 15:31:34 +02:00
emmauss
4736a6b940 Merge pull request #304 from emmauss/listdisplays
Implemented IApplicationDisplayService:ListDisplays
2018-08-11 15:32:56 +03:00
emmauss
b683b30d33 fix dock mode style issues 2018-08-11 12:24:55 +00:00
greggameplayer
c9ce01fcc4 Add the ability to set or not docked mode via config file (#227)
* Add a toggleable DockedMode bool
2018-08-11 15:12:28 +03:00
LDj3SNuD
c8b6bf11c7 Add Sqdmulh_S, Sqdmulh_V, Sqrdmulh_S, Sqrdmulh_V instructions; add 6 Tests. Now all saturating methods are on ASoftFallback. (#334)
* Update Instructions.cs

* Update CpuTestSimd.cs

* Update CpuTestSimdReg.cs

* Update AOpCodeTable.cs

* Update AInstEmitSimdArithmetic.cs

* Update AInstEmitSimdHelper.cs

* Update ASoftFallback.cs

* Update CpuTestAlu.cs

* Update CpuTestAluImm.cs

* Update CpuTestAluRs.cs

* Update CpuTestAluRx.cs

* Update CpuTestBfm.cs

* Update CpuTestCcmpImm.cs

* Update CpuTestCcmpReg.cs

* Update CpuTestCsel.cs

* Update CpuTestMov.cs

* Update CpuTestMul.cs

* Update Ryujinx.Tests.csproj

* Update Ryujinx.csproj

* Update Luea.csproj

* Update Ryujinx.ShaderTools.csproj

* Address PR feedback (further tested).

* Address PR feedback.
2018-08-10 14:27:15 -03:00
gdkchan
f1ece03ded Fix load/store exclusive/atomic pairwise instructions (#337) 2018-08-10 01:14:27 -03:00
ReinUsesLisp
80f6db03a9 Low level graphics API prerequisites (#319)
* Add GalPipelineState and IGalPipeline

* Separate UploadVertex call

* Add ConstBuffer cache

* Move Vertex Assembly into GalPipelineState

* Move Uniform binds to GalPipelineState

* Move framebuffer flip into a buffer

* Rebase

* Fix regression

* Move clear values from VertexEndGl to ClearBuffers

* Rename obscure names O->Old S->New
2018-08-10 01:09:40 -03:00
greggameplayer
134b395d20 Add SetScreenShotImageOrientation (#310)
* Add SetScreenShotImageOrientation

* add a stubbed print
2018-08-08 03:00:54 -03:00
gdkchan
fad62608f7 Fix race condition on IdDictionary (#333) 2018-08-07 23:32:24 -03:00
Darabat
f2e753de23 Changing shader decompiler to avoid vec2 and vec3 types, which were causing specific crashes. (#332)
* Changing shader decompiler to avoid vec2 and vec3 types, which were causing specific crashes.

* aligning code

* step back

* Redoing changes

* Redoing changes

* Redoing changes and avoiding concatenations

* redoing changes
2018-08-06 22:26:19 -03:00
gdkchan
327b481502 Fix silly copy/paste error on float variant of the FMINNM instruction 2018-08-05 18:56:30 -03:00
gdkchan
93a24a0ff2 More accurate impl of FMINNM/FMAXNM, add vector variants (#296)
* More accurate impl of FMINNM/FMAXNM, add vector variants

* Optimize for the 0 case when op1 != op2

* Address PR feedback
2018-08-05 02:54:21 -03:00
Thomas Guillemard
768676d629 Implement Shared Fonts (#215)
* Implement Shared Fonts

This fully implements shared fonts.
This commit is provided without fonts.
This commit also add Size to HSharedMem.Positions to be able to add fonts to shared zones when RequestLoad is called.

* Require the user to provide fonts in RyuFS/system

* Use File.Exits instead of relying ona try/catch and change system resource exception format a bit

* Make sure that font sum doesn't exceed 17MB

Also rename font data dictionary for coherence.
2018-08-04 18:38:49 -03:00
LDj3SNuD
b069a4125e Add SQADD, UQADD, SQSUB, UQSUB, SUQADD, USQADD, SQABS, SQNEG (Scalar, Vector) instructions; add 24 Tests. Most saturation instructions now on ASoftFallback. (#314)
* Update AOpCodeTable.cs

* Update AInstEmitSimdHelper.cs

* Update AInstEmitSimdArithmetic.cs

* Update Pseudocode.cs

* Update Instructions.cs

* Update CpuTestSimd.cs

* Update CpuTestSimdReg.cs

* Update AInstEmitSimdHelper.cs

* Update AInstEmitSimdHelper.cs

* Update AInstEmitSimdHelper.cs

* Update AInstEmitSimdHelper.cs

* Update ASoftFallback.cs

* Update AInstEmitSimdHelper.cs

* Update ASoftFallback.cs

* Update AInstEmitSimdHelper.cs

* Update CpuTestSimd.cs

* Update CpuTestSimdReg.cs

* Update ASoftFallback.cs

* Update AInstEmitSimdHelper.cs

* Opt. (retest).
2018-08-04 16:58:54 -03:00
gdkchan
0ab6d0d9ee Fix for integer vertex attributes and iset bf flag (#323) 2018-08-03 13:54:34 -03:00
AboodMadridista
898c873696 Use the more specific NotImplementedException type instead of just Exception (#322) 2018-08-02 21:58:48 -03:00
emmaus
feb0075319 moved metadata to process 2018-08-02 23:33:28 +03:00
emmauss
013ea228e6 Merge pull request #298 from Cyuubi/npdm
Add Npdm parsing into Ryujinx.HLE
2018-08-02 22:59:14 +03:00
ReinUsesLisp
024bd713b7 Sleep OpenAL thread (#313) 2018-08-01 00:48:49 -03:00
greggameplayer
10a4270b49 Implement A2B10G10R10 TextureFormat (#248)
* add A2B10G10R10 TextureFormat

* return correct PixelFormat & PixelType

* return correct texture size

* return correct Bytes Per Pixel
2018-07-29 01:41:02 -03:00
Starlet
ec1e71752e Add 5.0.0 IPCs (#300)
* Implement 5.0.0 IPC

* Align ControlWithContext
2018-07-29 01:40:02 -03:00
ReinUsesLisp
300a2c1f17 Cache changes (#302)
* Skip repeated cache tests between same sync

* Skip some checks for regions where just one resource is resident

* Dehardcode residency page size

* Some cleanup
2018-07-29 01:39:15 -03:00
gdkchan
86a6621ad0 Some fix to IRequest on NIFM, support sending objects to services (#294) 2018-07-29 01:36:29 -03:00
ReinUsesLisp
5802879b61 Window related changes (#308)
* Use integer math for touch screen

* Sleep polling thread

* Rework host input

* Add fullscreen with F11 or Alt+Enter

* Address feedback
2018-07-29 01:35:36 -03:00
ReinUsesLisp
205e894910 Avoid calling buffer binding when shader didn't change (#295) 2018-07-26 13:49:29 -03:00
Arthur Chen
860e816740 update encoding for branch instruction (#305) 2018-07-26 13:46:05 -03:00
emmaus
805cda0985 implemented ListDisplays 2018-07-24 21:38:55 +00:00