Where exactly rpcs3 does allocate all the memory of the emulated PS3 rom?
Started by pcsx3




0 posts in this topic
pcsx3
Member


0
14 posts 7 threads Joined: Aug 2022
08-30-2022, 08:40 AM -
#1
I know that pcsx2 allocates all the memory of the emulated PS2 rom between 0x20000000 to 0x24000000.

Therefore I set both "Start" to "20000000" and "Stop" to "24000000" before starting any memory scans with Cheat Engine when hacking pcsx2 or the PS2 rom emulated by pcsx2.

When rpcs3.exe is selected in the drop down list of "Memory Scan Options" Cheat Engine sets both "Start" to "10000" and "Stop" to "5f3f000" but it doesn't seem to be the correct numbers for me because I fail to find anything even when "Value Type" is big endian.

I think that the range that Cheat Engine uses by default is where all the static variables are allocated (variables whose memory address is always constant) that rpcs3 needs in order to work and function properly (this includes booting and emulating the selected PS3 rom like all the registers that a real PS3 needs to work and function properly).

But all the variables of the emulated PS3 rom can not be static because rpcs3, like all emulators, must allocate them at runtime, when booting the selected PS3 rom for example, and can not be allocated at load time when executing rpcs3.exe via a shortcut for example.

When booting any PS3 rom with rpcs3, rpcs3 surely allocates them somewhere but I don't know where.

I only know where pcsx2 allocates them when booting any PS2 rom with pcsx2.

Using a large range in "Start" and "Stop" addresses makes Cheat Engine Memory Scans too slow and the memory scans take too much time and this is unfordable.

Guessing the correct range also takes too much time due to the fact that the domain of all possible different addresses and ranges is just too big.

I already know that rpcs3 has a Cheat Manager but rpcs3 Cheat Manager is not useful to me at all because it has no "Unknown initial Value" feature implemented at all and I need this feature because I not always know what is the initial value of the variable whose address I want to find out.

Do anyone know where rpcs3 allocates PS3 rom memory so I know how to set both "Start" and "Stop" addresses before starting any memory scans with Cheat Engine?

I have already defined big endian types for float, 2 bytes and 4 bytes and I use only one of them per memory scan when hacking rpcs3 or the PS3 rom emulated by rpcs3.

I also checked MEM_MAPPED in the Scan Settings.
This post was last modified: 10-01-2022, 03:14 PM by pcsx3.


Forum Jump:


Users browsing this thread: 1 Guest(s)