Commit graph

2698 commits

Author SHA1 Message Date
gdkchan
e6eeb6f09f
Add support for Vertex Program A and other small shader improvements (#192)
* Add WIP support for Vertex Program A, add the FADD_I32 shader instruction, small fix on FFMA_I encoding, nits

* Add separate subroutines for program A/B, and copy attributes to a temp

* Move finalization code to main

* Add new line after flip uniform on the shader

* Handle possible case where VPB uses an output attribute written by VPA but not available on the vbo

* Address PR feedback
2018-06-27 23:55:08 -03:00
gdkchan
900a84ae0a Fix vertex buffer size on the gpu when the draw vertex count is less than the buffer size, added a few more registers (currently not implemented) 2018-06-27 01:32:28 -03:00
ReinUsesLisp
af5f059d4e Fix GL.CreateBuffers -> GL.GenBuffers (#189) 2018-06-26 02:30:46 -03:00
ReinUsesLisp
09dfefed1f Implementation of UBOs instead of uniform constant arrays (#186)
* Sort uniform binding to avoid possible failures in drivers fewer bindings

* Throw exception for Cbuf overflow

* Search for free bindings instead of using locked ones

* EnsureAllocated when binding buffers

* Fix uniform bindings

* Remove spaces

* Use 64 KiB UBOs when available

* Remove double colon

* Use IdentationStr and avoid division in Cbuf offset

* Add spaces
2018-06-26 02:10:54 -03:00
gdkchan
b8be89ab2d Relax GetThreadContext3 by allowing it to get the context of a running thread 2018-06-26 01:26:21 -03:00
gdkchan
2f29894d9f Set PC value on SvcCall aswell 2018-06-26 01:14:18 -03:00
gdkchan
65105c2a3b Implement SvcGetThreadContext3 2018-06-26 01:10:15 -03:00
LDj3SNuD
c818093528 Add Sqxtun_S, Sqxtun_V with 3 tests. (#188)
* Update AInstEmitSimdArithmetic.cs

* Update Instructions.cs

* Update CpuTestSimd.cs
2018-06-25 23:36:20 -03:00
LDj3SNuD
8f6387128a Add Sse Opt. for Cmeq_V_2D, Cmgt_V_2D (Reg). Add Sse Opt. for Crc32cb, Crc32ch, Crc32cw, Crc32cx. Add 10 simple tests for Fcmgt, Fcmge, Fcmeq, Fcmle, Fcmlt (S, V) (Reg, Zero). Add 2 Cnt_V tests. (#183)
* Add files via upload

* Add files via upload

* Add files via upload

* CPE

* Add EmitSse42Crc32()

* Update CpuTestSimdCmp.cs

* Update Pseudocode.cs

* Update Instructions.cs

* Update CpuTestSimd.cs

* Update Instructions.cs
2018-06-25 22:32:29 -03:00
gdkchan
37a6e84fd4 Add REV16/32 (vector) instructions and fix REV64 2018-06-25 18:40:55 -03:00
gdkchan
8f4cd35ade Fix GetLastOpenedUser stub returning an invalid account id value 2018-06-25 17:12:59 -03:00
Rygnus
0bec9d8439 Add opcodes SQXTUN_S and SQXTUN_V (#184)
* Add SQXTUN_S and SQXTUN_V

Part 1/2 of commit

* Add SQXTUN_S and SQXTUN_V (2/2)

Part 2/2 of commit
2018-06-25 14:23:46 -03:00
gdkchan
7c7ee8f8ca Aways write voice state as finished playing while proper audren support is not in place 2018-06-25 02:04:19 -03:00
gdkchan
e7559f128f
Small OpenGL Renderer refactoring (#177)
* Call OpenGL functions directly, remove the pfifo thread, some refactoring

* Fix PerformanceStatistics calculating the wrong host fps, remove wait event on PFIFO as this wasn't exactly was causing the freezes (may replace with an exception later)

* Organized the Gpu folder a bit more, renamed a few things, address PR feedback

* Make PerformanceStatistics thread safe

* Remove unused constant

* Use unlimited update rate for better pref
2018-06-23 21:39:25 -03:00
gdkchan
69697957e6 Workaround for recent audren regression 2018-06-23 03:17:07 -03:00
gdkchan
c26ddd6259
Fix 3 graphics related issues (#180)
* Fix 3 graphics related bugs

* OGLShader shouldn't be public (yet)
2018-06-23 02:00:44 -03:00
Starlet
5182361f4b Better audren implementation (#179) 2018-06-23 02:00:14 -03:00
gdkchan
3e6afeb513
Fix some thread sync issues (#172)
* Fix some thread sync issues

* Remove some debug stuff

* Ensure that writes to the mutex address clears the exclusive monitor
2018-06-21 23:05:42 -03:00
ReinUsesLisp
a4020bb398 Port from OpenTK.NETCore to OpenTK.NetStandard (#176)
* Minor code changes

* Forgot to remove a method
2018-06-21 18:10:19 -03:00
riperiperi
53ebbcfbd9 Rework signed multiplication. Fixed an edge case and passes all tests. (#174) 2018-06-20 10:45:20 -03:00
LDj3SNuD
3bdd109f45 Add Cmeq_S, Cmge_S, Cmgt_S, Cmhi_S, Cmhs_S, Cmle_S, Cmlt_S (Reg, Zero) & Cmtst_S compare instructions. Add 22 compare tests (Scalar, Vector). Add Eor_V, Not_V tests. (#171)
* Add files via upload

* Add files via upload

* Delete CpuTestScalar.cs

* Update CpuTestSimdArithmetic.cs
2018-06-18 14:55:26 -03:00
Jules Blok
35e695552e NvGpuEngine3d: Fix uploading vertex arrays without index buffers. (#173) 2018-06-18 10:59:03 -03:00
gdkchan
46f18af6be Do not read or write macros to main memory, use a separate memory instead (as this apparently what the real thing does) 2018-06-18 01:32:11 -03:00
gdkchan
b747b23607 Add the FADDP (scalar) instruction 2018-06-18 00:41:28 -03:00
Ac_K
4e430760b4 Implement NPDM files parser (#169)
* Implement NPDM files parser

(Currently not used in Ryujinx)

* Add credits

* Add Swap32

* Update Npdm.cs

* Update ACI0.cs

* Update ACID.cs

* Update Npdm.cs

* Update EndianSwap.cs

* Update ACI0.cs

* Update ACID.cs

* Update KernelAccessControl.cs

* Update NpdmInfo.cs

* Update ServiceAccessControl.cs

* Update NpdmInfo.cs
2018-06-17 23:28:11 -03:00
Ac_K
3c4dafff3f
Merge pull request #152 from greggameplayer/patch-5
Implement ListAudioOutsAuto & OpenAudioOutAuto
2018-06-17 04:16:16 +00:00
greggameplayer
5a3449f5d9
delete mixed tabs & spaces & use void for methods 2018-06-15 17:54:18 +02:00
greggameplayer
e40db09bed
add a new Method for OpenAudioOut & OpenAudioOutAuto 2018-06-15 17:41:07 +02:00
greggameplayer
4397049c6a Implement ListAudioOutsAuto & OpenAudioOutAuto 2018-06-15 17:24:02 +02:00
Ac_K
e581abb2f5
Merge pull request #160 from greggameplayer/patch-7
Implement GetAvailableLanguageCodes2 with a method
2018-06-13 15:40:37 +00:00
greggameplayer
644a328b88
change places of the args of GetAvailableLanguagesCodesMethod 2018-06-13 17:38:19 +02:00
riperiperi
afa5bf81e3 Faster soft implementation of smulh and umulh (#134)
* Faster soft implementation of smulh and umulh

* smulh: Fixed mul with 0 acting like it had a negative result.

* Use compliment for negative smulh result.
2018-06-13 10:55:45 -03:00
gdkchan
36827c2355
Partial GPU DMA support (#158) 2018-06-13 10:55:01 -03:00
greggameplayer
940de631ab
correct whitespaces 2018-06-13 15:12:03 +02:00
greggameplayer
d70ed99fb1
Implement GetAvailableLanguageCodes2 with a method 2018-06-13 15:08:11 +02:00
Ac_K
f1e866e248
Merge pull request #157 from Cyuubi/pctl-initialize-and-without-initialize
[PCTL] Add CreateServiceWithoutInitialize and Initialize
2018-06-13 00:53:54 +00:00
Starlet
c646a00918 Compliant with review. 2018-06-12 20:51:59 -04:00
Ac_K
3600de6080
Merge pull request #148 from Lordmau5/ICommonStateGetter
Implement GetDefaultDisplayResolution/+ChangeEvent on ICommonStateGetter
2018-06-12 23:30:45 +00:00
Lordmau5
5b9ce52108 Remove comment 2018-06-13 01:29:39 +02:00
Lordmau5
e6f6c6ad57 Merge branch 'master' into ICommonStateGetter 2018-06-13 01:28:49 +02:00
Starlet
8442a5917f [PCTL] Add CreateServiceWithoutInitialize and Initialize 2018-06-12 14:28:45 -04:00
Lordmau5
98e6a34608 Implement R16 texture format (#147) 2018-06-12 09:29:44 -03:00
Lordmau5
46dc89f8dd Implement Fabs_V (#146) 2018-06-12 09:29:16 -03:00
gdkchan
9176180abb Minor shader fixes 2018-06-12 09:26:49 -03:00
Ac_K
133082cb6d
Merge pull request #153 from DatBoiJay3/hid-smo
Fix input in SMO
2018-06-12 02:54:41 +00:00
DatBoiJay3
274c996ff1
Neatness counts 2018-06-11 19:53:44 -07:00
DatBoiJay3
39b8e6bc37
Fix input in SMO
Unsure if this will break other games though.
Please test. :)
2018-06-11 19:29:12 -07:00
Lordmau5
c636c74dd2 Merge branch 'master' into ICommonStateGetter 2018-06-11 06:03:37 +02:00
gdkchan
76f3b1b3a4 Rename Ryujinx.Core to Ryujinx.HLE and add a separate project for a future LLE implementation 2018-06-10 21:46:42 -03:00
Lordmau5
851f2ded9a Fix bracket alignment 2018-06-11 02:10:09 +02:00