MCPcopy Create free account
hub / github.com/commial/ttd-bindings / callCallback

Function callCallback

example_api/main.cpp:16–25  ·  view source on GitHub ↗

@callback_value: value passed at callback registering 2 cases: @addr_func: called function address @addr_ret: return address after the call OR @addr_ret is 0 @addr_func is the current returned address */

Source from the content-addressed store, hash-verified

14 @addr_func is the current returned address
15*/
16void callCallback(unsigned __int64 callback_value, TTD::GuestAddress addr_func, TTD::GuestAddress addr_ret, struct TTD::TTD_Replay_IThreadView* thread_info) {
17 printf("[CALL CALLBACK] ");
18 printf("arg1: %llx, arg2: %llx, arg3: %llx, arg4: %llx\n", callback_value, addr_func, addr_ret, thread_info);
19 TTD::Position* current = thread_info->IThreadView->GetPosition(thread_info);
20 printf("Program counter: %llx | Position: %llx:%llx\n", thread_info->IThreadView->GetProgramCounter(thread_info), current->Major, current->Minor);
21 if (addr_ret == 0) {
22 printf("Returned value: %llx\n", thread_info->IThreadView->GetBasicReturnValue(thread_info));
23 }
24 return;
25}
26
27/*
28* @callback_value: value passed at callback registering

Callers

nothing calls this directly

Calls 2

GetPositionMethod · 0.80
GetProgramCounterMethod · 0.80

Tested by

no test coverage detected