PS3 Compatibility List - PS2 on PS3

It's possible...but haven't looked into it yet. I will add it to my list of games to check.

@pokegts90 Great news for Shadow Hearts 2/3: I managed to find exactly where the analog freeze is happening in the code. It seems the problem lies in some multiplication function when analog stick is executed. This operation is not touched when using d-pad, so it explains why it affects analog only. It was pretty tricky to locate because accuracy commands (0x0F and 0x10) have no effect on fixing it at all... I *hope* I can figure out a workaround for this, otherwise we're out of luck...but I am optimistic. :)
Which version of SH you have US? EU? Probably i will be able to help with debug symbols, so you will get function names. That should help little bit, but i need to know your game version.
 
Does webman mod will auto load the config that I downloaded?I don't remember how the Iso Name.

The latest webMAN MOD installer or updater and the PS2 CONFIG database now includes the CONFIG.

If you update to the latest binaries you will get the CONFIG placed on the correct location.

If the file name of your ISO includes the title id (SLUS_201.51), webMAN will apply the CONFIG automatically.

If the ISO does not include the title id, you will have to copy the CONFIG to the same folder of your ISO, with the same file name + .CONFIG
Example 1:
/dev_hdd0/PS2ISO/Klonoa 2 (SLUS_201.51).iso
/dev_hdd0/PS2ISO/Klonoa 2 (SLUS_201.51).iso.CONFIG <= it's created automatically

Example 2:
/dev_hdd0/PS2ISO/Platform/Klonoa 2.iso
/dev_hdd0/PS2ISO/Platform/Klonoa 2.iso.CONFIG <= must be copied manually

Example 3:
/dev_hdd0/PS2ISO/Klonoa 2/SLUS_201.51.BIN.ENC
/dev_hdd0/PS2ISO/Klonoa 2/SLUS_201.51.CONFIG
/dev_hdd0/PS2ISO/Klonoa 2/SLUS_201.51.PNG
 
Which version of SH you have US? EU? Probably i will be able to help with debug symbols, so you will get function names. That should help little bit, but i need to know your game version.
I am working with From the New World SLUS-21326 right now. Quick question, can 0x0A commands patch opcodes loaded in after boot? Pcsx2 shows these functions non-color coded and in plain white with no differentiation between functions. Is this syscall stuff? Generally confused by this, and I think game might require a 0x0B command instead. Anyways, it *seems* problematic function starts at 0041A460 (called at 004262DC). I tried noping 004262DC, and I could swear this would fix it, but no change happens...so I assume my 0x0A command is doing nothing. These functions are loaded in upon loading a save game, and main menu doesn't have them loaded yet.

Ohh, there are different ELFs on disc. This data is probably loaded in from "FIELD.CPX" on disc.
 
Last edited:
I am working with From the New World SLUS-21326 right now. Quick question, can 0x0A commands patch opcodes loaded in after boot? Pcsx2 shows these functions non-color coded and in plain white with no differentiation between functions. Is this syscall stuff? Generally confused by this, and I think game might require a 0x0B command instead. Anyways, it *seems* problematic function starts at 0041A460 (called at 004262DC). I tried noping 004262DC, and I could swear this would fix it, but no change happens...so I assume my 0x0A command is doing nothing. These functions are loaded in upon loading a save game, and main menu doesn't have them loaded yet.

Ohh, there are different ELFs on disc. This data is probably loaded in from "FIELD.CPX" on disc.
For now i have only functions for SH Covenant SLUS_210.41, hope that will help little bit maybe. White in pcsx2 mean it was loaded after main elf (actually that pcsx2 don't found function there in initial scan).
Not sure that issue will be FIELD only. Does freeze happen only outside of fights, and movies, etc?
0x0A should hit them fine, i think i did that for some games that use overlay, even WRC games patch that way.
So here are pad related functions for SLUS_210.41

Code:
CPad::Initialize((int,int))                        0x22C9A0
CPad::ResetSystem((void))                        0x22CA90
CPad::Polling((void))                            0x22CB10
CPad::QueryInterface((int,int))                    0x22CBB0
CPad::SetAssign((int,ushort const *))            0x22CC30
CPad::GetAssign((int,ushort *))                    0x22CD00
CPad::ResetAssign((int))                        0x22CDD0
CPad::GetActive((int))                            0x22CEA0
CPad::SetActDirect((int,uchar const *))            0x22CED0
CPad::Clear((int))                                0x22CF30
CPad::ClearRepeatCounter((int))                    0x22CFD0
CPad::CPad((int))                                0x22D060
CPad::~CPad((void))                                0x22D090
CPad::Update((void))                            0x22D0F0
CPad::MakeReal((ushort))                        0x22D380
CPad::MakeRepeat((void))                        0x22D410
CPad::Enable((void))                            0x22D550
CPad::Disable((void))                            0x22D6B0
CPadMan::CPadMan((void))                        0x22D810
CLibpad::~CLibpad((void))                        0x22D8F0
CPadMan::~CPadMan((void))                        0x22D940
CPadMan::Invalidate((void))                        0x22D9C0
CPadMan::Open((int,int))                        0x22D9E0
CPadMan::Close((void))                            0x22DA50
CPadMan::Polling((void))                        0x22DAB0
CPadMan::Disconnected((CLibpad::StateType))        0x22DC20
CPadMan::CheckVibration((void))                    0x22DD10
CPadMan::InitVibration((void))                    0x22DD50
CPadMan::WaitVibration((void))                    0x22DD90
CPadMan::CheckActuator((void))                    0x22DDF0
CPadMan::InitActuator((void))                    0x22DE70
CPadMan::WaitActuator((void))                    0x22DEB0
CPadMan::CheckPressMode((void))                    0x22DF10
CPadMan::InitPressMode((void))                    0x22DF50
CPadMan::WaitPressMode((void))                    0x22DF90
CPadMan::Stable((CLibpad::StateType))            0x22DFF0
CPadMan::Read((void))                            0x22E0C0
CPadMan::ClearActDirect((void))                    0x22E170
CPadMan::SetActDirect((uchar const *))            0x22E1B0
CAnalogStick::CAnalogStick((void))                0x22E220
CAnalogStick::~CAnalogStick((void))                0x22E230
CAnalogStick::Clear((void))                        0x22E280
CAnalogStick::Make((uchar,uchar))                0x22E2A0
CAnalogStick::Make((ushort))                    0x22E380
CAnalogStick::Calculate((void))                    0x22E430
 
For now i have only functions for SH Covenant SLUS_210.41, hope that will help little bit maybe. White in pcsx2 mean it was loaded after main elf (actually that pcsx2 don't found function there in initial scan).
Not sure that issue will be FIELD only. Does freeze happen only outside of fights, and movies, etc?
0x0A should hit them fine, i think i did that for some games that use overlay, even WRC games patch that way.
So here are pad related functions for SLUS_210.41

Code:
CPad::Initialize((int,int))                        0x22C9A0
CPad::ResetSystem((void))                        0x22CA90
CPad::Polling((void))                            0x22CB10
CPad::QueryInterface((int,int))                    0x22CBB0
CPad::SetAssign((int,ushort const *))            0x22CC30
CPad::GetAssign((int,ushort *))                    0x22CD00
CPad::ResetAssign((int))                        0x22CDD0
CPad::GetActive((int))                            0x22CEA0
CPad::SetActDirect((int,uchar const *))            0x22CED0
CPad::Clear((int))                                0x22CF30
CPad::ClearRepeatCounter((int))                    0x22CFD0
CPad::CPad((int))                                0x22D060
CPad::~CPad((void))                                0x22D090
CPad::Update((void))                            0x22D0F0
CPad::MakeReal((ushort))                        0x22D380
CPad::MakeRepeat((void))                        0x22D410
CPad::Enable((void))                            0x22D550
CPad::Disable((void))                            0x22D6B0
CPadMan::CPadMan((void))                        0x22D810
CLibpad::~CLibpad((void))                        0x22D8F0
CPadMan::~CPadMan((void))                        0x22D940
CPadMan::Invalidate((void))                        0x22D9C0
CPadMan::Open((int,int))                        0x22D9E0
CPadMan::Close((void))                            0x22DA50
CPadMan::Polling((void))                        0x22DAB0
CPadMan::Disconnected((CLibpad::StateType))        0x22DC20
CPadMan::CheckVibration((void))                    0x22DD10
CPadMan::InitVibration((void))                    0x22DD50
CPadMan::WaitVibration((void))                    0x22DD90
CPadMan::CheckActuator((void))                    0x22DDF0
CPadMan::InitActuator((void))                    0x22DE70
CPadMan::WaitActuator((void))                    0x22DEB0
CPadMan::CheckPressMode((void))                    0x22DF10
CPadMan::InitPressMode((void))                    0x22DF50
CPadMan::WaitPressMode((void))                    0x22DF90
CPadMan::Stable((CLibpad::StateType))            0x22DFF0
CPadMan::Read((void))                            0x22E0C0
CPadMan::ClearActDirect((void))                    0x22E170
CPadMan::SetActDirect((uchar const *))            0x22E1B0
CAnalogStick::CAnalogStick((void))                0x22E220
CAnalogStick::~CAnalogStick((void))                0x22E230
CAnalogStick::Clear((void))                        0x22E280
CAnalogStick::Make((uchar,uchar))                0x22E2A0
CAnalogStick::Make((ushort))                    0x22E380
CAnalogStick::Calculate((void))                    0x22E430
Freeze only happens outside of battles in "field" mode due to some weird analog calculation or something. I managed to locate where it got locked up (after many attempts at memory dumps), but this can help for sure. Probably one of those analog stick ones at the end. I will check this out on Covenant as issue is very similar and caused by the same thing. Thanks!

EDIT: Quick dive into Covenant shows last function (CAnalogStick::Calculate) has same math functions as the FtNW function I landed on! Gonna mess with this one on netemu for now. Good stuff!
 
Last edited:
I have an really dumb doubt here,I tested 3 games that according to the compatibilty list are unplayable and they indeed are,but they give me a completelly different issue,why that happened?

Zatch Bell: Mamodo Fury

Accordin to the list game freezes after ps2 logo,but when I tested it,it shut down my console.

Magic Pengel - The Quest For Color

Compatibiliy list-
After the tutorial the game will fail to display any graphics correctly.

But When I tested-
Game Freezes on now loading screen. In the beggining of the game.

Why this happened?Not that makes any difference,I just curious as of why I got a different issue.
 
Last edited:
Shadow Hearts: Covenant (SLUS-21041)
Code:
3D 00 00 00 34 12 00 00 0A 00 00 00 01 00 00 00
7C 06 4F 00 FA FF 00 45 00 00 00 00 00 00 00 00
Fixes analog stick freeze. This is still new and barely tested, so treat this as an experiment. This is just for disc 1 but I'll do the other disc, other regions, and From the New World when I can.

Minor issue is character will flicker the moment the stick hits the analog "sweet spot". As a reference, the "sweet spot" seems to be very slightly to the left and right of halfway up and down y-axis. Kind of hard to explain where it is...but if your left analog stick is in this spot in "field" mode, character will flicker slightly. It is not bothersome, and *only* happens when game would normally freeze, so it doesn't happen often if you're not actively trying to find that sweet spot.

But yes...so happy I got to the bottom of this. Thanks @kozarovv for the debug symbols on those functions. It sped up a lot of debugging on my part...days at least. :)

EDIT: As a note, there may be a better way around this to avoid the character flicker. Just wanted to post at least something for now. :cool:
 
Last edited:
Can you test that? Looks like i made typo:

SCES_524.24 Ace Combat 5 - Fix Texture issues
Code:
3D 00 00 00 57 44 00 00 0B 00 00 00 02 00 00 00
76 02 00 00 5C 01 00 00 20 00 00 00 4B 00 60 2C
48 49 88 00 4B 00 68 2C 48 4A 88 00 4B 0C 68 2C
48 4B 88 00 4A 00 02 FF 4A 00 02 FF 4B 00 60 2C
4B 00 68 2C 4B 0C 68 2C 4A 00 02 FF 4A 00 02 FF
48 49 88 00 48 4A 88 00 48 4B 88 00 6E 01 00 00
20 04 00 00 20 00 00 00 00 00 00 00 46 01 15 01
8F A2 00 20 24 03 00 01 00 00 00 00 C6 40 00 E4
46 00 A0 34 00 00 00 00 10 40 00 96 46 01 15 01
8F A2 00 20 24 03 00 01 14 43 00 3A C6 40 00 E4
46 00 A0 34 45 02 00 0C 00 00 00 00

SLUS_208.51 Ace Combat 5 - Fix Texture issues
Code:
3D 00 00 00 57 44 00 00 0B 00 00 00 02 00 00 00
76 02 00 00 5C 01 00 00 20 00 00 00 4B 00 60 2C
48 49 88 00 4B 00 68 2C 48 4A 88 00 4B 0C 68 2C
48 4B 88 00 4A 00 02 FF 4A 00 02 FF 4B 00 60 2C
4B 00 68 2C 4B 0C 68 2C 4A 00 02 FF 4A 00 02 FF
48 49 88 00 48 4A 88 00 48 4B 88 00 80 0E 21 00
D8 20 00 00 20 00 00 00 00 00 00 00 46 01 15 01
8F A2 00 20 24 03 00 01 00 00 00 00 C6 40 00 E4
46 00 A0 34 00 00 00 00 10 40 00 96 46 01 15 01
8F A2 00 20 24 03 00 01 14 43 00 3A C6 40 00 E4
46 00 A0 34 45 02 00 0C 00 00 00 00

SLPS_254.18 Ace Combat 5 - Fix Texture issues
Code:
3D 00 00 00 57 44 00 00 0B 00 00 00 02 00 00 00
76 02 00 00 5C 01 00 00 20 00 00 00 4B 00 60 2C
48 49 88 00 4B 00 68 2C 48 4A 88 00 4B 0C 68 2C
48 4B 88 00 4A 00 02 FF 4A 00 02 FF 4B 00 60 2C
4B 00 68 2C 4B 0C 68 2C 4A 00 02 FF 4A 00 02 FF
48 49 88 00 48 4A 88 00 48 4B 88 00 6E 01 00 00
E0 02 00 00 20 00 00 00 00 00 00 00 46 01 15 01
8F A2 00 20 24 03 00 01 00 00 00 00 C6 40 00 E4
46 00 A0 34 00 00 00 00 10 40 00 96 46 01 15 01
8F A2 00 20 24 03 00 01 14 43 00 3A C6 40 00 E4
46 00 A0 34 45 02 00 0C 00 00 00 00

RAR include ready files for CFW. All configs include also GX collision fix.

How do I install the Config file?
 
Make sure your iso and configs are named the same.

Klonoa 2.iso
Klonoa 2.iso.CONFIG

They're,I don't know why it is not working,my menu is not lagging either,The ps3 secret menu tell me whther the config was loaded correctly don't they?There is any way to check if the config was loaded correctly?
 
Shadow Hearts: Covenant (SLUS-21041)
Code:
3D 00 00 00 34 12 00 00 0A 00 00 00 01 00 00 00
7C 06 4F 00 FA FF 00 45 00 00 00 00 00 00 00 00
Fixes analog stick freeze. This is still new and barely tested, so treat this as an experiment. This is just for disc 1 but I'll do the other disc, other regions, and From the New World when I can.

Minor issue is character will flicker the moment the stick hits the analog "sweet spot". As a reference, the "sweet spot" seems to be very slightly to the left and right of halfway up and down y-axis. Kind of hard to explain where it is...but if your left analog stick is in this spot in "field" mode, character will flicker slightly. It is not bothersome, and *only* happens when game would normally freeze, so it doesn't happen often if you're not actively trying to find that sweet spot.

But yes...so happy I got to the bottom of this. Thanks @kozarovv for the debug symbols on those functions. It sped up a lot of debugging on my part...days at least. :)

EDIT: As a note, there may be a better way around this to avoid the character flicker. Just wanted to post at least something for now. :cool:
Indeed, it works as you say. Yuri does flicker, but it's better than the alternative (always seems to be walking down for some reason). Thank you.
 
The latest webMAN MOD installer or updater and the PS2 CONFIG database now includes the CONFIG.

If you update to the latest binaries you will get the CONFIG placed on the correct location.

If the file name of your ISO includes the title id (SLUS_201.51), webMAN will apply the CONFIG automatically.

If the ISO does not include the title id, you will have to copy the CONFIG to the same folder of your ISO, with the same file name + .CONFIG
Example 1:
/dev_hdd0/PS2ISO/Klonoa 2 (SLUS_201.51).iso
/dev_hdd0/PS2ISO/Klonoa 2 (SLUS_201.51).iso.CONFIG <= it's created automatically

Example 2:
/dev_hdd0/PS2ISO/Platform/Klonoa 2.iso
/dev_hdd0/PS2ISO/Platform/Klonoa 2.iso.CONFIG <= must be copied manually

Example 3:
/dev_hdd0/PS2ISO/Klonoa 2/SLUS_201.51.BIN.ENC
/dev_hdd0/PS2ISO/Klonoa 2/SLUS_201.51.CONFIG
/dev_hdd0/PS2ISO/Klonoa 2/SLUS_201.51.PNG
Im late at this , you know it lol
I just need to understand , SO if i download/install the LATEST webmanmod 1.47.32 (it is a good iday to install it on my rebug 4.86.1 ?) ALL your PS2 Config files are inside the webmanmod and I DONT NEED to install this PS2CONFIG_20210109.pkg right ??

Also , once webmanmod fully installed with L1 , what i need to do to ensure all my PS2 ISO (correctly named with game id inside brackets (ex
The latest webMAN MOD installer or updater and the PS2 CONFIG database now includes the CONFIG.

If you update to the latest binaries you will get the CONFIG placed on the correct location.

If the file name of your ISO includes the title id (SLUS_201.51), webMAN will apply the CONFIG automatically.

If the ISO does not include the title id, you will have to copy the CONFIG to the same folder of your ISO, with the same file name + .CONFIG
Example 1:
/dev_hdd0/PS2ISO/Klonoa 2 (SLUS_201.51).iso
/dev_hdd0/PS2ISO/Klonoa 2 (SLUS_201.51).iso.CONFIG <= it's created automatically

Example 2:
/dev_hdd0/PS2ISO/Platform/Klonoa 2.iso
/dev_hdd0/PS2ISO/Platform/Klonoa 2.iso.CONFIG <= must be copied manually

Example 3:
/dev_hdd0/PS2ISO/Klonoa 2/SLUS_201.51.BIN.ENC
/dev_hdd0/PS2ISO/Klonoa 2/SLUS_201.51.CONFIG
/dev_hdd0/PS2ISO/Klonoa 2/SLUS_201.51.PNG

@aldostools , just need to know , when i download this : PS2CONFIG_20210109.pkg did it contain ALL the variation like : CUSTOM , NET , GX , SOFT or a specific variation ??
 

Similar threads

Back
Top