Hardware manual

3.4.2. Display streams
Display streams are implemented with the "DspStream" package, described in separate documentation
contained in an appendix to this manual. Below is a list of the functions included (in addition to the
generic stream functions):
CreateDisplayStream(nLines, pBlock, lBlock, Font [sysFont], wWidth [38], options
[DScompactleft+DScompactright], zone [sysZone]) = a display
stream. pBlock is the address of a region lBlock words long for
the display bitmap. nLines is the number of text lines in the
stream. This procedure does not commence displaying the
stream text -- see ShowDisplayStream.
ShowDisplayStream(s, how [DSbelow], otherStream [dsp]) This procedure controls the presentation
of the stream on the screen. If how is DSbelow, the stream will
be displayed immediately below otherStream; if DSabove,
immediately above; if DSalone, the stream will become the only
display stream displayed. If how is DSdelete, the stream s will
be removed from the display. For DSalone and DSdelete, the
third argument is needless.
GetFont(s) Returns current font.
SetFont(s, font) Sets current font (use carefully -- see documentation).
ResetLine(s) Erases all information on the current line and resets the position
to the left margin.
GetBitPos(s) Returns the horizontal position of the stream.
SetBitPos(s, pos) Sets the horizontal position on the current line (use carefully --
see documentation).
GetLinePos(s) Returns the index of the line into which characters are presently
being put.
SetLinePos(s, pos) Sets the line number into which subsequent characters will be
put.
InvertLine(s, pos) Inverts the black/white sense of the line given by pos.
EraseBits(s, nBits, flag [0]) Erase bits moving forward (nBits>0) or backward (nBits<0) from
the current position. Set to background if flag=0; to the
complement of the background if flag=1; invert present values
if flag=-1.
GetLmarg(s); SetLmarg(s) Get and set left margin for the current line.
GetRmarg(s); SetRmarg(s) Get and set right margin for the current line.
CharWidth(StreamOrFont, char) Get the width of the character, using the specified font or the
current font in the specified stream.
The "system display stream" is always open, and can be accessed by the system scalar "dsp."
Alto Operating System May 5, 1980 7
For Xerox Internal Use Only -- December 15, 1980