int main(int argc, char **argv) { WHBProcInit(); WHBLogConsoleInit(); WHBLogPrintf("sCustomHeapAddr = 0x%08X", sCustomHeapAddr); WHBLogPrintf("sCustomHeapSize = 0x%08X", sCustomHeapSize); WHBLogPrintf("MEMGetTotalFreeSizeForExpHeap = 0x%08X", MEMGetTotalFreeSizeForExpHeap(sCustomHeap)); WHBLogPrintf("MEMGetAllocatableSizeForExpHeapEx = 0x%08X", MEMGetAllocatableSizeForExpHeapEx(sCustomHeap, 4)); MEMVisitAllocatedForExpHeap(sCustomHeap, heapBlockVisitor, NULL); while(WHBProcIsRunning()) { WHBLogConsoleDraw(); OSSleepTicks(OSMillisecondsToTicks(100)); } WHBLogConsoleFree(); WHBProcShutdown(); return 0; }
/** * Return the largest allocatable memory block in an expanded heap. */ uint32_t MEMGetAllocatableSizeForExpHeap(ExpandedHeap *heap) { ScopedSpinLock lock(&heap->lock); return MEMGetAllocatableSizeForExpHeapEx(heap, 4); }