Commit Graph
39166 Commits
Author SHA1 Message Date
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
Unknown W. Brackets bad4a93d3c D3D11: Correct depth readback. 2022-10-09 15:50:50 -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 7b8350f8a8 Android: Differentiate empty dir from failure. 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
Henrik Rydgård af995f2856 Merge pull request #16191 from unknownbrackets/depth-download
Correct depth readback on D3D9
2022-10-09 23:37:39 +02: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
Unknown W. Brackets d83f736b1f D3D9: Correct depth readback. 2022-10-09 13:21:04 -07:00
Unknown W. Brackets 199bfe4596 Merge pull request #16187 from Nemoumbra/remote-API-tests
Remote API: hle.func.removeRange added
2022-10-09 12:15:55 -07:00
Unknown W. Brackets aa410b4896 Merge pull request #16152 from hrydgard/on-demand-depth-buffers
Vulkan: Create depth/stencil buffers on demand
2022-10-09 12:04:04 -07:00
Henrik Rydgård 0c4935f336 Depal from dynamic CLUT: When detecting bounds, be more conservative.
Followup to #16188 .

Further fixes the lens flare.

It confused me before that there are two sections of the track on
Sunset Drive where the sun is visible, but only on the second is the
lens flare sprite actually shown, which is rather weird.

Verified that exactly the same thing happens on hardware, so it's not a
an emulation problem! Rather seems like a glitch in the game itself.
2022-10-09 20:57:06 +02:00
Henrik Rydgård be37de106c Vulkan: Create depth/stencil buffers on demand 2022-10-09 20:28:32 +02:00
Henrik Rydgård f21fd36708 Merge pull request #16188 from hrydgard/ridge-racer-sun-flare
Fix depal bounds with dynamic CLUT. Fixes lens flare glitches in Ridge Racer
2022-10-09 20:28:02 +02:00
Henrik Rydgård 9422b05ee3 Fix depal bounds with dynamic CLUT. Fixes lens flare glitches in Ridge Racer
With this wrong, we ended up drawing pixels that came from a DONT_CARE
init of the depal temp buffer, which was a pile of garbage on Android
and blank on PC.

Now, we seem to end up not drawing anything because the depal operation
results in transparent black into whatever is actually intended, but at
least the screen isn't full of glitches when the sun is visible on Adreno.

See issue #16083
2022-10-09 20:27:45 +02:00
Nemoumbra e67cc16660 Remote API: hle.func.removeRange added 2022-10-09 19:11:14 +03:00
Lubos 43f848a2aa Merge branch 'master' into feature_openxr_vulkan 2022-10-09 17:49:17 +02:00
Lubos 7c6cff5ae9 Merge branch 'master' into feature_openxr_vulkan 2022-10-09 17:48:23 +02: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 10fedf19bd Merge pull request #16182 from unknownbrackets/gles-indexed
GLES: Use GL_LUMINANCE on GLES for indexed tex
2022-10-09 10:19:26 +02:00
Henrik Rydgård 76be009b41 Merge pull request #16181 from unknownbrackets/d3d9-clut
Add rendered CLUT handling to D3D9
2022-10-09 10:17:17 +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 ad3220f857 GLES: Hook up depth download.
Currently, only used by one hook.
2022-10-09 01:08:04 -07:00
Unknown W. Brackets bc84d6345b Vulkan: Disable geometry shaders for Mali <= 18.
These drivers apparently have some weird behavior.
2022-10-09 00:57:10 -07:00
Unknown W. Brackets d0eb14ec02 GPU: Correct sizing account on block transfer. 2022-10-09 00:54:59 -07: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 e7e7528fbc GPU: Consider depth buffers in block transfer.
Right now, only with an explicit flag (not yet used.)
2022-10-09 00:50:45 -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 b2ce4d2c3f GPU: Refuse to set fb_address == z_address.
We don't do it when creating framebufs either, so don't update to
matching values.
2022-10-08 17:50:18 -07:00
Unknown W. Brackets 7d331f1928 GPU: Ignore depth when masked and ALWAYS.
Seen in NFS Pro Street, for example.  Shouldn't be interpreted as depth
usage.
2022-10-08 17:49:25 -07:00
Unknown W. Brackets ce79649c02 GLES: Use GL_LUMINANCE on GLES for indexed tex.
See #16176, used for rendered CLUTs.
2022-10-08 17:32:11 -07:00
Unknown W. Brackets 157ffed57f D3D9: Add simple rendered CLUT handling.
I think there's still a deeper half-pixel offset issue, but this fixes
Brave Story.
2022-10-08 15:36:36 -07:00
Unknown W. Brackets 81cf76a619 D3D9: Correct sampler states for binding 1+. 2022-10-08 15:34:00 -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
Henrik Rydgård a081d684ee Merge pull request #16177 from lvonasek/hotfix_openxr_rendering
OpenXR - Revision of VR rendering
2022-10-08 20:35:17 +02:00