
Memory I/O and Organization
TVP4020
Programmers Reference Manual
36
To wait for VBLANK, the
LineCount register can be polled. There is also
a VBLANK interrupt available (see
TVP4020 Hardware Reference
Manual for details). The LineCount register is reset at the start of the
VBLANK period and is incremented by one for each scanline as the
video scanner moves down the screen. Thus polling for this register to
have a value of less than the value held in the
VbEnd register indicates
that P
ERMEDIA
is in the VBLANK period.
4.4.3
Bitplane Double Buffering
Bitplane double buffering is of use at 32 bits per pixel framebuffer depth
using 32768 colors in 5:5:5:1 true color mode. It relies on the RAMDAC
selecting between the high and low 16 bits of its input stream based on
whether bit 31 is set or clear. Effectively the front and back buffer for
each pixel, become interleaved within the same 32 bit word in the
framebuffer, i.e. buffer 0 becomes the lower 16 bits and buffer 1
becomes the upper 16 bits.
The buffer swap is thus implemented as a block fill of bit 31 of the
interior of a window with either one or zero. While this is not as quick as
full screen double buffering which just requires a single register
ScreenBase to be updated, it is many times quicker than BitBlt double
buffering, and like the BitBlt case allows any number of windows to be
hardware double buffered simultaneously..
Note that when rendering GUI data (such as window borders, titles etc.)
bit 31 must always be set to the same value so that these pixels are
always displayed from the same buffer. The hardware writemask can
then be used to write to only the high, or only the low, 16 bits when
rendering the animating contents of a window.
The features are:
•
"almost instantaneous" buffer swap
•
no offscreen buffer required (e.g. 1152x900 would be the maximum
resolution on a 4MB framebuffer at 32bpp depth)
•
Multiple windows can be double buffered. GUI can write with no
performance penalty.
•
Only useful at 5:5:5:1 RGB color depth.
•
No triple buffering or other advanced buffer operations
In order to allow the Microsoft Windows 95 DIB engine to render direct to
the framebuffer in the 5:5:5:1 format, a special framebuffer bypass
option is supported which presents the front and back buffers
uninterleaved, i.e. as a 5:5:5:1 16bpp packed framebuffer. This allows
rarely used complex primitives to be rendered by software.
Summary of Contents for TVP4020 PERMEDIA 2
Page 1: ...Texas Instruments TVP4020 PERMEDIA 2 Programmer s Reference Manual Issue 4 ...
Page 284: ...TVP4020 Programmers Reference Manual A Gouraud Shaded Triangle 275 ...
Page 292: ...TVP4020 Programmers Reference Manual Register Tables 283 ...
Page 314: ...TVP4020 Programmers Reference Manual Index 305 ...
Page 315: ...Index TVP4020 Programmers Reference Manual 306 Index ...
Page 323: ...Index TVP4020 Programmers Reference Manual 314 ...