Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GSdx-TC: Misdetection of texture shuffle #2449

Closed
lightningterror opened this issue May 23, 2018 · 9 comments
Closed

GSdx-TC: Misdetection of texture shuffle #2449

lightningterror opened this issue May 23, 2018 · 9 comments

Comments

@lightningterror
Copy link
Contributor

lightningterror commented May 23, 2018

PCSX2 version:
v1.5.0-dev-2388

Description of the issue:
Currently Big Mutha Truckers experiences vertical stripes that aren't properly rendered across HW renders.
The Texture cache detection is not handled properly.

GL debug log.

T:Oth    ID:627    S:Cache    => TC: Lookup Target(Color) 1280x1024, hit: 2 (0x0, C_16)
T:Oth    ID:627    S:Cache    => TC: dst Color hit (full): 142 (0x1400, C_16)
T:Error    ID:627    S:Mid    => FBMASK SW emulated fb_mask:3fff on 16 bits format
T:Oth    ID:627    S:Cache    => TC: Remove Src Texture: 141 (0x0)

Full log
GSdx_opengl_debug_hw.zip

Raw dump texture name with the effect.
_00627_f5001_rt1_00000_C_16

Workaround:
Currently there is a CRC hack in place to skip the bad draw calls but the idea is to one day properly detect the effect.

Preview:
gsdx_20180509172752

Dump:
Big Mutha Truckers.gs.zip

Related issue #1339

@gregory38
Copy link
Contributor

It would be nice to put more gl log in particular for buffer @ 0x0 and 0x1400. So I can understand what is the issue.

@lightningterror
Copy link
Contributor Author

Is this enough ?

https://pastebin.com/34fUevLX

@gregory38
Copy link
Contributor

Is it the start of the log. The issue is first access to 0x1400 is 16 bits.

I think we can use the following heuristic to detect the effect (GSRendererHW)

  • Texture and frame are at same location
  • Texture and frame are 16 bits
  • Fbmask is 0x3fff (typical value of tex shuffle)
    (Or a crc hack :p)

@gregory38
Copy link
Contributor

On 2nd thought, main issue is the miss. Texture will be invalid even if we detect the effect.
My guess is that 0x1400 should be a part of 0xa00 (bottom ?)

@lightningterror lightningterror changed the title GSdx-TC: Big Mutha Truckers - misdetection of effects GSdx-TC: Misdetection of texture shuffle Feb 26, 2019
@lightningterror
Copy link
Contributor Author

Gaelic Games Hurling and Gaelic Games Football 2 to add to the list. Both PAL.

@MrCK1
Copy link
Member

MrCK1 commented Feb 26, 2019

You'll have to add James Bond From Russia With Love. Half screen and/or stripes on all HW renderers.

@lightningterror
Copy link
Contributor Author

Sonic Unleashed as well. Half screen plus vertical stripes.

@tadanokojin
Copy link
Member

This a meta for TC issues?
If so edit top message with checkbox of games affected.

@refractionpcsx2
Copy link
Member

Looks fine now

image

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants