Commit Graph

2410 Commits (63c22743249eeb980dd9c58ff0610d5cd117eed9)

Author SHA1 Message Date
aroulin 84959be150 Shader JIT: Fix SGE/SGEI NaN behavior
SGE was incorrectly emulated w.r.t. NaN behavior as the CMPSS SSE
instruction was used with NLT
11 years ago
bunnei e77dc4e9d2 Merge pull request #1059 from Subv/vertex_offset
GPU: Implemented register 0x22A PICA_REG_DRAW_VERTEX_OFFSET
11 years ago
Subv 12a11472f1 GPU: Implemented register 0x22A.
This is the equivalent of the "first" parameter in glDrawArrays, it tells the GPU the vertex index at which to start rendering.

Register 0x22A doesn't affect indexed rendering.
11 years ago
bunnei 5906d8b01c Merge pull request #1085 from Subv/fs_stat
Services/FS: Correctly tell the guest app whether a file was correctly opened or not
11 years ago
bunnei 58e9f78844 Merge pull request #1049 from Subv/stencil
Rasterizer: Corrected the stencil implementation.
11 years ago
Subv ce6a65cec9 Services/FS: Correctly tell the guest app whether a file was correctly opened or not.
Closes #1067
11 years ago
Yuri Kunde Schlesner 0ee3e2c25e Kernel: Fix wrong linear heap base on titles using newer kernels
Typo which sneaked in through review on #1025
11 years ago
bunnei 2978b5fbc8 Merge pull request #1075 from yuriks/ControlMem-fixes
Fix heap-management regressions
11 years ago
Yuri Kunde Schlesner c5a4025b65 Merge pull request #1065 from yuriks/shader-fp
Shader FP compliance fixes
11 years ago
bunnei f3cef178e3 gl_rasterizer_cache: Detect and ignore unnecessary texture flushes. 11 years ago
aroulin f52d8c1a9b Shader JIT: Fix float to integer rounding in MOVA
MOVA converts new address register values from floats to integers using truncation
11 years ago
Yuri Kunde Schlesner 12390eb155 Kernel: Fix assertion failure when ControlMemory is called with size=0 11 years ago
Yuri Kunde Schlesner 687d973980 Core: Improve APT Shared Font hack
Should fix invalid read loops in some games
11 years ago
bunnei 32e279c0ca Merge pull request #1074 from lioncash/bool
dyncom: Minor changes to CondPassed
11 years ago
archshift dd0e1061ef Shader JIT: ifdef out reference to ifdef'd out shader_map
shader_map was only defined on x86 architectures, but was cleared on shutdown
with no ifdef protection. Ifdef this out so non-x86 architectures can be built.
11 years ago
Lioncash dc1b024b80 dyncom: Simplify some comparisons in CondPassed 11 years ago
Lioncash 01dd833ffa dyncom: Change return type of CondPassed to bool 11 years ago
Lioncash e7ebb9d36c citra-qt: Add a missing header guard to util.h 11 years ago
Yuri Kunde Schlesner 0fcabd2b11 Integrate the MicroProfile profiling library
This brings goodies such as a configurable user interface and
multi-threaded timeline view.
11 years ago
Yuri Kunde Schlesner c7745408f7 citra-qt: Add helper function to get a monospace QFont 11 years ago
bunnei afd45d1d7f Merge pull request #1063 from Subv/hw_renderer_debug_fb
HWRenderer: Only reload the framebuffer from gpu memory if the hw renderer is in use during a breakpoint
11 years ago
Subv 583d777b1a HWRenderer: Added a workaround for the Intel Windows driver bug that causes glTexSubImage2D to not change the stencil buffer.
Reported here https://communities.intel.com/message/324464
11 years ago
Yuri Kunde Schlesner eff10959de fixup! Shaders: Fix multiplications between 0.0 and inf 11 years ago
Yuri Kunde Schlesner d8ef20c856 Shader JIT: Tiny micro-optimization in DPH 11 years ago
Yuri Kunde Schlesner 630a850d4d Shaders: Fix multiplications between 0.0 and inf
The PICA200 semantics for multiplication are so that when multiplying
inf by exactly 0.0, the result is 0.0, instead of NaN, as defined by
IEEE. This is relied upon by games.

Fixes #1024 (missing OoT interface items)
11 years ago
Yuri Kunde Schlesner 082b74fa24 Shaders: Explicitly conform to PICA semantics in MAX/MIN 11 years ago
Yuri Kunde Schlesner 76247170df Shader JIT: Add name to second scratch register (XMM4) 11 years ago
Lioncash fa5076eb9b shader_jit: Replace two MDisp usages with MatR 11 years ago
Yuri Kunde Schlesner 455147ee95 Shader JIT: Fix CMP NaN behavior to match hardware 11 years ago
bunnei 83c214f6d8 Merge pull request #1062 from aroulin/shader-rcp-rsq
Shader: RCP and RSQ computes only the 1st component
11 years ago
bunnei 387bd3a1e4 Merge pull request #1057 from aroulin/shader-dph-dphi
Shader: Implement DPH and DPHI in interpreter/JIT
11 years ago
Subv d1b9383d86 HWRenderer: Only reload the framebuffer from gpu memory if the hw renderer is in use during a breakpoint. 11 years ago
aroulin 03c5cfead4 Shader: Use std::sqrt for float instead of sqrt 11 years ago
aroulin fa552f11ef Shader: RCP and RSQ computes only the 1st component 11 years ago
aroulin 16f39aa452 x64-emitter: add RCPSS SSE instruction 11 years ago
Lioncash 250d474280 Merge pull request #1058 from lioncash/ptr
emitter: Remove pointer casts
11 years ago
Yuri Kunde Schlesner 78735e2ada Fix broken boot introduced by last-minute change in #1025 11 years ago
Yuri Kunde Schlesner 3efb205a68 Merge pull request #1025 from yuriks/heap-management
Kernel: Correct(er) handling of Heap and Linear Heap allocations
11 years ago
aroulin 2f1514b904 Shader: implement DPH/DPHI in JIT 11 years ago
aroulin 2e7cf2f6cf Shader: implement DPH/DPHI in interpreter
Tests revealed that the component with w=1 is
SRC1 and not SRC2, it is now fixed on 3dbrew.
11 years ago
Lioncash 78e7c77ff5 emitter: Remove pointer casts
This should also technically silence quite a few ubsan warnings.
11 years ago
Subv 0c7da9b815 HWRasterizer: Implemented stencil ops 6 and 7. 11 years ago
Subv 7c1f84a92b SWRasterizer: Implemented stencil ops 6 and 7.
IncrementWrap and DecrementWrap, verified with hwtests.
11 years ago
Subv e43eb130d4 HWRasterizer: Implemented stencil op 1 (GL_ZERO) 11 years ago
Subv fef1462371 SWRasterizer: Implemented stencil action 1 (GL_ZERO).
Verified with hwtests.
11 years ago
Subv b3e530d005 SWRasterizer: Removed a todo. Verified with hwtests. 11 years ago
Subv 8e6336d96b SWRenderer: The stencil depth_pass action is executed even if depth testing is disabled.
The HW renderer already did this.
11 years ago
Subv e74825e3d0 Rasterizer: Abstract duplicated stencil code into a lambda. 11 years ago
Subv 46f660a789 GLRasterizer: Implemented stencil testing in the hw renderer. 11 years ago
Subv 186873420f GPU/Rasterizer: Corrected the stencil implementation.
Verified the behavior with hardware tests.
11 years ago