Yuri Kunde Schlesner
24ca113f3c
OpenGL: Improve accuracy of quaternion interpolation
...
Current order of operations (rotate then normalize) seems to produce a
lot more distortion than normalizing and then rotating. This makes Citra
results match pretty closesly with hardware, and indicates that hardware
may also be using lerp instead of slerp to interpolate the quaternions.
2017-05-27 00:13:41 -07:00
wwylele
5e5816c800
gl_shader: refactor texture sampler into its own function
2017-05-27 01:56:22 +03:00
bunnei
030121014f
Merge pull request #2716 from yuriks/decentralized-result
...
Decentralize ResultCode
2017-05-26 11:59:57 -04:00
Yuri Kunde Schlesner
85c524bc45
Merge pull request #2697 from wwylele/proctex
...
Implemented Procedural Texture (Texture Unit 3)
2017-05-24 21:37:42 -07:00
Yuri Kunde Schlesner
782c6b1923
FS: Remove unused result definition
2017-05-24 21:06:00 -07:00
Yuri Kunde Schlesner
0ba04b2166
Common: Clean up meta-template logic in BitField
2017-05-24 21:06:00 -07:00
Yuri Kunde Schlesner
467545ed48
Kernel: Centralize error definitions in errors.h
2017-05-24 21:06:00 -07:00
Yuri Kunde Schlesner
6210a1aaf3
GSP_GPU: Move error codes from result.h to local file
2017-05-24 21:06:00 -07:00
Yuri Kunde Schlesner
2d147a1c0d
FileSys: Move all result description to errors.h
2017-05-24 21:06:00 -07:00
Yuri Kunde Schlesner
f2e65b5cbc
result: Make error description a generic integer
...
It is now known that result code description vary depending on the
module, and so they're best defined on a per-module basis. To support
this, allow passing in an arbitrary integer instead of limiting to the
ones in the ErrorDescription enum. These will be gradually migrated to
their individual users, but a few will be kept as "common" codes shared
by all modules.
2017-05-24 21:05:59 -07:00
Yuri Kunde Schlesner
a786199c4b
Make BitField and ResultCode constexpr-initializable
2017-05-24 21:05:59 -07:00
bunnei
ff21dcfadf
Merge pull request #2683 from bunnei/telemetry-framework
...
Telemetry framework Part 1
2017-05-24 19:33:54 -04:00
bunnei
68100e88e0
telemetry: Log a few simple data fields throughout core.
2017-05-24 19:16:23 -04:00
bunnei
e65f4cc882
core: Keep track of telemetry for the current emulation session.
2017-05-24 19:16:22 -04:00
bunnei
f9a850bb59
common: Add a generic interface for logging telemetry fields.
2017-05-24 19:16:21 -04:00
wwylele
3b34518bcf
cam: move u32->u8 trancation to IPCHelper
2017-05-24 12:50:19 +03:00
wwylele
e82ac2e80f
cam: use IPCHelper
2017-05-24 12:45:36 +03:00
Sebastian Valle
1483d53541
Merge pull request #2692 from Subv/vfp_ftz
...
Dyncom/VFP: Convert denormal outputs into 0 when the FTZ flag is enabled.
2017-05-22 12:16:53 -05:00
Yuri Kunde Schlesner
464dc927af
Merge pull request #2406 from Subv/session_disconnect
...
Kernel: Properly update port counters on session disconnection.
2017-05-21 17:18:16 -07:00
Subv
c67cd54049
fixup! Dyncom/VFP: Convert denormal outputs into 0 when the FTZ flag is enabled.
2017-05-21 18:56:09 -05:00
Subv
8e4b05c22a
Kernel/Sessions: Remove the ClientSession::Create function.
...
It is not meant to be used by anything other than CreateSessionPair.
2017-05-21 18:52:42 -05:00
Merry
aee6dcf1f7
Merge pull request #2694 from Subv/vfp_vsub_ftz
...
Dyncom/VFP: Perform flush-to-zero on the second operand of vsub before sending it to vadd.
2017-05-22 00:50:52 +01:00
Yuri Kunde Schlesner
5958a42fad
Merge pull request #2719 from lioncash/catch
...
externals: Update catch to 1.9.4
2017-05-21 16:45:14 -07:00
Lioncash
d30a7765d7
externals: Update catch to 1.9.4
2017-05-21 19:29:21 -04:00
James Rowe
f7c27f3ce5
Merge pull request #2718 from citra-emu/appveyor-vs2017
...
Upgrade AppVeyor to Visual Studio 2017
2017-05-21 17:18:58 -06:00
Yuri Kunde Schlesner
a45079a2d8
Remove "Xamarin logspam" workaround
...
The file does not seem to exist anymore in the VS 2017 environment.
2017-05-21 15:59:11 -07:00
Yuri Kunde Schlesner
4323f08e51
Upgrade AppVeyor to Visual Studio 2017
...
More C++14/17 goodness!
2017-05-21 15:56:25 -07:00
Yuri Kunde Schlesner
f7404cb6c4
Merge pull request #2713 from wwylele/where-is-my-tc0_w
...
swrasterizer: add missing tc0_w attribute processing
2017-05-21 00:19:46 -07:00
wwylele
e965922607
swrasterizer: add missing tc0_w and fragment lighting attribute processing
2017-05-21 09:09:15 +03:00
wwylele
19583dfd61
gl_rasterizer: implement procedural texture
2017-05-20 13:50:50 +03:00
wwylele
b010ff8174
pica/swrasterizer: implement procedural texture
2017-05-20 13:50:50 +03:00
bunnei
fa45d8a35e
Merge pull request #2661 from Subv/uds5
...
Services/UDS: Generate 802.11 beacon frames when a network is open.
2017-05-19 11:04:34 -04:00
bunnei
ec8e58a9fa
Merge pull request #2710 from emmauss/ptm_ipc
...
use IPCHelper for PTM services
2017-05-19 11:03:55 -04:00
emmaus
603f9246e1
use IPCHelper for PTM services
2017-05-19 08:44:58 +00:00
Yuri Kunde Schlesner
95a08e629b
Merge pull request #2709 from wwylele/pica-masked-value
...
pica: use correct register value for shader bool_uniforms
2017-05-17 20:09:46 -07:00
wwylele
c033f16977
pica: use correct register value for shader bool_uniforms
...
variable value is not masked. the masked and combined register value should be used instead
2017-05-17 22:14:09 +03:00
Yuri Kunde Schlesner
27a2664711
Merge pull request #2703 from wwylele/pica-reg-revise
...
pica: correct bit field length for some registers
2017-05-16 10:00:37 -07:00
wwylele
2a89d391c9
pica: correct bit field length for some registers
2017-05-16 19:24:06 +03:00
Subv
56031253c4
Services/UDS: Use the new IPC helper functions.
2017-05-15 13:05:17 -05:00
Subv
2472e71eb0
Services/UDS: Implement RecvBeaconBroadcastData.
...
This allows the applications to retrieve 802.11 beacon frames from nearby UDS networks.
Note that the networks are still not announced anywhere.
2017-05-15 13:05:16 -05:00
Subv
b722ca78a2
Services/UDS: Generate the UDS beacons when the beacon callback fires.
2017-05-15 13:05:15 -05:00
Subv
f98eb7d315
Kernel: Remove a now unused enum and variable regarding a session's status.
2017-05-15 11:22:16 -05:00
Subv
9c496013b3
Kernel: Use a Session object to keep track of the status of a Client/Server session pair.
...
Reduce the associated port's connection count when a ServerSession is destroyed.
2017-05-15 11:22:15 -05:00
Yuri Kunde Schlesner
d704ab4fea
Merge pull request #2687 from yuriks/address-mappings
...
Kernel: Map special regions according to ExHeader
2017-05-14 13:52:40 -07:00
Subv
8533b511e8
Dyncom/VFP: Perform flush-to-zero on the second operand of vsub before sending it to vadd.
...
Previously we were letting vadd flush the value to positive 0, but there are cases where this behavior is wrong, for example,
vsub: -0 - +0 = -0
vadd: -0 + +0 = +0
Now we'll flush the value to +0 inside vsub, and then negate it.
2017-05-13 18:03:41 -05:00
Weiyi Wang
e8a577eb03
Merge pull request #2695 from JayFoxRox/gs-regs
...
Prepare Pica registers for Geometry Shaders
2017-05-12 18:02:45 +03:00
Jannik Vogel
f3efa5e031
Pica: Write GS registers
...
This adds the handlers for the geometry shader register writes which will call the functions from the previous commit to update registers for the GS.
2017-05-12 16:22:37 +02:00
Jannik Vogel
52c66441ab
Pica: Write shader registers in functions
...
The commit after this one adds GS register writes, so this moves the VS handlers into functions so they can be re-used and extended more easily.
2017-05-12 16:22:37 +02:00
Jannik Vogel
b9cc8596a2
Pica: Set program code / swizzle data limit to 4096
...
One of the later commits will enable writing to GS regs.
It turns out that on startup, most games will write 4096 GS program words.
The current limit of 1024 would hence result in 3072 (4096 - 1024) error messages:
```
HW.GPU <Error> video_core/shader/shader.cpp:WriteProgramCode:229: Invalid GS program offset 1024
```
New constants have been introduced to represent these limits.
The swizzle data size has also been raised. This matches the given field sizes of [GPUREG_SH_OPDESCS_INDEX](https://3dbrew.org/wiki/GPU/Internal_Registers#GPUREG_SH_OPDESCS_INDEX ) and [GPUREG_SH_CODETRANSFER_INDEX](https://www.3dbrew.org/wiki/GPU/Internal_Registers#GPUREG_SH_CODETRANSFER_INDEX ) (12 bit = [0; 4095]).
2017-05-11 15:01:27 +02:00
Yuri Kunde Schlesner
e69c563ca2
Merge pull request #2669 from jroweboy/async_file_watcher
...
Frontend: Prevent FileSystemWatcher from blocking UI thread
2017-05-10 18:44:06 -07:00