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 


Debugger on Apple M2 Chip
Goto page 1, 2  Next
 
Post new topic   Reply to topic    Cheat Engine Forum Index -> Cheat Engine MacOS
View previous topic :: View next topic  
Author Message
Samsei
Newbie cheater
Reputation: 0

Joined: 26 Jan 2024
Posts: 12

PostPosted: Wed Jan 31, 2024 11:43 pm    Post subject: Debugger on Apple M2 Chip Reply with quote

- The debugger, regardless of the settings, leads to an immediate crash of the application. (Whether on task or thread level)

- However, the debugger works with the tutorial without any issues.
- Switching to the GDB debugger is unfortunately not an option due to Apple "M".

- The problem occurs with all games, for example, the macOS version of Dave: The Diver.
- With other programs, for example, BitSlicer, it works without any further issues.

Code:


-------------------------------------
Translated Report (Full Report Below)
-------------------------------------

Process:               cheatengine-x86_64 [1058]
Path:                  /Applications/CheatEngine752.app/Contents/MacOS/cheatengine-x86_64
Identifier:            org.cheatengine.cheatengine-x86_64
Version:               0.1 (1)
Code Type:             X86-64 (Translated)
Parent Process:        launchd [1]
User ID:               0

Date/Time:             2024-02-01 06:42:40.7487 +0100
OS Version:            macOS 14.3 (23D56)
Report Version:        12
Anonymous UUID:        1F9C2BE9-7DD1-CB23-A54D-14AB73A3576E

Sleep/Wake UUID:       96D51542-06D8-4240-8BF9-0E60D3F28703

Time Awake Since Boot: 1100 seconds
Time Since Wake:       1021 seconds

System Integrity Protection: disabled

Notes:
PC register does not match crashing frame (0x0 vs 0x7FF89DE06A78)

Crashed Thread:        0  Dispatch queue: com.apple.main-thread

Exception Type:        EXC_GUARD (SIGKILL)
Exception Codes:       GUARD_TYPE_MACH_PORT
Exception Codes:       0x0000000000000000, 0x0000000000000000

Termination Reason:    Namespace GUARD, Code 2305843030688530432

External Modification Warnings:
Process used task_for_pid().

Error Formulating Crash Report:
PC register does not match crashing frame (0x0 vs 0x7FF89DE06A78)

Kernel Triage:
VM - (arg = 0x3) mach_vm_allocate_kernel failed within call to vm_map_enter




When starting the game with Rosetta (forced), the debugger works, but then the following error message is received: "The memory at this address couldn't be written."

It seems that the version of CheatEngine is not really designed for Apple's M processors, so it seems the only option left is to switch to an alternative program.

Has anyone found a solution, especially since I don't necessarily want to start native games with Rosetta?
Back to top
View user's profile Send private message
Dark Byte
Site Admin
Reputation: 458

Joined: 09 May 2003
Posts: 25289
Location: The netherlands

PostPosted: Thu Feb 01, 2024 9:33 am    Post subject: Reply with quote

When you target a rosetta process ce should ask you to attach the debugger. Did you click yes on that? (if you click no you can't edit memory)
Is the rosetta gdb debugserver path configured correctly? (does it exist?)
is xcode installed?

have you tried other games like kindergarten on steam ?
or terraria ?

_________________
Do not ask me about online cheats. I don't know any and wont help finding them.

Like my help? Join me on Patreon so i can keep helping
Back to top
View user's profile Send private message MSN Messenger
Samsei
Newbie cheater
Reputation: 0

Joined: 26 Jan 2024
Posts: 12

PostPosted: Thu Feb 01, 2024 2:32 pm    Post subject: Reply with quote

1. Yes, the prompt does appear. How would I get the debugger to run if it's not a Rosetta process? Is GDB-Server the only way then?

2. The path is correct and configured accordingly. The Rosetta debug server can also be started via terminal, but it only works if the application is explicitly started as a Rosetta application beforehand.

3. Xcode is installed, but only with the essentials (default).

4. The last program I tried was Death Stranding, which was released today as a native application for macOS. This also did not work.


So, my takeaway is that the debugger only functions with Rosetta processes, correct? When it comes to native applications that don't need Rosetta, the application seems to crash.
Back to top
View user's profile Send private message
Dark Byte
Site Admin
Reputation: 458

Joined: 09 May 2003
Posts: 25289
Location: The netherlands

PostPosted: Thu Feb 01, 2024 4:12 pm    Post subject: Reply with quote

if it's not running under rosetta it'll do the normal m1 debug method

perhaps the games you've tried have protection?

_________________
Do not ask me about online cheats. I don't know any and wont help finding them.

Like my help? Join me on Patreon so i can keep helping
Back to top
View user's profile Send private message MSN Messenger
Samsei
Newbie cheater
Reputation: 0

Joined: 26 Jan 2024
Posts: 12

PostPosted: Fri Feb 02, 2024 4:00 am    Post subject: Reply with quote

I'll try representing this as an image, maybe that will bring some clarity to the situation. Essentially, this happens with every application I've tried. With other programs, like Bit Slicer, it works without any issues.

h*ttps://postimg.cc/5j1YWjK4

I like Cheat Engine and have been using it for ages, though previously on Windows. I truly consider it the best program for such purposes, but I'm somewhat despairing over the situation.

----

I was able to reproduce the error just now with the tutorial as well. As soon as I try to open the (AARch64) with the debugger, I receive the same error message. Therefore, the problem likely doesn't lie with the programs I've tested Cheat Engine with.
Back to top
View user's profile Send private message
Dark Byte
Site Admin
Reputation: 458

Joined: 09 May 2003
Posts: 25289
Location: The netherlands

PostPosted: Fri Feb 02, 2024 4:29 am    Post subject: Reply with quote

ok, I see. So for some reason something force terminates Cheat Engine when it starts the debugger.
Looks like some kind of security system as it's not caught by the internal exception handler.

But what issue do you have with the gdb/lldb debugger interface ? What kind of errors do you experience there ? Did you fill in the path to the lldb server ?

_________________
Do not ask me about online cheats. I don't know any and wont help finding them.

Like my help? Join me on Patreon so i can keep helping
Back to top
View user's profile Send private message MSN Messenger
Samsei
Newbie cheater
Reputation: 0

Joined: 26 Jan 2024
Posts: 12

PostPosted: Fri Feb 02, 2024 5:04 am    Post subject: Reply with quote

Path: /Library/Developer/CommandLineTools/Library/PrivateFrameworks/LLDB.framework/Versions/A/Resources/debugserver 0.0.0.0:33453

h*ttps://postimg.cc/tZZznyH9


----

When I enable SIP or set it to reduced security, the tutorial works without crashing. However, now I get the message that I can't open the file because: "Failed opening process. Likely due to lack of admin rights."
Unfortunately, "sudo ./CheatEngine752.app/Contents/MacOS/cheatengine-x86_64 hasrights" also doesn't work.
Back to top
View user's profile Send private message
Dark Byte
Site Admin
Reputation: 458

Joined: 09 May 2003
Posts: 25289
Location: The netherlands

PostPosted: Fri Feb 02, 2024 6:07 am    Post subject: Reply with quote

even the tutorial? Try selfsigning both CE and the tutorial and see if that makes a difference
_________________
Do not ask me about online cheats. I don't know any and wont help finding them.

Like my help? Join me on Patreon so i can keep helping
Back to top
View user's profile Send private message MSN Messenger
Samsei
Newbie cheater
Reputation: 0

Joined: 26 Jan 2024
Posts: 12

PostPosted: Fri Feb 02, 2024 6:22 am    Post subject: Reply with quote

Sorry for the confusion earlier; the tutorial file works without any restrictions or problems.

The problem now is that I can't access any files other than the tutorial file. I followed the instructions on Patreon and didn't encounter any errors, but I just can't grant Cheat Engine the necessary permissions.
Back to top
View user's profile Send private message
Samsei
Newbie cheater
Reputation: 0

Joined: 26 Jan 2024
Posts: 12

PostPosted: Sat Feb 03, 2024 5:27 am    Post subject: Reply with quote

I managed to fix the crashing issue, and the error is even reproducible. Executing the new signing command (sudo codesign --force --deep --sign - CheatEngine752.app) leads to the aforementioned problem; without it, the debugger works... to an extent.

The debugger starts running but crashes shortly after: (see code)

Code:

-------------------------------------
Translated Report (Full Report Below)
-------------------------------------

Process:               Death Must Die [893]
Path:                  /Volumes/VOLUME/*/Death Must Die.app/Contents/MacOS/Death Must Die
Identifier:            com.Realm-Archive.Death-Must-Die
Version:               0.6.80 (0)
Code Type:             ARM-64 (Native)
Parent Process:        launchd [1]
User ID:               501

Date/Time:             2024-02-03 11:55:33.2738 +0100
OS Version:            macOS 14.3 (23D56)
Report Version:        12
Anonymous UUID:        1F9C2BE9-7DD1-CB23-A54D-14AB73A3576E


Time Awake Since Boot: 200 seconds

System Integrity Protection: disabled

Crashed Thread:        4  AssetGarbageCollectorHelper

Exception Type:        EXC_CRASH (SIGTRAP)
Exception Codes:       0x0000000000000000, 0x0000000000000000

Termination Reason:    Namespace SIGNAL, Code 5 Trace/BPT trap: 5
Terminating Process:   Death Must Die [893]


So, fundamentally, I'm not much further along than before, although now the debugger starts, it just doesn't run for very long.
Back to top
View user's profile Send private message
Dark Byte
Site Admin
Reputation: 458

Joined: 09 May 2003
Posts: 25289
Location: The netherlands

PostPosted: Sat Feb 03, 2024 8:33 am    Post subject: Reply with quote

That it crashes differently is likely because it couldn't hook the exception port on the target process, and thus not trigger to guarded resource shutdown. But since the exception isn't hooked it can't handle the debug trap bp

It might be a new security option in the latest macos version or this game has anti debug enabled.

_________________
Do not ask me about online cheats. I don't know any and wont help finding them.

Like my help? Join me on Patreon so i can keep helping
Back to top
View user's profile Send private message MSN Messenger
Samsei
Newbie cheater
Reputation: 0

Joined: 26 Jan 2024
Posts: 12

PostPosted: Sat Feb 03, 2024 9:16 am    Post subject: Reply with quote

Since the modification works with other programs, I'm currently assuming the issue lies with Cheat Engine / MacOS Sonoma, and there's not much more I can do than wait for a new update, right?
Otherwise, I'm open to suggestions.
Back to top
View user's profile Send private message
Dark Byte
Site Admin
Reputation: 458

Joined: 09 May 2003
Posts: 25289
Location: The netherlands

PostPosted: Sat Feb 03, 2024 4:16 pm    Post subject: Reply with quote

I currently don't know. Perhaps it's the mac version. It works for me on a Apple M1 on Ventura 13.5 and it's possible that new security stuff got added to later versions. See if there's a way to disable "guarded resources"
_________________
Do not ask me about online cheats. I don't know any and wont help finding them.

Like my help? Join me on Patreon so i can keep helping
Back to top
View user's profile Send private message MSN Messenger
Samsei
Newbie cheater
Reputation: 0

Joined: 26 Jan 2024
Posts: 12

PostPosted: Sun Feb 04, 2024 4:23 am    Post subject: Reply with quote

Okay, I think this concludes my attempt to get things working. I believe I'll have to wait for an update to resolve the issue. I assume I can't fix the problem myself, as rolling back an update on macOS isn't straightforward, and identifying the root cause seems nearly impossible.


Thank you for the support, even though it unfortunately didn't have the desired effect. Perhaps the problem will resolve itself in the foreseeable future (with the Cheat Engine update).
Back to top
View user's profile Send private message
Samsei
Newbie cheater
Reputation: 0

Joined: 26 Jan 2024
Posts: 12

PostPosted: Tue Feb 06, 2024 1:51 am    Post subject: Reply with quote

I couldn't resist and went back to troubleshooting:

1. The issue seems to be related to macOS Sonoma, evident with other programs and the Rosetta debugger as well.
2. Consequently, I uninstalled Xcode (partially manually).
3. Furthermore, I manually deleted Rosetta and reinstalled it.

The debugger now runs without crashing for some programs, but with others, I'm not sure if a protective mechanism is causing issues.
In conclusion: Reinstalling Rosetta 2 solved some problems, and it might help others as well.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Cheat Engine Forum Index -> Cheat Engine MacOS All times are GMT - 6 Hours
Goto page 1, 2  Next
Page 1 of 2

 
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 cannot download files in this forum


Powered by phpBB © 2001, 2005 phpBB Group

CE Wiki   IRC (#CEF)   Twitter
Third party websites