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

rsx: Program Fixes #4844

Merged
merged 8 commits into from
Jul 7, 2018
Merged

rsx: Program Fixes #4844

merged 8 commits into from
Jul 7, 2018

Conversation

kd-11
Copy link
Contributor

@kd-11 kd-11 commented Jul 2, 2018

Details

  • Fix nv308a::color implementation
  • Vertex program decompiler : Fix branch target extraction
  • Vertex program decompiler : Fix double destination writes
  • Vertex program decompiler : More human-readable code generated from masked writes
  • Vertex program analyser rewritten [WIP]
  • Silence unnecessary log spam (RSX: Depth texture bound to pipeline with unexpected format 0x94 #4398)

Results

  • Fixes GL/Vulkan: Afro Samurai / Broken graphic #3323
  • Largely reduces number of generated shaders in some titles with infinite compilation. Corner cases exist so some titles still try to generate new shaders but they are actually false positives (they are not actually saved to the cache at all). This will be fixed before merge.

NOTE: Contains the patch from #4830. This is not a replacement - the patch will be removed before merging. It makes testing some titles easier if they are unstable on master.

@spyropt
Copy link

spyropt commented Jul 2, 2018

god of war collection II
image

E {rsx::thread} RSX: shaders_cache: vertex program has more than 32 jump addresses. Entry not saved to cache
RPCS3.log.gz

@Emulator-Team-2
Copy link

Emulator-Team-2 commented Jul 2, 2018

Edit: Fixed

Regression in Dragon Ball Z: Burst Limit.
bez tytulu1
Log:
RPCS3.log.gz

@kd-11
Copy link
Contributor Author

kd-11 commented Jul 2, 2018

@spyropt the error does not directly affect graphics, so something else is seemingly wrong. Attach rrc capture. Also check the other games in the collection - they should render correctly from my testing (I dont have sparta unfortunately)

@kd-11
Copy link
Contributor Author

kd-11 commented Jul 2, 2018

Same goes for the dbz regression. Provide RRC capture as well.

@Emulator-Team-2
Copy link

RRC capture:
Dragon Ball Z: Burst Limit
capture.zip

@MSuih
Copy link
Member

MSuih commented Jul 2, 2018

X-Men Origins: Wolverine and THPS HD have regressed, emulator freezes and memory usage climbs to 10+ GB as soon as main menu is reached. Didn't see anything out of ordinary in logs but I'll attach one regardless. This might affect other titles as well but I don't have any more time for testing tonight.
RPCS3.log.gz

@bubbavox bubbavox mentioned this pull request Jul 2, 2018
@bubbavox
Copy link

bubbavox commented Jul 2, 2018

Tested Demon's Souls a little with SPU LLVM.... Played for ~30 min; no crashes. I didn't experiment too much with different settings. Performance was improved from 6718 in Boletarian Palace entrance (usually one of the worst areas), but Penetrator Archstone area was very stuttery. Identical experience with Neko's latest PR #4816 . kd-11's previous PR "praise miyazaki" froze at loading screen.

i5-3570K @ 4.5 // GTX 660 SLI (2)

@spyropt
Copy link

spyropt commented Jul 2, 2018

@kd-11 from my tests it's just ghost of sparta
capture.zip

@Kravickas
Copy link
Contributor

Kravickas commented Jul 2, 2018

Watch Dogs first time ingame
obrazek

@Xcedf
Copy link

Xcedf commented Jul 2, 2018

Resistance 2 regression #4711 fixed on this PR
game has some major graphical issues yet unlike Resistance 1 Demo the things happening on screen are understandable
4
5

@theoldsport
Copy link

theoldsport commented Jul 2, 2018

Unfortunately the texture flicker and infinite shader generation is still present in Condemned 2
image

@Xcedf
Copy link

Xcedf commented Jul 2, 2018

Seems also fixes texture flickering and caused by that enormous amount of shader cache in GoW 3 Demo
6

@raveskirza
Copy link

raveskirza commented Jul 3, 2018

Beyond2souls: After selecting new game from Menu, the emulator consumes all the system virtual memory and freezes the system. Sometimes the system recovers, other times have to hard restart.
·F 0:04:30.630078 {rsx::thread} class std::bad_alloc thrown: bad allocation
Attached log
RPCS3.zip

EDIT: Fixed in latest commit

@ScorchEmber256
Copy link

ScorchEmber256 commented Jul 3, 2018

Fixes #4827, Ratchet and Clank: A Crack In Time now proceeds ingame however crashes after a few minutes of gameplay from #3387
r c
2

log: RPCS3.zip

@legend800
Copy link

legend800 commented Jul 3, 2018

Bad news first - Conan BLES00076 has missing ingame gfx. Previously it had bad/missing coloring to the textures but now the whole screen is white.

conan

But the good news (really fantastic news) is that TMNT Reshelled finally has working textures!

Before:
master

After:
pr

The only issue that remains is missing effects - Krang's eye lasers, Stockman's goo gun, foot soldier death explosions, fire hydrant's water, etc. These are missing on master as well. The real strange thing here (hopefully a clue) is that the effects CAN show sometimes. Example: Level 1: no effects, after hitting exploding barrel, partial effects are shown to end of level. Level 2: No effects, after hitting fire hydrant, FULL effects are shown for the rest of level. Weird.

2018-07-02 20_35_32-window

2018-07-02 20_38_28-window

@Xcedf
Copy link

Xcedf commented Jul 3, 2018

Yakuza 3, same issue as Ghost of Sparta above
4
E {rsx::thread} RSX: shaders_cache: vertex program has more than 32 jump addresses. Entry not saved to cache

@Xcedf
Copy link

Xcedf commented Jul 3, 2018

On this PR Sonic Unleashed ingame for me for the first time, don't get stuck on shader ccompile
6

@isshininu
Copy link
Contributor

Silent Hill Downpour so broken on this build i need to use my power button in order to exit rpcs3

RPCS3.zip

@MarioSonic2987
Copy link
Contributor

Sonic Generations Demo goes further. It goes until title screen:

Before:
image

After:
image

@kd-11
Copy link
Contributor Author

kd-11 commented Jul 3, 2018

A bunch of regressions and problems should be fixed now. Retest.

Copy link

@NeoSlyde NeoSlyde left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Improves Sonic Unleashed !
I approve !

@Emulator-Team-2
Copy link

Emulator-Team-2 commented Jul 3, 2018

@kd-11
Regression in Yakuza 3 is fixed in the latest commit.
No change in Dragon Ball Z: Burst Limit.

New RRC capture:
Dragon Ball Z: Burst Limit
Loading screen:
capture.zip

@isJuhn
Copy link
Contributor

isJuhn commented Jul 3, 2018

Latest commit cc8ab13a7f38d03ffeadc620355eb8f1a5638489 makes R&C ACiT crash my driver on going ingame, without that commit, I can play the game pretty well.

@stride21
Copy link

stride21 commented Jul 3, 2018

Resistance 3 no longer crashes with an error message, now it gets an infinite loop and then crashes without error message.

@MarioSonic2987
Copy link
Contributor

image
God of War: Ghost of Sparta regression is fixed.

@kd-11
Copy link
Contributor Author

kd-11 commented Jul 3, 2018

For the non-graphical bugs where emulator hangs or misbehaves, enable "log shader programs" debug option and attach vp_analyser.bin from your shaderlog folder so I can inspect the contents directly.

@legend800
Copy link

Can't get ingame with Conan now on latest commit (previously white screen). Crashes the emu (no log) as soon as I try to load into gameplay now (using Vulkan, default settings).

E {rsx::thread} RSX: Inadequate buffer length submitted for a compute operation.Required=42467328 bytes, Available=33554432 bytes x2 E {rsx::thread} RSX: Blit request denied because the source region does not fit!

2018-07-03 08_28_05-

@isJuhn
Copy link
Contributor

isJuhn commented Jul 3, 2018

ACiT driver crash as of latest commit
vp_analyser
log

kd-11 added 4 commits July 6, 2018 19:35
- Fix double destination writes on conditional write masking
- Fix codegen to simplify simple scalar comparisons vs vector functions
@marosis
Copy link

marosis commented Jul 6, 2018

I must say: this emulator is epic. Great work👍

@Kravickas
Copy link
Contributor

Last commit is using v5 spu cache from neko merged pr, so be cautious with regression reports

@AniLeo
Copy link
Member

AniLeo commented Jul 6, 2018

@Emulator-Team-2 Thanks for reporting

@RPCS3 RPCS3 deleted a comment from allens39 Jul 6, 2018
@RPCS3 RPCS3 deleted a comment from Emulator-Team-2 Jul 6, 2018
@RPCS3 RPCS3 deleted a comment from allens39 Jul 6, 2018
@jon-reid
Copy link

jon-reid commented Jul 6, 2018

Had a video driver crash with 26c5661

RDR:GOTY win10, nvidia 6600k, tsx enabled

{rsx::thread} class std::runtime_error thrown: Assertion Failed! Vulkan API call failed with unrecoverable error: Device lost (Driver crashed with unspecified error or stopped responding and recovered) (VK_ERROR_DEVICE_LOST)
(in file c:\projects\rpcs3\rpcs3\emu\rsx\vk\VKHelpers.h:1083)

RPCS3.log.gz

Event log was unsurprisingly useless:

Display driver nvlddmkm stopped responding and has successfully recovered.

@kd-11
Copy link
Contributor Author

kd-11 commented Jul 6, 2018

Usually triggered by infinite loop in shaders. Not sure what to do about those since the games are intentionally doing this and most of the time there is extra runtime information to consider. They can be easily detected though; maybe a recursion watcher can be added to abort if the program loops over one condition more than a set number of tries.

@kd-11 kd-11 changed the title [WIP] rsx: Program Fixes rsx: Program Fixes Jul 7, 2018
@legend800
Copy link

@Crispy81 "used to work way back". Why are you spamming this PR with random, unrelated regressions? Don't do that again. Go follow the instructions and write up a proper defect for regressions.

@Zangetsu38
Copy link
Contributor

Zangetsu38 commented Jul 12, 2018

This Pr have fixed finnaly Bleach ingame
bleach 1
bleach jap

Copy link

@robsoncs10 robsoncs10 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

gabriel

@Javix5
Copy link

Javix5 commented Dec 3, 2019

I've got a i5 7400 and GTX 1060 6 gb. Sonic Unleashed is possible play it? I tried but min 3fps max 23 fps at gameplay. I know it's Ingame. I hope when it'll be playable, my cpu can support it

@RainbowCookie32
Copy link
Contributor

Don't spam random pull requests with this, go to our Discord server instead: https://discord.me/RPCS3

@RPCS3 RPCS3 deleted a comment from ixDossRi Nov 12, 2020
@RPCS3 RPCS3 deleted a comment Jan 8, 2022
@RPCS3 RPCS3 locked as spam and limited conversation to collaborators Jan 8, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

GL/Vulkan: Afro Samurai / Broken graphic