8.6 Rendering Modes
The redering process can be performed in two different modes:
Register based mode
In the register based operation mode the Host CPU configures and initiates each
render process separately. To start a new render process the Host CPU has to
wait until the previous one is completed. In this mode the Host CPU is heavily
engaged throughout the entire drawing procedure, and is consequently to a large
extend unavailable for other tasks.
Display list based
mode
In this mode the Host CPU creates a display list in memory prior starting the
Drawing Engine. Such a display contains a bundle of render operations. Once
started the the Drawing Engine executes the display list autonomously in parallel
to 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 CPU
and the Drawing Engine. It also gives the best possible system performance.
8.6.1 Register based mode
In this mode the Host CPU has to set up all registers for performing a certain
drawing operation before it can start the rendering process.
A new register setup can only be started when the previous render process has
completed. Therefore make sure that
•
DRWSTATUS.DLISTACTIVE = 0: displaylist reader is idle
•
DRWSTATUS.BUSENUM = 0: enumeration unit is idle
before starting a new register setup.
Finally write the framebuffer start address to the DRWORIGIN register. The write
also triggers the Drawing Engine to start rendering.
8.6.2 Display list based mode
In display list mode the Display list reader reads a memory block containing
instructions on how to set the Drawing Engine control registers and does these
control register writes accordingly.
Display list start
To start execution of a display list, that already resides in the memory, the start
address of the display list is written to the display list start address register
DRWDLISTSTART.
Since rewriting of DRWDLISTSTART would also stop any ongoing display list
execution, make sure that the previous display list process has been completed
by any of the below two means:
•
Check that DRWSTATUS.DLISTACTIVE = 0, which indicates idle
status of the display list reader.
•
Wait for the display list interrupt DRWDLISTIRQ, which indicates
completion of the previous display list process.
Display list format
Display lists are stored using direct register to value mappings. That means, the
display list contains an 1 byte index, that addresses a certain register, and the
value to be written to the register.
Drawing Engine
Chapter 8
Preliminary User's Manual S19203EE1V3UM00
247
Summary of Contents for uPD72257
Page 39: ...Pin Functions Chapter 2 Preliminary User s Manual S19203EE1V3UM00 39...
Page 44: ...Chapter 2 Pin Functions 44 Preliminary User s Manual S19203EE1V3UM00...
Page 46: ...Chapter 2 Pin Functions 46 Preliminary User s Manual S19203EE1V3UM00...
Page 49: ...Pin Functions Chapter 2 Preliminary User s Manual S19203EE1V3UM00 49...
Page 52: ...Chapter 2 Pin Functions 52 Preliminary User s Manual S19203EE1V3UM00...
Page 54: ...Chapter 2 Pin Functions 54 Preliminary User s Manual S19203EE1V3UM00...
Page 331: ...External Memory Interface Controller Chapter 9 Preliminary User s Manual S19203EE1V3UM00 331...
Page 343: ......