11475 Commits

Author SHA1 Message Date
Unknown W. Brackets
fa5f9d5e74 jit: Consistently check range on invalidate.
We did this on x86, we should do it everywhere or nowhere.
2022-10-15 18:30:13 -07:00
Unknown W. Brackets
c4bf2cb5c0 jit: Ignore zero byte icache invalidates.
These were getting marked pending and were clearing all cache, causing
performance concerns in for example LittleBigPlanet.
2022-10-15 18:27:52 -07:00
Henrik Rydgård
26f6afbfa7 Followup to #16205, fix one more instance of the problem. 2022-10-12 01:02:54 +02:00
Henrik Rydgård
e179e466ed
Merge pull request #16206 from hrydgard/remove-fragment-tex-cache-option
Remove the OpenGL bFragmentTestCache ini option, autodetect instead
2022-10-11 19:59:46 +02:00
Henrik Rydgård
d30d8bf35c Removes the option, autodetect instead - only enable if the GPU doesn't support bitwise ops. 2022-10-11 16:09:57 +02:00
Henrik Rydgård
df5b51990d ArmJit: Save/restore downcount where needed, we missed a few cases. 2022-10-11 15:50:37 +02:00
Henrik Rydgård
a34e32abe1 Revert "Disables "ForceCheck" on jit invalidation on ARM32, introduced in #16194"
This reverts commit bc28f546126e8d275e8c891dc6d7f4faefc7668e.
2022-10-11 15:42:59 +02:00
Henrik Rydgård
44f61c0cee
Merge pull request #16089 from ANR2ME/adhoc_matching
[AdhocMatching] Fix assertion issue when playing Cars over public adhoc server.
2022-10-11 14:14:00 +02:00
Henrik Rydgård
901f698a10
Merge pull request #16201 from unknownbrackets/gedebugger
GE Debugger: Normalize framebuffer texture preview
2022-10-11 11:33:19 +02:00
Henrik Rydgård
bc28f54612 Disables "ForceCheck" on jit invalidation on ARM32, introduced in #16194
I'm not sure if we should call it at all here, but at least this makes
games work again on ARM32. Will need more investigation.
2022-10-11 10:10:52 +02:00
Unknown W. Brackets
416265431b GE Debugger: Display if tex is framebuf.
Rather than guessing based on size, let's show explicitly.
2022-10-10 22:35:42 -07:00
Henrik Rydgård
b7c5c4ec51
Merge pull request #16199 from unknownbrackets/mips-offset
MIPS: Fix non standard layout offsets
2022-10-11 06:46:25 +02:00
Unknown W. Brackets
728748b108 MIPS: Fix non standard layout offsets. 2022-10-10 17:30:15 -07:00
Henrik Rydgård
50285f6bf6 Revert "Revert "Loader: Validate offsets and truncation in ELF.""
This reverts commit 470edac18a1af1f8107338db5357f7a625d3cb44.
2022-10-10 13:29:09 +02:00
Henrik Rydgård
6833589e38 Update elfSize to uncompressed elf size when needed. Fixes infinite loading in Wipeout.
Also minor cleanups.
2022-10-10 12:22:05 +02:00
Henrik Rydgård
470edac18a Revert "Loader: Validate offsets and truncation in ELF."
This reverts commit 4ecdce2a379fb429c4dc3d7de02d148a2aeff0f0.
2022-10-10 11:42:24 +02:00
Henrik Rydgård
6f75289511
Merge pull request #16193 from unknownbrackets/overalloc
Loader: Get rid of overalloc on module exec
2022-10-10 09:47:28 +02:00
Unknown W. Brackets
825450a373 jit: Defer invalidations made while running.
Previously, invalidating icache could happen while running, which might
cause the CPU to return into outer space.  This runs such invalidations
after letting the CPU exit.

It was easy to trigger this with the debugger: step using the GE debugger,
add a CPU memory breakpoint, then resume from the GE debugger.
However, cheats and the like could cause similar issues.
2022-10-09 21:26:13 -07:00
Unknown W. Brackets
7e462c087c Loader: Get rid of overalloc on module exec. 2022-10-09 16:42:24 -07:00
Unknown W. Brackets
4ecdce2a37 Loader: Validate offsets and truncation in ELF. 2022-10-09 16:41:32 -07:00
Henrik Rydgård
bc9215ca93
Merge pull request #16190 from unknownbrackets/save-slow
Reduce IO primarily during save operations
2022-10-10 00:03:17 +02:00
Unknown W. Brackets
db5011d7f1 Savedata: Cache SFO data during processing.
This only caches between touching PSP code, in case something changes.
Reduces cases of multiple SFO lookups and reads.
2022-10-09 14:42:31 -07:00
Unknown W. Brackets
5bed35b293 Savedata: Skip and defer texture exist check.
We can skip if there's no UI.
2022-10-09 14:42:31 -07:00
Unknown W. Brackets
8c1acc30e4 Savedata: Combine file info and dir listing calls. 2022-10-09 14:42:31 -07:00
Unknown W. Brackets
4942692558 Io: Provide directory existence with listing.
Sometimes, you need to tell the difference between an empty directory and
one that doesn't exist at all.  We can do this in a single call.
2022-10-09 14:42:31 -07:00
Unknown W. Brackets
6168e03b4a Savedata: Reduce some duplicate file info lookups. 2022-10-09 14:42:31 -07:00
Unknown W. Brackets
6fd2940376 Font: Reduce internal font loading IO.
Improves startup for games that load sceFont on devices with slow storage.
2022-10-09 14:42:31 -07:00
Unknown W. Brackets
4db30e7724 Io: Defer GetFileInfo() until it's needed.
We often won't need this, so skip the call until needed.
2022-10-09 14:42:30 -07:00
Unknown W. Brackets
8d848f083b Io: Reduce operations inside GetFileInfo().
These can take time so let's try to bundle them.
2022-10-09 14:42:30 -07:00
Unknown W. Brackets
d473aa6db0 Module: Cleanup file read pattern.
Let's always use ReadEntireFile() when we can.
2022-10-09 14:42:30 -07:00
Unknown W. Brackets
55d5dc3834 GPU: Rename readback and buffer write operations.
Avoid download/upload and pack, which don't have clear directions.
2022-10-09 13:49:41 -07:00
Nemoumbra
e67cc16660 Remote API: hle.func.removeRange added 2022-10-09 19:11:14 +03:00
Henrik Rydgård
28bc45451c
Merge pull request #16184 from unknownbrackets/depth-download
GPU: Hook Gods Eater Burst avatar read
2022-10-09 16:37:42 +02:00
Henrik Rydgård
49de375bff
Merge pull request #16183 from unknownbrackets/depth-usage
GPU: Ignore depth when masked and ALWAYS
2022-10-09 10:41:40 +02:00
Henrik Rydgård
7ed3eeea22
Merge pull request #16179 from unknownbrackets/jpeg
Correct size and YUV order for jpeg decoding
2022-10-09 10:15:07 +02:00
Unknown W. Brackets
057661380e GPU: Hook Gods Eater Burst avatar read.
Currently not working since depth comes back as 0.
2022-10-09 00:52:35 -07:00
Unknown W. Brackets
33993b8574 Jpeg: Cleanup debug dump file access. 2022-10-08 20:31:39 -07:00
Unknown W. Brackets
9c026927bd Jpeg: Encode and decode YCbCr as 2x2.
Verified this is what's output from a PSP's DecodeMJpegYCbCr, and games
directly use its output in MJpegCsc - so change to match.

This makes the colors in Gods Eater Burst character portraits look better.
2022-10-08 20:24:54 -07:00
Unknown W. Brackets
1c18d9b49b Jpeg: Correct some logging of return types. 2022-10-08 18:12:37 -07:00
Unknown W. Brackets
1c7a5bbb49 Debugger: Fix off-by-one in func scanning.
This is inclusive.
2022-10-08 17:51:04 -07:00
Unknown W. Brackets
af28a3d497 Jpeg: Correct colorspace conversion funcs.
For non-mjpeg, the height and width are halved, and more sampling modes
are supported.  This also checks for invalid pointers and notifies the
debugger.

The exact YCbCr->RGBA conversion is not accurate, but it writes in the
correct places now.  MJpeg is still a bit off.
2022-10-08 12:20:41 -07:00
Unknown W. Brackets
159d4ed4a3 Jpeg: Decode buffers using configured stride.
Previously, it was assumed that the stride was the nearest power of two,
but it's actually the Create width.
2022-10-08 12:20:41 -07:00
Unknown W. Brackets
dc18b6cf80 Jpeg: Improve error handling for YCbCr decode.
This also fixes a crash on invalid output pointer.
2022-10-08 12:20:41 -07:00
Unknown W. Brackets
95d40cc09f Jpeg: Retain previous width/height.
Seems to be reused even after Delete, strangely.
2022-10-08 12:20:41 -07:00
Unknown W. Brackets
bcee6c0310 Jpeg: Improve timing/errors for GetOutputInfo. 2022-10-07 23:22:54 -07:00
Unknown W. Brackets
3af8a667e1 Psmf: Fix save states. 2022-10-07 07:03:29 -07:00
Unknown W. Brackets
7f87cd077a Jpeg: Play it safe with load/unload handling. 2022-10-07 00:24:19 -07:00
Unknown W. Brackets
0931b343c2 Jpeg: Validate CreateMJpeg() parameters. 2022-10-07 00:16:30 -07:00
Unknown W. Brackets
62fe178608 Jpeg: Cleanup Init/Finish error checks. 2022-10-06 22:45:18 -07:00
Henrik Rydgård
591a748ae2
Merge pull request #16159 from sum2012/patch_1
Add crc calculation in loading module
2022-10-07 00:36:01 +02:00