#include <revolution/gx.h> u32 GXEndDisplayList( void );
None.
Returns the size of the display list in bytes unless size exceeds the buffer such as under conditions where 0 is returned. ASSERT errors also occur under conditions like this when using the debug library.
This function ends a display list and resumes writing graphics commands to the CPU FIFO. It returns the size of the display list written to the display list buffer since the call to GXBeginDisplayList. If the display list size exceeds the size of the allocated buffer, the function will fault with an ASSERT error. In the case of optimized libraries, where ASSERT errors do not occur, a zero length size will be returned. The display list size is a multiple of 32 bytes and any unused commands in the last 32 bytes will be padded with GX_NOP(0x00).
Due to the mechanics of flushing the write-gather pipe (which is used to create the display list), the display buffer should be at least 32 bytes larger than the maximum expected amount of data stored. The GXEndDisplayList function calls GXFlush. Therefore it is not necessary to call the GXFlush function explicitly after creating the display list.
Display lists cannot be nested. In other words, the GXBeginDisplayList, GXEndDisplayList and GXCallDisplayList functions cannot be called between a GXBeginDisplayList and GXEndDisplayList function pair.
To execute a display list, use the GXCallDisplayList function.
GXBeginDisplayList, GXCallDisplayList
2006/03/01 Initial version.
CONFIDENTIAL