PCSX2 - Widescreen Game Patches
[Guide: How to convert .pnachs to other regions]

In this scenario, we'll port Rumble Roses widescreen patch from PAL to NTSC-U.

Step 1:
   

Get both .elf files for each region. Simply run the .iso in Windows explorer and drag them out, or use Elf Extract Tool.
NOTE: Sometimes there may be more than one .elf file. If the address you're looking for doesn't appear, look for any other .elf files in the .iso.

Step 2:
   

Open two instances of ps2dis (download here) side-by-side:
http://www.codemasters-project.net/porta...hp?view.23

I also like to change the font (Preference... > Font) to Courier New, Regular, 14, so that it's easier to read.
On the left, load the region .elf you're porting from, and on the right, the region of the .elf file you're porting to.
In the center, load the .pnach file. Remember, all you're doing is changing the addresses, not the values themselves.

Step 3:

   

The first address is 00104084, so on the left, go to that address.
You can simply press G on your keyboard, copy-paste it, and get there immediately.
The value for that address is 00000000, but that's not specific enough for us to find.
Usually, you can just use the direct value of the address, but that doesn't always work.
So let's try the one directly above it (because it's very close), 46007e86. On the right, Find [hex] String (Control + F) 867e0046, because it's simply the reversed pairs.

Step 4:
   

Look at the corresponding data on each side. They have to match up (or look very similar, some slight differences in numbers are fine), or it won't work. If you don't find very similar looking data, keep pressing F5 to instantly check the next address.

Replace the address in the .pnach with the corresponding address on the right. Repeat this for all addresses.
When you're finished, save the .pnach, and be sure to rename the CRC.

   

Test the ported code in PCSX2! If it works, congrats!

NOTE: If you successful port a code, please post it in this thread so I can archive it for everyone else.

If you weren't able to port a code, you can ask for help in this thread.

TIPS:
  • The first 4 digits for every address will almost always be the same. For example, the widescreen patch for Persona 4 NTSC-U is 0076111c, and its PAL counterpart is 0076461C.
  • If the address value is too generic, use values near that address.
  • Learn the three shortcuts G, Control + F, and F5, to make things easier.
  • In some rare cases, the addresses may already be the same! This is true for Devil May Cry.

Common widescreen values:
  • 3c013f80 (change to 3c013f40) / 803f013c to 403f013c
  • 3c023f80 (change to 3c023f40) / 803f023c to 403f023c
  • 3c033f80 (change to 3c033f40) / 803f033c to 403f033c
  • 3c043f80 (change to 3c043f40) / 803f043c to 403f043c
  • 3f800000 (change to 3f400000)
  • 3f4ccccd (change to 3f1aaaab) /cdcc4c3f to abaa1a3f
  • 3faaaaaa (change to 3fe38e38) /aaaaaa3f to 388ee33f
  • 3faaaaab (change to 3fe38e38) /abaaaa3f to 388ee33f

Matrix hack:

00000000 00000000 43AD1346 00000000
to
403F013C 00008144 43AD1346 02C60046

http://forums.pcsx2.net/Thread-PCSX2-Wid...#pid316003
Reply

Sponsored links

(04-05-2013, 02:11 AM)devina40 Wrote:
[Guide: How to convert .pnachs to other regions]
Open two instances of ps2dis (download here) side-by-side:

Alternatively:
1. Open the ELF that the hack was designed for in ps2dis .
2. Open the different region ELF in ELF Search Tool.
3. Copy the data from the address of each hack in ps2dis plus one or two surrounding instructions (in order) into the Search field of ELF Search Tool and set Big endian mode so you don't have to swap any numbers.
4. Copy the contents of the search field into the replace field and change the data as indicated by the PNACH.
5. Press search - if you get results then there's your ported PNACH, if not try setting the search range to non-executable and try again.
6. If you got a result then press the save button, select the pcsx2 cheats folder and test.

This would also allow you to search for FMV hacks that use diff values between regions just by replacing the variable scaling values in the search field with 'X's (although you'd still have to experiment to get the correct new values).

Just a suggestion - might be more reliable for the average joe though
Reply
^ Yeah, what you said.

Thanks for the BloodRayne patch, keep it up! If you ever want to make a FMV hack tutorial, go for it.
Asmodean can link to the guide in the first post.

If anyone wants to make a guide, or add useful information that can benefit widescreen development, feel free and it can be linked. Now's a great time.
Sharing is caring, and knowledge is power.
Reply
(04-05-2013, 04:09 AM)devina40 Wrote: If you ever want to make a FMV hack tutorial, go for it.
Asmodean can link to the guide in the first post.

I've been working on a more general way to construct FMV hacks and I've gotten a lot better at it, Blood Rayne's FMV hack is a actually good example, it only took me about 15 minutes to make. I'm currently trying to nail down the method a little more exactly so I can publish a more meaningful tutorial.

I'm also working on a better method to find widescreen hacks by using ELF Search Tool (which is how I located the 3D view matrix calculation function in Bloodrayne), I think I've got it nailed but I'll be trying it on a few more games as well before I publish.

The only caveat will be that I can't make any guarantee that tutorials will be super n00b friendly but I'll do my best to make them clear at least.

(04-05-2013, 04:09 AM)devina40 Wrote: Sharing is caring, and knowledge is power.

Word
Reply
Added to the OP, gj Smile
Reply
(04-05-2013, 02:00 AM)pelvicthrustman Wrote: My first widescreen hack Smile!

Bloodrayne (SLUS 204.61) includes 3D, partial HUD, FMV

Congratulations!
You have even taken your time to make a FMV hack! Thank you very much!
Reply
FMV's fix for

Kingdom Hearts: Re:Chain of Memories (SLUS-21799) A287DF74.pnach

[Image: kha3.jpg] [Image: kha1.jpg]

works well only in software mode, in hardware mode strange glitch

[Image: kha2.jpg]

---

now replaced only with vertical stretch value, because switching between hardware and software mode during FMVs play, cause glitches on black spaces

[Image: kha4.jpg]
Reply
Aww, that sucks, but oh well. Thanks for trying. Smile
If it works in software mode but not hardware, it might just mean that PCSX2 needs improvement in that area.

Do you know if you can take a look at FMV fixes for FFX, FFX-2, and Rule of Rose?
Also consider making an in-depth guide in the future. I could help proofread it in English if you want.
You could put it on your site, and we could link to it here. It would really benefit a lot of people.

One more minor thing: The Silent Hill 3 PAL flag on ps2wide.net is current American, not European.

For now, I'm just going to focus on porting over codes, and getting those .elf hacks ported over to .pnach.
Reply
(04-05-2013, 04:36 AM)pelvicthrustman Wrote: I've been working on a more general way to construct FMV hacks and I've gotten a lot better at it, Blood Rayne's FMV hack is a actually good example, it only took me about 15 minutes to make.
Can't say that it is good example, because right values is

Quote:patch=1,EE,002DA118,word,24091400
patch=1,EE,002DA11C,word,24037600

(04-05-2013, 11:17 PM)devina40 Wrote: Do you know if you can take a look at FMV fixes for FFX, FFX-2, and Rule of Rose?
Nope, because now I'm working on FMV's fix for RE Outbreak
Reply
(04-06-2013, 03:28 PM)nemesis2000 Wrote: Can't say that it is good example, because right values is

last I checked the scaling I produced is correct - although I need to actually figure out the the calculation instead of just guess- and check the aspect ratio. Care to discuss how you found the "right" values? Because I'll tell you I just throw the value into the right packet right before it gets made - which works great and is easy to locate. If you know a better way let me know.
Reply




Users browsing this thread: 12 Guest(s)