* *** PCCONFLW TXT - 29 Sep 2019  16:17:43 - JKNAUTH



         MAINLINE                               SUBROUTINES                                 ERC MEANING
============================   ==============================================   ===================================

+--------------------------+                  +---------+                         0 = OK.
|                          |      signal      |  help:  |   Display              50 = Cursor not in data area.
| Initialize variables.    |----------------->|         |   help                 60 = Cursor below last paragraph.
|                          |                  | exit 0  |   text.                70 = Paragraph has excluded line.
| Save editor environment. |                  +---------+                        80 = Cursor on shadow line.
|                          |                                                     90 = Cursor not on valid margin.
| Set special line names.  |***> done erc=80                                    100 = MARGIN not positive integer.
|                          |                                                    110 = MARGIN larger than TRUNC.
| Establish shape defaults.|                                                    120 = INSET invalid.
|                          |                                                    130 = HANGIND invalid.
+--------------------------+                                                    140 = Option invalid (unknown).
             |                                                                  150 = Inconsistent shape variables.
             V                                                                  999 = Invalid argument to "flush".
+--------------------------+
|                          |***> done erc=0
| Process command line     |
| parameters and options.  |***> done erc=90|100|110|120|130|140
|                          |
+--------------------------+
             |
             V
+--------------------------+                          +------------------------+
|                          |                          |                        |   Determine the extent of the
|                          |=========================>|  para_lines:           |   paragraph by finding its first
|                          |                          |                        |   and last lines.
|                          |                          +------------------------+
| Process USESHAPE option  |***> done erc=50|60|70
| if it was specified.     |                          +------------------------+
|                          |                          |                        |   Determine the shape of the
|                          |=========================>|  para_get_save_shape:  |   paragraph by examining the
|                          |                          |                        |   first and second lines.
+--------------------------+                          +------------------------+
             |
             V
+--------------------------+                         /~~~~~~~~~\    +----------+
|                          |                         |  any    |    |  done:   |   Display error and information
|  Check consistency of    |***> done erc=150        | caller  |***>|          |   messages; then reestablish the
|  shape variables.        |                         | to done |    | exit erc |   original editor environment
|                          |                         \~~~~~~~~~/    +----------+   before exiting to the editor.
+--------------------------+
             |
             V
+--------------------------+                          +------------------------+
|                          |                          |                        |   Determine the extent of the
|  Find paragraph's first  |=========================>|  para_lines:           |   paragraph by finding its first
|  and last lines. (Skip   |                          |                        |   and last lines.
|  for USESHAPE option.)   |                          +------------------------+
|                          |***> done erc=50|60|70
|                          |                          +------------------------+
|  Create variables for    |                          |                        |   Build prefix spacing and
|  formatting paragraph.   |=========================>|  para_setup:           |   length variables for the first
|                          |                          |                        |   and all subsequent lines.
+--------------------------+                          +------------------------+
             |
             V
+--------------------------+
|                          |
|  Process line-by-line to |
|  end of paragraph.       |
|                          |                          +------------------------+
|    +----------------+    |                          |                        |   Output the next formatted line
|    |                |==============================>|  flush:                |   from the accumulated words and
|    |                |    |                          |                        |   point names; switch to new
|    |                |    |                          +------------------------+   variables after first line.
|    | In a line,     |    |                          +------------------------+
|    | process        |    |                          |                        |   Check if extra space specified
|    | word-by-word   |==============================>|  check_start_sentence: |   after previous word is really
|    | to end of line.|    |                          |                        |   required.
|    |                |    |                          +------------------------+
|    |                |    |                          +------------------------+
|    |                |    |                          |                        |   Specify that an extra space is
|    |                |==============================>|  punc_space:           |   required after a word found to
|    +----------------+    |                          |                        |   end in certain punctuation.
|                          |                          +------------------------+
|                          |
|                          |***> done erc=0
+--------------------------+
