2017-12-14 01:19 CET

View Issue Details Jump to Notes ]
IDProjectCategoryView StatusLast Update
0000066Cheat Enginepublic2008-09-01 20:47
ReporterCsimbi 
Assigned To 
PrioritynormalSeverityfeatureReproducibilityN/A
StatusacknowledgedResolutionopen 
Summary0000066: Logging
DescriptionHi Darkbyte,
as far as I know, currently logging is not possible.
There is a game I want to debug, but piece of code (where my breakpoint is) seems to be called about a 100 times, so it's really hard to analyze each break and compare the registers one by one.
If, I could log all registers after the code has been executed (the "More info" button kind of thing in the "Find out who accessed this memory" feature), I could cross-check the registers and find out the right call conditions quickly.
I imaging three options:
"No logging" - obvious.
"Log on break" - the user sets a breakpoint and whenever it's triggered, all data is logged.
"Log on execution" - the user "flags" the instruction it wants to "watch" and every time the code is executed (regardless if there was a breakpoint or not), all data is logged. I guess there could be problems with this one (excessive amount of data logged, so a "Limit log size to x MByes" would be a good idea (the log could be automatically cleared, or, written to file and cleared - I leave this to the pros).
Alternatively, (or, at the same time ;-) ) you could implement a Log() function in the auto-assembler. Log ("") would insert a new line, Log ("Eax: ", EAX) inserts "Eax: 0x0000ABCD (43981)" to the log, and so on, to allow logging any data one might desire.
Additional InformationThe log could be shown in a separate window, or written to a file directly.
I leave the details to you, I am pretty sure you get the idea what I mean.
TagsNo tags attached.
Attached Files

-Relationships
+Relationships

-Notes

~0000125

Dark Byte (developer)

so basically like the break and trace but then for only one instruction?
This is kinda done in the 'Find out what addresses this code accesses' rightclick menu in advanced options(It sets a breakpoint and then evaluates the registers on each hit to get the address), but I guess I can move it around a bit and allow to request specific register data

~0000133

Csimbi (reporter)

Yes, that's a good summary.
But, only if you have the time - I understand that there are more stressing issues on your list.
Thanks.
+Notes

-Issue History
Date Modified Username Field Change
2008-08-31 13:55 Csimbi New Issue
2008-08-31 15:29 Dark Byte Note Added: 0000125
2008-08-31 15:29 Dark Byte Status new => acknowledged
2008-09-01 20:47 Csimbi Note Added: 0000133
+Issue History