71aa9d0877
shader_ir/memory: Implement physical input attributes
2019-05-02 21:46:25 -03:00
b7d412c99b
gl_shader_decompiler: Abstract generic attribute operations
2019-05-02 21:46:25 -03:00
bd81a03d9d
gl_shader_decompiler: Declare all possible varyings on physical attribute usage
2019-05-02 21:46:25 -03:00
06b363c9b5
shader: Remove unused AbufNode Ipa mode
2019-05-02 21:46:25 -03:00
002ecbea19
shader_ir/memory: Emit AL2P IR
2019-05-02 21:46:25 -03:00
7632a7d6d2
shader_bytecode: Add AL2P decoding
2019-05-02 21:46:25 -03:00
e64c41efe8
Refactors and name corrections.
2019-05-01 15:31:39 -04:00
2bcb8a20b4
service/audren_u: Handle variadic command buffers in GetWorkBufferSize()
...
Also introduced in REV5 was a variable-size audio command buffer. This
also affects how the size of the work buffer should be determined, so we
can add handling for this as well.
Thankfully, no other alterations were made to how the work buffer size
is calculated in 7.0.0-8.0.0. There were indeed changes made to to how
some of the actual audio commands are generated though (particularly in
REV7), however they don't apply here.
2019-04-30 23:52:28 -04:00
03746be097
service/audren_u: Handle version 2 of performance frame info in GetWorkBufferSize()
...
Introduced in REV5. This is trivial to add support for, now that
everything isn't a mess of random magic constant values.
All this is, is a change in data type sizes as far as this function
cares.
2019-04-30 23:52:28 -04:00
de93507a5a
service/audren_u: Clean up work buffer calculations
...
"Unmagics" quite a few magic constants within this code, making it much
easier to understand. Particularly given this factors out specific
sections into their own self-contained lambda functions.
2019-04-30 23:51:59 -04:00
4aa081b4e7
gl_shader_disk_cache: Skip stored shader variants instead of asserting
...
Instead of asserting on already stored shader variants, silently skip them.
This shouldn't be happening but when a shader is invalidated and it is
not stored in the shader cache, this assert would hit and save that
shader anyways when the asserts are disabled.
2019-05-01 00:36:11 -03:00
95261639fb
Fix Layered ASTC Textures
...
By adding the missing layer offset in ASTC compression.
2019-04-30 23:02:31 -04:00
75a8b304d4
loader/nso: Remove left-in debug pragma
...
Unintentionally introduced in 552d5071fa
2019-04-30 22:55:53 -04:00
fb420358a9
Merge pull request #2406 from FearlessTobi/port-3839
...
Port citra-emu/citra#3839 : "travis: use prebuilt image"
2019-04-30 19:25:53 -04:00
79e54abe19
Merge pull request #2100 from FreddyFunk/disk-cache-precompiled-file
...
gl_shader_disk_cache: Improve precompiled shader cache generation speed and size
2019-04-30 19:24:01 -04:00
19632d2421
kernel/svc: Make svcCreateThread/svcStartThread/svcSleepThread/svcExitThread calls show up in the debug log
...
These are actually quite important indicators of thread lifetimes, so
they should be going into the debug log, rather than being treated as
misc info and delegated to the trace log.
2019-04-29 01:38:27 -04:00
d672c6e759
kernel/svc: Reorganize svcSetThreadCoreMask()
...
Makes the code much nicer to follow in terms of behavior and control
flow. It also fixes a few bugs in the implementation.
Notably, the thread's owner process shouldn't be accessed in order to
retrieve the core mask or ideal core. This should be done through the
current running process. The only reason this bug wasn't encountered yet
is because we currently only support running one process, and thus every
owner process will be the current process.
We also weren't checking against the process' CPU core mask to see if an
allowed core is specified or not.
With this out of the way, it'll be less noisy to implement proper
handling of the affinity flags internally within the kernel thread
instances.
2019-04-29 01:38:27 -04:00
69a2003a8e
kernel/thread: Update thread processor ID flags
...
Adds the missing flags to the enum and documents them.
2019-04-29 01:37:51 -04:00
91e239d66f
Merge pull request #2435 from ReinUsesLisp/misc-vc
...
shader_ir: Miscellaneous fixes
2019-04-28 22:29:43 -04:00
2be32eb3d2
Merge pull request #2412 from lioncash/system
...
kernel/vm_manager: Remove usages of global system accessors
2019-04-28 22:27:14 -04:00
c52233ec8b
Merge pull request #2322 from ReinUsesLisp/wswitch
...
video_core: Silent -Wswitch warnings
2019-04-28 22:24:58 -04:00
9a3737120d
Merge pull request #2423 from FernandoS27/half-correct
...
Corrections on Half Float operations: HADD2 HMUL2 and HFMA2
2019-04-28 22:24:22 -04:00
565fce71b1
service/audctl: Update documentation comments to be relative to 8.0.0
...
The state of these service calls are still the same in version 8.0.0.
2019-04-27 23:17:58 -04:00
2156e52014
shader_ir: Move Sampler index entry in operand< to sort declarations
2019-04-26 01:13:05 -03:00
b77b4b76bb
shader_ir: Add missing entry to Sampler operand< comparison
2019-04-26 01:11:24 -03:00
0b91087a1e
shader_ir/texture: Fix sampler const buffer key shift
2019-04-26 01:09:29 -03:00
78574e7a47
Merge pull request #2416 from lioncash/wait
...
kernel/svc: Clean up wait synchronization related functionality
2019-04-24 22:56:08 -04:00
94db649205
Merge pull request #2424 from FernandoS27/compat
...
Allow picking a Compatibility Profile for OpenGL.
2019-04-24 22:54:27 -04:00
ee2252b6e1
Merge pull request #2426 from FearlessTobi/port-4748
...
Port citra-emu/citra#4748 : "Launch directly in Mac without terminal"
2019-04-24 22:53:48 -04:00
53f746fa9a
Merge pull request #2228 from DarkLordZach/applet-manager-p1
...
applets: Add AppletManager and implement PhotoViewer and Error applets
2019-04-24 22:53:21 -04:00
0592869076
Merge pull request #2404 from lioncash/unicode
...
CMakeLists: Ensure we specify Unicode as the codepage on Windows
2019-04-24 22:51:17 -04:00
1a3ff252a4
Re added new lines at the end of files
2019-04-23 23:19:28 +02:00
3091b40691
gl_shader_disk_cache: Compress precompiled shader cache file with Zstandard
2019-04-23 22:24:31 +02:00
9db2c734c9
gl_shader_disk_cache: Use VectorVfsFile for the virtual precompiled shader cache file
2019-04-23 22:24:23 +02:00
3fe542cf60
gl_shader_disk_cache: Remove per shader compression
2019-04-23 21:40:01 +02:00
b3118ee316
Fixes and Corrections to DMA Engine
2019-04-23 15:28:18 -04:00
8df9449bb8
Merge pull request #2422 from ReinUsesLisp/fixup-samplers
...
gl_state: Fix samplers memory corruption
2019-04-23 18:30:35 +03:00
b2fbcaae30
Merge pull request #2425 from FernandoS27/y-direction
...
Fix flipping on some games by applying Y direction register
2019-04-23 18:29:29 +03:00
f1e5314f1a
Add Swizzle Parameters to the DMA engine
2019-04-23 11:21:00 -04:00
e140e2ebc6
Add Documentation Headers to all the GPU Engines
2019-04-23 08:44:52 -04:00
021d28c9b8
Corrections and styling
2019-04-23 08:02:24 -04:00
4fad91ca45
Merge pull request #2383 from ReinUsesLisp/aoffi-test
...
gl_shader_decompiler: Disable variable AOFFI on unsupported devices
2019-04-22 22:14:02 -04:00
9cab042674
Merge pull request #2420 from lioncash/audctl
...
service/audctl: Implement GetTargetVolumeMin() and GetTargetVolumeMax()
2019-04-22 22:12:48 -04:00
701ce1c9d0
Implement Maxwell3D Data Upload
2019-04-22 19:27:36 -04:00
e4ff140b99
Introduce skeleton of the GPU Compute Engine.
2019-04-22 19:05:43 -04:00
a91d3fc639
Revamp Kepler Memory to use a subegine to manage uploads
2019-04-22 18:50:56 -04:00
b5889cbd6f
Merge pull request #2403 from FernandoS27/compressed-linear
...
Support compressed formats on linear textures.
2019-04-22 17:09:42 -04:00
68b707711a
Merge pull request #2411 from FernandoS27/unsafe-gpu
...
GPU Manager: Implement ReadBlockUnsafe and WriteBlockUnsafe
2019-04-22 17:09:00 -04:00
01100f8afd
Merge pull request #2400 from FernandoS27/corret-kepler-mem
...
Implement Kepler Memory on both Linear and BlockLinear.
2019-04-22 16:47:05 -04:00
4c36b78567
Rasterizer Cache: Use a temporal storage for Surfaces loading/flushing.
...
This PR should heavily reduce memory usage since temporal buffers are no
longer stored per Surface but instead managed by the Rasterizer Cache.
2019-04-21 11:42:07 -04:00