FSTA_DSP This command starts a forced display. This will display the subpicture if subpictures are enabled, it will
not display them under all conditions. This is used for menus, button-over-video features, and even subtitles when the speakers
are using no earthly language.
STA_DSP This command starts the display if the stream has been selected and subpictures are enabled.
STP_DSP This command turns the display of this subpicture off.
Vertical scrolling is accomplished by changing the pixel data pointers with SET_DSPXA at timed intervals. Excess lines in the pixel data
area are not a problem, once the display area limit is reached, the remaining data is ignored.
Horizontal scrolling is trickier, and usually requires separate images for each step of the scroll. However, the SET_DSPXA command
aso allows us to store more than one image per SPU, and use each as needed.
These are performed by using the very versatile and complex CHG_COLCON command. This command allows
you to define areas within the subpicture and assign different color and contrast values to the pixels within each area. The command has
a large and variable parameter area made up of segments that describe either a vertically bounded area, or a horizontally bounded area
within the current vertically bounded area. Sound difficult? It's really not, the first thing is to define a horizontal band using the
LN_CTLI structure. This specifies the starting and ending line numbers, and the number of horizontally bounded areas (1 to 15) within the
band. After that you define each area with the PX_CTLI structure, which specifies the starting column number (these work left-to-right,
and extend to the next area or the right side of the image), and the new color and contrast values.
As you can see, combined with timing, the areas can be slid around the screen causing the pixels to change colors for a wipe effect.
Combined with timing, but not sliding around, changes in contrast values can be used to fade a subpicture in or out (or to mask and
unmask the underlying video). The command can also be used statically to add more colors to a subpicture.