 |
Cheat Engine The Official Site of Cheat Engine
|
| View previous topic :: View next topic |
| Author |
Message |
Erez Zrihen Advanced Cheater
Reputation: 0
Joined: 26 Feb 2016 Posts: 65
|
Posted: Wed May 13, 2020 9:21 am Post subject: Where is the Find out what reads from this address option? |
|
|
When I right click any address in the "address list", I see many possible actions that are related to the selected address and that I can choose to perform.
Two of them are:
Find out what accesses this address and Find out what writes to this address, but I don't see a Find out what reads from this address option at all!
Why the Find out what accesses this address is the only way to find out all instructions that read from this address?
This way I have to remove from the output all the instructions that are writing to this address and leave/keep all the instructions that read from this address just to find out what reads from this address and this is very counterproductive, inefficient, annoying, cumbersome, inconvenient, uncomfortable and time consuming.
So please add the Find out what reads from this address option in the next release of Cheat Engine, so code injection becomes much easier for all the users of Cheat Engine and hackers like me.
|
|
| Back to top |
|
 |
ParkourPenguin I post too much
Reputation: 152
Joined: 06 Jul 2014 Posts: 4725
|
Posted: Wed May 13, 2020 9:47 am Post subject: |
|
|
Go ask Intel / AMD. Hardware breakpoints don't have that option.
https://en.wikipedia.org/wiki/X86_debug_register
I guess CE could emulate it simply by removing stuff it sees as a write, but that might be wrong sometimes. Doing it "correctly" by taking the relative complement of the set of all writes in the set of all accesses would require two debug registers.
Is it really that big of a deal? It wouldn't make things any easier IMO. Even beginners should be able to look at an instruction and see if it's reading and/or writing to memory.
_________________
I don't know where I'm going, but I'll figure it out when I get there. |
|
| Back to top |
|
 |
Erez Zrihen Advanced Cheater
Reputation: 0
Joined: 26 Feb 2016 Posts: 65
|
Posted: Wed May 13, 2020 10:24 am Post subject: |
|
|
| ParkourPenguin wrote: | Go ask Intel / AMD. Hardware breakpoints don't have that option.
https://en.wikipedia.org/wiki/X86_debug_register
I guess CE could emulate it simply by removing stuff it sees as a write, but that might be wrong sometimes. Doing it "correctly" by taking the relative complement of the set of all writes in the set of all accesses would require two debug registers.
Is it really that big of a deal? It wouldn't make things any easier IMO. Even beginners should be able to look at an instruction and see if it's reading and/or writing to memory. |
I both think and believe that "Find out what reads from this address" theoretically can be either emulated or simulated directly by software, of course that this is gonna be very slow, but this is still worth it as long as this is not too much slow.
| Quote: | | but that might be wrong sometimes. |
Why? Please explain in more details!
As long as you don't convince me I don't believe you because artificial intelligence today is very advanced and there are even already robots that clean your house!
| Quote: | | Is it really that big of a deal? |
| Quote: | | Even beginners should be able to look at an instruction and see if it's reading and/or writing to memory. |
This statement/claim/proposition/conjecture is definitely true and in addition to what you said I can say that this task can be completely automated and can be done automatically by computers.
And today every easy and simple task is automated and can be done automatically by robots and artificial agents.
Today all food industries use automatic machines to produce food.
| Quote: | | Go ask Intel / AMD. Hardware breakpoints don't have that option. |
I believe you and this is a shame that this statement/claim/proposition/conjecture is still true.
But still this is possible to implement the "Find out what reads from this address" by using the functionality of the "Find out what accesses this address" and then automatically check if the caught instruction is a read instruction before adding it to the visible list of the visible "Find out what reads from this address" window.
If necessary this is also possible to create or allocate an invisible list, in the memory of Cheat Engine, of all the instructions that accesses this address and then from this invisible list copy all the read instructions to the visible list of the visible "Find out what reads from this address" window and then empty the invisible list of all the access instructions to free and save memory.
Determine the capacity of the invisible list (should be small) and then do the copy of all read instructions and empty the invisible list actions only when the invisible list is full.
At least to the "Find out what accesses this address" window add two new buttons "Remove all write instructions" and "Remove all read instructions".
Another idea is to make "Find out what reads from this address" to use the functionality of "Find out what accesses this address" and then every few seconds as long as the "Find out what reads from this address" window is visible just remove all the write instructions and keep/leave all the read instructions automatically by using a timer.
The last option is least prefered, because every user of "Find out what reads from this address" will see instructions disappear from the "Find out what reads from this address" window automatically without doing anything while gazing at this window and this will look weird for every user, but I don't much care about that.
Surely that this is more weird that only the "Find out what reads from this address" option is missing, but not "Find out what accesses this address" and "Find out what writes to this address" options.
| Quote: | | Doing it "correctly" ... would require two debug registers. |
But obviously there is no need to use both the "access watchpoint" debug register and the "write watchpoint" debug register, but only the "access watchpoint" debug register.
|
|
| Back to top |
|
 |
danrevella Master Cheater
Reputation: 2
Joined: 11 Jun 2008 Posts: 292
|
Posted: Wed May 13, 2020 2:51 pm Post subject: |
|
|
| I think this may be a really usefull option in many situations
|
|
| Back to top |
|
 |
Erez Zrihen Advanced Cheater
Reputation: 0
Joined: 26 Feb 2016 Posts: 65
|
Posted: Thu May 14, 2020 10:42 am Post subject: |
|
|
| danrevella wrote: | | I think this may be a really usefull option in many situations |
Find out what reads from this address can be experimental now:
Find out what reads from this address (experimental) uses the functionality of Find out what accesses this address, then all access instructions are added to an invisible list and then just add from the invisible list to the visible list only the read instructions where access instruction is a read instruction if and only if the access instruction is either a mov or logical (and,or,xor) or arithmetic (add,sub) instruction and the second operand (right after the comma ,) is ptr (byte ptr, word ptr, dword ptr, qword ptr [eax,ebx,ecx,edx,rax,rbx,rcx,rdx] and etc) and the value of the register in the second ptr operand is equal to the right clicked address from the address list.
A write instruction is the same as a read instruction except that the ptr operand is the first operand (left before the comma ,).
I prefer experimental "Find out what reads from this address" rather than not having "Find out what reads from this address" at all.
In the same release add also the "remove all write instructions" and "remove all read instructions" buttons in the Find out what accesses this address window.
|
|
| Back to top |
|
 |
Corroder Grandmaster Cheater Supreme
Reputation: 75
Joined: 10 Apr 2015 Posts: 1668
|
|
| Back to top |
|
 |
|
|
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
|
|