You'll be happy to hear that during this call, the manipulation of p0 will not affect the 'global' p0, if you assign a NULL-pointer to p0 before the call, the p0 will still be NULL when the call returns. The dash behind the colon means that this function returns nothing. In the function time , surely you notice the use of hard brackets. The Amiga Foundation Layer consists of a big range of tools. The term 'tool', when you're talking about the new Amiga OS, means the same as a dynamically loadable function.
Tools are actually 'objects', that can be extended.
People with some background from Object Oriented Programming, will feel right at home. The Amiga SDK ships with a lot of different tools, ranging from encryption to GUI programming. Please note that the artifacts in the screenshots are caused by JPEG-compression. The contents of the menu are easily changed adding files to specified directories. Running the gadget-menu.