Cheat Engine Forum Index Cheat Engine
The Official Site of Cheat Engine
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 


How to search pointers on PCSX2?

 
Post new topic   Reply to topic    Cheat Engine Forum Index -> General Gamehacking
View previous topic :: View next topic  
Author Message
bien1
How do I cheat?
Reputation: 0

Joined: 25 Jul 2010
Posts: 4

PostPosted: Sun Jul 25, 2010 5:31 am    Post subject: How to search pointers on PCSX2? Reply with quote

Hello,

I'm newbie, except that english is not my language. sorry
I have the PCSX2 0.97 (svn)r3000.
my search is going well. But only find dynamic adresses, change every execution of my emulator, forced forced to do the same process every time.

I know something about virtual memory...

I use Phaste ver1.20 to find the base adress of PCSX2 but the base adress also change on every execution!

Can anyone help?

Thanks in advance. Very Happy
Back to top
View user's profile Send private message
bien1
How do I cheat?
Reputation: 0

Joined: 25 Jul 2010
Posts: 4

PostPosted: Mon Jul 26, 2010 3:48 am    Post subject: Reply with quote

Quote:
this is running inside an emulator so the default method of finding pointers will not work here

You need to find the pointer to the base address of the emulated memory, and if you want a offset you're going to need to use the address-baseoffset as offset (offsets will be huge)

that's all I can quickly explain and won't be easy.
Back to top
View user's profile Send private message
SwaggaJackin'
Master Cheater
Reputation: 2

Joined: 06 Nov 2009
Posts: 304

PostPosted: Mon Jul 26, 2010 8:15 am    Post subject: Reply with quote

It's actually very very easy to find the pointer to the base address if you have the source.

If you check out memory.cpp, there is a pointer called 'psM', add a watch and debug pcsx2. Break pcsx2 during debug and have cheat engine search for the value. Change the value in visual studios and have cheat engine search again for the value you changed it to and you'll find the static address of the pointer and it never changes.

So when you run the release version, have cheat engine attach to it and the address the base pointer points to is the beginning of the PS2 memory.

To make searching easy, since the ps2 only has 32MB of memory, set the search range to +0x02000000 from the base pointers starting point.

for example:

say the base pointer is pointing to '06B120000'. Set the search range to '06B12000' - '08B12000'.

You can also add codes in raw format easily if you have the base address. Codebreaker codes are in raw format. You can convert other code types to raw using a tool called 'omniconvert' available at codemasters project.

So if a codebreaker code says 12036B1C 0000FFFF the address would be:

06b12000 + 02036b1c = 08B48B1C (16-bit/2 bytes)

nxxxxxxx xxxxxxxx

if n = 0 it's a 8-bit address
if n = 1 it's a 16-bit
if n = 2 it's a 32-bit address.

I'm not gonna explain further, that should get you started and if you still don't know what to do...oh well.
Back to top
View user's profile Send private message
bien1
How do I cheat?
Reputation: 0

Joined: 25 Jul 2010
Posts: 4

PostPosted: Thu Jul 29, 2010 5:26 am    Post subject: Reply with quote

SwaggaJackin' wrote:
It's actually very very easy to find the pointer to the base address if you have the source.

If you check out memory.cpp, there is a pointer called 'psM', add a watch and debug pcsx2. Break pcsx2 during debug and have cheat engine search for the value. Change the value in visual studios and have cheat engine search again for the value you changed it to and you'll find the static address of the pointer and it never changes.

So when you run the release version, have cheat engine attach to it and the address the base pointer points to is the beginning of the PS2 memory.

To make searching easy, since the ps2 only has 32MB of memory, set the search range to +0x02000000 from the base pointers starting point.

for example:

say the base pointer is pointing to '06B120000'. Set the search range to '06B12000' - '08B12000'.

You can also add codes in raw format easily if you have the base address. Codebreaker codes are in raw format. You can convert other code types to raw using a tool called 'omniconvert' available at codemasters project.

So if a codebreaker code says 12036B1C 0000FFFF the address would be:

06b12000 + 02036b1c = 08B48B1C (16-bit/2 bytes)

nxxxxxxx xxxxxxxx

if n = 0 it's a 8-bit address
if n = 1 it's a 16-bit
if n = 2 it's a 32-bit address.

I'm not gonna explain further, that should get you started and if you still don't know what to do...oh well.


Thanks for the reply.
But, without the source code, only with the executable, can be achieved?
Back to top
View user's profile Send private message
rfb
Newbie cheater
Reputation: 0

Joined: 01 Apr 2016
Posts: 15

PostPosted: Wed Jun 08, 2016 9:34 am    Post subject: Reply with quote

SwaggaJackin' wrote:
It's actually very very easy to find the pointer to the base address if you have the source.

If you check out memory.cpp, there is a pointer called 'psM', add a watch and debug pcsx2. Break pcsx2 during debug and have cheat engine search for the value. Change the value in visual studios and have cheat engine search again for the value you changed it to and you'll find the static address of the pointer and it never changes.

So when you run the release version, have cheat engine attach to it and the address the base pointer points to is the beginning of the PS2 memory.

To make searching easy, since the ps2 only has 32MB of memory, set the search range to +0x02000000 from the base pointers starting point.

for example:

say the base pointer is pointing to '06B120000'. Set the search range to '06B12000' - '08B12000'.

You can also add codes in raw format easily if you have the base address. Codebreaker codes are in raw format. You can convert other code types to raw using a tool called 'omniconvert' available at codemasters project.

So if a codebreaker code says 12036B1C 0000FFFF the address would be:

06b12000 + 02036b1c = 08B48B1C (16-bit/2 bytes)

nxxxxxxx xxxxxxxx

if n = 0 it's a 8-bit address
if n = 1 it's a 16-bit
if n = 2 it's a 32-bit address.

I'm not gonna explain further, that should get you started and if you still don't know what to do...oh well.


Could you please explain that in a "for dummies" way? I can't understand what you said, mostly because of the technical words, but the subject really interests me and I am willing to learn about it. Could you please be so kind as to indulge my request?
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Cheat Engine Forum Index -> General Gamehacking All times are GMT - 6 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group

CE Wiki   IRC (#CEF)   Twitter
Third party websites