PCSX2 - Widescreen Game Patches
#21
If you edited the address data storing the game's used resolution values for X/Y in the ELF, and you had you're ps2 chipped, in theory it could be possible.

But in practice it wouldn't work, unfortunately. For one, the ps2's GPU wouldn't be able to handle that resolution.

The second reason being, even if the ps2's gpu could somehow manage to render that ppi, most games won't let you replace the original values in the ELF (without help from software) unless you're gonna load the ELF directly and not from inside the ISO, it will just go a save it as a copy of the original, so far as I know.
Reply

Sponsored links

#22
(03-18-2012, 04:28 PM)Asmodean Wrote: How did you end up finding the correct addresses btw? were you using Cheat Engine? You're most definitely on to something, fair play.
I'll be home later tonight, so I can get back to trying aswell myself.
Maybe you found a temp pointer to the correct address? is why it was changing?

Yeah I'm not sure if its a temp pointer I was originally using a tool that searches only the ps2 memory space but that didn't show good results outside of ffx and ffx2, so I ended up giving cheat engine a try and it showed some extra values the other program couldn't find in the 300xxx range so far this seems to only work on a few games like shadow hearts 2 and valkyrie profile 2 (though in vp 2 it seems to change the height instead of width maybe something to do with the 640x448 res).

btw in sh2 found the height setting Smile now i think its in aspect ratio



Attached Files Thumbnail(s)
                   
Reply
#23
(03-19-2012, 01:06 AM)hyakki Wrote: Yeah I'm not sure if its a temp pointer I was originally using a tool that searches only the ps2 memory space but that didn't show good results outside of ffx and ffx2, so I ended up giving cheat engine a try and it showed some extra values the other program couldn't find in the 300xxx range so far this seems to only work on a few games like shadow hearts 2 and valkyrie profile 2 (though in vp 2 it seems to change the height instead of width maybe something to do with the 640x448 res).

btw in sh2 found the height setting Smile now i think its in aspect ratio


Once I've gotten the widescreen working, I was considering trying to create a patch for FFX to swap into the high poly models for battles, in place of the low poly ones, as i've already added the need animations to the high poly ones for battle. Could be interesting.
Reply
#24
I just used the standard 3f4ccccd (width), 3f6eeeef (height), for pal the second value might be 3f888889 ? (I tried numerous combinations and it seems nearly every game uses the 3f4 value in some way).

Hopefully you can get better results (or the possibility to create a permanent pnach), let me know if it works in the pal version of the game too, there should only be 3 or so results in the 300xxxxxx range and only one of them control it.

Anyways I was thinking if we could find some kind of easy way to detect patterns it could maybe be added into some kind of widescreen hack in pcsx2 Tongue2 (sorta like how dolphin has one)

Edit:: found another game that works
Onimusha - Dawn of Dreams
       
Reply
#25
Hmmm 300xxxxx range? Wonder what's there, I always were interested only in 20000000-21FFFFFF, maybe the one you search through is GS memory, but if that soo, it'll not be too usefull, the result in gs can look same/similar in each game, but then again, if you cannot change it inside game memory range couse the engine doesn't store it anywhere to simply freeze it, not much of a widescreen patch from it. You could look what writes to the adress you find, maybe it would lead to anything better.
If the X and Y axis are stored near each other you can also search using wildcards, just search array of bytes with ?? for unknowns, just remembering to reverse bytes as this 0x3f4ccccd would look as cd cc 4c 3f in memory, as an theoretical example if Y axis would always be 2 bytes after X axis, and they would be always the same, you could search for such array of bytes(considering X=0x3f4ccccd and Y=0x3f6eeeef) "cd cc 4c 3f ?? ?? ef ee 6e 3f", which by searching for this pattern in choosen memory range could make you write a script for cheat table or trainer that would always work, even with the value stored in different adress every time, that's called AOB scan(array of bytes scan), and is fairy popular way of making universal trainers nowadays(ie. working in all future patches of the pc games as long as the pattern doesn't change) so it should have lots of tutorials if any needed, the bigger pattern you find, the more sure it'll be, soo check memory view of the adress you find, copy memory around, after it changes, repeat and compare searching for pattern, it could be something nice for a start, especially if a pattern would repeat in more games.

I had no luck, searching around that range now in Tales of the abyss, only found some graphics placement and a few crashes;P, but maybe it's just me, hopefully at least maybe some info from my post will turn usefull. Ah speaking of the devil;P the value strangely starts from 3f4... couse that's how float around 0.8 looks in hex;P, try for example this, if you don't have any calc for it(through CE can do that, if you get the adress type as float, and switch between hex/dec).
Anyway nice work, keep it going.;3
Reply
#26
Made somewhat of a breakthrough Smile

I couldn't try it on SH2 yet, as I was supposed to be home last night, but I'm still out visiting my brother. I got a permanent widescreen patch working for Kingdom Hearts Chain of Memories NTSC-U.

I also found something out regarding the FFX/X2 patches. You don't need to alter the height (Y axis) of the screen at all. It only distorts the image, and you lose some view off the top, and bottom, of the screen.

See below in the screenshots. The initial value used for the FFX patch for 16:9 is wrong. The way I found it out was, I switch the game to 4:3, and then kept changing my widescreen width value, to match the 4:3 rendering perfectly.

Pretty happy with these results. I've to wait till I get home to test it for my own games though.

You will notice the default method used for creating the widescreen 16:9 patch below aswel, altering the Y axis, so the rendering is distorted.

Click blue image bar to enlarge

[Default No Patch]
[Image: defaultstretch.png]

[Currently used 16:9 patch values]
[Image: usualwidepatch.png]

[Correct native aspect ratio 4:3]
[Image: default4to3.png]

[Corrected aspect ratio for 16:9 patch]
[Image: properwidescreen.png]



Attached Files
.pnach   A287DF74.pnach (Size: 135 bytes / Downloads: 3.320)
Reply
#27
not bad. but can i have the complete projection matrix data. i might wanna patch it weird. j/k Laugh

and well yeah usually it's enough to scale the x-axis smaller. the first patch seems to scale both.
Reply
#28
How did you guys find the initial address? So far no luck for me Sad

I wonder if 2D game like Odin Sphere work?
Reply
#29
(03-19-2012, 04:07 PM)xstyla Wrote: not bad. but can i have the complete projection matrix data. i might wanna patch it weird. j/k Laugh

and well yeah usually it's enough to scale the x-axis smaller. the first patch seems to scale both.

Tongue


I'll make amended FFX widescreen patches when I get home, and upload them.



@naoan
The aspect ratio addresses only alter 3d rendering mate. You would need to find the 2d fixed values to alter 2d, it can be done the same way, just with different addresses of course. You could test it with the HUD of a 3d game, as that's in 2d.
Reply
#30
No I mean in other game beside Odin Sphere (or any other 2D), how'd you find the aspect ratio address if gsdx may not reporting true resolution value?
Reply




Users browsing this thread: 17 Guest(s)