ps2homebrew / Open-PS2-Loader

Game and app loader for Sony PlayStation 2
https://ps2homebrew.github.io/Open-PS2-Loader/
Academic Free License v3.0
2.03k stars 262 forks source link

[ISSUE][SLUS_202.13] Test Drive (2002) [NTSC-U] broken in r791 [HDD] #314

Open BloodRaynare opened 3 years ago

BloodRaynare commented 3 years ago

Disclaimer Issue reports for OPL version which were not downloaded from the official GitHub repo are not accepted. Before posting the issue confirm that you meet the below requirements.

Describe the issue If the game's launched without any modes, the BGMs won't play. If Mode 1 enabled, while it fixes the BGMs not playing, however it came with the side effects. It causes graphical glitches after restarting the races. (While there are chances that it doesn't occur after restarting races many times, but the probability of this glitch happening is more higher). Tried lower DMA modes (MDMA 0) and still, no dice.

Configuration (please complete the following information):

To Reproduce Steps to reproduce the behavior: Assuming the game launched with Mode 1 enabled on HDD,

  1. Pick any races
  2. Pause the game then choose "Restart Race"
  3. Wait for the loading screen. You should be greeted with the graphical glitches around the tracks. Weirdly, it doesn't happen with the cars though.

Expected behavior The graphical glitches shouldn't happen when you restart the races.

Screenshots obs64 2020-08-14 07-13-42-88 obs64 2020-08-14 07-14-52-25

Additional context Well, it seems doesn't occur on USB though (With Mode 1 enabled, of course). But, they both share the same problems. It looks like at some point the game would freezes (Most prominently happens during one of the FMV transition sequences). But probably that was because of Mode 2 entered the mix.

ElPatas1 commented 3 years ago

I tested the NTSC-U (SLUS-20213) and the PAL (SLES-50778) versions through internal HDD and SMB.

My setup: Console SCPH-30004 Original IDE Network Adapter IDE HDD Maxtor 80GB

@BloodRaynare, you are using the original IDE network adapter with an IDE HDD? Or the GameStar clone? or any other chinese clone network adapter?

Because the BGM works perfect for me in the internal HDD. It is not needed any Compatibility Mode, and i used always the default UDMA 4 speed.

This is my tests with internal HDD, the game US version works fine in OPL 0.7, 0.8, 0.9 and 0.9.2. Then is broken in OPL 0.9.3 and last Beta revision r1553.

In the game there are two parts of the San Francisco circuit were the game have broken the graphics completely when i restart the race, (all the city is broken with a yellow structure, except the vehicles).

Single Race - Navigation Challenge (San Francisco 1) Single Race - Drag Race (San Francisco 6) Underground (San Francisco 1)

This are the screenshots of San Francisco 1 (Navigation Challenge & Underground):

Test Drive 01 Test Drive 02

This is the ones from San Francisco 6 (Drag Race):

Test Drive 03 Test Drive 04

And i repeat, the music worked fine always for me with HDD.

The most curious is that the PAL version works fine in all versions, it works fine with OPL 0.9.3 and Beta r1553.

It is the NTSC-U version which is broken after OPL 0.9.2.

Then i tried the game through SMB and the results are very worse, both NTSC-U and PAL have mising graphics, some freeze, and missing BGM in some OPL version between OPL 0.9.3 and Beta r1553. With OPL 0.9 and 0.9.2 both versions they do not start, they are left with a black screen, i did not test the OPL 0.8 and 0.9 with SMB, but it is clear that they work much worse with SMB.

The question is looking for the commit between OPL 0.9.2 and OPL 0.9.3 where the NTSC-U version got broken with the internal HDD.

Best regards.

BloodRaynare commented 3 years ago

@ElPatas1 I'm currently using GameStar clone with SATA mod, as my genuine FXN (Foxconn) adaptor broke. but I seems to remember that I need at least Mode 1 for the BGMs to work even on my old 250GB Seagate Barracuda (which unfortunately died as well) with my genuine adaptor back in late 2018. Too bad, I didn't backup all of my CFGs from that drives back then so maybe I'm misremembering. Anyway, gonna try to roll back to 0.9.2 and then find the last revision between it and 0.9.3 which broke the US version and report it back.

ElPatas1 commented 3 years ago

@BloodRaynare, we do not accept reports made with a clone adapter, because it is proven that they have less compatibility and cause problems that do not occur with the original.

In this case it coincides that there is a problem using the original, surely in your case the problems are worse due to the clone adapter you are using.

I repeat the music works fine for me without using any compatibility modes, and the PAL version of the game works fine on all versions of the OPL, (BGM and graphics).

I have tested the game in all game modes, although it is true that i have not tested the game with advanced progress for see if the PAL version could have some problem in any advanced circuit or part of the game.

Best regards.

ElPatas1 commented 3 years ago

I've spend a lot of my time searching through all commits from OPL 0.9.2 to OPL 0.9.3, and found where the game broke in corruption graphics:

r785=Fine r787=Fine r788=Fine r789=Fine r790=Fine r791=Bad r792=Bad

It was broken at r791.

This is the r791 commit:

@sp193 Updated to use the new SIF register definitions, to support automatic screen switching and hiding, USB, HDD and APP modes are now always enabled, added a toggle for hiding advanced network options, fixed CDVDFSV initialization (Initializing SIF on the main thread causes the IOP reset to stall; refer to SCE docs), fixed open(), dopen(), read(), dread() and getstat() to first wait for the, drive to become ready (and for read, forever attempt to read) to be in-line with the original behaviour of CDVDMAN, DEV9 will no longer be powered-off during IGR, the SIF register BOOTEND flag will now be cleared before every IOP reset, within the EE core to ensure correct behaviour, updated network support to ensure that timeouts are accurate regardless of the current video mode.

Regarding the change in decision to clear the BOOTEND SIF register flag within eecore/iopmgr.c: The old comment on this might have been based on a bogus test result because I cannot replicate the documented fault anymore, at least not after the fix to CDVDFSV within this commit.

https://github.com/ps2homebrew/Open-PS2-Loader/commit/74f2cc6ee3fad23f8973fba86abbfb84f246e3c2

Best regards.

Phantasm90 commented 1 year ago

Tested on OPL Beta 1.2.0 2009: on USB the graphics don't glitch after restarting a race, but after restarting several times the game freezes before the race, on SMB the graphics glitch after one restart

exalye commented 1 year ago

has anyone found any solution to fix the freezes?

AKuHAK commented 1 year ago

check with this version 2024-db51e73 @exalye @Phantasm90

Phantasm90 commented 12 months ago

check with this version 2024-db51e73 @exalye @Phantasm90

I tested now on USB: the game last about 15 to 20 minutes before eventually freezing, after a number of restarts the game's graphics glitch and they don't get fixed until you restart again, also the car's SFX get muted after a few restarts as well

On SMB the game's graphics glitch after one restart and don't get fixed until you exit to the main menu and select the race again, freezing still happens though.

10522 commented 12 months ago

Test Drive [SLUS_202.13] (Version 1.00 & 2.00):

OPL Stable 1.1.0 SMB (Mode 6) - graphics glitch after one restart race OPL Stable 1.1.0 USB (Mode 6) - freezes and car's SFX get muted after a few restart race

OPL Beta 1.2.0 2016 SMB ISO (Mode 6) - graphics glitch after one restart race OPL Beta 1.2.0 2016 SMB ZSO (Mode 6) - works well OPL Beta 1.2.0 2016 USB (Mode 6) - freezes and car's SFX get muted after a few restart race (ISO & ZSO)

OPL Beta 1.2.0 2024 SMB ISO (Mode 6) - graphics glitch after one restart race OPL Beta 1.2.0 2024 SMB ZSO (Mode 6) - works well OPL Beta 1.2.0 2024 USB (Mode 6) - freezes and car's SFX get muted after a few restart race (ISO & ZSO)

My PS2 model is SCPH-90008. I use redump images and don't use PADEMU, VMC, GSM.

Phantasm90 commented 11 months ago

While SLUS_202.13 ZSO via SMB doesn't freeze and the graphics don't glitch the framerate dips on occasions during a race and the screen kinda shakes, it's hard to explain but is kinda like the ps2 is working too much to keep the graphics stable. This doesn't happen on OPL 790, the game plays perfectly fine.

10522 commented 11 months ago

@AKuHAK, @Phantasm90, @BloodRaynare

OPL DB 790 SMB & USB - works well even without compatibility modes

By the way, this issue is very similar to this one, there too OPL DB 914 SMB does not require any compatibility modes.

AKuHAK commented 11 months ago

OPNPS2LD can someone test this game with this build ?

10522 commented 11 months ago

@AKuHAK

OPL Beta 1.2.0 2037 SMB ISO - graphics glitch after one restart race OPL Beta 1.2.0 2037 SMB ZSO - works well even without Mode 6

Phantasm90 commented 10 months ago

OPL Beta 1.2.0 2048 SMB ZSO - I'm still having framerate issues and screen shaking while racing, mode 2 fixes the screen shake but the graphics glitch after a few restarts