Commit Graph

9790 Commits

Author SHA1 Message Date
ReaperOfSouls
cab0eba6d4 Merge pull request #15 from ReaperOfSouls1909/revert-8-master
Revert "Polyfix"
2018-11-23 11:47:20 -04:00
ReaperOfSouls
34a5a4e4aa Revert "Polyfix" 2018-11-23 11:47:12 -04:00
ReaperOfSouls
ec7345a1e8 Merge pull request #8 from marcosvitali/master
Polyfix
2018-11-23 10:58:01 -04:00
ReaperOfSouls
f328d25933 Merge pull request #14 from ReinUsesLisp/clip-distances
gl_shader_decompiler: Implement clip distances
2018-11-23 10:57:09 -04:00
ReaperOfSouls
dd9fc99901 Merge pull request #13 from ReinUsesLisp/r2p
gl_shader_decompiler: Implement R2P_IMM
2018-11-23 10:56:09 -04:00
ReaperOfSouls
aa5e70b410 Merge pull request #12 from bunnei/getgputime
nvhost_ctrl_gpu: Implement IoctlGetGpuTime.
2018-11-23 10:55:48 -04:00
ReaperOfSouls
930f76f31e Merge pull request #11 from ReinUsesLisp/bfi
gl_shader_decompiler: Implement BFI_IMM_R
2018-11-23 10:55:26 -04:00
ReaperOfSouls
cb00001882 Merge pull request #10 from Hexagon12/pred-comp-11
Pred comp 11
2018-11-23 10:54:49 -04:00
ReaperOfSouls
9b51d92d3a Merge pull request #9 from FernandoS27/tex-spacing
Implemented Tile Width Spacing
2018-11-23 10:53:52 -04:00
Marcos Vitali
cd94dc484a Initialize polygon_offset in the constructor. 2018-11-23 10:38:06 -03:00
ReaperOfSouls
d557f4abea Merge pull request #7 from degasus/shader_cache
shader_cache: Only lock covered instructions.
2018-11-23 09:18:35 -04:00
ReaperOfSouls
f0b51bf713 Merge pull request #6 from bunnei/ldg
Ldg
2018-11-23 09:14:13 -04:00
Marcos Vitali
ddeb7809f7 Clang Format fixes. 2018-11-23 10:10:48 -03:00
ReaperOfSouls
07009688c8 Merge pull request #5 from Tinob/master
Add support for clear_flags register
2018-11-23 08:59:59 -04:00
ReaperOfSouls
c30f30da50 Merge pull request #4 from FernandoS27/fix-txq
Properly Implemented TXQ Instruction
2018-11-23 08:58:42 -04:00
ReaperOfSouls
dffc128448 Merge pull request #3 from FernandoS27/ignore-assert-dev
Implement better Ignore Assert
2018-11-23 08:57:51 -04:00
ReaperOfSouls
5cbade867f Merge pull request #2 from lioncash/core-mgr
core: Relocate CPU core management to its own class
2018-11-23 08:57:34 -04:00
ReaperOfSouls
cde484e32a Merge pull request #1 from FernandoS27/dc
Dc
2018-11-23 08:57:15 -04:00
FernandoS27
e012b3e1fe Fix Texture Overlapping 2018-11-23 08:56:41 -04:00
Rodolfo Bogado
de8001cfcd Add support for clear_flags register 2018-11-23 09:39:18 -03:00
Marcos Vitali
33ba10591e GPU States: Implement Polygon Offset. This is used in SMO all the time. 2018-11-23 03:01:33 -03:00
ReinUsesLisp
b3853403b7 gl_shader_decompiler: Implement clip distances 2018-11-23 02:14:43 -03:00
FernandoS27
0c465ca9c9 Fix TEXS Instruction encodings 2018-11-22 22:51:25 -04:00
FernandoS27
0eeda68d19 Fix one encoding in TEX Instruction 2018-11-22 22:08:19 -04:00
FernandoS27
1f895d68d1 Corrected inputs indexing in TEX instruction 2018-11-22 22:08:19 -04:00
Mat M
bee5a7acb1 Merge pull request #1779 from DarkLordZach/debug-pad-unmapped
debug_pad: Avoid loading input for nonexistent buttons (Home and Screenshot)
2018-11-22 13:41:32 -05:00
Zach Hilman
b358e88512 debug_pad: Avoid loading input for nonexistent buttons (Home and Screenshot)
Prevents memory exceptions when the debug pad is enabled.
2018-11-22 12:23:43 -05:00
bunnei
50d2abaaa9 Merge pull request #1775 from bunnei/blend-eq
maxwell_3d: Implement alternate blend equations.
2018-11-22 08:44:05 -08:00
bunnei
af159a4d08 Merge pull request #1765 from bunnei/multi-audout
audout_u: Add support for multiple IAudioOut streams.
2018-11-22 08:43:53 -08:00
bunnei
e633021532 Merge pull request #1764 from bunnei/macrointerpreter
macro_interpreter: Implement AddWithCarry and SubtractWithBorrow.
2018-11-22 08:43:29 -08:00
Lioncash
232d95b56e core: Relocate CPU core management to its own class
Keeps the CPU-specific behavior from being spread throughout the main
System class. This will also act as the home to contain member functions
that perform operations on all cores. The reason for this being that the
following pattern is sort of prevalent throughout sections of the
codebase:

If clearing the instruction cache for all 4 cores is necessary:

Core::System::GetInstance().ArmInterface(0).ClearInstructionCache();
Core::System::GetInstance().ArmInterface(1).ClearInstructionCache();
Core::System::GetInstance().ArmInterface(2).ClearInstructionCache();
Core::System::GetInstance().ArmInterface(3).ClearInstructionCache();

This is kind of... well, silly to copy around whenever it's needed.
especially when it can be reduced down to a single line.

This change also puts the basics in place to begin "ungrafting" all of the
forwarding member functions from the System class that are used to
access CPU state or invoke CPU-specific behavior. As such, this change
itself makes no changes to the direct external interface of System. This
will be covered by another changeset.
2018-11-22 04:28:19 -05:00
bunnei
033b46253e macro_interpreter: Implement AddWithCarry and SubtractWithBorrow.
- Used by Undertale.
2018-11-22 00:58:00 -05:00
bunnei
5a6dc4d041 audout_u: Add support for multiple IAudioOut streams.
- Used by Undertale.
2018-11-22 00:53:39 -05:00
bunnei
0e6a608245 maxwell_3d: Implement alternate blend equations.
- Used by Undertale.
2018-11-22 00:51:01 -05:00
bunnei
b84f4cfb62 Merge pull request #1737 from FernandoS27/layer-copy
Implemented Fast Layered Copy
2018-11-21 21:39:16 -08:00
bunnei
f0d3f1b376 Merge pull request #1771 from lioncash/bit-set
common: Remove bit_set.h
2018-11-21 21:36:15 -08:00
bunnei
f926559ef4 Merge pull request #1767 from lioncash/handle
kernel/handle_table: Minor changes
2018-11-21 21:26:48 -08:00
Lioncash
8b27e73bd7 common: Remove bit_set.h
This is an analog of BitSet from Dolphin that was introduced to allow
iterating over a set of bits. Given it's currently unused, and given
that std::bitset exists, we can remove this. If it's ever needed in the
future it can be brought back.
2018-11-21 21:30:10 -05:00
Lioncash
0e35f1bb18 kernel/handle_table: Move private static functions into the cpp file
These don't depend on class state, and are effectively implementation
details, so they can go into the cpp file .
2018-11-21 18:31:01 -05:00
Lioncash
568bcbc29d kernel/handle_table: Restrict handle table size to 1024 entries
The previous handle table size is a holdover from Citra. The actual
handle table construct on Horizon only allows for a maximum of 1024
entries.
2018-11-21 18:28:03 -05:00
Lioncash
f5ce71793e kernel/handle_table: Default destructor in the cpp file
We don't need to potentially inline the teardown logic of all of the
handle instances.
2018-11-21 18:23:09 -05:00
bunnei
ec38b4e883 Merge pull request #1753 from FernandoS27/ufbtype
Use default values for unknown framebuffer pixel format
2018-11-21 14:15:27 -08:00
bunnei
61586e8794 Merge pull request #1752 from ReinUsesLisp/unimpl-decompiler
gl_shader_decompiler: Use UNIMPLEMENTED when applicable
2018-11-21 14:13:28 -08:00
FernandoS27
4a6a9b6622 Properly Implemented TXQ Instruction 2018-11-21 18:12:36 -04:00
bunnei
d4012a4540 Merge pull request #1742 from lioncash/hle-swkbd
am/applets: Minor cleanup
2018-11-21 11:43:43 -08:00
ReinUsesLisp
642dfeda2a gl_shader_decompiler: Implement BFI_IMM_R 2018-11-21 16:12:30 -03:00
bunnei
7f10db1c20 nvhost_ctrl_gpu: Implement IoctlGetGpuTime.
- Used by Undertale.
2018-11-21 11:43:25 -05:00
bunnei
bb175ab430 Merge pull request #1754 from ReinUsesLisp/zero-register
gl_shader_decompiler: Remove UNREACHABLE when setting RZ
2018-11-21 08:06:29 -08:00
bunnei
8cdb48224d Merge pull request #1758 from lioncash/rect
common/math_util: Minor cleanup
2018-11-21 08:05:39 -08:00
bunnei
81e14c072a Merge pull request #1759 from lioncash/unused
common: Remove depencency on xbyak
2018-11-21 08:05:14 -08:00