socram8888 / tonyhax

PS1 savegame exploit
Do What The F*ck You Want To Public License
436 stars 24 forks source link

Weird resolution in Ps2 with NTSC-J games #56

Open tsb27dev opened 3 years ago

tsb27dev commented 3 years ago

Before opening this kind of issue, please ensure:

tonyhax version: 1.2.3 Installation method: Ulaunch Entry point game: Tony hawk´s 2 Console model: SCPH-39004 Integrity check: Yes BIOS version: If you can get to boot, which version of the BIOS does it report? Target game: If the bug happens when launching a game, what's its name and game code? Example: "Spyro 3 (SCES-02835)"

Bug explanation: NTSC-J games on Ps2 are being cut almost half of the screen. With pal burned games doesn't happen, in PSOne everything is fine

Goldanas commented 3 years ago

Which games in particular? Hermie Hopperhead looks totally fine on mine.

tsb27dev commented 3 years ago

Which games in particular? Hermie Hopperhead looks totally fine on mine.

Silent hill

tsb27dev commented 3 years ago

This happens with cool boarders 4 too

RAKtheUndead commented 3 years ago

My understanding is that this issue has already been mentioned in issue #25, relating to the way that PS2s will run out-of-region games in their native mode and that the workaround for now is to use PS1VModeNeg v1.01 to load your entry point game in NTSC and then load your backup through tonyhax.

There are some interesting music-related glitches with Castlevania: Symphony of the Night if you don't do this - the music doesn't loop at the right times, leaving several seconds of silence before restarting the track.

socram8888 commented 3 years ago

tonyhax-v1.3b.zip (compiled from 8239674ee5c9621dea47980d3b5ff5d0ae091905)

Could you please try with this version? I've changed many things. Amongst them, tonyhax now detects the game's region and automatically changes to PAL or NTSC, and it also uses now the BIOS default resolution and drawing boxes, so games that expect them and don't reset them should work.

tsb27dev commented 3 years ago

tonyhax-v1.3b.zip (compiled from 8239674)

Could you please try with this version? I've changed many things. Amongst them, tonyhax now detects the game's region and automatically changes to PAL or NTSC, and it also uses now the BIOS default resolution and drawing boxes, so games that expect them and don't reset them should work.

I'll try and later I'll drop the feedback

KSD1987 commented 3 years ago

tonyhax-v1.3b.zip (compiled from 8239674)

Could you please try with this version? I've changed many things. Amongst them, tonyhax now detects the game's region and automatically changes to PAL or NTSC, and it also uses now the BIOS default resolution and drawing boxes, so games that expect them and don't reset them should work.

Hi, I don't know how much difference 1.3b is supposed to do, but it doesn't seem to work properly for me.

The tonyhax screen doesn't appear at all and I get a black screen instead, though swapping with the backup it loads without problem.

But the NTSC games still have the same graphical issues as in 1.2.3 so it doesn't seem to make any difference. Everything works fine if I patch the game to be PAL, but some games can't be patched.

Tested on PAL PSOne with Superbike 1 and Tony Hawk's 4.

IMG_20210415_091014 IMG_20210415_091047

socram8888 commented 3 years ago

@KSD1987 I was using an approach which seemingly wasn't reliable enough for detecting the video region. I've changed it and fixed the issue with the image glitching in the tonyhax menu. Could you please try it? https://github.com/socram8888/tonyhax/files/6314115/tonyhax-v1.3b.zip

EDIT: for the record, this allows switching from NTSC to PAL and vice-versa in games that require it based on the region they were released. It can't force games to run in PAL or NTSC if they change the video on their own.

If the problem you are facing is that a NTSC game, that runs in NTSC, has graphical glitches because the console is PAL it will not solve it.

KSD1987 commented 3 years ago

Cool, thanks. :) Everything loads correctly now but the NTSC games still have graphical errors.

I noticed something odd in one game though, I don't know if it provides any information. Do different entry point games load the target any differently? Because one game that doesn't like the patch is Herc's Adventures, and when I load it with Tony Hawk's 4 the speech and cutscenes audio is completely missing, but when I load it with Superbike 1 it has all audio, but choppy and some of it repeats in cutscenes.

I opened an issue about it but my other account was flagged for some reason so it doesn't show.

socram8888 commented 3 years ago

Yes. The PS2 applies a different configuration to each game using a database in the firmware. Starting a new game like I am doing (without going through the BIOS) does not reload that database so the settings it's using for a certain entry point game might be more suitable for a particular game than others.

I only have a slim PS2 so this is something that I can't really investigate myself.

picadk commented 3 years ago

@KSD1987 I was using an approach which seemingly wasn't reliable enough for detecting the video region. I've changed it and fixed the issue with the image glitching in the tonyhax menu. Could you please try it? https://github.com/socram8888/tonyhax/files/6314115/tonyhax-v1.3b.zip

FYI on this particular version, on brunswick 2 pal, console pal ps2 39xxx i now get purple screen for a second and then get stuck on red screen. I saw a new folder freepsxboot in the release, should those files somehow be copied to the memory card in order for it to work correctly?

socram8888 commented 3 years ago

That's super odd. The purple screen is gone in that version. Please also update the entrypoint from the file in entrypoints/

This will be the last time such an update to the entry point is required, as I've made it future proof now.

Also I'm updating the documentation. The freepsxboot is unrelated and independent.

picadk commented 3 years ago

That's super odd. The purple screen is gone in that version. Please also update the entrypoint from the file in entrypoints/

This will be the last time such an update to the entry point is required, as I've made it future proof now.

Also I'm updating the documentation. The freepsxboot is unrelated and independent.

Yes youre right, sorry, it's blue not purple for a split second, then red. I've updated the entrypoint as well. I'll try with mcs files since i'm using raw save files without extension

socram8888 commented 3 years ago

Thanks for letting me know! I had tried in an emulator where it worked just fine, but you're right that it crashes on real hardware. Well back to the drawing board to improve loading times

socram8888 commented 3 years ago

@picadk That bug with the loading getting stuck has been solved.

More importantly, all games now use the very same code as entry point, which means games other than Tony Hawks (which already did) will load faster, as they now skip the memory card rescanning step.

picadk commented 3 years ago

@picadk That bug with the loading getting stuck has been solved.

More importantly, all games now use the very same code as entry point, which means games other than Tony Hawks (which already did) will load faster, as they now skip the memory card rescanning step.

Thank you very much for your work. In 1.3.1 on PS2 video mode is still not switching properly, but as you've said, support for PS2 is spotty, and also there is this ps1vneg approach which can be used, so we have a workaround.

Badore90 commented 3 years ago

Unfortunately the Ps2 alter in a bad way the Vertical coordinates of different region games.

It is perfectly normal, you get some cuts (and also if you're on CRT a PAL game displayed in NTSC mode will be very low on screen and viceversa).

You can solve making a backup and patching it with Zapper 2000: https://dl.consolecopyworld.com/?id=psx&file=zap5-64!zip

As a PAL/NTSC converter is completely useless for playing on Ps2. The Y-fix patch is read by the Ps2 though.

When converting a PAL game to NTSC, Y-fix is good as default (0 - 0) 99% of times. When converting to PAL instead (I'd never do that btw), you need to change the value to 21 - 21 in many games (for avoiding CDs wasting you can check the ISO on a PC emulator).