Exemplo n.º 1
0
void
Module::registerMembaseFunctions()
{
   sMemArenas.fill(nullptr);

   RegisterKernelFunction(MEMGetBaseHeapHandle);
   RegisterKernelFunction(MEMSetBaseHeapHandle);
   RegisterKernelFunction(MEMGetArena);
   RegisterKernelFunction(MEMiInitHeapHead);
   RegisterKernelFunction(MEMiFinaliseHeap);
   RegisterKernelFunction(MEMFindContainHeap);
   RegisterKernelFunction(MEMDumpHeap);

   RegisterKernelDataName("MEMAllocFromDefaultHeap", pMEMAllocFromDefaultHeap);
   RegisterKernelDataName("MEMAllocFromDefaultHeapEx", pMEMAllocFromDefaultHeapEx);
   RegisterKernelDataName("MEMFreeToDefaultHeap", pMEMFreeToDefaultHeap);

   RegisterInternalFunction(internal::defaultAllocFromDefaultHeap, sDefaultMEMAllocFromDefaultHeap);
   RegisterInternalFunction(internal::defaultAllocFromDefaultHeapEx, sDefaultMEMAllocFromDefaultHeapEx);
   RegisterInternalFunction(internal::defaultFreeToDefaultHeap, sDefaultMEMFreeToDefaultHeap);

   RegisterInternalData(sForegroundMemlist);
   RegisterInternalData(sMEM1Memlist);
   RegisterInternalData(sMEM2Memlist);
}
Exemplo n.º 2
0
void
Module::registerAllocatorFunctions()
{
   RegisterKernelFunction(MEMInitAllocatorForDefaultHeap);
   RegisterKernelFunction(MEMInitAllocatorForBlockHeap);
   RegisterKernelFunction(MEMInitAllocatorForExpHeap);
   RegisterKernelFunction(MEMInitAllocatorForFrmHeap);
   RegisterKernelFunction(MEMInitAllocatorForUnitHeap);
   RegisterKernelFunction(MEMAllocFromAllocator);
   RegisterKernelFunction(MEMFreeToAllocator);

   RegisterInternalFunction(allocatorDefaultHeapAlloc, sAllocatorDefaultHeapAlloc);
   RegisterInternalFunction(allocatorDefaultHeapFree, sAllocatorDefaultHeapFree);
   RegisterInternalFunction(allocatorBlockHeapAlloc, sAllocatorBlockHeapAlloc);
   RegisterInternalFunction(allocatorBlockHeapFree, sAllocatorBlockHeapFree);
   RegisterInternalFunction(allocatorExpHeapAlloc, sAllocatorExpHeapAlloc);
   RegisterInternalFunction(allocatorExpHeapFree, sAllocatorExpHeapFree);
   RegisterInternalFunction(allocatorFrmHeapAlloc, sAllocatorFrmHeapAlloc);
   RegisterInternalFunction(allocatorFrmHeapFree, sAllocatorFrmHeapFree);
   RegisterInternalFunction(allocatorUnitHeapAlloc, sAllocatorUnitHeapAlloc);
   RegisterInternalFunction(allocatorUnitHeapFree, sAllocatorUnitHeapFree);

   RegisterInternalData(sDefaultHeapFunctions);
   RegisterInternalData(sBlockHeapFunctions);
   RegisterInternalData(sExpHeapFunctions);
   RegisterInternalData(sFrameHeapFunctions);
   RegisterInternalData(sUnitHeapFunctions);
}
Exemplo n.º 3
0
void
Module::registerDynLoadFunctions()
{
   RegisterKernelFunction(OSDynLoad_Acquire);
   RegisterKernelFunction(OSDynLoad_FindExport);
   RegisterKernelFunction(OSDynLoad_Release);
   RegisterKernelFunction(OSDynLoad_SetAllocator);
   RegisterKernelFunction(OSDynLoad_GetAllocator);

   RegisterInternalFunction(dynloadDefaultAlloc, sMemAlloc);
   RegisterInternalFunction(dynloadDefaultFree, sMemFree);
}
Exemplo n.º 4
0
void
Module::registerGhsFunctions()
{
   RegisterKernelFunctionName("__ghsLock", ghsLock);
   RegisterKernelFunctionName("__ghsUnlock", ghsUnlock);
   RegisterKernelFunctionName("__gh_errno_ptr", ghs_errno_ptr);
   RegisterKernelFunctionName("__gh_set_errno", ghs_set_errno);
   RegisterKernelFunctionName("__gh_get_errno", ghs_get_errno);
   RegisterKernelFunctionName("__get_eh_globals", ghs_get_eh_globals);
   RegisterKernelFunctionName("__get_eh_init_block", ghs_get_eh_init_block);
   RegisterKernelFunctionName("__get_eh_mem_manage", ghs_get_eh_mem_manage);
   RegisterKernelFunctionName("__get_eh_store_globals", ghs_get_eh_store_globals);
   RegisterKernelFunctionName("__get_eh_store_globals_tdeh", ghs_get_eh_store_globals_tdeh);
   RegisterKernelFunctionName("__ghs_flock_ptr", ghs_flock_ptr);
   RegisterKernelFunctionName("__ghs_flock_create", ghs_flock_create);
   RegisterKernelFunctionName("__ghs_flock_destroy", ghs_flock_destroy);
   RegisterKernelFunctionName("__ghs_flock_file", ghs_flock_file);
   RegisterKernelFunctionName("__ghs_ftrylock_file", ghs_ftrylock_file);
   RegisterKernelFunctionName("__ghs_funlock_file", ghs_funlock_file);

   RegisterKernelFunctionName("__ghs_mtx_init", ghs_mtx_init);
   RegisterKernelFunctionName("__ghs_mtx_dst", ghs_mtx_dst);
   RegisterKernelFunctionName("__ghs_mtx_lock", ghs_mtx_lock);
   RegisterKernelFunctionName("__ghs_mtx_unlock", ghs_mtx_unlock);

   RegisterKernelDataName("__atexit_cleanup", p__atexit_cleanup);
   RegisterKernelDataName("__stdio_cleanup", p__stdio_cleanup);
   RegisterKernelDataName("__cpp_exception_init_ptr", p__cpp_exception_init_ptr);
   RegisterKernelDataName("__cpp_exception_cleanup_ptr", p__cpp_exception_cleanup_ptr);
   RegisterKernelDataName("__gh_FOPEN_MAX", p__gh_FOPEN_MAX);
   RegisterKernelDataName("_iob", p_iob);
   RegisterKernelDataName("_iob_lock", p_iob_lock);
   RegisterKernelDataName("environ", p_environ);

   RegisterInternalFunction(syscall, sSyscallFunc);
   RegisterInternalDataName("__gh_errno", p__gh_errno);
   RegisterInternalData(ghsSpinLock);
   RegisterInternalData(p_iob_mutexes);
   RegisterInternalData(p_iob_mutex_used);
   RegisterInternalData(p_environEmpty);
}
Exemplo n.º 5
0
void
Module::registerAlarmFunctions()
{
   RegisterKernelFunction(OSCancelAlarm);
   RegisterKernelFunction(OSCancelAlarms);
   RegisterKernelFunction(OSCreateAlarm);
   RegisterKernelFunction(OSCreateAlarmEx);
   RegisterKernelFunction(OSGetAlarmUserData);
   RegisterKernelFunction(OSInitAlarmQueue);
   RegisterKernelFunction(OSInitAlarmQueueEx);
   RegisterKernelFunction(OSSetAlarm);
   RegisterKernelFunction(OSSetPeriodicAlarm);
   RegisterKernelFunction(OSSetAlarmTag);
   RegisterKernelFunction(OSSetAlarmUserData);
   RegisterKernelFunction(OSWaitAlarm);

   RegisterInternalFunction(AlarmCallbackThreadEntry, sAlarmCallbackThreadEntryPoint);
   RegisterInternalData(sAlarmQueue);
   RegisterInternalData(sAlarmCallbackQueue);
   RegisterInternalData(sAlarmCallbackThreadQueue);
   RegisterInternalData(sAlarmCallbackThread);
}
Exemplo n.º 6
0
void
Module::registerCoreFunctions()
{
   RegisterKernelFunction(AXInit);
   RegisterKernelFunction(AXIsInit);
   RegisterKernelFunction(AXInitProfile);
   RegisterKernelFunction(AXGetSwapProfile);
   RegisterKernelFunction(AXSetDefaultMixerSelect);
   RegisterKernelFunction(AXRegisterAppFrameCallback);
   RegisterKernelFunction(AXRegisterFrameCallback);
   RegisterKernelFunction(AXUserBegin);
   RegisterKernelFunction(AXUserEnd);
   RegisterKernelFunction(AXVoiceBegin);
   RegisterKernelFunction(AXVoiceEnd);
   RegisterKernelFunction(AXUserIsProtected);
   RegisterKernelFunction(AXRmtGetSamples);
   RegisterKernelFunction(AXRmtGetSamplesLeft);
   RegisterKernelFunction(AXRmtAdvancePtr);
   RegisterKernelFunctionName("internal_FrameAlarmHandler", snd_core::internal::frameAlarmHandler);
   RegisterInternalFunction(FrameCallbackThreadEntry, sFrameCallbackThreadEntryPoint);
   RegisterInternalData(sFrameCallbackThreadQueue);
   RegisterInternalData(sFrameCallbackThread);
}
Exemplo n.º 7
0
void
Module::registerAppIoFunctions()
{
   RegisterInternalFunction(internal::appIoThreadEntry, sAppIoEntryPoint);
   RegisterInternalData(sAppIo);
}