PCSX2 / pcsx2_patches

Patches for Widescreen, No Interlace etc go in here, syncs with the main repo
124 stars 65 forks source link

Jak 2 PAL WS: Patch problem or not? #341

Open PeterDelta opened 2 months ago

PeterDelta commented 2 months ago

Here https://github.com/PCSX2/pcsx2_patches/pull/340 it is indicated that it is a matter of the patch. But if you start a new game without a memory card or start a new game without saving, this error does not occur. It only happens with the game we have saved (this also happens in my game), and it also seems to be something random since it doesn't always happen. Maybe at some point the save game got corrupted. I have seen it on other occasions. The same thing happens in Jak 3, when selecting the progressive from the menu, the letters become like in Jak 2.

With this solution we will not have problems because it is not necessary to change the progressive mode in the menu. At first it starts in ntsc mode and when you press start in the main menu it will change to 480p, and you can also select 50 hz to have a resolution of 640x512

[Widescreen 16:9] gsaspectratio=16:9 author=ElHecht description=Widescreen Hack patch=1,EE,00367be8,word,3c033f1f // 3c033f00 zoom patch=1,EE,20826F10,extended,0014A709 // 001479C1 force native 16:9 mode patch=1,EE,20B63FE0,extended,43A80000 // 436DE43C menu fix patch=1,EE,20B665B0,extended,43440000 // 4309CAD8

[480p Mode] gsinterlacemode=1 author=PeterDelta description=Forces progressive scan mode 480p at startup. patch=1,EE,E0010002,extended,004A2A08 patch=1,EE,10826F14,extended,00143305 patch=1,EE,10A14B34,extended,00143305 patch=1,EE,10826F0C,extended,001497E1 patch=1,EE,E0012799,extended,00A14A88 //allows choose 50 Hz for a resolution of 640x512 patch=1,EE,10826F0C,extended,00142799

refractionpcsx2 commented 1 month ago

just to note, if you're forcing an ingame 480p mode and the emulator registers it as such, I'd rather we didn't force the gsinterlacemode, since if the game is progressive, it won't deinterlace anyway, but if there are then some interlaced screens (for whatever reason) it will break them.

So in the case of 480p patches, it would be better to leave gsinterlacemode untouched. I think it's only really needed if the game is being forced in to 240p or still 448 interlaced, but the height is still 448 and the picture is not interlaced, otherwise that will (rightfully) confuse it.

PeterDelta commented 1 month ago

In this game you can play in progressive both in 448 if you choose NTSC and in 480 if you choose PAL. The reason for using it is so that the image is centered, in PAL the image looks like this:

Activated from the menu with interlacing set to "automatic" Jak II - Renegade_SCES-51608_20240515115516

By having the interlacing set to "none" it is automatically centered: Jak II - Renegade_SCES-51608_20240515115234

Using gsinterlacemode fits the image perfectly to the screen without having to change the screen centering menu settings. The patch as created works in NTSC at 640x448 so the image is correct without gsinterlacemode, the only thing is that if you want to put it in PAL at 480 to see the larger scenes, for example, it would look like the gameplay in the first image . Does gsinterlacemode do anything else besides changing the interlacing to "none"?

refractionpcsx2 commented 1 month ago

does the game not report 480p? because that looks like it's reporting 448, so it gets cut off.

PeterDelta commented 1 month ago

It seems not, but it's probably a game thing, not a pcsx2 thing. I'd have to check it out on the PS2. I can do it later if necessary.

refractionpcsx2 commented 1 month ago

Ideally the patch should make the game update the videomode to 480p, but I guess in PAL, that means running too fast, I guess.

PeterDelta commented 1 month ago

I don't think it affects the speed in this case because the progressive is native and I use the directions that the game uses in the options menu (it is not forced or I modify anything that does not change the video mode or the resolution of the game itself). A priori I can't think of how I could make the game update the video mode to 480p, pcsx2 reports 480 in PAL with automatic interlacing, but as you say it seems that the image does not adjust. It occurs to me to try to force the resolution from 448 to 480, but unless it is essential and it looks good, I don't like to do it because of tests I have done with other games... but I can investigate. The fact is that using gsinterlacemode all this is solved and is perfect with any option we choose, but I wonder if this improvement is detrimental to your initial concern...

refractionpcsx2 commented 1 month ago

it's strange why the height is getting cut off differently between interlace modes, it shouldn't really be any different, unless I messed up, or it's getting confused with the video mode being sent. if it's PAL it's possible 480p is less height than the PAL standard 512, so maybe the real Progressive is being cut off, but then the question is why that is happening :/

Just to be clear, there are some no-interlace patch related hacks when you set deinterlacing to none, but should only be if it's detected it as a no interlacing patch, other than that there should be zero difference in height caused by that setting.

PeterDelta commented 1 month ago

Well, for what it's worth, I've seen this behavior in several games when forcing progressive. One from the crash series comes to mind, the max payne 1 that my first patch forcing the progressive, I had to correct the image in all scenarios until I discovered that setting the interlacing to "none" perfectly fit the image and then I removed those fixes. What we can deduce is that the "none" interlacing option fits the image perfectly while the rest of the options have this problem with the progressive in some games.

refractionpcsx2 commented 1 month ago

tbh it doesn't surprise me if they just cut it off, most of the widescreen modes are just cutting bits off to make it look not-stretched, so maybe they didn't resize the screen properly for 480p mode.

PeterDelta commented 1 month ago

True, I'm inclined to think that same, it's the most logical conclusion. In this case, in addition to a crop, if you compare both images, a stretch is also perceived. I wonder if the same "none" interleaving technique can be applied in the other interlacing modes so that it is always corrected?