$T.HEL

From Rosetta Code

$T.HEL

The   $T.HEL   is the HELp (documentation) for the   $T.REX   (REXX) program.

The   $T   command is used to display  text to the console with various options,
some of which are: clearing the screen, specifing all (or parts of) text in hex,
showing the text in a box,  writing the text to any line on the screen, sounding
the bell (alarm),  typing blank lines  before  and/or  after  the text,  showing
parenthesized portions in a brite white (or any color),  or showing the text and
waiting for any key to be pressed    (in CMS, the  ENTER  key must be used).
Note that colors and highlighting are supported under DOS (and/or under the
various Windows)  if  and  only if  the  ANSI.SYS  driver is installed.

╔══════════════════════════════════════════════════════════════════════════════╗
║                                                                              ║
║    $T    yyy  yyy  yyy   {.OOO=yyy}   yyy  yyy  yyy  ...                     ║
║                                                                              ║
║           ?                                                                  ║
║           ?AUTHOR                                                            ║
║           ?FLOW R                                                            ║
║           ?SAMPLES                                                           ║
║                                                                              ║
╟──────────────── where  .OOO  is any or all of  (note the uppercase): ────────╢
║                                                                              ║
║# blank lines typed  after message   .A=nn                                    ║
║character used as a blank for   .A   .AB=c │ hh                               ║
║# of beeps  (using the PC speaker)   .B=nn                                    ║
║char used for blockchr  background   .BB=c │ hh                               ║
║character(s) to use when  blocking   .BC=ccc │ 'hhhh'x                        ║
║duration in seconds for the  beeps   .BD=nnn │ nnn,nnn,nnn,...                ║
║bin strings ───> char  used in msg   .BIN=bbbbbbbb │ bbbbbbbb,bbbbbbbb, ...   ║
║frequency of the  sound  for beeps   .BF=nnn │ nnn,nnn,nnn,...                ║
║# lines  used  for  blocked  chars   .BLOCK=nn                                ║
║draws a  box  around  the  message   .BOX= │ cccccccc │ *NONE*                ║
║# blanks between each blocked char   .BS=nn                                   ║
║specifies  the  color  of the  msg   .C=color                                 ║
║highlights, reverses, blinks,  ...   .D=disposition                           ║
║dec strings ───> char  used in msg   .DEC=nnn │ nnn,nnn,nnn,...               ║
║# empty lines  (also inside boxes)   .E=nn                                    ║
║character used as a blank for   .E   .EB=c │ hh                               ║
║like .F but doesn't build DIR tree   .EF=fff │ fn,ft │ fn,ft,fm               ║
║following  .OOO opts  to be in msg   .END=1                                   ║
║also  writes msg to a  (disk) file   .F=fff │ fn,ft │ fn,ft,fm                ║
║highlight color of text inside  ()   .H=color                                 ║
║highlight color of text inside  []   .H[]=color                               ║
║highlight color of text inside  {}   .H{}=color                               ║
║hex strings ───> char  used in msg   .HEX=hh │ hhhh │ hh,hh,hh,,,,            ║
║indentation  used by  all messages   .I=nn                                    ║
║character used as a blank for   .I   .IB=c │ hh                               ║
║invert  bits for  ccc   characters   .INV=ccc                                 ║
║left/center/right    justification   .J=A | L │ R │ C │ J │ N                 ║
║karate chop  msg  into smaller mgs   .K=ccc  │ 'hhhh'x                        ║
║destructive karate chops  (delete)   .KD=ccc │ 'hhhh'x                        ║
║# blank lines between chopped msgs   .KS=nn                                   ║
║character used as a blank for  .KS   .KSB=c │ hh                              ║
║which line on  screen to write msg   .L=nn │ M │ M+nn │ M-nn │ * │ *+nn │ *-nn║
║only  write some lines  or  a line   .O=nnn                                   ║
║# blank lines  preceeding  message   .P=nn                                    ║
║character used as a blank for   .P   .PB=c │ hh                               ║
║supress typing,  but  not  to disk   .Q=1                                     ║
║a method of commenting  $T options   .REM=ccc                                 ║
║# of times  the msg is  replicated   .R=nnn                                   ║
║show 1,2,3─line ruler  bef│aft msg   .RULER=* │ nnn │ -nnn │ +nnn             ║
║char used as a blank in the  ruler   .RULERB=c │ hh                           ║
║supress writing of  some/a line(s)   .S=nnn                                   ║
║show 1,2,3─line scale  bef│aft msg   .SCALE=* │ nnn │ -nnn │ +nnn             ║
║char used as a blank in the  scale   .SCALEB=c │ hh                           ║
║char used as a  dot  in the  scale   .SCALED=c │ hh                           ║
║char used as a plus  in tge  scale   .SCALEP=c │ hh                           ║
║# of times  the message is written   .T=nnn                                   ║
║# blank lines between  .T= writing   .TS=nn                                   ║
║character used as a blank for  .TS   .TSB=c │ hh                              ║
║uses the  case  specified  for msg   .U=A │ L │ M │ U                         ║
║character used as a blank in   msg   .UB =c │ hh                              ║
║use char as the dot for  .OOO opts   .USE=c │ hh                              ║
║translate all chars cc─>CC  in msg   .UT=ccCC  │ 'hhhhhhhh'x                  ║
║how  the msg is  viewed  (written)   .V=Normal │ Reverse                      ║
║writes waitmsg and waits for input   .W=waitmsg                               ║
║character used as a blank for   .W   .WB=c │ hh                               ║
║add eXtra  blanks  to the msg line   .X=nn                                    ║
║character used as a blank for   .X   .XB=c │ hh                               ║
║# seconds delay  after writing msg   .Z=nn                                    ║
╚══════════════════════════════════════════════════════════════════════════════╝

───where all arguments are optional, and  the      .OPTION    options must be
   capitalized  and  prefixed by a period (.)

?          shows this help file              (press  ESC  to quit when viewing).

?AUTHOR    shows the author of this program.

           The author is shown in a yellow box (if color is supported),  along
           with the author's phone number  and  E-mail address.

?FLOW      shows the external execution flow of this program.

?SAMPLES   shows some sample uses            (press  ESC  to quit when viewing).

yyy        is a character string or strings that are to be displayed.  It may be
           ommitted (blank),  in which case nothing is displayed.   Imbedded
           blanks are retained, but leading and trailing blanks are stripped  (a
           function of the operating system).    Leading blanks can be "changed"
           into  imbedded blanks by prefixing the text with an superfous option.
           I.E.:   $T .A=0      yowsa!
           Another way to  specify leading  blanks  is to use the  indent  (.I=)
           option,  and trailing blanks can be specified via the   .X=   option.
           Any characters of the value '00'x are translated to blanks.


───note that any  .OOO  letters before the equal sign (=) must be in uppercase.


.A=nn      specifies the number of blank lines written after the message text is
           displayed.
           If  nn   is negative, the positive value of it is used to cause blank
           lines to be written  before the message also  (this is in addition to
           the  .P  value).      nn   can be from  -99 ──> 99    (default is 0).

           nn   can also be specified as: *         (screen depth)
                                          *+nn      (screen depth + nn)
                                          *-nn      (screen depth - nn)
                                          M+nn      (half screen +nn)
                                          M-nn      (half screen -nn)
                                          */nn      (screen depth / nn), rounded
                                                                            down
.AB=c
.AB=hh     the character used as a blank for the  .A   option  (displaying blank
           lines after the text).   It can be specified as a single character or
           as a hexadecimal pair.     The default is a blank.

.B=nn      sounds the  bell (beep)    nn    times    before   the text is shown.
           There is a one─tenth second delay between multiple beeps.
           nnn  can be from   -99 ──> 99,   the default is  0.
           If   nn    is negative, the bell is sounded   nn   times  before  and
           after the message   (the positive value of  nn   is used).   There is
           a one second delay after the text is displayed and before the "after"
           beeps are sounded.

.BB=c
.BB=hh     the character used for the background when the text is  blocked  (via
           the   .BLOCK=   option).   The default is a blank.

.BC=ccc
.BC='hhhh'x  the character(s) to be used if the text is blocked (via the .BLOCK=
           option).   The default is to use the character that is being blocked.
           The  .BC   character(s)  are concatenated to itself to yield a string
           long enough to match the (message) text specified.

.BD=nnn,nnn,nnn,...
.BD=nnn    specifies the duration in seconds for the beep (sound).
           nnn  can be from   .1 ──> 9            The default is  .2  (seconds).
           Multiple durations may be specified (for multiple frequencies.)

.BF=nnn,nnn,nnn,...
.BF=nnn    specifies the frequency (of the sound) of the beep.
           nnn  can be from   1 ──> 20000         The default is   800  (hertz).
           Multiple frequencies may be specified (with multiple durations).

.BIN=bbbbbbbb
.BIN=bbbbbbbb,bbbbbbbb,bbbbbbbb,...
.BIN=bbbbbbbbbbbbbbbb        is a binary string  and  bbbbbbbb  should be binary
           digits (only zeroes and ones).    No leading,  trailing,  or imbedded
           blanks are allowed within the binary string(s).     Commas (,) may be
           used for readability.   The binary string is converted to a character
           string.
           Any number of   .BIN=   options may be specified.

.BLOCK=-nnn
.BLOCK=nnn if  nnn  is positive,  it indicates the number of blocked lines to be
           generated of the blocked (message) text.
           If  nnn  is negative,  it indicates to only display the (positive)
           nth  block text line.              nnn     can range from  -1  to  12
           The default is  0   (don't block the text).

.BOX=(none)
.BOX=(NONE)   indicates that no box is to be used.

.BOX='HHHHHHHHHHHHHHHH'X
.BOX="hhhhhhhhhhhhhhhh"x
.BOX=cccccccc
.BOX=      indicates the text is to be boxed  (the text will have a  leading and
           trailing blank prefixed and appended to it to make the text easier to
           read within the box).   If the boxchars  (cccccccc)  are omitted, the
           boxchars used  are the ones used in this documention   (see the first
           part of this file).       The number of boxchars can be from  one  to
           eight   (or  sixteen,  if specified in hexadecimal).

           'hhhh...'x   or   "HHHH..."X   are the boxcharacters specified in hex
           where   hh   are pairs of hexadecimal digits (0──>9, a──>f, or A──>F)
           the  X  suffix may be upper/lower case,    hh   can be in mixed case.
           Note that either a paired single (') or double quote (") may be used.

           If  boxchars (cccccccc)  are specified,  the  order  of selection is:

                 1st character is the   top   left corner
                 2nd     "     "   "    top   side
                 3rd     "     "   "    top  right corner
                 4th     "     "   "         right side
                 5th     "     "   "  bottom right corner
                 6th     "     "   "  bottom  side
                 7th     "     "   "  bottom right corner
                 8th     "     "   "          left side

           If there are less than eight  boxchars (cccccccc) specified, the last
           character specified is used for the remainder of the boxchars.  Thus,
           a single plus sign (+)  would be used for all eight sides of the box.

           If there are leading blanks specified  before  the actual body of the
           text, these blanks are paired on the right (end) of the text so as to
           make the text in the box balanced.

.BS=nn     spacing between each blocked character  (of the message text,  if the
           text is blocked via the   .BLOCK   option).        The default is  2.
           nn    can be from  -11  to  screenwidth,  a negative value will cause
           overlapping of blocked characters.

           nn   can also be specified as: *         (screen width)
                                          *+nn      (screen width + nn)
                                          *-nn      (screen width - nn)
                                          M+nn      (half of width +nn)
                                          M-nn      (half of width -nn)
                                          */nn      (screen width / nn), rounded
                                                                            down

.C=color   shows the text in color;  the color specified must be capitalized and
           be one of:

                 RED     PINK     GREEN     TURQUOISE     BLUE WHITE YELLOW GREY
             DARKRED DARKPINK DARKGREEN DARKTURQUOISE DARKBLUE BRITE BROWN  GRAY

           CYAN can be used instead of TURQUOISE,  and  MAGENTA instead of PINK.

           Note that some DOS color drivers don't support GRAY (shown in black).

           If under CMS, all dark colors are shown as  regular colors,   and the
           following colors are translated:    brown ──> yellow
                                               black ──> white
                                               grey  ──> white

           Only the first 3 characters of any color  need be  specified,  except
           for the  DARK  colors, which need seven,   and   GREY  which can't be
           abbreviated    (it would conflict with  GREen).

           Under DOS,  $T expects the DOS EnvVar (environmental variable) SCREEN
           to be set with  up to three values  (with blanks between the values):
             foreground─color─code   background─color─code   text─attribute─code
           These values are used to restore the screen colors after  $T finishes
           executing.    If no  SCREEN  variables are set, then    37 40 0    is
           assummed.       Under CMS,  screen colors are automatically restored.

          ┌────────────────────────────────────────────────────────────────────┐
          │ fore─  back─                                                       │
          │ground ground     color                    text attributes          │
          ├──────────────────────────────────┬─────────────────────────────────┤
          │   30     40       black          │                                 │
          │   31     41  dark red            │                                 │
          │   32     42  dark green          │                                 │
          │   33     43  dark yellow (brown) │ 0 reset   (all attributes off)  │
          │   34     44  dark blue           │                                 │
          │   35     45  dark magenta        │ 1 bold (or high─intensity color)│
          │   36     46  dark cyan           │                                 │
          │   37     47  dark white  (grey)  │ 4 underscore (monochrome only)  │
          │ 1,31   1,41       red            │                                 │
          │ 1,32   1,42       green          │ 5 blink                         │
          │ 1,33   1,43       yellow         │                                 │
          │ 1,34   1,44       blue           │ 7 reverse video                 │
          │ 1,35   1,45       magenta        │                                 │
          │ 1,36   1,46       cyan           │ 8 concealed  (invisible)        │
          │ 1,37   1,47       white          │                                 │
          └──────────────────────────────────┴─────────────────────────────────┘

.D=disposition   where disposition is one of the capitalized following:
           NONE     ─── shows normal text.
           REVVIDEO ─── shows reverse vidio text.
           UNDERLIN ─── shows underlined text.
           BLINK    ─── shows blinking text.
           BRITE    ─── shows text in high intensity white.
           HIGHL    ─── shows parenthesized text in highlight (default is
                        BRITE  (or high intensity white), or whatever
                        color is specified via the  .H=color  option).  The
                        parenthesis used () are translated to blanks via this
                        process.  Specifying any of the   .H   .H[]   .H{}
                        options enables the   .D=HIGHL   option by default.

.DEC=ddd,ddd,ddd
.DEC=ddd         is a decimal string (number) and   ddd   should be only decimal
           digits.   No leading, trailing, or imbedded blanks are allowed within
           within the decimal number(s).              Commas (,) may be used for
           readability.   The decimal string is converted to a character string.
           Any number of   .DEC=   options may be specified.

.E=nn      number of blank lines to be added before and after the text.   The
           lines will be "inside" the box  if  a box is generated.   These blank
           lines are in addition to (if any) the     .A     and     .P    lines.
           nn   can be from  0 ──> 99     (default is 0).
           /hex=
           nn   can also be specified as: *         (screen depth)
                                          *+nn      (screen depth + nn)
                                          *-nn      (screen depth - nn)
                                          M+nn      (half screen +nn)
                                          M-nn      (half screen -nn)
                                          */nn      (screen depth / nn), rounded
                                                                            down
.EB=c
.EB=hh     the character used as a blank for the  .E  option  (displaying blank
           lines before and after the text.    It can be specified as a single
           character  or  as a hexadecimal pair.     The default is a blank.

.EF=fff    same as the  .F=fff   option, but if running under DOS, doesn't build
           the directory structure (tree) if it doesn't exist.

.END=1     any     .OOO=      options following the .END=1 option are to be
           treated as data, that is, they will appear as is in the message text.

.F=fff     writes the text to the file specified (fff),  in addition to typing.

           Under CMS, the filename, filetype, and filemode  (the ft and fm are
           optional)  should be seperated by commas (,).

           The default for  filetype  is   $T        (for CMS).
           The default for  filemode  is   A1        (for CMS).

           Error messages (if any) aren't written to the specified file.

           Under DOS, the directory structure (tree) for the file is built if it
           doesn't exist.   All levels are created in need be.

.H=color   specifies the color to be used when () highlighting is in effect (via
           the   .D=HIGHL   option).   If not specified,  the default is  BRITE.
           Color for this highlighting is effected  by placing  some text within
           parenthesis  ().    The  .H=  option enables the   .D=HIGHL   option.

.H[]=color specifies the color to be used when [] highlighting is in effect (via
           the  .D=HIGHL  option).     If not specified,  the default is  BRITE.
           Color for this highlighting is effected  by placing  some text within
           brackets  [].     The  .H[]=  option enables the   .D=HIGHL   option.

.H{}=color specifies the color to be used when {} highlighting is in effect (via
           the  .D=HIGHL  option).     If not specified,  the default is  BRITE.
           Color for this highlighting is effected  by placing  some text within
           braces  {}.       The  .H{}=  option enables the   .D=HIGHL   option.

.HEX=hh
.HEX=hh,hh,hh ...
.HEX=hhhh  is a hexadecimal string  and  hh  should be hexadecimal pair(s).  The
           hexadecimal characters may be in mixed case.    No leading, trailing,
           or imbedded blanks  are allowed within the hexstring.  Commas (,) may
           be used for readability.     The hexadecimal string is converted to a
           character string.
           Any number of   .HEX=   options may be specified.

.I=nn      number of spaces all text is to be  indented   (this includes the box
           (if a box is generated).
           nn   can be from  0 ──> 99,  the default is  0.

           nn   can also be specified as: *         (screen width)
                                          *+nn      (screen width + nn)
                                          *-nn      (screen width - nn)
                                          M+nn      (half of width +nn)
                                          M-nn      (half of width -nn)
                                          */nn      (screen width / nn), rounded
                                                                            down

.IB=c
.IB=hh     the character used as a blank for the  .I  option  (indentation).  It
           can be  specified as a  single character  or  as a  hexadecimal pair.
           The default is a blank.

.INV=ccc   where  ccc  is any number of characters  whose  bit values  are to be
           inverted (that is, turn all  1's  into  0's, and all  0's  into  1's.
           Any number of   .INV=   options may be specified.

.J=Any
.J=Left
.J=Right
.J=Center
.J=Justify
.J=None    specifies the kind of justification.     The default is  .J=N  (none)

           In all cases of justification, indentation is performed (added) after
           the justification process  (this may cause truncation or croping).
           All justifications are made within the screen width.  Any text longer
           or equal to the screen width isn't justified and left intact (asis).
           In call cases below, the actual screen width (or length) is the
           screen width minus one.   The value may be in any case.

                what blanks
           .J=  are stripped           what the justification does
           ───  ──────────── ──────────────────────────────────────────────────
            A     depends     randomly chooses one of    L,   R,   or   C.

            L     leading     abuts the text against the  leftmost column

            R     trailing    abuts the text against the rightmost column

            C       both      places the text in the center of the line

            J       both      inserts blanks between words so they fill the line

            N       none      nothing, no justification is performed


.K='HHHH'X
.K='hhhh'x
.K=ccc     where  ccc  is a character or characters which are used as chop the
           text into smaller (multiple) text lines.   The character(s) can be
           thought of as line seperators or line feeds.   The character string
           is kept as part of the previous string.   If a blank is desired
           as the line sepeator, it must be specified in hexadecimal.

           The string can also be specified as a hexadecimal character string.

           This option can't be specified if the   .KD=   option is used.

.KD='HHHH'X
.KD='hhhh'x
.KD=ccc    same as the   .K=   option, but the character(s) are removed from the
           text.

           This option can't be specified if the   .KD=   option is used.

.KS=nn     number of "blank" lines displayed between lines of chopped message
           text(s)   (via the   .K    or   .KD    option).
           nn   can be from  0 ──> 99     (default is 0).

           nn   can also be specified as: *         (screen depth)
                                          *+nn      (screen depth + nn)
                                          *-nn      (screen depth - nn)
                                          M+nn      (half screen +nn)
                                          M-nn      (half screen -nn)
                                          */nn      (screen depth / nn), rounded
                                                                            down
.KSB=c
.KSB=hh    the character used as a blank for the  .KS  option  (displaying blank
           lines between chopped message texts.  It can be specified as a single
           character or as a hexadecimal pair.     The default is a blank.

.L=nn      where  nn   is the line on the screen that the text is to be shown,
           and must be one of  (capitalized if alphabetic):
             nn     line on screen, from 1 to the screen depth size.
             *      (same as LAST)
             LAST   indicates the last line on the screen.
             CMSG   indicates the CMS command line.  The  text  is written to
                    the command line and then can be modified by the user and
                    the ENTER key can be pressed to enter the text as a command.
             M      indicates the middle of the screen  (rounded down).
             M+nn       "      "    "    "   "    "    plus    nn   lines.
             M-nn       "      "    "    "   "    "    minus    "     "
             *-nn       "      "  last line  "    "    minus    "     "
             */nn       "      "  last line  "    "    divided by  nn (rounded
                                                                       down)
           A value of zero indicates to write the message normally.

.O=nnn     type only  nnn  lines of text, even if more lines exist (or have been
           generated), including blank lines.   A value of   0   suppresses all

           If  nnn  is negative,  only the positive  nnnTH  line is typed.
           Writting to disk (if any)  is similarly affected.
           nnn  can be from  -999 ──> 999, the default is  *   (same as 999).

.P=nn      specifies the  number  of  blank  lines  written previous to the
           message text being displayed.
           nn   can be from  -99 ──> 99     (default is 0).

           nn   can also be specified as: *         (screen depth)
                                          *+nn      (screen depth + nn)
                                          *-nn      (screen depth - nn)
                                          M+nn      (half screen +nn)
                                          M-nn      (half screen -nn)
                                          */nn      (screen depth / nn), rounded
                                                                            down

.Q=1       suppress all typing  (writing to the screen), but doesn't suppress
           writing to a disk file    (via the  .F=fff  option, see above).
           The default is    0       (don't suppress typing).

.R=nn      number of times the text is repeated  (on one line).  Each
           nn   can be from  0 ──> 99,  the default is  0.

.REM=ccc   string   ccc  is treated as a comment (remark).  The  string can't
           have any blanks.

.RULER=*
.RULER=-nnn
.RULER=+nnn
.RULER=nnn width of a ruler line to be shown (typed) after the message.
           A leading minus sign indicates the ruler is shown before the message.
           A leading  plus sign indicates the ruler is shown before  and  after
           the message.

           nnn  can be from  0 ──> screenwidth,  the default is  0,  or it can
                be specified as an asterisk (*) which indicates the screenwidth.

           A value of  0  indicates no ruler is to be shown  (the default is 0).
           The ruler can be  1,  2, or  3  lines, depending upon how many digits
           there are in the length of the ruler.   The ruler generated isn't
           indented, boxed, nor justified as with the other text messages.
           The ruler may look like (say, for a width of 57):

                    1         2         3         4         5
           123456789012345678901234567890123456789012345678901234567

.RULERB=c
.RULERB=hh the character used as a blank for the  ruler.  It can be specified as
           single character  or  as a  hexadecimal pair.
           The default is a blank.

.S=nnn     number of lines that  $T  will suppress typing to the screen,
           nnn  can be from  0  or any positive or negative integer.  The
           default is zero.

           If  nnn  is negative, it indicates that  $T  will only suppress
           (positive)  nnnTH  line,  all others aren't suppressed.
           Writting to disk (if any)  is similarly affected.

.SCALE=*
.SCALE=-nnn
.SCALE=+nnn
.SCALE=nnn width of a scale line to be shown (typed) after the message.
           A leading minus sign indicates the scale is shown before the message.
           A leading  plus sign indicates the scale is shown before  and  after
           the message.

           nnn  can be from  0 ──> screenwidth,  the default is  0,  or it can
                be specified as an asterisk (*) which indicates the screenwidth.

           A value of  0  indicates no scale is to be shown  (the default is 0).
           The scale can be  1,  2, or  3  lines, depending upon how many digits
           there are in the length of the scale.   The scale generated isn't
           indented, boxed, nor justified as with the other text messages.
           The scale may look like (say, for a width of 57):

                    1         2         3         4         5
           ....+....0....+....0....+....0....+....0....+....0....+..

.SCALEB=c
.SCALEB=hh the character used as a blank for the  scale.  It can be specified as
           single character  or  as a  hexadecimal pair.
           The default is a blank.

.SCALED=c
.SCALED=hh the character used as a  dot  for the  scale.  It can be specified as
           single character  or  as a  hexadecimal pair.
           The default is a dot (.)  [period or decimal point].

.SCALEP=c
.SCALEP=hh the character used as a plus  for the  scale.  It can be specified as
           single character  or  as a  hexadecimal pair.
           The default is a plus sign (+)  [period or decimal point].

.T=nn      number of times the text is shown  (typed).
           nnn  can be from  0 ──> screenwidth,  the default is  1.

.TS=nn     number of "blank" lines displayed between lines of text when  .T  is
           greater than 1.   The  .EB  character is used for a blank.
           These lines are in addition to (if any) the    .A    .P    and   .E
           blank lines.
           nn   can be from  0 ──> 99     (default is 0).

           nn   can also be specified as: *         (screen depth)
                                          *+nn      (screen depth + nn)
                                          *-nn      (screen depth - nn)
                                          M+nn      (half screen +nn)
                                          M-nn      (half screen -nn)
                                          */nn      (screen depth / nn), rounded
                                                                            down

.TSB=c
.TSB=hh    the character used as a blank for the  .TS  option  (displaying blank
           lines between "times" message texts.  It can be specified as a single
           character or as a hexadecimal pair.     The default is a blank.

.V=N
.V=R       views the msg (but not the box if one is drawn) in Normal or Reverse.
           The default is  .V=n                               ─         ─

.U=A       uses the  msg  asis   (no translation).   The default is  .U=A
.U=L       uses the  msg  after translating it to lowercase.
.U=U       uses the  msg  after translating it to uppercase.
.U=F       uses the  msg  after translating the 1st character to uppercase, and
           all other characters to lowercase.
.U=W       uses the  msg  after translating the 1st character of every word to
           uppercase, all other characters to lowercase.

.UB=c
.UB=hh     the character used as a blank in the text.    All blanks in the text
           are translated to this character.    It can be specified as a single
           character or as a hexadecimal pair.        The default is a blank.
.USE=c
.USE=hh    the character to be used in subseqent     .OOO=     options.
           It can be specified as a single character or as a hexadecimal pair.
           The default is a decimal point (.) or dot.

.UT='hhhhhhh'x
.UT='HHHHHHH'x
.UT=ccCC   are pairs of hexadecimal pairs or pairs of characters, the first part
           of the pair  is a character of the text  that is to be  translated to
           the 2nd part of the pair.    If  any part  of the pair(s)  is a blank
           (character), all characters must be specified in hex.   Also, in DOS,
           any console redirection characters  should also be  specified in hex,
           such as the  <,  >,  and |  characters, as well as the usual terminal
           control characters such as backspace,  rub,  line feed, tab, carriage
           return, bell, escape, etc.   (These are characters below '20'x).

.W=        where   waitmsg  is the text to be shown and then waits for:

           ──>on DOS: any key to be pressed  (cxcept for SHIFT, CTRL, ALT)
           ──>on CMS: the  ENTER  key to be pressed, or any PF or PA key pressed

           If   waitmsg   is the character  ▌  ('DD'x)  then the following
           text is shown:  please press any key to continue ...

           If   waitmsg   is the character  ▐  ('DE'x)  then the following
           text is shown:  please press the  ENTER  key to continue ...

.WB=c
.WB=hh     the character used as a blank for the  .W  option  (displaying a wait
           message after the text is displayed.    It can be specified as a
           single character or as a hexadecimal pair.   The default is a blank.

.X=nn      number of extra blanks to append to the message (if positive), or
           if negative, extra blanks are  prefixed  and  appended  to the text.
           nn   can be from   -screenwidth ──> screenwidth,  the default is  0.

           nn   can also be specified as: *         (screen width)
                                          *+nn      (screen width + nn)
                                          *-nn      (screen width - nn)
                                          M+nn      (half width + nn)
                                          M-nn      (half width - nn)
                                          */nn      (screen width / nn), rounded
                                                                            down

.XB=c
.XB=hh     the character used as a blank for the  .X  option  (displaying blanks
           after  and/or  before the text.    It can be specified as a single
           character  or  as a hexadecimal pair.     The default is a blank.

.Z=nn      number of seconds delay after the message text is typed.
           nn   can be from  0.0 ──> 99,  the default is  0.

────────────────────────────────────────────────────────────────────────────────

One quirk with REXX/PC: if the last line written to the screen from a REXX
                        program is greater then the screen width, the 2nd part
                        of the text {i.e., the wrapped line(s)}  is overwritten
                        by the REXX manager as part of its clean-up.  Therefore,
                        to insure visual integrity of  $T  displayed text, if
                        the last line of  $T's  screen output is greater then
                        the screen width, an extra blank line is displayed.

                                       Ω