Tony Wasserka
397aeb8a9e
citra-qt: Fix comment style.
11 years ago
Tony Wasserka
1c1a9ab09b
Introduce a shader tracer to allow inspection of input/output values for each processed instruction.
11 years ago
Tony Wasserka
9a1820ea61
Pica/DebugUtils: Include uniform information into shader dumps.
11 years ago
Tony Wasserka
41dda548cd
citra-qt: Improve shader debugger.
Now supports dumping the current shader and recognizes a larger number of output semantics.
11 years ago
Tony Wasserka
c677d18727
citra-qt: Print the correct swizzle mask for SRC2 in the shader disassembler.
11 years ago
Yuri Kunde Schlesner
63a0b6de7b
Merge pull request #1033 from bbarenblat/master
Handle `FileType::CIA` in `switch` statements
11 years ago
bunnei
2465e43a42
Merge pull request #1017 from LittleWhite-tb/qt-recent-files
citra-qt: save path for recent files loaded
11 years ago
bunnei
e3de8e63c3
Merge pull request #1032 from lioncash/swap
vfp: use std::swap where applicable
11 years ago
Lioncash
d7335fa5f0
vfp: use std::swap where applicable
11 years ago
Yuri Kunde Schlesner
86f72f80e1
Merge pull request #1031 from bbarenblat/master
Handle invalid `Log::Class`
11 years ago
bunnei
b40b02991a
Merge pull request #1002 from bunnei/shader-jit
Vertex Shader JIT for X86-64
11 years ago
bunnei
5c7e9ffce7
Shader: Use a POD struct for registers.
11 years ago
bunnei
4ffc095fa3
Rename ARCHITECTURE_X64 definition to ARCHITECTURE_x86_64.
11 years ago
bunnei
e019e69016
Common: Cleanup CPU capability detection code.
11 years ago
bunnei
15e9a59ad0
Common: Move cpu_detect to x64 directory.
11 years ago
bunnei
f9e3228caa
x64: Refactor to remove fake interfaces and general cleanups.
11 years ago
bunnei
fe33a705de
JIT: Support negative address offsets.
11 years ago
bunnei
c03924e60e
Shader: Initial implementation of x86_x64 JIT compiler for Pica vertex shaders.
- Config: Add an option for selecting to use shader JIT or interpreter.
- Qt: Add a menu option for enabling/disabling the shader JIT.
11 years ago
bunnei
be08c22685
Common: Added MurmurHash3 hash function for general-purpose use.
11 years ago
bunnei
3d35d53b8d
Common: Ported over boilerplate x86 JIT code from Dolphin/PPSSPP.
11 years ago
bunnei
432d1c5263
Common: Ported over Dolphin's code for x86 CPU capability detection.
11 years ago
bunnei
5794310781
Shader: Define a common interface for running vertex shader programs.
11 years ago
bunnei
2d100ebae3
Shader: Move shader code to its own subdirectory, "shader".
11 years ago
bunnei
f622a78544
GPU: Refactor "VertexShader" namespace to "Shader".
- Also renames "vertex_shader.*" to "shader_interpreter.*"
11 years ago
Benjamin Barenblat
ef432342ce
Properly indicate that CIA support is not implemented yet
Make `Loader::LoadFile` return an `ErrorNotImplemented` if you call
it on a CIA file.
11 years ago
Benjamin Barenblat
b57680c39f
Give CIA file type a name
Make `GetFileTypeString` return ‘CIA’ for CIA (CTR Importable
Archive) files.
11 years ago
Benjamin Barenblat
c96107a440
Handle invalid `Log::Class`
Add a case of `Log::Class::Count` to the switch statement that
dispatches on `Log::Class`. The case simply calls the `UNREACHABLE`
macro.
11 years ago
bunnei
4b7664fe12
Merge pull request #1027 from lioncash/debugger
debugger: Add the ability to view VFP register contents
11 years ago
bunnei
d27435106c
Merge pull request #1030 from archshift/force-inline
Stop defining GCC always_inline attributes as __forceinline
11 years ago
archshift
58e2d19f08
Stop defining GCC always_inline attributes as __forceinline
__forceinline is a MSVC extension, which may confuse some people working on the codebase.
Furthermore, the C++ standard dictates that all names which contain adjacent underscores are reserved.
11 years ago
bunnei
452edce407
Merge pull request #893 from linkmauve/remove-uint._t-int._t
Replace standard uint*_t and int*_t with CommonTypes’ u* and s* types
11 years ago
Emmanuel Gil Peyrot
fe83e1f777
ARM Core, Video Core, CitraQt, Citrace: Use CommonTypes types instead of the standard u?int*_t types.
11 years ago
bunnei
0387001b57
Merge pull request #1023 from yuriks/gl-state-bugs
OpenGL: Fix state tracking in situations with reused object handles
11 years ago
bunnei
16d240c1fc
Merge pull request #1028 from aroulin/arm-disas-media-instr
arm_disasm: ARMv6 media instructions
11 years ago
LittleWhite
35a2f138b8
Add menu and logic to save and load recently loaded files.
This menu is only for ROM and will not save symbols recently loaded.
When the menu is empty, the menu is disabled (greyed out)
11 years ago
aroulin
1af26ea3d8
arm_disasm: ARMv6 mul/div and abs media instructions
SMLAD, SMUAD, SMLSD, SMUSD, SMLALD, SMLSLD,
SMMLA, SMMUL, SMMLS
USAD8, USADA8
11 years ago
aroulin
0e37ee5692
arm_disasm: ARMv6 parallel add/sub media instructions
{S, U, Q, UQ, SH, UH}{ADD16, ASX, SAX, SUB16, ADD8, SUB8}
11 years ago
aroulin
e752fd5728
arm_disasm: ARMv6 reversal media instructions
REV, REV16, REVSH
Only their ARM encoding, Thumb encoding is still missing.
11 years ago
aroulin
86d63d8fd8
arm_disasm: ARMv6 saturation media instructions
SSAT, SSAT16, USAT, USAT16
11 years ago
aroulin
aecd0de63e
arm_disasm: ARMv6 packing and sign-extend media instructions
PKH, SEL
SXTAB, SXTAB16, SXTB, SXTB16, SXTH, SXTAH
UXTAB, UXTAB16, UXTB, UXTB16, UXTH, UXTAH
11 years ago
Lioncash
b104d30596
Merge pull request #1026 from lioncash/disasm
arm_disasm: Remove unnecessary code
11 years ago
Lioncash
9f1b35f27f
registers: Support viewing VFP registers
11 years ago
Lioncash
daabb4fab3
arm_interface: Implement interface for retrieving VFP registers
11 years ago
Lioncash
32461be3ab
registers: Fix a typo with CPSR's name
11 years ago
Lioncash
59d5358068
arm_disasm: Remove unnecessary code
This part of disassembly only determines the opcode, there's no need for offset calculation here.
11 years ago
Lioncash
98a881c175
Merge pull request #1022 from aroulin/disas-missing-v6k-instructions
Disassembler: ARMv6K instructions
11 years ago
aroulin
4721ff6747
Disassembler: ARMv6K REX instructions
11 years ago
aroulin
0d4ad676e9
Disassembler: ARMv6K hint instructions
11 years ago
Yuri Kunde Schlesner
fe3a7af354
OpenGL: Fix state tracking in situations with reused object handles
If an OpenGL object is created, bound to a binding using the state
tracker, and then destroyed, a newly created object can be assigned the
same numeric handle by OpenGL. However, even though it is a new object,
and thus needs to be bound to the binding again, the state tracker
compared the current and previous handles and concluded that no change
needed to be made, leading to failure to bind objects in certain cases.
This manifested as broken text in VVVVVV, which this commit fixes along
with similar texturing problems in other games.
11 years ago
Yuri Kunde Schlesner
60df1c9b2b
OpenGL: Remove redundant texture.enable_2d field from OpenGLState
All uses of this field where it's false can just set the texture id to 0
instead.
11 years ago