![]() ![]() Here is a little run-down of the possible situation with a short explanation. Hopefully this gets you on the right track, Obviously, there's always the good chance that there may be some dynamic pointers in between, on either or both sides. Static pointer(pcsx2)->base address(game)+offset to static pointer(game)->value(game) When you're done, you'll have something that looks roughly like this: Thankfully, by this point - you'll at least have the pointer to that base address. The only way you'll be able to check that is by closing and reopening the emulator a few times. ![]() #Nestopia ps3 controller trial#Unfortunately this will require a fair bit of trial and error, because the only way you'll know if that pointer is static, is if its offset to the game's base address never changes. The next half is using "what accesses this address" and "what writes to this address", along with the disassembler to trace the value you want to track, back to a static pointer within the game. Once you have that pointer to that base address, you're halfway there. In other words, pcsx2 should have a static pointer, that points to that address. However, since the emulator obviously needs to know where that base address is, that address works no differently than any other value you use Cheat Engine for. Even worse, since the base memory is stored in dynamic memory, even the game's static memory will change location, from Cheat Engine's perspective. Cheat Engine can easily attach to the emulator's process, but as it can't attach to the game itself, it doesn't know where that game's base memory is. However, when you're talking about an emulator - that emulator basically works as its own OS, with its own processes, that runs in its own memory. Since Cheat Engine attaches to the process, it always knows where that base address is. For most games an apps, Cheat Engine is pretty simple, because it's running in the exact same OS.Īfter all, what makes a value static, is that it always has the same offset to the process' base memory address. The main problem here, is that static pointers, and other static values, are dependent on games and applications that run in the OS. ![]() I've not actually worked with memory editing with emulators, so there may be some twists and caveats I'm unaware of. This process is almost entirely based on both how emulators work, and how memory is used. Edit: Now that I've actually used reading comprehension. ![]()
0 Comments
Leave a Reply. |
Details
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |