Project

General

Profile

Emulator Issues #12392

Purple Screen in Teenage Mutant Ninja Turtles

Added by ZephyrSurfer 4 months ago. Updated 6 days ago.

Status:
Fixed
Priority:
High
Assignee:
% Done:

0%

Operating system:
N/A
Issue type:
Bug
Milestone:
Current
Regression:
Yes
Relates to usability:
No
Relates to performance:
No
Easy:
No
Relates to maintainability:
No
Regression start:
5.0-10000
Fixed in:
5.0-14122

Description

Game Name?

Teenage Mutant Ninja Turtles

Game ID? (right click the game in the game list, Properties, Info tab)

SX7E52

MD5 Hash? (right click the game in the game list, Properties, Verify tab, Verify Integrity button)

53636e5efe2042d540962cdec58626c0

What's the problem? Describe what went wrong.

On default settings the whole screen is purple.

Before 5.0-10000:
The game works regardless if "Store XFB Copies to Texture Only" is enabled or disabled.

After 5.0-10000:
The screen is purple if "Store XFB Copies to Texture Only" is enabled.

XFB Copies to Texture Only = Purple Screen.
XFB Copies to Texture Only + Immediately Present XFB = Displays Green bar at right side of screen.
XFB Copies to RAM(and Texture) = No Problem
XFB Copies to RAM(and Texture) + Immediately Present XFB = Displays Green bar at right side of screen.

Before 5.0-10000 you could therefore Use default settings without graphical issues allowing use of higher internal resolution.

After 5.0-10000 default settings displays purple screen. Changing graphic settings to solve both issues means enabling XFB Copies to RAM(and Texture) which limits the resolution to looking like native.

What steps will reproduce the problem?

Run the game. The effect is at always present so you do not have to progress in game to see the issue.

Is the issue present in the latest development version? For future reference, please also write down the version number of the latest development version.

Yes, 5.0-13495

Is the issue present in the latest stable version?

No, 5.0

If the issue isn't present in the latest stable version, which is the first broken version? (You can find the first broken version by bisecting. Windows users can use the tool https://forums.dolphin-emu.org/Thread-green-notice-development-thread-unofficial-dolphin-bisection-tool-for-finding-broken-builds and anyone who is building Dolphin on their own can use git bisect.)

5.0-10000 -> https://dolphin-emu.org/download/dev/18589e50ab44957f4955596ac238d900f28959c3/

If your issue is a graphical issue, please attach screenshots and record a three frame fifolog of the issue if possible. Screenshots showing what it is supposed to look like from either console or older builds of Dolphin will help too. For more information on how to use the fifoplayer, please check here: https://wiki.dolphin-emu.org/index.php?title=FifoPlayer

Fifolog of opening scene in first mission.

Image 1: XFB Copies to Texture Only (Default)
Image 2: XFB Copies to Texture Only + Immediately Present XFB
Image 3: XFB Copies to RAM(and Texture)
Image 4: XFB Copies to RAM(and Texture) + Immediately Present XFB

What are your PC specifications? (CPU, GPU, Operating System, more)

i7-8750H
GTX 1060
Windows 10
8GB DDR4

Is there anything else that can help developers narrow down the issue? (e.g. logs, screenshots,
configuration files, savefiles, savestates)

Ask for more fifologs or screenshots if required.

SX7E52_XFB_TXT_ONLY.png (122 Bytes) SX7E52_XFB_TXT_ONLY.png XFB Copies to Texture Only ZephyrSurfer, 01/24/2021 03:56 AM
SX7E52_XFB_TXT_ONLY_AND_IMMEDIATE.png (201 KB) SX7E52_XFB_TXT_ONLY_AND_IMMEDIATE.png XFB Copies to Texture Only + Immediately Present XFB ZephyrSurfer, 01/24/2021 03:56 AM
SX7E52_XFB_TXT_AND_RAM.png (233 KB) SX7E52_XFB_TXT_AND_RAM.png XFB Copies to RAM(and Texture) ZephyrSurfer, 01/24/2021 03:56 AM
SX7E52_XFB_TXT_AND_RAM_AND_IMM.png (201 KB) SX7E52_XFB_TXT_AND_RAM_AND_IMM.png XFB Copies to RAM(and Texture) + Immediately Present XFB ZephyrSurfer, 01/24/2021 03:56 AM
Teenage_Mutant_Ninja_Turtles_Purple.zip (2.03 MB) Teenage_Mutant_Ninja_Turtles_Purple.zip Mission 1 Opening Scene ZephyrSurfer, 01/24/2021 04:05 AM
8180
8181
8182
8183

History

#1 Updated by JMC4789 4 months ago

  • Priority changed from Normal to High
  • Assignee set to Stenzek

This is likely the texture cache failing in some way, as evidence by it locking itself into 1x internal resolution.

The bisect, while it looks funny pointing to an even number, appears to be reasonable - https://dolphin-emu.org/download/dev/master/5.0-10000/

#2 Updated by JosJuice 4 months ago

  • Regression start set to 5.0-10000
  • Regression changed from No to Yes
  • Milestone set to Current

#3 Updated by Miksel12 22 days ago

When testing your fifolog on 5.0-14039 with XFB to texture only, I get a properly upscaled frame that is shifted to the right (with a green bar on the left) alternating with a pink frame.

#4 Updated by JMC4789 19 days ago

  • Status changed from New to Accepted

While I would prefer to fix the regression, forcing on XFB2RAM could be an option if this is the last blocker before a release.

#5 Updated by Miksel12 9 days ago

On line 243 in BPStruct.cpp copies are checked to make sure they fit in the EFB and are clamped to the EFB size if they are bigger, commenting out this clamping fixes this issue. No more green bar, no purple frame and upscaling. I'm pretty sure this has to do with the stride of the copy as 5.0-10000 changes how the stride is handled. No idea how it should be handled but I hope this can help somebody to fix this issue. JMC said that other invalidation issues stem from this PR like https://wiki.dolphin-emu.org/index.php?title=Star_Wars:_The_Clone_Wars. I can't test those but it would be interesting to see if this fixes those as well.

#6 Updated by JosJuice 6 days ago

  • Fixed in set to 5.0-14122
  • Status changed from Accepted to Fixed

Also available in: Atom PDF