| Age | Commit message (Collapse) | Author |
|
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.
|
|
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.
|
|
"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.
|
|
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.
|
|
By adding the missing layer offset in ASTC compression.
|
|
Unintentionally introduced in 552d5071fa171165e4054392d8bb6bf2ecc924e2
|
|
gl_shader_disk_cache: Improve precompiled shader cache generation speed and size
|
|
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.
|
|
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.
|
|
Adds the missing flags to the enum and documents them.
|
|
shader_ir: Miscellaneous fixes
|
|
kernel/vm_manager: Remove usages of global system accessors
|
|
video_core: Silent -Wswitch warnings
|
|
Corrections on Half Float operations: HADD2 HMUL2 and HFMA2
|
|
The state of these service calls are still the same in version 8.0.0.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Since the MiiManager was designed around the IPC interface, this is quite easy. Only functions that were clearly defined were implemented.
|
|
Provides serialization/deserialization to the database in system save files, accessors for database state and proper handling of both major Mii formats (MiiInfo and MiiStoreData)
|
|
Since the Mii database uses UUIDs very similar to the Accounts database, it makes no sense to not share code between them.
|
|
kernel/svc: Clean up wait synchronization related functionality
|
|
Allow picking a Compatibility Profile for OpenGL.
|
|
applets: Add AppletManager and implement PhotoViewer and Error applets
|
|
CMakeLists: Ensure we specify Unicode as the codepage on Windows
|
|
|
|
|
|
cache file
|
|
|
|
|
|
gl_state: Fix samplers memory corruption
|
|
Fix flipping on some games by applying Y direction register
|
|
|
|
|
|
|
|
gl_shader_decompiler: Disable variable AOFFI on unsupported devices
|
|
service/audctl: Implement GetTargetVolumeMin() and GetTargetVolumeMax()
|
|
|
|
|
|
|
|
Support compressed formats on linear textures.
|
|
GPU Manager: Implement ReadBlockUnsafe and WriteBlockUnsafe
|
|
Implement Kepler Memory on both Linear and BlockLinear.
|
|
This PR should heavily reduce memory usage since temporal buffers are no
longer stored per Surface but instead managed by the Rasterizer Cache.
|
|
|