view docs/basic09/gfx2.appendix @ 2798:b70d93f8d7ce lwtools-port

Updated coco1/modules/makefile and coco3/modules/makefile to help resolve issues with i(x) and s(x) descriptors. Updated level1/coco1/modules/makefile & level2/coco3/modules/makefile so that correct values would be sent to assembler when building superdesc.asm for s(x).dd and i(x).dd descriptors.
author drencor-xeen
date Mon, 28 Jan 2013 16:13:05 -0600
parents 07a25643d033
children
line wrap: on
line source

<appendix>
<title>GFX2: CoCo3 Graphics Subroutine Module</title>

<refentry id='arc'>
<refnamediv>
<refname>arc</refname>
<refpurpose>Draw an arc.</refpurpose>
</refnamediv>

<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "ARC" [,mx, my], xrad, yrad, xcor1, ycor1,
xcor2, ycor2)</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
<replaceable>mx, my</replaceable>        X &amp; Y coordinates for the center of the arc.
<replaceable>xrad</replaceable>          Radius of the arcs width.
<replaceable>yrad</replaceable>          Radius of the arcs height.
<replaceable>xcor1, ycor1</replaceable>  Beginning and ending coordinates for an imaginary
<replaceable>xcor2, ycor2</replaceable>  line relative to the center of the arc (0, 0) that
                   GFX2 uses for drawing the arc. Drawing starts at
                   the point of the arc closest to xcor1, ycor1.
</para>
</refsect1>
</refentry>
<refentry id='bar'>
<refnamediv>
<refname>bar</refname>
<refpurpose>Draws a filled in rectangle.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "BAR" [,xcor1, ycor1], xcor2, ycor2)</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window to draw in.
<replaceable>xcor1, ycor1</replaceable>  Beginning coordinates of the rectangle.
<replaceable>xcor2, ycor2</replaceable>  Ending coordinates of the rectangle.
</para>
</refsect1>
</refentry>
<refentry id='bell'>
<refnamediv>
<refname>bell</refname>
<refpurpose>Produce a beep through the terminal's speaker.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ("BELL")</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>
 None
</para>
</refsect1>
</refentry>
<refentry id='blnkoff'>
<refnamediv>
<refname>blnkoff</refname>
<refpurpose>Turn off blinking for characters being sent to a text window.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "BLNKOFF")</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
</para>
</refsect1>
</refentry>
<refentry id='blnkon'>
<refnamediv>
<refname>blnkon</refname>
<refpurpose>Turn on blinking for characters being sent to a text window.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "BLNKON")</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
</para>
</refsect1>
<refsect1><title>Notes</title>
<para>
        Does not work on a graphics window.
</para>
</refsect1>
</refentry>
<refentry id='boldsw'>
<refnamediv>
<refname>boldsw</refname>
<refpurpose>Turn bold printing on or off for characters being printed.</refpurpose>
</refnamediv>

<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "BOLDSW", "switch")</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
<replaceable>switch</replaceable>        "ON" to turn bold on. "OFF" to turn bold off.
</para>
</refsect1>
<refsect1><title>Notes</title>
<para>
        Only works on a graphics window.
</para>
</refsect1>
</refentry>
<refentry id='border'>
<refnamediv>
<refname>border</refname>
<refpurpose>Set the border color palette.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "BORDER", color)</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
<replaceable>color</replaceable>         Palette number to use.
</para>
</refsect1>
</refentry>
<refentry id='box'>
<refnamediv>
<refname>box</refname>
<refpurpose>Draw a rectangle on a graphics window.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "BOX" [,xcor1, ycor1], xcor2, ycor2)</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
<replaceable>xcor1, ycor1</replaceable>  Beginning coordinates for the box.
<replaceable>xcor2, ycor2</replaceable>  Ending coordinates for the box.
</para>
</refsect1>
</refentry>
<refentry id='circle'>
<refnamediv>
<refname>circle</refname>
<refpurpose>Draw a circle on a graphics window.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "CIRCLE" [,xcor, ycor], radius)</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
<replaceable>xcor, ycor</replaceable>    Coordinates to use as the center point.
<replaceable>radius</replaceable>        Radius of the circle.
</para>
</refsect1>
</refentry>
<refentry id='clear'>
<refnamediv>
<refname>clear</refname>
<refpurpose>Clear the screen.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "CLEAR")</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
</para>
</refsect1>
</refentry>
<refentry id='color'>
<refnamediv>
<refname>color</refname>
<refpurpose>Set the window colors.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "COLOR", foreground [,background] [,border] )</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
<replaceable>foreground</replaceable>    Register number to use for the foreground color.
<replaceable>background</replaceable>    Register number to use for the background color.
<replaceable>border</replaceable>        Register number to use for the border color.
</para>
</refsect1>
</refentry>
<refentry id='crrtn'>
<refnamediv>
<refname>crrtn</refname>
<refpurpose>Sends a carriage return to the window.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "CRRTN")</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
</para>
</refsect1>
</refentry>
<refentry id='curdwn'>
<refnamediv>
<refname>curdwn</refname>
<refpurpose>Moves the cursor down one text line.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "CURDWN")</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
</para>
</refsect1>
</refentry>
<refentry id='curhome'>
<refnamediv>
<refname>curhome</refname>
<refpurpose>Move the text cursor to the top left corner of the window.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "CURHOME")</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
</para>
</refsect1>
</refentry>
<refentry id='curlft'>
<refnamediv>
<refname>curlft</refname>
<refpurpose>Move the text cursor one character to the left.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "CURLFT")</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
</para>
</refsect1>
</refentry>
<refentry id='curoff'>
<refnamediv>
<refname>curoff</refname>
<refpurpose>Make the cursor invisible.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "CUROFF")</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
</para>
</refsect1>
</refentry>
<refentry id='curon'>
<refnamediv>
<refname>curon</refname>
<refpurpose>Makes the text cursor visible.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "CURON")</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
</para>
</refsect1>
</refentry>
<refentry id='currgt'>
<refnamediv>
<refname>currgt</refname>
<refpurpose>Moves the text cursor one character to the right.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "CURRGT")</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
</para>
</refsect1>
</refentry>
<refentry id='curup'>
<refnamediv>
<refname>curup</refname>
<refpurpose>Move the text cursor up one line.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "CURUP")</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
</para>
</refsect1>
</refentry>
<refentry id='curxy'>
<refnamediv>
<refname>curxy</refname>
<refpurpose>Move the text cursor to X column and Y row.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "CURXY", column, row)</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
<replaceable>column</replaceable>        Horizontal position on the window.
<replaceable>row</replaceable>           Vertical position on the window.

</para>
</refsect1>
<refsect1><title>Notes</title>
<para>
column and row are limited to the text size of the current window.
</para>
</refsect1>
</refentry>
<refentry id='cwarea'>
<refnamediv>
<refname>cwarea</refname>
<refpurpose>Changes/sets the working area on the window.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "CWAREA", xcor, ycor, sizex, sizey)</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
<replaceable>xcor, ycor</replaceable>    Upper left corner of the new working area, relative to
                   the original window. Coordinates are based on character
                   positions - not graphics locations.
<replaceable>sizex</replaceable>         Number of character positions wide for the new area.
<replaceable>sizey</replaceable>         Number of rows down for the new area.
</para>
</refsect1>
</refentry>
<refentry id='defbuff'>
<refnamediv>
<refname>defbuff</refname>
<refpurpose>Define a buffer for get/put operations.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ("DEFBUFF", group, buffer, size)</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>group</replaceable>         A reference number you select. Range 1-199.
<replaceable>buffer</replaceable>        A number you assign to this buffer. Range 1-255.
<replaceable>size</replaceable>          Size of this buffer. Range 1-8192 depending on how
                   much memory is available in this group.
</para>
</refsect1>
</refentry>
<refentry id='defcol'>
<refnamediv>
<refname>defcol</refname>
<refpurpose>Set palette registers to the default values.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "DEFCOL")</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
</para>
</refsect1>
</refentry>
<refentry id='dellin'>
<refnamediv>
<refname>dellin</refname>
<refpurpose>Delete the line of text the cursor is on.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "DELLIN")</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>            Route to the window you want to use.
</para>
</refsect1>
</refentry>
<refentry id='draw'>
<refnamediv>
<refname>draw</refname>
<refpurpose>Draw a polyline figure based on information in an option list.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "DRAW", option list)</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
<replaceable>option list</replaceable>   A string containing the draw options/instructions.

Options:
Nnum               North (up) num units.
Snum               South (down) num units.
Enum               East (right) num units.
Wnum               West (left) num units.
NEnum              NorthEast (up &amp; right) num units.
NWnum              NorthWest (up &amp; left) num units.
SEnum              SouthEast (down &amp; right) num units.
SWnum              SouthWest (down &amp; left) num units.
Aval               Axis for north.  0=top 1=right 2=bottom 3=left
Uxcor, ycor        Draw a line to x &amp; y coordinates relative to the
                   current draw pointer position.
Bxcor, ycor        Blank move to x &amp; y coordinates relative to the current
                   draw pointer position.
</para>
</refsect1>
</refentry>
<refentry id='dwend'>
<refnamediv>
<refname>dwend</refname>
<refpurpose>Deallocates (ends) a device window.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "DWEND")</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to end.
</para>
</refsect1>
</refentry>
<refentry id='dwprotsw'>
<refnamediv>
<refname>dwprotsw</refname>
<refpurpose>Protect/unprotect a device window.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "DWPROTSW", "switch")</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
<replaceable>switch</replaceable>        "ON" to protect a window. "OFF" to unprotect.

</para>
</refsect1>
<refsect1><title>Notes</title>
<para>
Unprotected windowscan be covered by another window.
</para>
</refsect1>
</refentry>
<refentry id='dwset'>
<refnamediv>
<refname>dwset</refname>
<refpurpose>Define a device window.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "DWSET", format, xcor, ycor, width, length,
                   foreground, background, border)</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to define.
<replaceable>format</replaceable>        Code for the type of screen to use.
<replaceable>xcor, ycor</replaceable>    Coordinates for the upper left corner of the window.
<replaceable>width</replaceable>         Width of the window,  in characters.
<replaceable>length</replaceable>        Length of the window,  in rows.
<replaceable>foreground,</replaceable>   Palettes to use for foreground,  background,  and
<replaceable>background,</replaceable>   border colors.
<replaceable>border</replaceable>
</para>
</refsect1>
</refentry>
<refentry id='ellipse'>
<refnamediv>
<refname>ellipse</refname>
<refpurpose>Draws an ellipse.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "ELLIPSE" [,xcor, ycor], xrad, yrad)</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
<replaceable>xcor, ycor</replaceable>    Coordinates for the center of the ellipse.
<replaceable>xrad, yrad</replaceable>    Radii of the ellipse's length and height.
</para>
</refsect1>
</refentry>
<refentry id='ereoline'>
<refnamediv>
<refname>ereoline</refname>
<refpurpose>Erase from the cursor to the end of the line.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "EREOLINE")</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
</para>
</refsect1>
</refentry>
<refentry id='ereowndw'>
<refnamediv>
<refname>ereowndw</refname>
<refpurpose>Erase from the line the cursor is on to the end of the window.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "EREOWNDW")</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
</para>
</refsect1>
</refentry>
<refentry id='erline'>
<refnamediv>
<refname>erline</refname>
<refpurpose>Delete the line of text the cursor is on.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "ERLINE")</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
</para>
</refsect1>
</refentry>
<refentry id='fill'>
<refnamediv>
<refname>fill</refname>
<refpurpose>Fill (paint) a window,  or a portion of it.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "FILL" [,xcor, ycor])</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
<replaceable>xcor, ycor</replaceable>    X &amp; Y coordinates to start the fill at.

</para>
</refsect1>
<refsect1><title>Notes</title>
<para>
Paints with the current foreground color. Only fills the area that's the
same color as the point where it starts.
</para>
</refsect1>
</refentry>
<refentry id='font'>
<refnamediv>
<refname>font</refname>
<refpurpose>Defines which buffer is to be used for graphic text characters.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "FONT", group, buffer)</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window to be tied to the selected buffer.
<replaceable>group</replaceable>         Group number that contains the selected buffer.
<replaceable>buffer</replaceable>        Buffer number to use.
</para>
</refsect1>
</refentry>
<refentry id='gcset'>
<refnamediv>
<refname>gcset</refname>
<refpurpose>Select which graphics cursor to use.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ("GCSET", group, buffer)</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>group</replaceable>         Group number that has the buffer you want to use.
<replaceable>buffer</replaceable>        Buffer number of the cursor image to use.
</para>
</refsect1>
</refentry>
<refentry id='get'>
<refnamediv>
<refname>get</refname>
<refpurpose>Store a portion of the window in a GET/PUT buffer.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "GET", group, buffer, xcor, ycor, xsize, ysize)</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
<replaceable>group</replaceable>         Group number that has the buffer to use.
<replaceable>buffer</replaceable>        Buffer number to store the data in.
<replaceable>xcor, ycor</replaceable>    X &amp; Y coordinates of the upper left corner to save.
<replaceable>xsize</replaceable>         Horizontal size of the area to save.
<replaceable>ysize</replaceable>         Vertical size of the area to save.
</para>
</refsect1>
</refentry>
<refentry id='gpload'>
<refnamediv>
<refname>gpload</refname>
<refpurpose>Load a GET/PUT buffer with image data.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ("GPLOAD", group, buffer, format, xdim, ydim, size)</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>group</replaceable>         Group number to associate this buffer with.
<replaceable>buffer</replaceable>        Buffer number for the buffer you create.
<replaceable>format</replaceable>        Type code for the screen format.
<replaceable>xdim, ydim</replaceable>    X &amp; Y dimensions of the stored block.
<replaceable>size</replaceable>          Size of the buffer in bytes. 1 to 8 Kbytes.
</para>
</refsect1>
</refentry>
<refentry id='inslin'>
<refnamediv>
<refname>inslin</refname>
<refpurpose>Insert a blank line at the cursor position.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "INSLIN")</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
</para>
</refsect1>
</refentry>
<refentry id='killbuff'>
<refnamediv>
<refname>killbuff</refname>
<refpurpose>Deallocate a GET/PUT buffer.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ("KILLBUFF", group, buffer)</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>group</replaceable>         Group number of the buffer to get rid of. 1 to 199.
<replaceable>buffer</replaceable>        Buffer number to deallocate. 1 to 255.
</para>
</refsect1>
</refentry>
<refentry id='line'>
<refnamediv>
<refname>line</refname>
<refpurpose>Draw a line.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "LINE" [,xcor1, ycor1], xcor2, ycor2)</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
<replaceable>xcor1, ycor1</replaceable>  X &amp; Y coordinates for the start of the line.
<replaceable>xcor2, ycor2</replaceable>  X &amp; Y coordinates for the end of the line.
</para>
</refsect1>
</refentry>
<refentry id='logic'>
<refnamediv>
<refname>logic</refname>
<refpurpose>Sets the logic type to be used on drawing functions.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ("LOGIC", "function")</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>function</replaceable>      "OFF"  -  no logic is used.
                   "AND"  -  AND logic is used.
                   "OR"   -  OR logic is used.
                   "XOR"  -  XOR logic is used.
</para>
</refsect1>
</refentry>
<refentry id='owend'>
<refnamediv>
<refname>owend</refname>
<refpurpose>Deallocate the specified overlay window.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ([path,] "OWEND")</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>            Route to the window you want to end.

</para>
</refsect1>
<refsect1><title>Notes</title>
<para>
The book doesn't give a specific example of this function.
</para>
</refsect1>
</refentry>
<refentry id='owset'>
<refnamediv>
<refname>owset</refname>
<refpurpose>Create an overlay window.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "OWSET", save switch, xpos, ypos, xsize, ysize,
                   foreground, backgound)</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window to be overlaid.
<replaceable>save switch</replaceable>   0 = Don't save overlaid area. 1 = Save overlaid area.
<replaceable>xpos, ypos</replaceable>    X &amp; Y character positions for upper left corner.
<replaceable>xsize</replaceable>         Width of overlay window in characters.
<replaceable>ysize</replaceable>         Depth of overlay window in rows.
<replaceable>foreground,</replaceable>   Palettes to use for overlay foreground &amp; background.
<replaceable>background</replaceable>
</para>
</refsect1>
</refentry>
<refentry id='palette'>
<refnamediv>
<refname>palette</refname>
<refpurpose>Set the color of a palette register.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "PALETTE", register, color)</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
<replaceable>register</replaceable>      Palette register number to set.
<replaceable>color</replaceable>         Value to set in register. 0 to 63.
</para>
</refsect1>
</refentry>
<refentry id='pattern'>
<refnamediv>
<refname>pattern</refname>
<refpurpose>Select the pattern buffer to use.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "PATTERN", group, buffer)</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window to associate with the buffer.
<replaceable>group</replaceable>         Group number that contains the buffer.
<replaceable>buffer</replaceable>        Buffer number for the patterns.
</para>
</refsect1>
</refentry>
<refentry id='point'>
<refnamediv>
<refname>point</refname>
<refpurpose>Set a point to current foreground color.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "POINT" [,xcor, ycor])</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
<replaceable>xcor, ycor</replaceable>    X &amp; Y coordinates of location to set.
</para>
</refsect1>
</refentry>
<refentry id='propsw'>
<refnamediv>
<refname>propsw</refname>
<refpurpose>Set/reset the proportional text switch.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "PROPSW", "switch")</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
<replaceable>switch</replaceable>        "ON" = proportional spacing. "OFF" = fixed spacing.
</para>
</refsect1>
</refentry>
<refentry id='putgc'>
<refnamediv>
<refname>putgc</refname>
<refpurpose>Place the graphics cursor anywhere on the screen.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "PUTGC", xcor, ycor)</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the screen you want to use.
<replaceable>xcor, ycor</replaceable>    Screen X &amp; Y coordinates for the cursor location.
</para>
</refsect1>
</refentry>
<refentry id='put'>
<refnamediv>
<refname>put</refname>
<refpurpose>Place a specified GET/PUT buffer on a window.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "PUT", group, buffer, xcor, ycor)</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
<replaceable>group</replaceable>         Group number containing the buffer you want to use.
<replaceable>buffer</replaceable>        Buffer number to put on the window.
<replaceable>xcor, ycor</replaceable>    X &amp; Y coordinates of the upper left corner.
</para>
</refsect1>
</refentry>
<refentry id='revoff'>
<refnamediv>
<refname>revoff</refname>
<refpurpose>Turns reverse video off for characters.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "REVOFF")</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
</para>
</refsect1>
</refentry>
<refentry id='revon'>
<refnamediv>
<refname>revon</refname>
<refpurpose>Turns reverse video on for characters.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "REVON")</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
</para>
</refsect1>
</refentry>
<refentry id='scalesw'>
<refnamediv>
<refname>scalesw</refname>
<refpurpose>Turns scaling ON or OFF for graphics windows.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "SCALESW", "switch")</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
<replaceable>switch</replaceable>        "ON" = coordinates act as if the window was 640 x 192.
                   "OFF" = coordinates are relative to the window origin.

</para>
</refsect1>
<refsect1><title>Notes</title>
<para>
Scaling does not affect text.
</para>
</refsect1>
</refentry>
<refentry id='select'>
<refnamediv>
<refname>select</refname>
<refpurpose>Select (change) which window is active for input/output.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "SELECT")</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to select.
</para>
</refsect1>
</refentry>
<refentry id='setdptr'>
<refnamediv>
<refname>setdptr</refname>
<refpurpose>Position the drawing pointer.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "SETDPTR", xcor, ycor)</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window you want to use.
<replaceable>xcor, ycor</replaceable>    X &amp; Y coordinates to move the draw pointer to.
</para>
</refsect1>
</refentry>
<refentry id='undlnoff'>
<refnamediv>
<refname>undlnoff</refname>
<refpurpose>Turns character underlining off.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "UNDLNOFF")</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window where you want underlining off.
</para>
</refsect1>
</refentry>
<refentry id='undlnon'>
<refnamediv>
<refname>undlnon</refname>
<refpurpose>Turns character underlining on.</refpurpose>
</refnamediv>


<refsynopsisdiv>
<cmdsynopsis>
<command>RUN GFX2 ( [path,] "UNDLNON")</command>
</cmdsynopsis>
</refsynopsisdiv>

<refsect1><title>Parameters</title>
<para>

<replaceable>path</replaceable>           Route to the window where you want underlining on.
</para>
</refsect1>
</refentry>

</appendix>