March 17, 1995
19
IBM
RGB524
5.2.2
Cursor Array Writes
A write to the cursor array is accomplished by writing
the Index High and Index Low registers with an index
address for the array (0x0100 – 0x04ff), followed by a
write of the desired data to Index Data. If auto-incre-
ment is turned on, the entire array may be written
sequentially by repeated writes to Index Data.
5.2.3
Cursor Array Reads
To meet the bus timings for reads, the cursor array read
data is pre-fetched. A pre-fetch is triggered by writing
the Index High or Index Low register such that the
resulting index address is for an entry in the array
(0x0100 -- 0x04ff). At the end of the write cycle the cur-
sor array will be read at the address held in the index
address registers, and the read data will be held in an
internal register. A subsequent read of Index Data will
read this pre-fetched data. At the end of the read
another pre-fetch will be triggered. If auto-increment is
turned on, this pre-fetch will be for the next address in
the array. Thus, the entire array can be read by repeated
reads from Index Data.
The pre-fetching of cursor array data will stop if
1.
The index register auto-increments beyond 0x04ff
OR
2.
A write is done to Index Data
5.3
Cursor Modes
Each pixel of the cursor is specied with 2 bits. There
are three ways that these 2 bits can be used, as specied
by the CURSOR MODE bits of the Cursor Control regis-
There are three cursor colors that may be displayed. The
colors are stored in the Cursor Color 1 Red, Green, Blue,
Cursor Color 2 Red, Green, Blue, and Cursor Color 3
Red, Green, Blue registers. Each red, green, and blue
register is 8 bits, yielding a full 24-bit color for each of
the three cursor colors. The cursor color is always 24
bits, and is not affected by the COL RES or 6BIT LIN
control bits, or any of the pixel formats (VGA, 4, 8,
15/16, 24, 32 BPP).
Cursor Mode 0 allows selection of any of the three colors
while Modes 1 and 2 allow selection between colors 1
and 2.
All modes can specify that the cursor pixel be transpar-
ent, to allow the underlying display pixel to be dis-
played. This pixel will either be a palette output or a
formatted VRAM pixel, depending on whether the pixel
format is VGA or indirect color, or direct color.
Mode 1 can also specify that the complement of the
underlying display pixel be displayed. The intent is to
highlight the cursor by “reversing” the color of the back-
ground pixels.
5.4
Cursor Hot Spot
The hot spot is the point within the cursor that is used
to locate the cursor’s position on the screen. Any pixel
within the cursor may be identied as the hot spot.
The Cursor Hot Spot X and Cursor Hot Spot Y registers
hold the unsigned cursor pixel X (column) and Y (row)
coordinates for the hot spot. The range for the X and Y
values is 0 to 31 for the 32 x 32 cursor and 0 to 63 for the
64 x 64 cursor.