Age | Commit message (Collapse) | Author |
|
caps: Add missing service names to caps:su
|
|
psm: Mark as debug instead of warning
|
|
maxwell_3d: Fix depth clamping register
|
|
shader: Implement P2R CC, IADD Rd.CC and IADD.X
|
|
texture_cache: Reintroduce preserve_contents accurately
|
|
Revert: shader_decode: Fix LD, LDG when track constant buffer.
|
|
SetShimLibraryVersion, SaveScreenShotEx1 & SaveScreenShotEx2 were missing
|
|
No point to emulate battery life. However options are broken out if we ever want to add a setting for it
|
|
Dump RomFS command to include Updates
|
|
Don't fail silently for vi, sm, set and ns services
|
|
physical_core: Make use of std::make_unique instead of std::make_shared in ctor
|
|
|
|
This temporary is not needed as we mark Rd.CC + IADD.X as unimplemented.
It caused issues when tracking global buffers.
|
|
shader/memory_util: Deduplicate code
|
|
As we currently match hardware and don't return a successful result, these should be marked as errors instead of warnings and as stubs.
|
|
Consistency for the rest of the error codes in the codebase
|
|
Using deko3d as reference:
https://github.com/devkitPro/deko3d/blob/4e47ba0013552e592a86ab7a2510d1e7dadf236a/source/maxwell/gpu_3d_state.cpp#L42
We were using bits 3 and 4 to determine depth clamping, but these are
the same both enabled and disabled:
state->depthClampEnable ? 0x101A : 0x181D
The same happens on Nvidia's OpenGL driver, where they do something like
this (default capabilities, GL 4.5 compatibility):
(state & DEPTH_CLAMP) != 0 ? 0x201a : 0x281c
There's always a difference between the first bits in this register, but
bit 11 is consistently disabled on both deko3d/NVN and OpenGL. This
commit changes yuzu's behaviour to use bit 11 to determine depth
clamping.
- Fixes depth issues on Super Mario Odyssey's intro.
|
|
vi: Don't let uninitialized data pass as a response for SetBufferCount
|
|
vk_renderpass_cache: Pack renderpass cache key and unify keys
|
|
vk_memory_manager: Remove unified memory model flag
|
|
services: hid: Stub StopSevenSixAxisSensor.
|
|
Optimize GPU Command Lists and Introduce Fast GPU Time Option
|
|
This reverts commit 94b0e2e5dae4e0bd0021ac2d8fe1ff904a93ee69.
preserve_contents proved to be a meaningful optimization. This commit
reintroduces it but properly implemented on OpenGL.
We have to make sure the clear removes all the previous contents of the
image.
It's not currently implemented on Vulkan because we can do smart things
there that's preferred to be introduced in a separate commit.
|
|
Fix "Port citra-emu/citra#4956: "Fixes to game list sorting" #3611"
|
|
service: Update function tables
|
|
{gl,vk}_rasterizer: Add lazy default buffer maker and use it for empty buffers
|
|
Deduplicate code shared between vk_pipeline_cache and gl_shader_cache as
well as shader decoder code.
While we are at it, fix a bug in gl_shader_cache where compute shaders
had an start offset of a stage shader.
|
|
configuration: Add Restore Default and Clear options to hotkeys
|
|
configure_input_player: Use slider to edit modifier scale
|
|
IADD.X Rd.CC requires some extra logic that is not currently
implemented. Abort when this is hit.
|
|
Signed integer addition overflow might be undefined behavior. It's free
to change operations to UAdd and use unsigned integers to avoid
potential bugs.
|
|
IADD.X takes the carry flag and adds it to the result. This is generally
used to emulate 64-bit operations with 32-bit registers.
|
|
|
|
P2R CC takes the state of condition codes and puts them into a register.
We already have this implemented for PR (predicates). This commit
implements CC over that.
|
|
Avoid atomic counters used by shared pointers.
|
|
- Used by The Legend of Zelda: Breath of the Wild v1.6.0
|
|
|
|
vulkan/wrapper: Sort physical devices
|
|
decode/arithmetic_half: Fix HADD2 and HMUL2 absolute and negation bits
|
|
svc: Re-add MapProcessCodeMemory/UnmapProcessCodeMemory
|
|
Sometimes for unknown reasons NVN games can bind a render target format
of 0. This may be a yuzu bug.
With the commits before this the formats were specified without being
"packed", assuming all formats and texceptions will be written like in
the color_attachments vector.
To address this issue, iterate all render targets and pack them as they
are valid. This way they will match color_attachments.
- Fixes validation errors and graphical issues on Breath of the Wild.
|
|
|
|
shader/arithmetic_integer: Fix LEA_IMM encoding
|
|
|
|
|
|
|
|
Currently SetBufferCount doesn't write to the out buffer which then contains uninitialized data. This leads to non-zero data which leads to responding with different error codes
|
|
frontend/filesystem: Add a trailing separator to the string path
|
|
We can also allow unicorn to be constructed in 32-bit mode or 64-bit
mode to satisfy the need for both interpreter instances.
Allows this code to compile successfully of non x86-64 architectures.
|
|
page_table: Remove unused captures
|