8.6 Rendering ModesThe redering process can be performed in two different modes:Register based mode In the register based operation mode the Host CPU configures and initiates eachrender process separately. To start a new render process the Host CPU has towait until the previous one is completed. In this mode the Host CPU is heavilyengaged throughout the entire drawing procedure, and is consequently to a largeextend unavailable for other tasks.Display list basedmodeIn this mode the Host CPU creates a display list in memory prior starting theDrawing Engine. Such a display contains a bundle of render operations. Oncestarted the the Drawing Engine executes the display list autonomously in parallelto the Host CPU, which is not charged with drawing most of the time.Using a display list is a way to allow a fully asynchronous operation of Host CPUand the Drawing Engine. It also gives the best possible system performance.8.6.1 Register based modeIn this mode the Host CPU has to set up all registers for performing a certaindrawing operation before it can start the rendering process.A new register setup can only be started when the previous render process hascompleted. Therefore make sure that• DRWSTATUS.DLISTACTIVE = 0: displaylist reader is idle• DRWSTATUS.BUSENUM = 0: enumeration unit is idlebefore starting a new register setup.Finally write the framebuffer start address to the DRWORIGIN register. The writealso triggers the Drawing Engine to start rendering.8.6.2 Display list based modeIn display list mode the Display list reader reads a memory block containinginstructions on how to set the Drawing Engine control registers and does thesecontrol register writes accordingly.Display list start To start execution of a display list, that already resides in the memory, the startaddress of the display list is written to the display list start address registerDRWDLISTSTART.Since rewriting of DRWDLISTSTART would also stop any ongoing display listexecution, make sure that the previous display list process has been completedby any of the below two means:• Check that DRWSTATUS.DLISTACTIVE = 0, which indicates idlestatus of the display list reader.• Wait for the display list interrupt DRWDLISTIRQ, which indicatescompletion of the previous display list process.Display list format Display lists are stored using direct register to value mappings. That means, thedisplay list contains an 1 byte index, that addresses a certain register, and thevalue to be written to the register.Drawing Engine Chapter 8Preliminary User's Manual S19203EE1V3UM00 247