Commit Graph

33084 Commits

Author SHA1 Message Date
Henrik Rydgård
ec00e8069a
Merge pull request #15925 from unknownbrackets/ge-disasm
GE Debugger: Improve display list disasm
2022-08-30 08:12:57 +02:00
Unknown W. Brackets
a569921716 GE Debugger: Improve display list disasm.
This makes many registers clearer, and corrects some that were totally
wrong like minz/maxz.
2022-08-29 22:58:13 -07:00
Henrik Rydgård
44d822be3b Address feedback 2022-08-30 06:41:37 +02:00
Henrik Rydgård
670c31e746 Add support for reading depth buffers to the PackFramebufferSync function.
Also adds D16 conversion code (though, could probably get away with just
creating a 16-bit depth buffer on the GPU and blit to it, where depth
blit is available).

Not yet used, just getting it in separately.
2022-08-30 00:00:59 +02:00
Henrik Rydgård
dee6ba0c1e
Merge pull request #15922 from hrydgard/remove-reinterpret-compat-flag
Remove reinterpret compat flag
2022-08-29 17:41:52 +02:00
Henrik Rydgård
847e05140b Add another stat, for self-tex 2022-08-29 17:41:29 +02:00
Henrik Rydgård
333df62691 Remove the reinterpret compat flag, now always on
Remove ini entries
2022-08-29 17:41:29 +02:00
Henrik Rydgård
2b1b9e5eb9
Merge pull request #15921 from hrydgard/more-gpu-stats
Fix OpenGL bug when framebuffer fetch is available. Add two new GPU stats.
2022-08-29 16:30:16 +02:00
Henrik Rydgård
f228de76ef Fix OpenGL bug when framebuffer fetch is available. Add two new stats. 2022-08-29 15:39:29 +02:00
Henrik Rydgård
59cb7a075f
Merge pull request #15920 from hrydgard/replace-get-vfb-at
Better framebuffer checks, remove all ways that framebuffer formats can change
2022-08-29 11:37:12 +02:00
Henrik Rydgård
cd37bffdaa Better framebuffer checks, remove all ways that framebuffer formats can change. 2022-08-29 11:06:45 +02:00
Henrik Rydgård
34ed960a72 Use better pattern for enum switches 2022-08-28 23:57:01 +02:00
Unknown W. Brackets
3e865abae6
Merge pull request #15917 from hrydgard/vulkan-bandwidth-opt
Vulkan bandwidth optimizations (configure renderpass load/store better)
2022-08-28 14:42:55 -07:00
Henrik Rydgård
b447092742 Some Vulkan renderpass load/store optimizations. 2022-08-28 23:16:48 +02:00
Henrik Rydgård
9b4e94c4ae Depal: Set scissor tightly around processed area. 2022-08-28 23:14:30 +02:00
Henrik Rydgård
fa1d2cfe8e
Merge pull request #15916 from unknownbrackets/ui-scissor
UI: Validate UI scissor inside bounds
2022-08-28 18:36:02 +02:00
Henrik Rydgård
e87b1c9ba8
Merge pull request #15915 from unknownbrackets/gpu-minor
GPU: Add a way to defer dirty rechecks
2022-08-28 18:10:02 +02:00
Unknown W. Brackets
da53ab8ef9 UI: Validate UI scissor inside bounds. 2022-08-28 09:01:35 -07:00
Unknown W. Brackets
f5efc1aa56 GPU: Make Spongebob hack checks more readable.
Multiline clauses are just a lie programmers tell themselves to make them
think they've written readable code, just because it's better than a
single line.

Also add comments while there, in case this causes problems.
2022-08-28 08:50:16 -07:00
Unknown W. Brackets
a8190f3eb4 GPU: Recheck depth/stencil after Spongebob hack.
Since we swap the compare, we should at least recheck it later.
2022-08-28 08:39:05 -07:00
Unknown W. Brackets
18e1efece1 GPU: Add a way to defer dirty rechecks.
These are situations where we have temporary state which will require
recalc again later.
2022-08-28 08:34:48 -07:00
Unknown W. Brackets
77c834ba5c GPU: Fix possible shift truncation.
Also, add algorithm for std::max.
2022-08-28 08:32:00 -07:00
Henrik Rydgård
5247ffa0af
Merge pull request #15910 from unknownbrackets/riscv-emitter
Add LI and compressed instructions for RISC-V
2022-08-28 15:57:03 +02:00
Henrik Rydgård
c75b0235e1 Update the Spongebob workaround check to work with MX vs ATV: Reflex. See #15907
Not ideal to not check the verts :(
2022-08-28 15:09:58 +02:00
Unknown W. Brackets
216fcb228c riscv: Add a simple unit test.
Since I haven't tried running these yet, at least best to validate...
2022-08-28 06:03:31 -07:00
Henrik Rydgård
1653dcdc1a
Merge pull request #15907 from hrydgard/reinterpret-between-32-and-16
Reinterpret between 32 and 16 bit texture formats
2022-08-28 09:49:18 +02:00
Henrik Rydgård
e63c14b45a More spongebob check tweaks, assert fix 2022-08-28 09:13:43 +02:00
Henrik Rydgård
98f2e2a370 Remove irrelevant stencil state checks 2022-08-28 07:35:26 +02:00
Henrik Rydgård
39f6621442 Address additional feedback, thanks! 2022-08-28 07:31:50 +02:00
Henrik Rydgård
dae92b41fb Safer spongebob depth inverse check, includes color check and depth func 2022-08-28 07:25:08 +02:00
Henrik Rydgård
df92f72ac3 Unify the spongebob depth inverse check 2022-08-28 07:11:00 +02:00
Unknown W. Brackets
08d82ec15b riscv: Emit compressed instructions.
Includes automatically using compressed, optionally.
2022-08-27 15:44:19 -07:00
Unknown W. Brackets
946080206d riscv: Improve sign reduce/immediate readability. 2022-08-27 15:44:18 -07:00
Unknown W. Brackets
c807d459f6 riscv: Emit ADD/SUB/etc. for ADDW/SUBW/etc. on R32.
No need to complicate code, we can just write ADDW() and expect it to work
on R32 (if ever motivated to support it.)
2022-08-27 15:44:18 -07:00
Unknown W. Brackets
c81d887a86 riscv: Include an LI helper in the emitter.
Can be used for integers and floats.
2022-08-27 15:44:18 -07:00
Henrik Rydgård
322f29ce80 Comments and fixes 2022-08-27 23:37:02 +02:00
Henrik Rydgård
6cedf34e9c Block transfer bug fix 2022-08-27 23:20:26 +02:00
Henrik Rydgård
c80245af91 OpenGL graphics fixes 2022-08-27 19:37:28 +02:00
Henrik Rydgård
a74d2ec185 Comment fixes 2022-08-27 19:24:25 +02:00
Henrik Rydgård
8bf1b2be53 Reinterpret is the proper fix for God of War's shadows. 2022-08-27 19:23:17 +02:00
Henrik Rydgård
869bd1643f Fix UV offsets in 16->32 reinterpret. Better, but something is still not quite right. 2022-08-27 16:32:07 +02:00
Henrik Rydgård
8d1157e107 GL bugfix, log cleanup 2022-08-27 14:40:42 +02:00
Henrik Rydgård
28cfbdd2d7 Enable reinterprets and create-buffer-on-copy for the Tantalus games 2022-08-27 14:05:49 +02:00
Henrik Rydgård
92eaac0210 Fix problem matching framebuffers for reinterpret 2022-08-27 13:57:54 +02:00
Henrik Rydgård
c533ea4d93 Logging improvements 2022-08-27 13:57:36 +02:00
Henrik Rydgård
85f2a0f052 Remove some old logging that's not very interesting anymore 2022-08-27 13:57:08 +02:00
Henrik Rydgård
628bac056d Log improvement 2022-08-27 11:31:17 +02:00
Henrik Rydgård
7be3063c96 When cloning framebuffers for reinterpret, adjust width according to bpp 2022-08-27 11:12:35 +02:00
Henrik Rydgård
cb8497731d Framebuffer texture matching: Remove heuristics other than seqCount 2022-08-27 11:01:54 +02:00
Henrik Rydgård
769f3d1466 Accept color textures as reinterpretable between 32 and 16-bit formats 2022-08-27 10:59:37 +02:00