Can someone show me what I've got wrong with this? I suspect it's something to do with the ^applier, ^context lines: //CF_EXPORT void CFBinaryHeapApplyFunction(CFBinaryHeapRef heap, CFBinaryHeapApplierFunction applier, void *context); local fn CFBinaryHeapApplyFunction( heap as CFBinaryHeapRef, applier as pointer, context as pointer ) beginassem lwz r12,^gCFBinaryHeapApplyFunction mr r3,^applier mr r4,^context mtspr ctr,r12 mr r31,r2 bctrl mr r2,r31 endassem end fn TIA Bernie