This manual documents GnuCOBOL 2.2 Final, 7Sept2017 build.

Document  Copyright 2009-2014 Gary L. Cutler, FSF (Free Software Foundation).
Updates:  Copyright 2014-2017 Vincent B. Coen, Gary L. Cutler & FSF.
     Permission is granted to copy, distribute and/or modify this
     document under the terms of the GNU Free Documentation License
     [FDL], Version 1.3 or any later version published by the Free
     Software Foundation; with no Invariant Sections, no Front-Cover
     Texts, and no Back-Cover Texts.  A copy of the license is included
     in the section entitled "GNU Free Documentation License".

GnuCOBOL Sample Programs
************************

This manual presents sample programs written for GnuCOBOL 2.2 Final
[7Sept2017].

1. FileStat-Msgs
****************

The copybook assumes that the file status data item name is "STATUS" and
the error message data item is named "MSG". By using the COPY
statement's REPLACING clause, however, you may use the data names you
wish, as follows:

     COPY FileStat-Msgs
         REPLACING STATUS BY file-status-data-item-name
                   MSG    BY error-message-data-item-name

Here's the FileStat-Msgs.cpy copybook:

     EVALUATE STATUS
          WHEN 00 MOVE 'SUCCESS                  ' TO MSG
          WHEN 02 MOVE 'SUCCESS DUPLICATE        ' TO MSG
          WHEN 04 MOVE 'SUCCESS INCOMPLETE       ' TO MSG
          WHEN 05 MOVE 'SUCCESS OPTIONAL         ' TO MSG
          WHEN 07 MOVE 'SUCCESS NO UNIT          ' TO MSG
          WHEN 10 MOVE 'END OF FILE              ' TO MSG
          WHEN 14 MOVE 'OUT OF KEY RANGE         ' TO MSG
          WHEN 21 MOVE 'KEY INVALID              ' TO MSG
          WHEN 22 MOVE 'KEY EXISTS               ' TO MSG
          WHEN 23 MOVE 'KEY NOT EXISTS           ' TO MSG
          WHEN 30 MOVE 'PERMANENT ERROR          ' TO MSG
          WHEN 31 MOVE 'INCONSISTENT FILENAME    ' TO MSG
          WHEN 34 MOVE 'BOUNDARY VIOLATION       ' TO MSG
          WHEN 35 MOVE 'FILE NOT FOUND           ' TO MSG
          WHEN 37 MOVE 'PERMISSION DENIED        ' TO MSG
          WHEN 38 MOVE 'CLOSED WITH LOCK         ' TO MSG
          WHEN 39 MOVE 'CONFLICT ATTRIBUTE       ' TO MSG
          WHEN 41 MOVE 'ALREADY OPEN             ' TO MSG
          WHEN 42 MOVE 'NOT OPEN                 ' TO MSG
          WHEN 43 MOVE 'READ NOT DONE            ' TO MSG
          WHEN 44 MOVE 'RECORD OVERFLOW          ' TO MSG
          WHEN 46 MOVE 'READ ERROR               ' TO MSG
          WHEN 47 MOVE 'INPUT DENIED             ' TO MSG
          WHEN 48 MOVE 'OUTPUT DENIED            ' TO MSG
          WHEN 49 MOVE 'I/O DENIED               ' TO MSG
          WHEN 51 MOVE 'RECORD LOCKED            ' TO MSG
          WHEN 52 MOVE 'END-OF-PAGE              ' TO MSG
          WHEN 57 MOVE 'I/O LINAGE               ' TO MSG
          WHEN 61 MOVE 'FILE SHARING FAILURE     ' TO MSG
          WHEN 91 MOVE 'FILE NOT AVAILABLE       ' TO MSG
     END-EVALUATE.

2. COBDUMP
**********

If you follow the GnuCOBOL forums, you've undoubtedly heard about the
CBL_OC_DUMP subroutine that was the winning entry in a GnuCOBOL
programming contest.  It's a great tool for producing data dumps, and
it's now included in the official GnuCOBOL distributions.

For now though, I'll keep using my good ol' "COBDUMP" routine.  It's
been my travelling companion from COBOL job to COBOL job since 1971.
Here it is, all tuned up for GnuCOBOL, with new tires and a fresh coat
of paint.

In addition to general GnuCOBOL concepts, this program provides a useful
demonstration of the following:

   * Coding a GnuCOBOL subroutine

   * Using "USAGE POINTER" data items

   * Using the "ANY LENGTH" data item attribute

   * Coding for an "OPTIONAL" subprogram argument

   * Using the "NUMBER-OF-CALL-PARAMETERS" special register

   * Using the "C$PRINTABLE" built-in system subroutine

The program source and cross-reference listing, produced using the
GnuCOBOL Interactive Compiler front-end (GCic.cbl, one of the sample
programs included here), begins on the next page.
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                          C:/Users/tda010/Documents/Programs/Samples/COBDUMP.cbl
Line   Statement                                                                         Page: 1
====== =========================================================================================
     1        >>SOURCE FORMAT IS FIXED
     2        IDENTIFICATION DIVISION.
     3        PROGRAM-ID.   COBDUMP.
     4       *>***************************************************************
     5       *> This is an OpenCOBOL subroutine that will generate a        **
     6       *> formatted Hex/Char dump of a storage area.  To use this     **
     7       *> subroutine, simply CALL it as follows:                      **
     8       *>                                                             **
     9       *> CALL "COBDUMP" USING <data-item>                            **
    10       *>                    [ <length> ]                             **
    11       *>                                                             **
    12       *> If specified, the <length> argument specifies how many      **
    13       *> bytes of <data-item> are to be dumped.  If absent, all of   **
    14       *> <data-item> will be dumped (i.e. LENGTH(<data-item>) will   **
    15       *> be assumed for <length>).                                   **
    16       *>                                                             **
    17       *> >>> Note that the subroutine name MUST be specified in  <<< **
    18       *> >>> UPPERCASE                                           <<< **
    19       *>                                                             **
    20       *> The dump is generated to STDERR, so you may pipe it to a    **
    21       *> file when you execute your program using "2> file".         **
    22       *>                                                             **
    23       *> AUTHOR:       GARY L. CUTLER                                **
    24       *>                                                             **
    25       *> NOTE:         The author has a sentimental attachment to    **
    26       *>               this subroutine - it's been around since 1971 **
    27       *>               and it's been converted to and run on 10 dif- **
    28       *>               ferent operating system/compiler environments **
    29       *>                                                             **
    30       *> DATE-WRITTEN: October 14, 1971                              **
    31       *>                                                             **
    32       *>***************************************************************
    33       *>  DATE  CHANGE DESCRIPTION                                   **
    34       *> ====== ==================================================== **
    35       *> GC1071 Initial coding - Univac Dept. of Defense COBOL '68   **
    36       *> GC0577 Converted to Univac ASCII COBOL (ACOB) - COBOL '74   **
    37       *> GC1182 Converted to Univac UTS4000 COBOL - COBOL '74 w/     **
    38       *>        SCREEN SECTION enhancements                          **
    39       *> GC0883 Converted to Honeywell/Bull COBOL - COBOL '74        **
    40       *> GC0983 Converted to IBM VS COBOL - COBOL '74                **
    41       *> GC0887 Converted to IBM VS COBOL II - COBOL '85             **
    42       *> GC1294 Converted to Micro Focus COBOL V3.0 - COBOL '85 w/   **
    43       *>        extensions                                           **
    44       *> GC0703 Converted to Unisys Universal Compiling System (UCS) **
    45       *>        COBOL (UCOB) - COBOL '85                             **
    46       *> GC1204 Converted to Unisys Object COBOL (OCOB) - COBOL 2002 **
    47       *> GC0609 Converted to OpenCOBOL 1.1 - COBOL '85 w/ some COBOL **
    48       *>        2002 features                                        **
    49       *> GC0410 Enhanced to make 2nd argument (buffer length)        **

================================================================================================
GCic for OSX Copyright (C) 2009-2014, Gary L. Cutler, GPL                                Page: 1
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                          C:/Users/tda010/Documents/Programs/Samples/COBDUMP.cbl
Line   Statement                                                                         Page: 2
====== =========================================================================================
    50       *>        optional                                             **
    51       *> GC0211 Ported to IBM Enterprise COBOL                       **
    52       *> GC0612 Updated for OpenCOBOL 2.0                            **
    53       *>***************************************************************
    54        ENVIRONMENT DIVISION.
    55        CONFIGURATION SECTION.
    56        REPOSITORY.
    57            FUNCTION ALL INTRINSIC.
    58        DATA DIVISION.
    59        WORKING-STORAGE SECTION.
    60        01  WS-Addr-PTR                           USAGE POINTER.
    61        01  WS-Addr-NUM REDEFINES WS-Addr-PTR
    62                                                  USAGE BINARY-LONG.
    63
    64        01  WS-Addr-SUB                           USAGE BINARY-CHAR.
    65
    66        01  WS-Addr-Value-NUM                     USAGE BINARY-LONG.
    67
    68        01  WS-Buffer-Byte-CHR.
    69            05 WS-Buffer-Byte-NUM                 USAGE BINARY-CHAR.
    70
    71        01  WS-Buffer-Length-NUM                  USAGE BINARY-LONG.
    72
    73        01  WS-Buffer-SUB                         PIC 9(4) COMP-5.
    74
    75        01  WS-Hex-Digit-TXT VALUE '0123456789ABCDEF'.
    76            05 WS-Hex-Digit-CHR                   OCCURS 16 TIMES
    77                                                  PIC X(1).
    78
    79        01  WS-Nibble-SUB                         PIC 9(1) COMP-5.
    80
    81        01  WS-Nibble-Left-SUB                    PIC 9(1) COMP-5.
    82
    83        01  WS-Nibble-Right-SUB                   PIC 9(1) COMP-5.
    84
    85        01  WS-Output-Detail-TXT.
    86            05 WS-OD-Addr-TXT.
    87               10 WS-OD-Addr-Hex-CHR              OCCURS 8 TIMES PIC X.
    88            05 FILLER                             PIC X(1).
    89            05 WS-OD-Relative-Byte-NUM            PIC Z(3)9.
    90            05 FILLER                             PIC X(1).
    91            05 WS-OD-Hex-TXT                      OCCURS 16 TIMES.
    92               10 WS-OD-Hex-1-CHR                 PIC X.
    93               10 WS-OD-Hex-2-CHR                 PIC X.
    94               10 FILLER                          PIC X.
    95            05 WS-OD-ASCII-Data-TXT.
    96               10 WS-OD-ASCII-CHR                 OCCURS 16 TIMES
    97                                                  PIC X.
    98

================================================================================================
GCic for OSX Copyright (C) 2009-2014, Gary L. Cutler, GPL                                Page: 2
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                          C:/Users/tda010/Documents/Programs/Samples/COBDUMP.cbl
Line   Statement                                                                         Page: 3
====== =========================================================================================
    99        01  WS-Output-SUB                         PIC 9(2) COMP-5.
   100
   101        >>SOURCE FORMAT IS FREE
   102        01  WS-Output-Header-1-TXT.
   103            05 VALUE '<-Addr-> Byte <---------------- Hexadecimal ''----------------> <---
       - Char ---->' PIC X(80).
   104
   105        01  WS-Output-Header-2-TXT.
   106            05 VALUE '======== ==== =============================================== ======
       ==========' PIC X(80).
   107        >>SOURCE FORMAT IS FIXED
   108
   109        LINKAGE SECTION.
   110        01  L-Buffer-TXT                          PIC X ANY LENGTH.
   111
   112        01  L-Buffer-Length-NUM                   USAGE BINARY-LONG.
   113
   114        PROCEDURE DIVISION USING L-Buffer-TXT,
   115                                 OPTIONAL L-Buffer-Length-NUM.
   116        000-Main SECTION.
   117            IF NUMBER-OF-CALL-PARAMETERS = 1
   118                MOVE LENGTH(L-Buffer-TXT) TO WS-Buffer-Length-NUM
   119            ELSE
   120                MOVE L-Buffer-Length-NUM  TO WS-Buffer-Length-NUM
   121            END-IF
   122            MOVE SPACES TO WS-Output-Detail-TXT
   123            SET WS-Addr-PTR TO ADDRESS OF L-Buffer-TXT
   124            PERFORM 100-Generate-Address
   125            MOVE 0 TO WS-Output-SUB
   126            DISPLAY WS-Output-Header-1-TXT UPON SYSERR
   127            DISPLAY WS-Output-Header-2-TXT UPON SYSERR
   128            PERFORM VARYING WS-Buffer-SUB FROM 1 BY 1
   129                      UNTIL WS-Buffer-SUB > WS-Buffer-Length-NUM
   130                ADD 1 TO WS-Output-SUB
   131                IF WS-Output-SUB = 1
   132                    MOVE WS-Buffer-SUB TO WS-OD-Relative-Byte-NUM
   133                END-IF
   134                MOVE L-Buffer-TXT (WS-Buffer-SUB : 1)
   135                  TO WS-OD-ASCII-CHR (WS-Output-SUB)
   136                     WS-Buffer-Byte-CHR
   137                DIVIDE WS-Buffer-Byte-NUM BY 16
   138                    GIVING WS-Nibble-Left-SUB
   139                    REMAINDER WS-Nibble-Right-SUB
   140                ADD 1 TO WS-Nibble-Left-SUB
   141                         WS-Nibble-Right-SUB
   142                MOVE WS-Hex-Digit-CHR (WS-Nibble-Left-SUB)
   143                  TO WS-OD-Hex-1-CHR  (WS-Output-SUB)
   144                MOVE WS-Hex-Digit-CHR (WS-Nibble-Right-SUB)
   145                  TO WS-OD-Hex-2-CHR  (WS-Output-SUB)

================================================================================================
GCic for OSX Copyright (C) 2009-2014, Gary L. Cutler, GPL                                Page: 3
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                          C:/Users/tda010/Documents/Programs/Samples/COBDUMP.cbl
Line   Statement                                                                         Page: 4
====== =========================================================================================
   146                IF WS-Output-SUB = 16
   147                    CALL "C$PRINTABLE" USING WS-OD-ASCII-Data-TXT
   148                    DISPLAY WS-Output-Detail-TXT UPON SYSERR
   149                    MOVE SPACES TO WS-Output-Detail-TXT
   150                    MOVE 0 TO WS-Output-SUB
   151                    SET WS-Addr-PTR UP BY 16
   152                    PERFORM 100-Generate-Address
   153                END-IF
   154            END-PERFORM
   155            IF WS-Output-SUB > 0
   156                CALL "C$PRINTABLE" USING WS-OD-ASCII-Data-TXT
   157                DISPLAY WS-Output-Detail-TXT UPON SYSERR
   158            END-IF
   159            EXIT PROGRAM
   160            .
   161        100-Generate-Address SECTION.
   162            MOVE 8 TO WS-Addr-SUB
   163            MOVE WS-Addr-NUM TO WS-Addr-Value-NUM
   164            MOVE ALL '0' TO WS-OD-Addr-TXT
   165            PERFORM WITH TEST BEFORE UNTIL WS-Addr-Value-NUM = 0
   166                DIVIDE WS-Addr-Value-NUM BY 16
   167                    GIVING WS-Addr-Value-NUM
   168                    REMAINDER WS-Nibble-SUB
   169                ADD 1 TO WS-Nibble-SUB
   170                MOVE WS-Hex-Digit-CHR (WS-Nibble-SUB)
   171                  TO WS-OD-Addr-Hex-CHR (WS-Addr-SUB)
   172                SUBTRACT 1 FROM WS-Addr-SUB
   173            END-PERFORM
   174            .

================================================================================================
GCic for OSX Copyright (C) 2009-2014, Gary L. Cutler, GPL                                Page: 4
GNU COBOL 2.1 23NOV2013 Cross-Reference Listing                                       2014/03/27
                                          C:/Users/tda010/Documents/Programs/Samples/COBDUMP.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References       Page: 5
=============== ================================ ====== =============== ========================
COBDUMP         000-Main                            116 PROCEDURE
COBDUMP         100-Generate-Address                161 PROCEDURE          124     152
COBDUMP         L-Buffer-Length-NUM                 112 LINKAGE            115     120
COBDUMP         L-Buffer-TXT                        110 LINKAGE            114     118     123
                                                                           134
COBDUMP         NUMBER-OF-CALL-PARAMETERS               PROCEDURE          117
COBDUMP         WS-Addr-NUM                          61 WORKING-STORAGE    163
COBDUMP         WS-Addr-PTR                          60 WORKING-STORAGE     61     123*    151*
COBDUMP         WS-Addr-SUB                          64 WORKING-STORAGE    162*    171     172
COBDUMP         WS-Addr-Value-NUM                    66 WORKING-STORAGE    163*    165     166
                                                                           167*
COBDUMP         WS-Buffer-Byte-CHR                   68 WORKING-STORAGE    136
COBDUMP         WS-Buffer-Byte-NUM                   69 WORKING-STORAGE    137
COBDUMP         WS-Buffer-Length-NUM                 71 WORKING-STORAGE    118*    120*    129
COBDUMP         WS-Buffer-SUB                        73 WORKING-STORAGE    128*    129     132
                                                                           134
COBDUMP         WS-Hex-Digit-CHR                     76 WORKING-STORAGE    142     144     170
COBDUMP         WS-Hex-Digit-TXT                     75 WORKING-STORAGE
COBDUMP         WS-Nibble-Left-SUB                   81 WORKING-STORAGE    138*    140*    142
COBDUMP         WS-Nibble-Right-SUB                  83 WORKING-STORAGE    139*    141*    144
COBDUMP         WS-Nibble-SUB                        79 WORKING-STORAGE    168*    169*    170
COBDUMP         WS-OD-Addr-Hex-CHR                   87 WORKING-STORAGE    171*
COBDUMP         WS-OD-Addr-TXT                       86 WORKING-STORAGE    164*
COBDUMP         WS-OD-ASCII-CHR                      96 WORKING-STORAGE    135*
COBDUMP         WS-OD-ASCII-Data-TXT                 95 WORKING-STORAGE    147C    156C
COBDUMP         WS-OD-Hex-1-CHR                      92 WORKING-STORAGE    143*
COBDUMP         WS-OD-Hex-2-CHR                      93 WORKING-STORAGE    145*
COBDUMP         WS-OD-Hex-TXT                        91 WORKING-STORAGE
COBDUMP         WS-OD-Relative-Byte-NUM              89 WORKING-STORAGE    132*
COBDUMP         WS-Output-Detail-TXT                 85 WORKING-STORAGE    122*    148     149*
                                                                           157
COBDUMP         WS-Output-Header-1-TXT              102 WORKING-STORAGE    126
COBDUMP         WS-Output-Header-2-TXT              105 WORKING-STORAGE    127
COBDUMP         WS-Output-SUB                        99 WORKING-STORAGE    125*    130*    131
                                                                           135     143     145
                                                                           146     150*    155

================================================================================================
GCic for OSX Copyright (C) 2009-2014, Gary L. Cutler, GPL                                Page: 5

3. Colors
*********

   * FOREGROUND-COLOR

   * BACKGROUND-COLOR

   * BLINKING (or absence of BLINKING)

   * HIGHLIGHT, LOWLIGHT or absence of either (i.e.  "Normal")

   * REVERSE-VIDEO

The program source and cross-reference listing, produced using the
GnuCOBOL Interactive Compiler front-end (GCic.cbl, one of the sample
programs included here), begins on the next page.
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                           C:/Users/tda010/Documents/Programs/Samples/colors.cbl
Line   Statement                                                                         Page: 1
====== =========================================================================================
     1        >>SOURCE FREE
     2 IDENTIFICATION DIVISION.
     3 PROGRAM-ID. colors.
     4 DATA DIVISION.
     5 SCREEN SECTION.
     6 01 S-COLORTST-SCR BACKGROUND-COLOR 0 FOREGROUND-COLOR 7 BLANK SCREEN.
     7 05 LINE 01.
     8 10 COL 1 VALUE ' LOWLIGHT  -------- HIGHLIGHT  LOWLIGHT  -------- HIGHLIGHT'.
     9 05 LINE + 1.
    10 10 COL 1 VALUE ' --------  --------  --------  --------  --------  --------'.
    11 05 LINE + 1.
    12 10 COL 1 VALUE ' --------  --------  --------   REVERSE   REVERSE   REVERSE'.
    13 05 LINE + 1.
    14 10 COL 1 VALUE ' 01234567  01234567  01234567  01234567  01234567  01234567'.
    15 05 LINE + 1.
    16 10 COL 1 VALUE '0         0         0         0         0         0        '.
    17 05 LINE + 1.
    18 10 COL 1 VALUE '1         1         1         1         1         1        '.
    19 05 LINE + 1.
    20 10 COL 1 VALUE '2         2         2         2         2         2        '.
    21 05 LINE + 1.
    22 10 COL 1 VALUE '3    1    3    2    3    3    3    4    3    5    3    6   '.
    23 05 LINE + 1.
    24 10 COL 1 VALUE '4         4         4         4         4         4        '.
    25 05 LINE + 1.
    26 10 COL 1 VALUE '5         5         5         5         5         5        '.
    27 05 LINE + 1.
    28 10 COL 1 VALUE '6         6         6         6         6         6        '.
    29 05 LINE + 1.
    30 10 COL 1 VALUE '7         7         7         7         7         7        '.
    31 05 LINE + 1.
    32 10 COL 1 VALUE ' LOWLIGHT  -------- HIGHLIGHT  LOWLIGHT  -------- HIGHLIGHT'.
    33 05 LINE + 1.
    34 10 COL 1 VALUE '    BLINK     BLINK     BLINK     BLINK     BLINK     BLINK'.
    35 05 LINE + 1.
    36 10 COL 1 VALUE ' --------  --------  --------   REVERSE   REVERSE   REVERSE'.
    37 05 LINE + 1.
    38 10 COL 1 VALUE ' 01234567  01234567  01234567  01234567  01234567  01234567'.
    39 05 LINE + 1.
    40 10 COL 1 VALUE '0         0         0         0         0         0        '.
    41 05 LINE + 1.
    42 10 COL 1 VALUE '1         1         1         1         1         1        '.
    43 05 LINE + 1.
    44 10 COL 1 VALUE '2         2         2         2         2         2        '.
    45 05 LINE + 1.
    46 10 COL 1 VALUE '3    7    3    8    3    9    3   10    3   11    3   12   '.
    47 05 LINE + 1.
    48 10 COL 1 VALUE '4         4         4         4         4         4        '.
    49 05 LINE + 1.

================================================================================================
GCic for OSX Copyright (C) 2009-2014, Gary L. Cutler, GPL                                Page: 1
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                           C:/Users/tda010/Documents/Programs/Samples/colors.cbl
Line   Statement                                                                         Page: 2
====== =========================================================================================
    50 10 COL 1 VALUE '5         5         5         5         5         5        '.
    51 05 LINE + 1.
    52 10 COL 1 VALUE '6         6         6         6         6         6        '.
    53 05 LINE + 1.
    54 10 COL 1 VALUE '7         7         7         7         7         7        '.
    55 *> #1
    56 05 LINE 05.
    57 10 COL 2   BACKGROUND-COLOR 0 FOREGROUND-COLOR 0 LOWLIGHT VALUE 'X'.
    58 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 1 LOWLIGHT VALUE 'X'.
    59 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 2 LOWLIGHT VALUE 'X'.
    60 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 3 LOWLIGHT VALUE 'X'.
    61 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 4 LOWLIGHT VALUE 'X'.
    62 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 5 LOWLIGHT VALUE 'X'.
    63 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 6 LOWLIGHT VALUE 'X'.
    64 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 7 LOWLIGHT VALUE 'X'.
    65 05 LINE + 1.
    66 10 COL 2   BACKGROUND-COLOR 1 FOREGROUND-COLOR 0 LOWLIGHT VALUE 'X'.
    67 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 1 LOWLIGHT VALUE 'X'.
    68 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 2 LOWLIGHT VALUE 'X'.
    69 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 3 LOWLIGHT VALUE 'X'.
    70 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 4 LOWLIGHT VALUE 'X'.
    71 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 5 LOWLIGHT VALUE 'X'.
    72 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 6 LOWLIGHT VALUE 'X'.
    73 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 7 LOWLIGHT VALUE 'X'.
    74 05 LINE + 1.
    75 10 COL 2   BACKGROUND-COLOR 2 FOREGROUND-COLOR 0 LOWLIGHT VALUE 'X'.
    76 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 1 LOWLIGHT VALUE 'X'.
    77 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 2 LOWLIGHT VALUE 'X'.
    78 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 3 LOWLIGHT VALUE 'X'.
    79 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 4 LOWLIGHT VALUE 'X'.
    80 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 5 LOWLIGHT VALUE 'X'.
    81 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 6 LOWLIGHT VALUE 'X'.
    82 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 7 LOWLIGHT VALUE 'X'.
    83 05 LINE + 1.
    84 10 COL 2   BACKGROUND-COLOR 3 FOREGROUND-COLOR 0 LOWLIGHT VALUE 'X'.
    85 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 1 LOWLIGHT VALUE 'X'.
    86 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 2 LOWLIGHT VALUE 'X'.
    87 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 3 LOWLIGHT VALUE 'X'.
    88 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 4 LOWLIGHT VALUE 'X'.
    89 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 5 LOWLIGHT VALUE 'X'.
    90 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 6 LOWLIGHT VALUE 'X'.
    91 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 7 LOWLIGHT VALUE 'X'.
    92 05 LINE + 1.
    93 10 COL 2   BACKGROUND-COLOR 4 FOREGROUND-COLOR 0 LOWLIGHT VALUE 'X'.
    94 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 1 LOWLIGHT VALUE 'X'.
    95 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 2 LOWLIGHT VALUE 'X'.
    96 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 3 LOWLIGHT VALUE 'X'.
    97 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 4 LOWLIGHT VALUE 'X'.
    98 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 5 LOWLIGHT VALUE 'X'.

================================================================================================
GCic for OSX Copyright (C) 2009-2014, Gary L. Cutler, GPL                                Page: 2
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                           C:/Users/tda010/Documents/Programs/Samples/colors.cbl
Line   Statement                                                                         Page: 3
====== =========================================================================================
    99 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 6 LOWLIGHT VALUE 'X'.
   100 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 7 LOWLIGHT VALUE 'X'.
   101 05 LINE + 1.
   102 10 COL 2   BACKGROUND-COLOR 5 FOREGROUND-COLOR 0 LOWLIGHT VALUE 'X'.
   103 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 1 LOWLIGHT VALUE 'X'.
   104 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 2 LOWLIGHT VALUE 'X'.
   105 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 3 LOWLIGHT VALUE 'X'.
   106 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 4 LOWLIGHT VALUE 'X'.
   107 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 5 LOWLIGHT VALUE 'X'.
   108 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 6 LOWLIGHT VALUE 'X'.
   109 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 7 LOWLIGHT VALUE 'X'.
   110 05 LINE + 1.
   111 10 COL 2   BACKGROUND-COLOR 6 FOREGROUND-COLOR 0 LOWLIGHT VALUE 'X'.
   112 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 1 LOWLIGHT VALUE 'X'.
   113 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 2 LOWLIGHT VALUE 'X'.
   114 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 3 LOWLIGHT VALUE 'X'.
   115 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 4 LOWLIGHT VALUE 'X'.
   116 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 5 LOWLIGHT VALUE 'X'.
   117 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 6 LOWLIGHT VALUE 'X'.
   118 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 7 LOWLIGHT VALUE 'X'.
   119 05 LINE + 1.
   120 10 COL 2   BACKGROUND-COLOR 7 FOREGROUND-COLOR 0 LOWLIGHT VALUE 'X'.
   121 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 1 LOWLIGHT VALUE 'X'.
   122 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 2 LOWLIGHT VALUE 'X'.
   123 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 3 LOWLIGHT VALUE 'X'.
   124 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 4 LOWLIGHT VALUE 'X'.
   125 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 5 LOWLIGHT VALUE 'X'.
   126 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 6 LOWLIGHT VALUE 'X'.
   127 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 7 LOWLIGHT VALUE 'X'.
   128 *> #2
   129 05 LINE 05.
   130 10 COL 12  BACKGROUND-COLOR 0 FOREGROUND-COLOR 0 VALUE 'X'.
   131 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 1 VALUE 'X'.
   132 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 2 VALUE 'X'.
   133 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 3 VALUE 'X'.
   134 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 4 VALUE 'X'.
   135 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 5 VALUE 'X'.
   136 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 6 VALUE 'X'.
   137 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 7 VALUE 'X'.
   138 05 LINE + 1.
   139 10 COL 12  BACKGROUND-COLOR 1 FOREGROUND-COLOR 0 VALUE 'X'.
   140 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 1 VALUE 'X'.
   141 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 2 VALUE 'X'.
   142 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 3 VALUE 'X'.
   143 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 4 VALUE 'X'.
   144 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 5 VALUE 'X'.
   145 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 6 VALUE 'X'.
   146 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 7 VALUE 'X'.
   147 05 LINE + 1.

================================================================================================
GCic for OSX Copyright (C) 2009-2014, Gary L. Cutler, GPL                                Page: 3
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                           C:/Users/tda010/Documents/Programs/Samples/colors.cbl
Line   Statement                                                                         Page: 4
====== =========================================================================================
   148 10 COL 12  BACKGROUND-COLOR 2 FOREGROUND-COLOR 0 VALUE 'X'.
   149 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 1 VALUE 'X'.
   150 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 2 VALUE 'X'.
   151 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 3 VALUE 'X'.
   152 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 4 VALUE 'X'.
   153 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 5 VALUE 'X'.
   154 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 6 VALUE 'X'.
   155 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 7 VALUE 'X'.
   156 05 LINE + 1.
   157 10 COL 12  BACKGROUND-COLOR 3 FOREGROUND-COLOR 0 VALUE 'X'.
   158 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 1 VALUE 'X'.
   159 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 2 VALUE 'X'.
   160 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 3 VALUE 'X'.
   161 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 4 VALUE 'X'.
   162 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 5 VALUE 'X'.
   163 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 6 VALUE 'X'.
   164 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 7 VALUE 'X'.
   165 05 LINE + 1.
   166 10 COL 12  BACKGROUND-COLOR 4 FOREGROUND-COLOR 0 VALUE 'X'.
   167 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 1 VALUE 'X'.
   168 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 2 VALUE 'X'.
   169 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 3 VALUE 'X'.
   170 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 4 VALUE 'X'.
   171 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 5 VALUE 'X'.
   172 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 6 VALUE 'X'.
   173 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 7 VALUE 'X'.
   174 05 LINE + 1.
   175 10 COL 12  BACKGROUND-COLOR 5 FOREGROUND-COLOR 0 VALUE 'X'.
   176 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 1 VALUE 'X'.
   177 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 2 VALUE 'X'.
   178 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 3 VALUE 'X'.
   179 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 4 VALUE 'X'.
   180 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 5 VALUE 'X'.
   181 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 6 VALUE 'X'.
   182 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 7 VALUE 'X'.
   183 05 LINE + 1.
   184 10 COL 12  BACKGROUND-COLOR 6 FOREGROUND-COLOR 0 VALUE 'X'.
   185 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 1 VALUE 'X'.
   186 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 2 VALUE 'X'.
   187 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 3 VALUE 'X'.
   188 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 4 VALUE 'X'.
   189 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 5 VALUE 'X'.
   190 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 6 VALUE 'X'.
   191 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 7 VALUE 'X'.
   192 05 LINE + 1.
   193 10 COL 12  BACKGROUND-COLOR 7 FOREGROUND-COLOR 0 VALUE 'X'.
   194 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 1 VALUE 'X'.
   195 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 2 VALUE 'X'.
   196 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 3 VALUE 'X'.

================================================================================================
GCic for OSX Copyright (C) 2009-2014, Gary L. Cutler, GPL                                Page: 4
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                           C:/Users/tda010/Documents/Programs/Samples/colors.cbl
Line   Statement                                                                         Page: 5
====== =========================================================================================
   197 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 4 VALUE 'X'.
   198 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 5 VALUE 'X'.
   199 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 6 VALUE 'X'.
   200 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 7 VALUE 'X'.
   201 *> #3
   202 05 LINE 05.
   203 10 COL 22  BACKGROUND-COLOR 0 FOREGROUND-COLOR 0 HIGHLIGHT VALUE 'X'.
   204 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 1 HIGHLIGHT VALUE 'X'.
   205 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 2 HIGHLIGHT VALUE 'X'.
   206 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 3 HIGHLIGHT VALUE 'X'.
   207 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 4 HIGHLIGHT VALUE 'X'.
   208 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 5 HIGHLIGHT VALUE 'X'.
   209 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 6 HIGHLIGHT VALUE 'X'.
   210 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 7 HIGHLIGHT VALUE 'X'.
   211 05 LINE + 1.
   212 10 COL 22  BACKGROUND-COLOR 1 FOREGROUND-COLOR 0 HIGHLIGHT VALUE 'X'.
   213 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 1 HIGHLIGHT VALUE 'X'.
   214 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 2 HIGHLIGHT VALUE 'X'.
   215 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 3 HIGHLIGHT VALUE 'X'.
   216 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 4 HIGHLIGHT VALUE 'X'.
   217 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 5 HIGHLIGHT VALUE 'X'.
   218 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 6 HIGHLIGHT VALUE 'X'.
   219 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 7 HIGHLIGHT VALUE 'X'.
   220 05 LINE + 1.
   221 10 COL 22  BACKGROUND-COLOR 2 FOREGROUND-COLOR 0 HIGHLIGHT VALUE 'X'.
   222 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 1 HIGHLIGHT VALUE 'X'.
   223 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 2 HIGHLIGHT VALUE 'X'.
   224 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 3 HIGHLIGHT VALUE 'X'.
   225 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 4 HIGHLIGHT VALUE 'X'.
   226 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 5 HIGHLIGHT VALUE 'X'.
   227 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 6 HIGHLIGHT VALUE 'X'.
   228 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 7 HIGHLIGHT VALUE 'X'.
   229 05 LINE + 1.
   230 10 COL 22  BACKGROUND-COLOR 3 FOREGROUND-COLOR 0 HIGHLIGHT VALUE 'X'.
   231 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 1 HIGHLIGHT VALUE 'X'.
   232 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 2 HIGHLIGHT VALUE 'X'.
   233 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 3 HIGHLIGHT VALUE 'X'.
   234 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 4 HIGHLIGHT VALUE 'X'.
   235 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 5 HIGHLIGHT VALUE 'X'.
   236 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 6 HIGHLIGHT VALUE 'X'.
   237 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 7 HIGHLIGHT VALUE 'X'.
   238 05 LINE + 1.
   239 10 COL 22  BACKGROUND-COLOR 4 FOREGROUND-COLOR 0 HIGHLIGHT VALUE 'X'.
   240 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 1 HIGHLIGHT VALUE 'X'.
   241 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 2 HIGHLIGHT VALUE 'X'.
   242 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 3 HIGHLIGHT VALUE 'X'.
   243 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 4 HIGHLIGHT VALUE 'X'.
   244 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 5 HIGHLIGHT VALUE 'X'.
   245 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 6 HIGHLIGHT VALUE 'X'.

================================================================================================
GCic for OSX Copyright (C) 2009-2014, Gary L. Cutler, GPL                                Page: 5
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                           C:/Users/tda010/Documents/Programs/Samples/colors.cbl
Line   Statement                                                                         Page: 6
====== =========================================================================================
   246 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 7 HIGHLIGHT VALUE 'X'.
   247 05 LINE + 1.
   248 10 COL 22  BACKGROUND-COLOR 5 FOREGROUND-COLOR 0 HIGHLIGHT VALUE 'X'.
   249 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 1 HIGHLIGHT VALUE 'X'.
   250 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 2 HIGHLIGHT VALUE 'X'.
   251 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 3 HIGHLIGHT VALUE 'X'.
   252 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 4 HIGHLIGHT VALUE 'X'.
   253 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 5 HIGHLIGHT VALUE 'X'.
   254 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 6 HIGHLIGHT VALUE 'X'.
   255 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 7 HIGHLIGHT VALUE 'X'.
   256 05 LINE + 1.
   257 10 COL 22  BACKGROUND-COLOR 6 FOREGROUND-COLOR 0 HIGHLIGHT VALUE 'X'.
   258 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 1 HIGHLIGHT VALUE 'X'.
   259 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 2 HIGHLIGHT VALUE 'X'.
   260 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 3 HIGHLIGHT VALUE 'X'.
   261 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 4 HIGHLIGHT VALUE 'X'.
   262 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 5 HIGHLIGHT VALUE 'X'.
   263 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 6 HIGHLIGHT VALUE 'X'.
   264 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 7 HIGHLIGHT VALUE 'X'.
   265 05 LINE + 1.
   266 10 COL 22  BACKGROUND-COLOR 7 FOREGROUND-COLOR 0 HIGHLIGHT VALUE 'X'.
   267 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 1 HIGHLIGHT VALUE 'X'.
   268 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 2 HIGHLIGHT VALUE 'X'.
   269 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 3 HIGHLIGHT VALUE 'X'.
   270 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 4 HIGHLIGHT VALUE 'X'.
   271 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 5 HIGHLIGHT VALUE 'X'.
   272 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 6 HIGHLIGHT VALUE 'X'.
   273 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 7 HIGHLIGHT VALUE 'X'.
   274 *> #4
   275 05 LINE 05.
   276 10 COL 32  BACKGROUND-COLOR 0 FOREGROUND-COLOR 0 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   277 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 1 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   278 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 2 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   279 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 3 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   280 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 4 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   281 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 5 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   282 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 6 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   283 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 7 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   284 05 LINE + 1.
   285 10 COL 32  BACKGROUND-COLOR 1 FOREGROUND-COLOR 0 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   286 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 1 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   287 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 2 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   288 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 3 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   289 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 4 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   290 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 5 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   291 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 6 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   292 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 7 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   293 05 LINE + 1.
   294 10 COL 32  BACKGROUND-COLOR 2 FOREGROUND-COLOR 0 LOWLIGHT REVERSE-VIDEO VALUE 'X'.

================================================================================================
GCic for OSX Copyright (C) 2009-2014, Gary L. Cutler, GPL                                Page: 6
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                           C:/Users/tda010/Documents/Programs/Samples/colors.cbl
Line   Statement                                                                         Page: 7
====== =========================================================================================
   295 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 1 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   296 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 2 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   297 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 3 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   298 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 4 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   299 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 5 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   300 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 6 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   301 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 7 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   302 05 LINE + 1.
   303 10 COL 32  BACKGROUND-COLOR 3 FOREGROUND-COLOR 0 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   304 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 1 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   305 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 2 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   306 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 3 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   307 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 4 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   308 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 5 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   309 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 6 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   310 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 7 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   311 05 LINE + 1.
   312 10 COL 32  BACKGROUND-COLOR 4 FOREGROUND-COLOR 0 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   313 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 1 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   314 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 2 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   315 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 3 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   316 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 4 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   317 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 5 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   318 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 6 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   319 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 7 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   320 05 LINE + 1.
   321 10 COL 32 BACKGROUND-COLOR 5 FOREGROUND-COLOR 0 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   322 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 1 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   323 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 2 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   324 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 3 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   325 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 4 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   326 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 5 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   327 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 6 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   328 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 7 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   329 05 LINE + 1.
   330 10 COL 32  BACKGROUND-COLOR 6 FOREGROUND-COLOR 0 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   331 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 1 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   332 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 2 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   333 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 3 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   334 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 4 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   335 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 5 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   336 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 6 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   337 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 7 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   338 05 LINE + 1.
   339 10 COL 32  BACKGROUND-COLOR 7 FOREGROUND-COLOR 0 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   340 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 1 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   341 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 2 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   342 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 3 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   343 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 4 LOWLIGHT REVERSE-VIDEO VALUE 'X'.

================================================================================================
GCic for OSX Copyright (C) 2009-2014, Gary L. Cutler, GPL                                Page: 7
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                           C:/Users/tda010/Documents/Programs/Samples/colors.cbl
Line   Statement                                                                         Page: 8
====== =========================================================================================
   344 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 5 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   345 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 6 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   346 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 7 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   347 *> #5
   348 05 LINE 05.
   349 10 COL 42  BACKGROUND-COLOR 0 FOREGROUND-COLOR 0 REVERSE-VIDEO VALUE 'X'.
   350 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 1 REVERSE-VIDEO VALUE 'X'.
   351 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 2 REVERSE-VIDEO VALUE 'X'.
   352 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 3 REVERSE-VIDEO VALUE 'X'.
   353 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 4 REVERSE-VIDEO VALUE 'X'.
   354 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 5 REVERSE-VIDEO VALUE 'X'.
   355 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 6 REVERSE-VIDEO VALUE 'X'.
   356 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 7 REVERSE-VIDEO VALUE 'X'.
   357 05 LINE + 1.
   358 10 COL 42  BACKGROUND-COLOR 1 FOREGROUND-COLOR 0 REVERSE-VIDEO VALUE 'X'.
   359 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 1 REVERSE-VIDEO VALUE 'X'.
   360 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 2 REVERSE-VIDEO VALUE 'X'.
   361 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 3 REVERSE-VIDEO VALUE 'X'.
   362 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 4 REVERSE-VIDEO VALUE 'X'.
   363 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 5 REVERSE-VIDEO VALUE 'X'.
   364 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 6 REVERSE-VIDEO VALUE 'X'.
   365 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 7 REVERSE-VIDEO VALUE 'X'.
   366 05 LINE + 1.
   367 10 COL 42  BACKGROUND-COLOR 2 FOREGROUND-COLOR 0 REVERSE-VIDEO VALUE 'X'.
   368 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 1 REVERSE-VIDEO VALUE 'X'.
   369 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 2 REVERSE-VIDEO VALUE 'X'.
   370 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 3 REVERSE-VIDEO VALUE 'X'.
   371 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 4 REVERSE-VIDEO VALUE 'X'.
   372 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 5 REVERSE-VIDEO VALUE 'X'.
   373 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 6 REVERSE-VIDEO VALUE 'X'.
   374 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 7 REVERSE-VIDEO VALUE 'X'.
   375 05 LINE + 1.
   376 10 COL 42  BACKGROUND-COLOR 3 FOREGROUND-COLOR 0 REVERSE-VIDEO VALUE 'X'.
   377 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 1 REVERSE-VIDEO VALUE 'X'.
   378 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 2 REVERSE-VIDEO VALUE 'X'.
   379 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 3 REVERSE-VIDEO VALUE 'X'.
   380 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 4 REVERSE-VIDEO VALUE 'X'.
   381 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 5 REVERSE-VIDEO VALUE 'X'.
   382 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 6 REVERSE-VIDEO VALUE 'X'.
   383 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 7 REVERSE-VIDEO VALUE 'X'.
   384 05 LINE + 1.
   385 10 COL 42  BACKGROUND-COLOR 4 FOREGROUND-COLOR 0 REVERSE-VIDEO VALUE 'X'.
   386 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 1 REVERSE-VIDEO VALUE 'X'.
   387 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 2 REVERSE-VIDEO VALUE 'X'.
   388 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 3 REVERSE-VIDEO VALUE 'X'.
   389 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 4 REVERSE-VIDEO VALUE 'X'.
   390 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 5 REVERSE-VIDEO VALUE 'X'.
   391 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 6 REVERSE-VIDEO VALUE 'X'.
   392 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 7 REVERSE-VIDEO VALUE 'X'.

================================================================================================
GCic for OSX Copyright (C) 2009-2014, Gary L. Cutler, GPL                                Page: 8
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                           C:/Users/tda010/Documents/Programs/Samples/colors.cbl
Line   Statement                                                                         Page: 9
====== =========================================================================================
   393 05 LINE + 1.
   394 10 COL 42  BACKGROUND-COLOR 5 FOREGROUND-COLOR 0 REVERSE-VIDEO VALUE 'X'.
   395 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 1 REVERSE-VIDEO VALUE 'X'.
   396 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 2 REVERSE-VIDEO VALUE 'X'.
   397 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 3 REVERSE-VIDEO VALUE 'X'.
   398 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 4 REVERSE-VIDEO VALUE 'X'.
   399 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 5 REVERSE-VIDEO VALUE 'X'.
   400 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 6 REVERSE-VIDEO VALUE 'X'.
   401 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 7 REVERSE-VIDEO VALUE 'X'.
   402 05 LINE + 1.
   403 10 COL 42  BACKGROUND-COLOR 6 FOREGROUND-COLOR 0 REVERSE-VIDEO VALUE 'X'.
   404 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 1 REVERSE-VIDEO VALUE 'X'.
   405 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 2 REVERSE-VIDEO VALUE 'X'.
   406 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 3 REVERSE-VIDEO VALUE 'X'.
   407 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 4 REVERSE-VIDEO VALUE 'X'.
   408 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 5 REVERSE-VIDEO VALUE 'X'.
   409 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 6 REVERSE-VIDEO VALUE 'X'.
   410 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 7 REVERSE-VIDEO VALUE 'X'.
   411 05 LINE + 1.
   412 10 COL 42  BACKGROUND-COLOR 7 FOREGROUND-COLOR 0 REVERSE-VIDEO VALUE 'X'.
   413 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 1 REVERSE-VIDEO VALUE 'X'.
   414 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 2 REVERSE-VIDEO VALUE 'X'.
   415 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 3 REVERSE-VIDEO VALUE 'X'.
   416 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 4 REVERSE-VIDEO VALUE 'X'.
   417 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 5 REVERSE-VIDEO VALUE 'X'.
   418 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 6 REVERSE-VIDEO VALUE 'X'.
   419 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 7 REVERSE-VIDEO VALUE 'X'.
   420 *> #6
   421 05 LINE 05.
   422 10 COL 52  BACKGROUND-COLOR 0 FOREGROUND-COLOR 0 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   423 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 1 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   424 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 2 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   425 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 3 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   426 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 4 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   427 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 5 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   428 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 6 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   429 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 7 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   430 05 LINE + 1.
   431 10 COL 52  BACKGROUND-COLOR 1 FOREGROUND-COLOR 0 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   432 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 1 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   433 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 2 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   434 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 3 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   435 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 4 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   436 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 5 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   437 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 6 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   438 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 7 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   439 05 LINE + 1.
   440 10 COL 52  BACKGROUND-COLOR 2 FOREGROUND-COLOR 0 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   441 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 1 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.

================================================================================================
GCic for OSX Copyright (C) 2009-2014, Gary L. Cutler, GPL                                Page: 9
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                           C:/Users/tda010/Documents/Programs/Samples/colors.cbl
Line   Statement                                                                        Page: 10
====== =========================================================================================
   442 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 2 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   443 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 3 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   444 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 4 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   445 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 5 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   446 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 6 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   447 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 7 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   448 05 LINE + 1.
   449 10 COL 52  BACKGROUND-COLOR 3 FOREGROUND-COLOR 0 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   450 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 1 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   451 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 2 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   452 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 3 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   453 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 4 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   454 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 5 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   455 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 6 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   456 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 7 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   457 05 LINE + 1.
   458 10 COL 52  BACKGROUND-COLOR 4 FOREGROUND-COLOR 0 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   459 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 1 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   460 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 2 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   461 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 3 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   462 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 4 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   463 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 5 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   464 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 6 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   465 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 7 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   466 05 LINE + 1.
   467 10 COL 52  BACKGROUND-COLOR 5 FOREGROUND-COLOR 0 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   468 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 1 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   469 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 2 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   470 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 3 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   471 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 4 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   472 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 5 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   473 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 6 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   474 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 7 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   475 05 LINE + 1.
   476 10 COL 52  BACKGROUND-COLOR 6 FOREGROUND-COLOR 0 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   477 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 1 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   478 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 2 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   479 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 3 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   480 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 4 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   481 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 5 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   482 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 6 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   483 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 7 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   484 05 LINE + 1.
   485 10 COL 52  BACKGROUND-COLOR 7 FOREGROUND-COLOR 0 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   486 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 1 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   487 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 2 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   488 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 3 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   489 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 4 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   490 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 5 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.

================================================================================================
GCic for Windows/MinGW Copyright (C) 2009-2014, Gary L. Cutler, GPL                     Page: 10
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                           C:/Users/tda010/Documents/Programs/Samples/colors.cbl
Line   Statement                                                                        Page: 11
====== =========================================================================================
   491 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 6 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   492 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 7 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   493 *> #7
   494 05 LINE 17.
   495 10 COL 02  BACKGROUND-COLOR 0 FOREGROUND-COLOR 0 LOWLIGHT BLINK VALUE 'X'.
   496 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 1 LOWLIGHT BLINK VALUE 'X'.
   497 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 2 LOWLIGHT BLINK VALUE 'X'.
   498 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 3 LOWLIGHT BLINK VALUE 'X'.
   499 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 4 LOWLIGHT BLINK VALUE 'X'.
   500 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 5 LOWLIGHT BLINK VALUE 'X'.
   501 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 6 LOWLIGHT BLINK VALUE 'X'.
   502 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 7 LOWLIGHT BLINK VALUE 'X'.
   503 05 LINE + 1.
   504 10 COL 02  BACKGROUND-COLOR 1 FOREGROUND-COLOR 0 LOWLIGHT BLINK VALUE 'X'.
   505 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 1 LOWLIGHT BLINK VALUE 'X'.
   506 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 2 LOWLIGHT BLINK VALUE 'X'.
   507 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 3 LOWLIGHT BLINK VALUE 'X'.
   508 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 4 LOWLIGHT BLINK VALUE 'X'.
   509 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 5 LOWLIGHT BLINK VALUE 'X'.
   510 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 6 LOWLIGHT BLINK VALUE 'X'.
   511 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 7 LOWLIGHT BLINK VALUE 'X'.
   512 05 LINE + 1.
   513 10 COL 02  BACKGROUND-COLOR 2 FOREGROUND-COLOR 0 LOWLIGHT BLINK VALUE 'X'.
   514 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 1 LOWLIGHT BLINK VALUE 'X'.
   515 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 2 LOWLIGHT BLINK VALUE 'X'.
   516 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 3 LOWLIGHT BLINK VALUE 'X'.
   517 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 4 LOWLIGHT BLINK VALUE 'X'.
   518 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 5 LOWLIGHT BLINK VALUE 'X'.
   519 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 6 LOWLIGHT BLINK VALUE 'X'.
   520 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 7 LOWLIGHT BLINK VALUE 'X'.
   521 05 LINE + 1.
   522 10 COL 02  BACKGROUND-COLOR 3 FOREGROUND-COLOR 0 LOWLIGHT BLINK VALUE 'X'.
   523 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 1 LOWLIGHT BLINK VALUE 'X'.
   524 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 2 LOWLIGHT BLINK VALUE 'X'.
   525 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 3 LOWLIGHT BLINK VALUE 'X'.
   526 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 4 LOWLIGHT BLINK VALUE 'X'.
   527 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 5 LOWLIGHT BLINK VALUE 'X'.
   528 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 6 LOWLIGHT BLINK VALUE 'X'.
   529 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 7 LOWLIGHT BLINK VALUE 'X'.
   530 05 LINE + 1.
   531 10 COL 02  BACKGROUND-COLOR 4 FOREGROUND-COLOR 0 LOWLIGHT BLINK VALUE 'X'.
   532 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 1 LOWLIGHT BLINK VALUE 'X'.
   533 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 2 LOWLIGHT BLINK VALUE 'X'.
   534 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 3 LOWLIGHT BLINK VALUE 'X'.
   535 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 4 LOWLIGHT BLINK VALUE 'X'.
   536 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 5 LOWLIGHT BLINK VALUE 'X'.
   537 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 6 LOWLIGHT BLINK VALUE 'X'.
   538 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 7 LOWLIGHT BLINK VALUE 'X'.
   539 05 LINE + 1.

================================================================================================
GCic for Windows/MinGW Copyright (C) 2009-2014, Gary L. Cutler, GPL                     Page: 11
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                           C:/Users/tda010/Documents/Programs/Samples/colors.cbl
Line   Statement                                                                        Page: 12
====== =========================================================================================
   540 10 COL 02  BACKGROUND-COLOR 5 FOREGROUND-COLOR 0 LOWLIGHT BLINK VALUE 'X'.
   541 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 1 LOWLIGHT BLINK VALUE 'X'.
   542 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 2 LOWLIGHT BLINK VALUE 'X'.
   543 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 3 LOWLIGHT BLINK VALUE 'X'.
   544 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 4 LOWLIGHT BLINK VALUE 'X'.
   545 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 5 LOWLIGHT BLINK VALUE 'X'.
   546 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 6 LOWLIGHT BLINK VALUE 'X'.
   547 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 7 LOWLIGHT BLINK VALUE 'X'.
   548 05 LINE + 1.
   549 10 COL 02  BACKGROUND-COLOR 6 FOREGROUND-COLOR 0 LOWLIGHT BLINK VALUE 'X'.
   550 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 1 LOWLIGHT BLINK VALUE 'X'.
   551 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 2 LOWLIGHT BLINK VALUE 'X'.
   552 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 3 LOWLIGHT BLINK VALUE 'X'.
   553 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 4 LOWLIGHT BLINK VALUE 'X'.
   554 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 5 LOWLIGHT BLINK VALUE 'X'.
   555 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 6 LOWLIGHT BLINK VALUE 'X'.
   556 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 7 LOWLIGHT BLINK VALUE 'X'.
   557 05 LINE + 1.
   558 10 COL 02  BACKGROUND-COLOR 7 FOREGROUND-COLOR 0 LOWLIGHT BLINK VALUE 'X'.
   559 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 1 LOWLIGHT BLINK VALUE 'X'.
   560 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 2 LOWLIGHT BLINK VALUE 'X'.
   561 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 3 LOWLIGHT BLINK VALUE 'X'.
   562 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 4 LOWLIGHT BLINK VALUE 'X'.
   563 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 5 LOWLIGHT BLINK VALUE 'X'.
   564 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 6 LOWLIGHT BLINK VALUE 'X'.
   565 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 7 LOWLIGHT BLINK VALUE 'X'.
   566 *> #8
   567 05 LINE 17.
   568 10 COL 12  BACKGROUND-COLOR 0 FOREGROUND-COLOR 0 BLINK VALUE 'X'.
   569 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 1 BLINK VALUE 'X'.
   570 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 2 BLINK VALUE 'X'.
   571 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 3 BLINK VALUE 'X'.
   572 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 4 BLINK VALUE 'X'.
   573 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 5 BLINK VALUE 'X'.
   574 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 6 BLINK VALUE 'X'.
   575 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 7 BLINK VALUE 'X'.
   576 05 LINE + 1.
   577 10 COL 12  BACKGROUND-COLOR 1 FOREGROUND-COLOR 0 BLINK VALUE 'X'.
   578 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 1 BLINK VALUE 'X'.
   579 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 2 BLINK VALUE 'X'.
   580 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 3 BLINK VALUE 'X'.
   581 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 4 BLINK VALUE 'X'.
   582 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 5 BLINK VALUE 'X'.
   583 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 6 BLINK VALUE 'X'.
   584 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 7 BLINK VALUE 'X'.
   585 05 LINE + 1.
   586 10 COL 12  BACKGROUND-COLOR 2 FOREGROUND-COLOR 0 BLINK VALUE 'X'.
   587 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 1 BLINK VALUE 'X'.
   588 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 2 BLINK VALUE 'X'.

================================================================================================
GCic for Windows/MinGW Copyright (C) 2009-2014, Gary L. Cutler, GPL                     Page: 12
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                           C:/Users/tda010/Documents/Programs/Samples/colors.cbl
Line   Statement                                                                        Page: 13
====== =========================================================================================
   589 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 3 BLINK VALUE 'X'.
   590 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 4 BLINK VALUE 'X'.
   591 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 5 BLINK VALUE 'X'.
   592 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 6 BLINK VALUE 'X'.
   593 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 7 BLINK VALUE 'X'.
   594 05 LINE + 1.
   595 10 COL 12  BACKGROUND-COLOR 3 FOREGROUND-COLOR 0 BLINK VALUE 'X'.
   596 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 1 BLINK VALUE 'X'.
   597 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 2 BLINK VALUE 'X'.
   598 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 3 BLINK VALUE 'X'.
   599 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 4 BLINK VALUE 'X'.
   600 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 5 BLINK VALUE 'X'.
   601 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 6 BLINK VALUE 'X'.
   602 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 7 BLINK VALUE 'X'.
   603 05 LINE + 1.
   604 10 COL 12  BACKGROUND-COLOR 4 FOREGROUND-COLOR 0 BLINK VALUE 'X'.
   605 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 1 BLINK VALUE 'X'.
   606 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 2 BLINK VALUE 'X'.
   607 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 3 BLINK VALUE 'X'.
   608 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 4 BLINK VALUE 'X'.
   609 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 5 BLINK VALUE 'X'.
   610 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 6 BLINK VALUE 'X'.
   611 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 7 BLINK VALUE 'X'.
   612 05 LINE + 1.
   613 10 COL 12  BACKGROUND-COLOR 5 FOREGROUND-COLOR 0 BLINK VALUE 'X'.
   614 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 1 BLINK VALUE 'X'.
   615 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 2 BLINK VALUE 'X'.
   616 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 3 BLINK VALUE 'X'.
   617 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 4 BLINK VALUE 'X'.
   618 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 5 BLINK VALUE 'X'.
   619 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 6 BLINK VALUE 'X'.
   620 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 7 BLINK VALUE 'X'.
   621 05 LINE + 1.
   622 10 COL 12  BACKGROUND-COLOR 6 FOREGROUND-COLOR 0 BLINK VALUE 'X'.
   623 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 1 BLINK VALUE 'X'.
   624 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 2 BLINK VALUE 'X'.
   625 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 3 BLINK VALUE 'X'.
   626 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 4 BLINK VALUE 'X'.
   627 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 5 BLINK VALUE 'X'.
   628 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 6 BLINK VALUE 'X'.
   629 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 7 BLINK VALUE 'X'.
   630 05 LINE + 1.
   631 10 COL 12  BACKGROUND-COLOR 7 FOREGROUND-COLOR 0 BLINK VALUE 'X'.
   632 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 1 BLINK VALUE 'X'.
   633 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 2 BLINK VALUE 'X'.
   634 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 3 BLINK VALUE 'X'.
   635 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 4 BLINK VALUE 'X'.
   636 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 5 BLINK VALUE 'X'.
   637 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 6 BLINK VALUE 'X'.

================================================================================================
GCic for Windows/MinGW Copyright (C) 2009-2014, Gary L. Cutler, GPL                     Page: 13
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                           C:/Users/tda010/Documents/Programs/Samples/colors.cbl
Line   Statement                                                                        Page: 14
====== =========================================================================================
   638 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 7 BLINK VALUE 'X'.
   639 *> #9
   640 05 LINE 17.
   641 10 COL 22  BACKGROUND-COLOR 0 FOREGROUND-COLOR 0 HIGHLIGHT BLINK VALUE 'X'.
   642 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 1 HIGHLIGHT BLINK VALUE 'X'.
   643 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 2 HIGHLIGHT BLINK VALUE 'X'.
   644 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 3 HIGHLIGHT BLINK VALUE 'X'.
   645 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 4 HIGHLIGHT BLINK VALUE 'X'.
   646 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 5 HIGHLIGHT BLINK VALUE 'X'.
   647 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 6 HIGHLIGHT BLINK VALUE 'X'.
   648 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 7 HIGHLIGHT BLINK VALUE 'X'.
   649 05 LINE + 1.
   650 10 COL 22  BACKGROUND-COLOR 1 FOREGROUND-COLOR 0 HIGHLIGHT BLINK VALUE 'X'.
   651 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 1 HIGHLIGHT BLINK VALUE 'X'.
   652 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 2 HIGHLIGHT BLINK VALUE 'X'.
   653 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 3 HIGHLIGHT BLINK VALUE 'X'.
   654 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 4 HIGHLIGHT BLINK VALUE 'X'.
   655 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 5 HIGHLIGHT BLINK VALUE 'X'.
   656 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 6 HIGHLIGHT BLINK VALUE 'X'.
   657 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 7 HIGHLIGHT BLINK VALUE 'X'.
   658 05 LINE + 1.
   659 10 COL 22  BACKGROUND-COLOR 2 FOREGROUND-COLOR 0 HIGHLIGHT BLINK VALUE 'X'.
   660 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 1 HIGHLIGHT BLINK VALUE 'X'.
   661 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 2 HIGHLIGHT BLINK VALUE 'X'.
   662 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 3 HIGHLIGHT BLINK VALUE 'X'.
   663 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 4 HIGHLIGHT BLINK VALUE 'X'.
   664 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 5 HIGHLIGHT BLINK VALUE 'X'.
   665 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 6 HIGHLIGHT BLINK VALUE 'X'.
   666 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 7 HIGHLIGHT BLINK VALUE 'X'.
   667 05 LINE + 1.
   668 10 COL 22  BACKGROUND-COLOR 3 FOREGROUND-COLOR 0 HIGHLIGHT BLINK VALUE 'X'.
   669 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 1 HIGHLIGHT BLINK VALUE 'X'.
   670 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 2 HIGHLIGHT BLINK VALUE 'X'.
   671 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 3 HIGHLIGHT BLINK VALUE 'X'.
   672 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 4 HIGHLIGHT BLINK VALUE 'X'.
   673 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 5 HIGHLIGHT BLINK VALUE 'X'.
   674 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 6 HIGHLIGHT BLINK VALUE 'X'.
   675 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 7 HIGHLIGHT BLINK VALUE 'X'.
   676 05 LINE + 1.
   677 10 COL 22  BACKGROUND-COLOR 4 FOREGROUND-COLOR 0 HIGHLIGHT BLINK VALUE 'X'.
   678 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 1 HIGHLIGHT BLINK VALUE 'X'.
   679 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 2 HIGHLIGHT BLINK VALUE 'X'.
   680 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 3 HIGHLIGHT BLINK VALUE 'X'.
   681 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 4 HIGHLIGHT BLINK VALUE 'X'.
   682 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 5 HIGHLIGHT BLINK VALUE 'X'.
   683 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 6 HIGHLIGHT BLINK VALUE 'X'.
   684 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 7 HIGHLIGHT BLINK VALUE 'X'.
   685 05 LINE + 1.
   686 10 COL 22  BACKGROUND-COLOR 5 FOREGROUND-COLOR 0 HIGHLIGHT BLINK VALUE 'X'.

================================================================================================
GCic for Windows/MinGW Copyright (C) 2009-2014, Gary L. Cutler, GPL                     Page: 14
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                           C:/Users/tda010/Documents/Programs/Samples/colors.cbl
Line   Statement                                                                        Page: 15
====== =========================================================================================
   687 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 1 HIGHLIGHT BLINK VALUE 'X'.
   688 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 2 HIGHLIGHT BLINK VALUE 'X'.
   689 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 3 HIGHLIGHT BLINK VALUE 'X'.
   690 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 4 HIGHLIGHT BLINK VALUE 'X'.
   691 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 5 HIGHLIGHT BLINK VALUE 'X'.
   692 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 6 HIGHLIGHT BLINK VALUE 'X'.
   693 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 7 HIGHLIGHT BLINK VALUE 'X'.
   694 05 LINE + 1.
   695 10 COL 22  BACKGROUND-COLOR 6 FOREGROUND-COLOR 0 HIGHLIGHT BLINK VALUE 'X'.
   696 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 1 HIGHLIGHT BLINK VALUE 'X'.
   697 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 2 HIGHLIGHT BLINK VALUE 'X'.
   698 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 3 HIGHLIGHT BLINK VALUE 'X'.
   699 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 4 HIGHLIGHT BLINK VALUE 'X'.
   700 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 5 HIGHLIGHT BLINK VALUE 'X'.
   701 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 6 HIGHLIGHT BLINK VALUE 'X'.
   702 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 7 HIGHLIGHT BLINK VALUE 'X'.
   703 05 LINE + 1.
   704 10 COL 22  BACKGROUND-COLOR 7 FOREGROUND-COLOR 0 HIGHLIGHT BLINK VALUE 'X'.
   705 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 1 HIGHLIGHT BLINK VALUE 'X'.
   706 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 2 HIGHLIGHT BLINK VALUE 'X'.
   707 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 3 HIGHLIGHT BLINK VALUE 'X'.
   708 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 4 HIGHLIGHT BLINK VALUE 'X'.
   709 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 5 HIGHLIGHT BLINK VALUE 'X'.
   710 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 6 HIGHLIGHT BLINK VALUE 'X'.
   711 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 7 HIGHLIGHT BLINK VALUE 'X'.
   712 *> #10
   713 05 LINE 17.
   714 10 COL 32  BACKGROUND-COLOR 0 FOREGROUND-COLOR 0 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   715 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 1 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   716 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 2 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   717 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 3 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   718 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 4 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   719 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 5 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   720 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 6 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   721 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 7 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   722 05 LINE + 1.
   723 10 COL 32  BACKGROUND-COLOR 1 FOREGROUND-COLOR 0 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   724 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 1 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   725 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 2 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   726 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 3 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   727 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 4 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   728 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 5 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   729 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 6 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   730 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 7 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   731 05 LINE + 1.
   732 10 COL 32  BACKGROUND-COLOR 2 FOREGROUND-COLOR 0 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   733 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 1 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   734 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 2 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   735 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 3 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.

================================================================================================
GCic for Windows/MinGW Copyright (C) 2009-2014, Gary L. Cutler, GPL                     Page: 15
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                           C:/Users/tda010/Documents/Programs/Samples/colors.cbl
Line   Statement                                                                        Page: 16
====== =========================================================================================
   736 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 4 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   737 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 5 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   738 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 6 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   739 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 7 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   740 05 LINE + 1.
   741 10 COL 32  BACKGROUND-COLOR 3 FOREGROUND-COLOR 0 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   742 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 1 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   743 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 2 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   744 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 3 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   745 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 4 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   746 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 5 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   747 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 6 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   748 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 7 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   749 05 LINE + 1.
   750 10 COL 32  BACKGROUND-COLOR 4 FOREGROUND-COLOR 0 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   751 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 1 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   752 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 2 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   753 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 3 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   754 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 4 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   755 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 5 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   756 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 6 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   757 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 7 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   758 05 LINE + 1.
   759 10 COL 32  BACKGROUND-COLOR 5 FOREGROUND-COLOR 0 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   760 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 1 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   761 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 2 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   762 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 3 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   763 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 4 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   764 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 5 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   765 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 6 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   766 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 7 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   767 05 LINE + 1.
   768 10 COL 32  BACKGROUND-COLOR 6 FOREGROUND-COLOR 0 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   769 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 1 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   770 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 2 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   771 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 3 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   772 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 4 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   773 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 5 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   774 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 6 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   775 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 7 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   776 05 LINE + 1.
   777 10 COL 32  BACKGROUND-COLOR 7 FOREGROUND-COLOR 0 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   778 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 1 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   779 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 2 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   780 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 3 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   781 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 4 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   782 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 5 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   783 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 6 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   784 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 7 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.

================================================================================================
GCic for Windows/MinGW Copyright (C) 2009-2014, Gary L. Cutler, GPL                     Page: 16
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                           C:/Users/tda010/Documents/Programs/Samples/colors.cbl
Line   Statement                                                                        Page: 17
====== =========================================================================================
   785 *> #11
   786 05 LINE 17.
   787 10 COL 42  BACKGROUND-COLOR 0 FOREGROUND-COLOR 0 BLINK REVERSE-VIDEO VALUE 'X'.
   788 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 1 BLINK REVERSE-VIDEO VALUE 'X'.
   789 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 2 BLINK REVERSE-VIDEO VALUE 'X'.
   790 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 3 BLINK REVERSE-VIDEO VALUE 'X'.
   791 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 4 BLINK REVERSE-VIDEO VALUE 'X'.
   792 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 5 BLINK REVERSE-VIDEO VALUE 'X'.
   793 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 6 BLINK REVERSE-VIDEO VALUE 'X'.
   794 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 7 BLINK REVERSE-VIDEO VALUE 'X'.
   795 05 LINE + 1.
   796 10 COL 42  BACKGROUND-COLOR 1 FOREGROUND-COLOR 0 BLINK REVERSE-VIDEO VALUE 'X'.
   797 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 1 BLINK REVERSE-VIDEO VALUE 'X'.
   798 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 2 BLINK REVERSE-VIDEO VALUE 'X'.
   799 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 3 BLINK REVERSE-VIDEO VALUE 'X'.
   800 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 4 BLINK REVERSE-VIDEO VALUE 'X'.
   801 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 5 BLINK REVERSE-VIDEO VALUE 'X'.
   802 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 6 BLINK REVERSE-VIDEO VALUE 'X'.
   803 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 7 BLINK REVERSE-VIDEO VALUE 'X'.
   804 05 LINE + 1.
   805 10 COL 42  BACKGROUND-COLOR 2 FOREGROUND-COLOR 0 BLINK REVERSE-VIDEO VALUE 'X'.
   806 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 1 BLINK REVERSE-VIDEO VALUE 'X'.
   807 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 2 BLINK REVERSE-VIDEO VALUE 'X'.
   808 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 3 BLINK REVERSE-VIDEO VALUE 'X'.
   809 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 4 BLINK REVERSE-VIDEO VALUE 'X'.
   810 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 5 BLINK REVERSE-VIDEO VALUE 'X'.
   811 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 6 BLINK REVERSE-VIDEO VALUE 'X'.
   812 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 7 BLINK REVERSE-VIDEO VALUE 'X'.
   813 05 LINE + 1.
   814 10 COL 42  BACKGROUND-COLOR 3 FOREGROUND-COLOR 0 BLINK REVERSE-VIDEO VALUE 'X'.
   815 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 1 BLINK REVERSE-VIDEO VALUE 'X'.
   816 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 2 BLINK REVERSE-VIDEO VALUE 'X'.
   817 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 3 BLINK REVERSE-VIDEO VALUE 'X'.
   818 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 4 BLINK REVERSE-VIDEO VALUE 'X'.
   819 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 5 BLINK REVERSE-VIDEO VALUE 'X'.
   820 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 6 BLINK REVERSE-VIDEO VALUE 'X'.
   821 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 7 BLINK REVERSE-VIDEO VALUE 'X'.
   822 05 LINE + 1.
   823 10 COL 42  BACKGROUND-COLOR 4 FOREGROUND-COLOR 0 BLINK REVERSE-VIDEO VALUE 'X'.
   824 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 1 BLINK REVERSE-VIDEO VALUE 'X'.
   825 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 2 BLINK REVERSE-VIDEO VALUE 'X'.
   826 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 3 BLINK REVERSE-VIDEO VALUE 'X'.
   827 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 4 BLINK REVERSE-VIDEO VALUE 'X'.
   828 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 5 BLINK REVERSE-VIDEO VALUE 'X'.
   829 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 6 BLINK REVERSE-VIDEO VALUE 'X'.
   830 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 7 BLINK REVERSE-VIDEO VALUE 'X'.
   831 05 LINE + 1.
   832 10 COL 42  BACKGROUND-COLOR 5 FOREGROUND-COLOR 0 BLINK REVERSE-VIDEO VALUE 'X'.
   833 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 1 BLINK REVERSE-VIDEO VALUE 'X'.

================================================================================================
GCic for Windows/MinGW Copyright (C) 2009-2014, Gary L. Cutler, GPL                     Page: 17
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                           C:/Users/tda010/Documents/Programs/Samples/colors.cbl
Line   Statement                                                                        Page: 18
====== =========================================================================================
   834 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 2 BLINK REVERSE-VIDEO VALUE 'X'.
   835 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 3 BLINK REVERSE-VIDEO VALUE 'X'.
   836 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 4 BLINK REVERSE-VIDEO VALUE 'X'.
   837 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 5 BLINK REVERSE-VIDEO VALUE 'X'.
   838 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 6 BLINK REVERSE-VIDEO VALUE 'X'.
   839 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 7 BLINK REVERSE-VIDEO VALUE 'X'.
   840 05 LINE + 1.
   841 10 COL 42  BACKGROUND-COLOR 6 FOREGROUND-COLOR 0 BLINK REVERSE-VIDEO VALUE 'X'.
   842 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 1 BLINK REVERSE-VIDEO VALUE 'X'.
   843 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 2 BLINK REVERSE-VIDEO VALUE 'X'.
   844 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 3 BLINK REVERSE-VIDEO VALUE 'X'.
   845 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 4 BLINK REVERSE-VIDEO VALUE 'X'.
   846 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 5 BLINK REVERSE-VIDEO VALUE 'X'.
   847 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 6 BLINK REVERSE-VIDEO VALUE 'X'.
   848 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 7 BLINK REVERSE-VIDEO VALUE 'X'.
   849 05 LINE + 1.
   850 10 COL 42  BACKGROUND-COLOR 7 FOREGROUND-COLOR 0 BLINK REVERSE-VIDEO VALUE 'X'.
   851 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 1 BLINK REVERSE-VIDEO VALUE 'X'.
   852 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 2 BLINK REVERSE-VIDEO VALUE 'X'.
   853 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 3 BLINK REVERSE-VIDEO VALUE 'X'.
   854 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 4 BLINK REVERSE-VIDEO VALUE 'X'.
   855 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 5 BLINK REVERSE-VIDEO VALUE 'X'.
   856 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 6 BLINK REVERSE-VIDEO VALUE 'X'.
   857 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 7 BLINK REVERSE-VIDEO VALUE 'X'.
   858 *> #12
   859 05 LINE 17.
   860 10 COL 52  BACKGROUND-COLOR 0 FOREGROUND-COLOR 0 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   861 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 1 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   862 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 2 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   863 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 3 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   864 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 4 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   865 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 5 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   866 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 6 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   867 10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 7 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   868 05 LINE + 1.
   869 10 COL 52  BACKGROUND-COLOR 1 FOREGROUND-COLOR 0 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   870 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 1 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   871 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 2 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   872 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 3 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   873 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 4 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   874 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 5 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   875 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 6 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   876 10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 7 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   877 05 LINE + 1.
   878 10 COL 52  BACKGROUND-COLOR 2 FOREGROUND-COLOR 0 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   879 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 1 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   880 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 2 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   881 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 3 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   882 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 4 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.

================================================================================================
GCic for Windows/MinGW Copyright (C) 2009-2014, Gary L. Cutler, GPL                     Page: 18
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                           C:/Users/tda010/Documents/Programs/Samples/colors.cbl
Line   Statement                                                                        Page: 19
====== =========================================================================================
   883 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 5 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   884 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 6 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   885 10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 7 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   886 05 LINE + 1.
   887 10 COL 52  BACKGROUND-COLOR 3 FOREGROUND-COLOR 0 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   888 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 1 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   889 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 2 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   890 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 3 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   891 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 4 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   892 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 5 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   893 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 6 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   894 10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 7 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   895 05 LINE + 1.
   896 10 COL 52  BACKGROUND-COLOR 4 FOREGROUND-COLOR 0 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   897 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 1 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   898 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 2 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   899 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 3 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   900 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 4 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   901 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 5 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   902 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 6 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   903 10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 7 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   904 05 LINE + 1.
   905 10 COL 52  BACKGROUND-COLOR 5 FOREGROUND-COLOR 0 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   906 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 1 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   907 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 2 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   908 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 3 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   909 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 4 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   910 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 5 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   911 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 6 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   912 10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 7 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   913 05 LINE + 1.
   914 10 COL 52  BACKGROUND-COLOR 6 FOREGROUND-COLOR 0 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   915 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 1 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   916 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 2 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   917 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 3 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   918 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 4 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   919 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 5 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   920 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 6 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   921 10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 7 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   922 05 LINE + 1.
   923 10 COL 52  BACKGROUND-COLOR 7 FOREGROUND-COLOR 0 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   924 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 1 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   925 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 2 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   926 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 3 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   927 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 4 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   928 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 5 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   929 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 6 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   930 10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 7 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   931 PROCEDURE DIVISION.

================================================================================================
GCic for Windows/MinGW Copyright (C) 2009-2014, Gary L. Cutler, GPL                     Page: 19
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                           C:/Users/tda010/Documents/Programs/Samples/colors.cbl
Line   Statement                                                                        Page: 20
====== =========================================================================================
   932 000-Main SECTION.
   933  DISPLAY S-COLORTST-SCR
   934  STOP RUN
   935  .

================================================================================================
GCic for Windows/MinGW Copyright (C) 2009-2014, Gary L. Cutler, GPL                     Page: 20
GNU COBOL 2.1 23NOV2013 Cross-Reference Listing                                       2014/03/27
                                           C:/Users/tda010/Documents/Programs/Samples/colors.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References      Page: 21
=============== ================================ ====== =============== ========================
colors          000-Main                            932 PROCEDURE
colors          S-COLORTST-SCR                        6 SCREEN             933

================================================================================================
GCic for Windows/MinGW Copyright (C) 2009-2014, Gary L. Cutler, GPL                     Page: 21

4. DAY-FROM-DATE
****************

The subroutine will determine if the supplied date is a valid date in
the year range 0000 through 9999 and what day of the week that date fell
on.

The value returned will be zero if the date argument was invalid or an
integer in the range 1-7, representing Sunday through Saturday.

In addition to general GnuCOBOL concepts, this program provides a useful
demonstration of the following:

   * Coding a GnuCOBOL user-defined function

   * Using the "ANY LENGTH" data item attribute

   * Using the "RETURNING" option in a subprogram

   * Using the "DATE-OF-INTEGER" intrinsic function

   * Using the "C$PARAMSIZE" built-in system subroutine

The program source and cross-reference listing, produced using the
GnuCOBOL Interactive Compiler front-end (GCic.cbl, one of the sample
programs included here), begins on the next page.
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                    C:/Users/tda010/Documents/Programs/Samples/DAY-FROM-DATE.cbl
Line   Statement                                                                         Page: 1
====== =========================================================================================
     1        >>SOURCE FORMAT IS FIXED
     2        IDENTIFICATION DIVISION.
     3        FUNCTION-ID. DAY-FROM-DATE.
     4       *>****************************************************************
     5       *> This GNU COBOL user-defined function converts a Gregorian or **
     6       *> Julian date into a numeric day of the week.                  **
     7       *>****************************************************************
     8       *> Arguments:                                                   **
     9       *>                                                              **
    10       *> Calendar-Date    A PIC 9 data item or numeric literal which  **
    11       *>                  will be treated as a calendar date as fol-  **
    12       *>                  lows:                                       **
    13       *>                                                              **
    14       *>                  7-digit value: Interpreted as a Julian date **
    15       *>                                 in the form yyyyddd          **
    16       *>                  8-digit value: Interpreted as a Gregorian   **
    17       *>                                 date in the form yyyymmdd    **
    18       *>                                                              **
    19       *> The result returned will be one of the following:            **
    20       *>                                                              **
    21       *> 0:  The supplied date is invalid                             **
    22       *> 1:  The supplied date is a Sunday                            **
    23       *> 2:  The supplied date is a Monday                            **
    24       *> .                                                            **
    25       *> .                                                            **
    26       *> .                                                            **
    27       *> 7:  The supplied date is a Saturday                          **
    28       *>****************************************************************
    29        ENVIRONMENT DIVISION.
    30        CONFIGURATION SECTION.
    31        REPOSITORY.
    32            FUNCTION ALL INTRINSIC.
    33        DATA DIVISION.
    34        WORKING-STORAGE SECTION.
    35        01  WS-Input-Date-DT.
    36            05 WS-ID-YYYY-NUM                     PIC 9(4).
    37            05 WS-ID-MM-NUM                       PIC 9(2).
    38            05 WS-ID-DD-NUM                       PIC 9(2).
    39        01  WS-Y-NUM                              BINARY-LONG.
    40        01  WS-M-NUM                              BINARY-LONG.
    41        01  WS-Temp-NUM                           BINARY-LONG.
    42        LINKAGE SECTION.
    43        01  L-Input-Date-DT                       PIC 9 ANY LENGTH.
    44        01  L-Output-Day-NUM                      USAGE BINARY-LONG
    45                                                  SIGNED.
    46        PROCEDURE DIVISION USING L-Input-Date-DT
    47                       RETURNING L-Output-Day-NUM.
    48        000-Main SECTION.
    49            CALL "C$PARAMSIZE" USING 1

================================================================================================
GCic for OSX Copyright (C) 2009-2014, Gary L. Cutler, GPL                                Page: 1
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                    C:/Users/tda010/Documents/Programs/Samples/DAY-FROM-DATE.cbl
Line   Statement                                                                         Page: 2
====== =========================================================================================
    50            EVALUATE RETURN-CODE
    51            WHEN 7
    52                IF TEST-DAY-YYYYDDD(L-Input-Date-DT) > 0
    53                    MOVE 0 TO L-Output-Day-NUM
    54                    GOBACK
    55                END-IF
    56                MOVE DATE-OF-INTEGER(INTEGER-OF-DAY(L-Input-Date-DT))
    57                  TO WS-Input-Date-DT
    58            WHEN 8
    59                IF TEST-DATE-YYYYMMDD(L-Input-Date-DT) > 0
    60                    MOVE 0 TO L-Output-Day-NUM
    61                    GOBACK
    62                END-IF
    63                MOVE L-Input-Date-DT TO WS-Input-Date-DT
    64            WHEN OTHER
    65                MOVE 0 TO L-Output-Day-NUM
    66                GOBACK
    67            END-EVALUATE
    68       *> IF january OR february
    69       *>     y = year - 1
    70       *>     m = month + 10
    71       *> ELSE
    72       *>     y = year
    73       *>     m = month - 2
    74       *> END-IF
    75       *> For Gregorian calendar:
    76       *>     result = (day + y + y/4 - y/100 + y/400 + (31*m)/12) mod 7
    77       *> (All divisions are integer divisions, discarding any remainder)
    78            IF WS-ID-MM-NUM = 1 OR 2
    79                SUBTRACT 1 FROM WS-ID-YYYY-NUM GIVING WS-Y-NUM
    80                ADD WS-ID-MM-NUM, 10 GIVING WS-M-NUM
    81            ELSE
    82                MOVE WS-ID-YYYY-NUM TO WS-Y-NUM
    83                SUBTRACT 2 FROM WS-ID-MM-NUM GIVING WS-M-NUM
    84            END-IF
    85            COMPUTE L-Output-Day-NUM =
    86                WS-ID-DD-NUM
    87              + WS-Y-NUM
    88              + INTEGER(WS-Y-NUM/4)
    89              - INTEGER(WS-Y-NUM/100)
    90              + INTEGER(WS-Y-NUM/400)
    91              + INTEGER((31*WS-M-NUM)/12)
    92            DIVIDE L-Output-Day-NUM BY 7
    93                GIVING WS-Temp-NUM
    94                REMAINDER L-Output-Day-NUM
    95            ADD 1 TO L-Output-Day-NUM
    96            GOBACK
    97            .
    98

================================================================================================
GCic for OSX Copyright (C) 2009-2014, Gary L. Cutler, GPL                                Page: 2
GNU COBOL 2.1 23NOV2013 Cross-Reference Listing                                       2014/03/27
                                    C:/Users/tda010/Documents/Programs/Samples/DAY-FROM-DATE.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References       Page: 3
=============== ================================ ====== =============== ========================
DAY-FROM-DATE   000-Main                             48 PROCEDURE
DAY-FROM-DATE   L-Input-Date-DT                      43 LINKAGE             46      52      56
                                                                            59      63
DAY-FROM-DATE   L-Output-Day-NUM                     44 LINKAGE             47      53*     60*
                                                                            65*     85*     92
                                                                            94*     95*
DAY-FROM-DATE   RETURN-CODE                             PROCEDURE           50
DAY-FROM-DATE   WS-ID-DD-NUM                         38 WORKING-STORAGE     86
DAY-FROM-DATE   WS-ID-MM-NUM                         37 WORKING-STORAGE     78      80      83
DAY-FROM-DATE   WS-ID-YYYY-NUM                       36 WORKING-STORAGE     79      82
DAY-FROM-DATE   WS-Input-Date-DT                     35 WORKING-STORAGE     57*     63*
DAY-FROM-DATE   WS-M-NUM                             40 WORKING-STORAGE     80*     83*     91
DAY-FROM-DATE   WS-Temp-NUM                          41 WORKING-STORAGE     93*
DAY-FROM-DATE   WS-Y-NUM                             39 WORKING-STORAGE     79*     82*     87
                                                                            88      89      90

================================================================================================
GCic for OSX Copyright (C) 2009-2014, Gary L. Cutler, GPL                                Page: 3

5. GCic
*******

The program is well documented (IMHO) and you should find it fairly easy
to follow.  The GCic.cbl program was written to work with a native
Windows or Windows/MinGW build of GnuCOBOL as well as a Windows/Cygwin,
UNIX or OS X build.

Source listings generated by GCic will show the original source code of
your programs, with all indentation and comments preserved.
Additionally, any COPYed code will be included in the listing
immediately (in compressed form) following the COPY statement that
triggered its inclusion into your program.

Cross-reference listings will show all user-defined data items and
procedures as well as intrinsic function and special register
references.  In addition to showing the line numbers at which items were
defined and referenced, those references that MODIFY the contents of the
data item will have an asterisk appended to them.

In addition to general GnuCOBOL concepts, this program provides a useful
demonstration of the following:

   * Creating a GnuCOBOL compilation unit that consists of multiple
     programs

   * Using CDF conditional compilation facilities

   * Using the "SCREEN SECTION" and associated "ACCEPT" and "DISPLAY"
     statements

   * Using "DECLARATIVES" to trap file I/O errors

   * Using "FILE-STATUS"

   * Using the "REPLACING" clause on a CDF "COPY" statement

   * Using the following statements:

        o "ACCEPT FROM COMMAND-LINE" statement

        o "ACCEPT FROM DATE/TIME" statement

        o "ACCEPT FROM ENVIRONMENT" statement

        o "EXIT PERFORM" statement

        o "EXIT SECTION" statement

        o "INSPECT" statement

        o "PERFORM FOREVER" statement

        o "SEARCH ALL" statement

        o "SET ENVIRONMENT" statement

        o "SORT" statement

        o "STRING" statement

        o "UNSTRING" statement

   * Using the following built-in subroutines:

        o "C$JUSTIFY" built-in system subroutine

        o "C$SLEEP" built-in system subroutine

        o "CBL_CHANGE_DIR" built-in system subroutine

        o "CBL_CHECK_FILE_EXIST" built-in system subroutine

        o "CBL_DELETE_FILE" built-in system subroutine

        o "SYSTEM" built-in system subroutine

   * Using the following intrinsic functions:

        o "CONCATENATE" intrinsic function

        o "LENGTH" intrinsic function

        o "LOWER-CASE" intrinsic function

        o "NUMVAL" intrinsic function

        o "TRIM" intrinsic function

        o "UPPER-CASE" intrinsic function

   * Using the "COB-CRT-STATUS,Special Registers" special register

   * Programmatically producing a report destined for either portrait or
     landscape printing

The program source and cross-reference listing, produced using this
program, begins on the next page.
GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                         Page: 1
====== =========================================================================================
     1       >>SOURCE FORMAT IS FIXED
     2       *> CONFIGURATION SETTINGS: Set these switches before compiling:
     3       *>
     4       *> LINEDRAW Set to:
     5       *>    0   To use spaces (no lines)
     6       *>    1   To use the line-drawing characterset (PC codepage 437)
     7       *>    2   To use conventional ASCII characters (+, -, |)
     8       *>
     9       *>          OSX USERS - To use the linedrawing characterset,
    10       *>                      set your 'terminal' font to 'Lucida Console'
    11       *>
    12       *> OS       Set to one of the following:
    13       *>          'CYGWIN'   For a Windows/Cygwin version
    14       *>          'MINGW'    For a Windows/MinGW version
    15       *>          'OSX'      For a Macintosh OSX version
    16       *>          'UNIX'     For a Unix/Linux version
    17       *>          'WINDOWS'  For a Native Windows version
    18       *>
    19       *> SELCHAR  Set to the desired single character to be used as the red
    20       *>          'feature selected' character on the screen.
    21       *>          SUGGESTIONS: '>', '*', '=', '+'
    22       *>
    23       *> LPP      Set to maximum printable lines per page when the listing
    24       *>          should be generated for LANDSCAPE orientation (can be over-
    25       *>          ridden at execution time using the GCXREF_LINES environment
    26       *>          variable.
    27       *>
    28       *> LPPP     Set to maximum printable lines per page when the listing
    29       *>          should be generated for PORTRAIT orientation (can be over-
    30       *>          ridden at execution time using the GCXREF_LINES_PORT
    31       *>          environment variable.
    32       *>
    33       *>*******************************************************************
    34       *>**  Change the settings in the copy book const-set-1.cpy to reflect
    35       *>    your system set up. This notes are also present there.
    36       *>    This is to reduce the need to amend these every time a update
    37       *>    for GCic occurs.
    38       *>*******************************************************************
    39       *>
    40        copy "const-set-1.cpy".
    41       *>
    42       *> --------------------------------------------------------------
    43       *> END CONFIGURATION SETTINGS

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                         Page: 1
GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                         Page: 2
====== =========================================================================================

    45        IDENTIFICATION DIVISION.
    46        PROGRAM-ID. GCic.
    47       *>***************************************************************
    48       *>     >NOTE<   >NOTE<   >NOTE<   >NOTE<   >NOTE<   >NOTE<     **
    49       *>                                                             **
    50       *> If this program is compiled with '-fdebugging-line', you    **
    51       *> will need to pipe SYSERR to a text file when executing GCic **
    52       *> (by adding the text '2> filename' to the end of the GCic    **
    53       *> command).  You may also need to press the ENTER key when    **
    54       *> GCic is finished.                                           **
    55       *>***************************************************************
    56       *> This program provides a Textual User Interface (TUI) to the **
    57       *> process of compiling and (optionally) executing a GNU COBOL **
    58       *> program.                                                    **
    59       *>                                                             **
    60       *> This programs execution syntax is as follows:               **
    61       *>                                                             **
    62       *> GCic <program-path-and-filename> [ <switch>... ]            **
    63       *>                                                             **
    64       *> Once executed, a display screen will be presented showing   **
    65       *> the compilation options that will be used.  The user will   **
    66       *> have the opportunity to change options, specify new ones    **
    67       *> and specify any program execution arguments to be used if   **
    68       *> you select the 'Execute' option.  When you press the Enter  **
    69       *> key the program will be compiled.                           **
    70       *>                                                             **
    71       *> The SCREEN SECTION contains an image of the screen.         **
    72       *>                                                             **
    73       *> The '010-Parse-Args' section in the PROCEDURE DIVISION has  **
    74       *> documentation on switches and their function.               **
    75       *>***************************************************************
    76       *>                                                             **
    77       *> AUTHOR:       GARY L. CUTLER                                **
    78       *>               Copyright (C) 2009-2017, Gary L. Cutler, GPL  **
    79       *>                                                             **
    80       *> DATE-WRITTEN: June 14, 2009                                 **
    81       *>                                                             **
    82       *>***************************************************************
    83       *>  DATE  CHANGE DESCRIPTION                                   **
    84       *> ====== ==================================================== **
    85       *> GC0609 Don't display compiler messages file if compilation  **
    86       *>  GLC   Is successful.  Also don't display messages if the   **
    87       *>        output file is busy (just put a message on the       **
    88       *>        screen, leave the OC screen up & let the user fix    **
    89       *>        the problem & resubmit.                              **
    90       *> GC0709 When 'EXECUTE' is selected, a 'FILE BUSY' error will **
    91       *>  CLC   still cause the (old) executable to be launched.     **
    92       *>        Also, the 'EXTRA SWITCHES' field is being ignored.   **
    93       *>        Changed the title bar to lowlighted reverse video &  **
    94       *>        the message area to highlighted reverse-video.       **
    95       *> GC0809 Add a SPACE in front of command-line args when       **
    96       *>  GLC   executing users program.  Add a SPACE after the      **

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                         Page: 2
GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                         Page: 3
====== =========================================================================================
    97       *>        -ftraceall switch when building cobc command.        **
    98       *> GC0909 Convert to work on Cygwin/Linux as well as MinGW     **
    99       *> GC0310 Virtualized the key codes for S-F1 thru S-F7 as they **
   100       *>  GLC   differ depending upon whether PDCurses or NCurses is **
   101       *>        being used.                                          **
   102       *> GC0410 Introduced the cross-reference and source listing    **
   103       *>  GLC   features.  Also fixed a bug in EXTRA switch proces-  **
   104       *>        sing where garbage will result if more than the      **
   105       *>        EXTRA switch is specified.                           **
   106       *> GC1010 Corrected several problems reported by Vince Coen:   **
   107       *>  GLC   1) Listing/Xref wouldn't work if '-I' additional     **
   108       *>           cobc switch specified.                            **
   109       *>        2) Programs coded with lowercase reserved words did  **
   110       *>           not get parsed properly when generating listing   **
   111       *>           and/or xref reports.                              **
   112       *>        3) Reliance on a TEMP environment variable caused    **
   113       *>           non-recoverable errors when generating listing    **
   114       *>           and/or xref reports in a session that lacks a     **
   115       *>           TEMP variable.                                    **
   116       *>        As a result of this change, GCic no longer runs a    **
   117       *>        second 'cobc' when generating listing and/or xref    **
   118       *>        reports.  A '-save-temps' (without '=dir') specified **
   119       *>        in the EXTRA options field will be ignored.  A       **
   120       *>        '-save-temps=dir' specified in the EXTRA options     **
   121       *>        field will negate both the XREF and SOURCE opts,     **
   122       *>        if specified.                                        **
   123       *> GC0711 Tailored for 29APR2011 version of GNU COBOL 2.0      **
   124       *> GC0712 Replaced all switches with configuration settings;   **
   125       *>  GLC   Tailored for 11FEB2012 version of GNU COBOL 2.0;     **
   126       *>        Reformatted screen layout to fit a 24x80 screen      **
   127       *>        rather than a 25x81 screen and to accommodate shell  **
   128       *>        environments having only F1-F12 (like 'terminal' in  **
   129       *>        OSX); Fully tested under OSX (required a few altera- **
   130       *>        tions); Expanded both extra-options and runtime-     **
   131       *>        arguments areas to TWO lines (152 chars total) each; **
   132       *>        Added support for MF/IBM/BS2000 listing-control      **
   133       *>        directives EJECT,SKIP1,SKIP2,SKIP3 (any of these in  **
   134       *>        copybooks will be ignored)                           **
   135       *> GC0313 Expand the source code record from 80 chars to 256   **
   136       *>  GLC   to facilitate looking for "LINKAGE SECTION" in a     **
   137       *>        free-format file.                                    **
   138       *> GC1113 Edited to support the change of "OpenCOBOL" to "GNU  **
   139       *>  GLC   COBOL"                                               **
   140       *> GC1213 Updated for 23NOV2013 version of GNU COBOL 2.1       **
   141       *> GC0114 Introduce a "Press ENTER to Close" action after run- **
   142       *>  GLC   ning the compiled program in the compiler window (F4)**
   143       *> VC0617 Remove the Blinking in meny screen as uncomfortable  **
   144       *>  VBC   Update version printed to 2.2 30JUN2017.             **
   145       *>        Move the system constant settings to a copy file     **
   146       *>        const-set-1.cpy  in case GCic is updated.            **
   147       *>        Added  SET ENVIRONMENT "COB_EXIT_WAIT" TO "0" to     **
   148       *>        100-Initialization section.                          **
   149       *> VC0717 Replaced compile param instrinsic=all with           **

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                         Page: 3
GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                         Page: 4
====== =========================================================================================
   150       *>  VBC   intrinstics=ALL. Changed mod detail inits for Gary   **
   151       *>        from GCL to GLC.                                     **
   152       *>        Update version printed to 2.2 20JUL2017.             **
   153       *>        Should really get this from the compiler if avail?   **
   154       *>***************************************************************
   155       *>
   156        ENVIRONMENT DIVISION.
   157        CONFIGURATION SECTION.
   158        REPOSITORY.
   159            FUNCTION ALL INTRINSIC.
   160        INPUT-OUTPUT SECTION.
   161        FILE-CONTROL.
   162 GC1010     SELECT F-Cobc-Output-FILE   ASSIGN TO WS-Listing-Filename-TXT
   163                                        ORGANIZATION IS LINE SEQUENTIAL.
   164
   165            SELECT F-Source-Code-FILE   ASSIGN TO WS-File-Name-TXT
   166                                        ORGANIZATION IS LINE SEQUENTIAL
   167                                        FILE STATUS IS WS-FSM-Status-CD.

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                         Page: 4
GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                         Page: 5
====== =========================================================================================

   169        DATA DIVISION.
   170        FILE SECTION.
   171        FD  F-Cobc-Output-FILE.
   172        01  F-Cobc-Output-REC                     PIC X(256).
   173
   174        FD  F-Source-Code-FILE.
   175 GC0313 01  F-Source-Code-REC                     PIC X(256).
   176
   177        WORKING-STORAGE SECTION.
   178        COPY screenio.
        78 COB-COLOR-BLACK VALUE 0.
        78 COB-COLOR-BLUE VALUE 1.
        78 COB-COLOR-GREEN VALUE 2.
        78 COB-COLOR-CYAN VALUE 3.
        78 COB-COLOR-RED VALUE 4.
        78 COB-COLOR-MAGENTA VALUE 5.
        78 COB-COLOR-YELLOW VALUE 6.
        78 COB-COLOR-WHITE VALUE 7.
        78 COB-SCR-OK VALUE 0.
        78 COB-SCR-F1 VALUE 1001.
        78 COB-SCR-F2 VALUE 1002.
        78 COB-SCR-F3 VALUE 1003.
        78 COB-SCR-F4 VALUE 1004.
        78 COB-SCR-F5 VALUE 1005.
        78 COB-SCR-F6 VALUE 1006.
        78 COB-SCR-F7 VALUE 1007.
        78 COB-SCR-F8 VALUE 1008.
        78 COB-SCR-F9 VALUE 1009.
        78 COB-SCR-F10 VALUE 1010.
        78 COB-SCR-F11 VALUE 1011.
        78 COB-SCR-F12 VALUE 1012.
        78 COB-SCR-F13 VALUE 1013.
        78 COB-SCR-F14 VALUE 1014.
        78 COB-SCR-F15 VALUE 1015.
        78 COB-SCR-F16 VALUE 1016.
        78 COB-SCR-F17 VALUE 1017.
        78 COB-SCR-F18 VALUE 1018.
        78 COB-SCR-F19 VALUE 1019.
        78 COB-SCR-F20 VALUE 1020.
        78 COB-SCR-F21 VALUE 1021.
        78 COB-SCR-F22 VALUE 1022.
        78 COB-SCR-F23 VALUE 1023.
        78 COB-SCR-F24 VALUE 1024.
        78 COB-SCR-F25 VALUE 1025.
        78 COB-SCR-F26 VALUE 1026.
        78 COB-SCR-F27 VALUE 1027.
        78 COB-SCR-F28 VALUE 1028.
        78 COB-SCR-F29 VALUE 1029.
        78 COB-SCR-F30 VALUE 1030.
        78 COB-SCR-F31 VALUE 1031.
        78 COB-SCR-F32 VALUE 1032.
        78 COB-SCR-F33 VALUE 1033.

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                         Page: 5

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                         Page: 6
====== =========================================================================================
        78 COB-SCR-F34 VALUE 1034.
        78 COB-SCR-F35 VALUE 1035.
        78 COB-SCR-F36 VALUE 1036.
        78 COB-SCR-F37 VALUE 1037.
        78 COB-SCR-F38 VALUE 1038.
        78 COB-SCR-F39 VALUE 1039.
        78 COB-SCR-F40 VALUE 1040.
        78 COB-SCR-F41 VALUE 1041.
        78 COB-SCR-F42 VALUE 1042.
        78 COB-SCR-F43 VALUE 1043.
        78 COB-SCR-F44 VALUE 1044.
        78 COB-SCR-F45 VALUE 1045.
        78 COB-SCR-F46 VALUE 1046.
        78 COB-SCR-F47 VALUE 1047.
        78 COB-SCR-F48 VALUE 1048.
        78 COB-SCR-F49 VALUE 1049.
        78 COB-SCR-F50 VALUE 1050.
        78 COB-SCR-F51 VALUE 1051.
        78 COB-SCR-F52 VALUE 1052.
        78 COB-SCR-F53 VALUE 1053.
        78 COB-SCR-F54 VALUE 1054.
        78 COB-SCR-F55 VALUE 1055.
        78 COB-SCR-F56 VALUE 1056.
        78 COB-SCR-F57 VALUE 1057.
        78 COB-SCR-F58 VALUE 1058.
        78 COB-SCR-F59 VALUE 1059.
        78 COB-SCR-F60 VALUE 1060.
        78 COB-SCR-F61 VALUE 1061.
        78 COB-SCR-F62 VALUE 1062.
        78 COB-SCR-F63 VALUE 1063.
        78 COB-SCR-F64 VALUE 1064.
        78 COB-SCR-PAGE_UP VALUE 2001.
        78 COB-SCR-PAGE_DOWN VALUE 2002.
        78 COB-SCR-KEY-UP VALUE 2003.
        78 COB-SCR-KEY-DOWN VALUE 2004.
        78 COB-SCR-ESC VALUE 2005.
        78 COB-SCR-PRINT VALUE 2006.
        78 COB-SCR-NO-FIELD VALUE 8000.
        78 COB-SCR-TIME-OUT VALUE 8001.
        78 COB-SCR-FATAL VALUE 9000.
        78 COB-SCR-MAX-FIELD VALUE 9001.
   179
   180 GC0712 01  WS-Compilation-Switches-TXT.
   181 GC0712     05 WS-CS-Args-TXT VALUE SPACES.
   182 GC0712        10 WS-CS-Arg-H1-TXT                PIC X(76).
   183 GC0712        10 WS-CS-Arg-H2-TXT                PIC X(76).
   184 GC0712     05 WS-CS-Filenames-TXT.
   185 GC0712        10 VALUE 'BS2000'                  PIC X(9).
   186 GC0712        10 VALUE 'COBOL85'                 PIC X(9).
   187 GC0712        10 VALUE 'COBOL2002'               PIC X(9).
   188 GC0712        10 VALUE 'DEFAULT'                 PIC X(9).
   189 GC0712        10 VALUE 'IBM'                     PIC X(9).
   190 GC0712        10 VALUE 'MF'                      PIC X(9).

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                         Page: 6

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                         Page: 7
====== =========================================================================================
   191 GC0712        10 VALUE 'MVS'                     PIC X(9).
   192 GC0712     05 WS-CS-Filenames-Table-TXT REDEFINES WS-CS-Filenames-TXT.
   193 GC0712        10 WS-CS-Filename-TXT              OCCURS 7 TIMES
   194 GC0712                                           PIC X(9).
   195 GC0712 >>IF F12 < 1
   196 GC0712     05 WS-CS-Config-NUM     VALUE 4       PIC 9(1).
   197 GC0712 >>ELIF F12 > 7
   198 GC0712     05 WS-CS-Config-NUM     VALUE 4       PIC 9(1).
   199 GC0712 >>ELSE
   200 GC0712     05 WS-CS-Config-NUM     VALUE F12     PIC 9(1).
   201 GC0712 >>END-IF
   202 GC0712     05 WS-CS-Extra-TXT VALUE SPACES.
   203 GC0712        10 WS-CS-Extra-H1-TXT              PIC X(76).
   204 GC0712        10 WS-CS-Extra-H2-TXT              PIC X(76).
   205 GC0712     05 WS-CS-Switch-Defaults-TXT.
   206 GC0712        10 VALUE F1                        PIC 9(1). *> WS-CS-DEBUG-CHR
   207 GC0712        10 VALUE F4                        PIC 9(1). *> WS-CS-EXECUTE-CHR
   208 GC0712        10 VALUE F8                        PIC 9(1). *> WS-CS-FREE-CHR
   209 GC0712        10 VALUE F3                        PIC 9(1). *> WS-CS-LIBRARY-CHR
   210 GC0712        10 VALUE F5                        PIC 9(1). *> WS-CS-LISTING-CHR
   211 GC0712        10 VALUE F6                        PIC 9(1). *> WS-CS-NOFUNC-CHR
   212 GC0712        10 VALUE F9                        PIC 9(1). *> WS-CS-NOTRUNC-CHR
   213 GC0712        10 VALUE F2                        PIC 9(1). *> WS-CS-TRACEALL-CHR
   214 GC0712        10 VALUE F7                        PIC 9(1). *> WS-CS-WARNALL-CHR
   215 GC0712     05 WS-CS-All-Switches-TXT REDEFINES
   216 GC0712                               WS-CS-Switch-Defaults-TXT.
   217 GC0712        10 WS-CS-DEBUG-CHR                 PIC X(1).
   218 GC0712        10 WS-CS-EXECUTE-CHR               PIC X(1).
   219 GC0712        10 WS-CS-FREE-CHR                  PIC X(1).
   220 GC0712        10 WS-CS-LIBRARY-CHR               PIC X(1).
   221 GC0712        10 WS-CS-LISTING-CHR               PIC X(1).
   222 GC0712        10 WS-CS-NOFUNC-CHR                PIC X(1).
   223 GC0712        10 WS-CS-NOTRUNC-CHR               PIC X(1).
   224 GC0712        10 WS-CS-TRACEALL-CHR              PIC X(1).
   225 GC0712        10 WS-CS-WARNALL-CHR               PIC X(1).
   226
   227 GC0909 01  WS-Cmd-TXT                            PIC X(512).
   228
   229 GC0712 01  WS-Cmd-Args-TXT                       PIC X(256).
   230
   231 GC0712 01  WS-Cmd-End-Quote-CHR                  PIC X(1).
   232
   233 GC0712 01  WS-Cmd-SUB                            USAGE BINARY-LONG.
   234
   235        01  WS-Cobc-Cmd-TXT                       PIC X(256).
   236
   237        01  WS-Config-Fn-TXT                      PIC X(12).
   238
   239 GC1113 01  WS-Delete-Fn-TXT                      PIC X(256).
   240
   241        01  WS-File-Name-TXT.
   242            05 WS-FN-CHR                          OCCURS 256 TIMES
   243                                                  PIC X(1).

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                         Page: 7

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                         Page: 8
====== =========================================================================================
   244
   245        01  WS-File-Status-Message-TXT.
   246            05 VALUE 'Status Code: '              PIC X(13).
   247            05 WS-FSM-Status-CD                   PIC 9(2).
   248            05 VALUE ', Meaning: '                PIC X(11).
   249            05 WS-FSM-Msg-TXT                     PIC X(25).
   250
   251 GC0909 01  WS-Horizontal-Line-TXT                PIC X(80).
   252 GC0909
   253        01  WS-I-SUB                              USAGE BINARY-LONG.
   254
   255        01  WS-J-SUB                              USAGE BINARY-LONG.
   256
   257 GC1213 01  WS-Listing-CD VALUE F5                PIC 9(1).
   258
   259 GC0712 01  WS-Listing-Filename-TXT               PIC X(256).
   260
   261 GC1213 01  WS-Listing-TXT VALUE SPACES           PIC X(27).
   262
   263        01  WS-OC-Compile-DT                      PIC XXXX/XX/XXBXX/XX.
   264
   265 GC0712 >>IF OS = 'CYGWIN'
   266 GC0712 01  WS-OS-Dir-CHR         VALUE '/'       PIC X(1).
   267 GC0712 78  WS-OS-Exe-Ext-CONST   VALUE '.exe'.
   268 GC0712 78  WS-OS-Lib-Ext-CONST   VALUE '.dll'.
   269 GC0712 78  WS-OS-Lib-Type-CONST  VALUE 'DLL)'.
   270 GC0712 01  WS-OS-Type-CD         VALUE 2         PIC 9(1).
   271 GC0712 >>ELIF OS = 'MINGW'
   272 GC0712 01  WS-OS-Dir-CHR         VALUE '\'       PIC X(1).
   273 GC0712 78  WS-OS-Exe-Ext-CONST   VALUE '.exe'.
   274 GC0712 78  WS-OS-Lib-Ext-CONST   VALUE '.dll'.
   275 GC0712 78  WS-OS-Lib-Type-CONST  VALUE 'DLL)'.
   276 GC0712 01  WS-OS-Type-CD         VALUE 5         PIC 9(1).
   277 GC0712 >>ELIF OS = 'OSX'
   278 GC0712 01  WS-OS-Dir-CHR         VALUE '/'       PIC X(1).
   279 GC0712 78  WS-OS-Exe-Ext-CONST   VALUE ' '.
   280 GC0712 78  WS-OS-Lib-Ext-CONST   VALUE '.dylib'.
   281 GC0712 78  WS-OS-Lib-Type-CONST  VALUE 'DYLIB)'.
   282 GC0712 01  WS-OS-Type-CD         VALUE 4         PIC 9(1).
   283 GC0712 >>ELIF OS = 'UNIX'
   284 GC0712 01  WS-OS-Dir-CHR         VALUE '/'       PIC X(1).
   285 GC0712 78  WS-OS-Exe-Ext-CONST   VALUE ' '.
   286 GC0712 78  WS-OS-Lib-Ext-CONST   VALUE '.so'.
   287 GC0712 78  WS-OS-Lib-Type-CONST  VALUE 'SO)'.
   288 GC0712 01  WS-OS-Type-CD         VALUE 3         PIC 9(1).
   289 GC0712 >>ELIF OS = 'WINDOWS'
   290 GC0712 01  WS-OS-Dir-CHR         VALUE '\'       PIC X(1).
   291 GC0712 78  WS-OS-Exe-Ext-CONST   VALUE '.exe'.
   292 GC0712 78  WS-OS-Lib-Ext-CONST   VALUE '.dll'.
   293 GC0712 78  WS-OS-Lib-Type-CONST  VALUE 'DLL)'.
   294 GC0712 01  WS-OS-Type-CD         VALUE 1         PIC 9(1).
   295 GC0712 >>END-IF
   296 GC0909     88 WS-OS-Windows-BOOL VALUE 1, 5.

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                         Page: 8

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                         Page: 9
====== =========================================================================================
   297 GC0909     88 WS-OS-Cygwin-BOOL  VALUE 2.
   298 GC0712     88 WS-OS-UNIX-BOOL    VALUE 3, 4.
   299 GC0712     88 WS-OS-OSX-BOOL     VALUE 4.
   300
   301        01  WS-OS-Type-FILLER-TXT.
   302            05 VALUE 'Windows'                    PIC X(14).
   303            05 VALUE 'Windows/Cygwin'             PIC X(14).
   304            05 VALUE 'UNIX/Linux'                 PIC X(14).
   305            05 VALUE 'OSX'                        PIC X(14).
   306            05 VALUE 'Windows/MinGW'              PIC X(14).
   307        01  WS-OS-Types-TXT REDEFINES WS-OS-Type-FILLER-TXT.
   308            05 WS-OS-Type-TXT                     OCCURS 5 TIMES
   309                                                  PIC X(14).
   310
   311        01  WS-Output-Msg-TXT                     PIC X(80).
   312
   313        01  WS-Path-Delimiter-CHR                 PIC X(1).
   314
   315        01  WS-Prog-Extension-TXT                 PIC X(256).
   316
   317        01  WS-Prog-Folder-TXT                    PIC X(256).
   318
   319 GC0712 01  WS-Prog-File-Name-TXT.
   320 GC0712     05 WS-PFN-CHR                         OCCURS 256 TIMES
   321 GC0712                                           PIC X(1).
   322
   323 GC0712 01  WS-Pgm-Nm-TXT                         PIC X(31).
   324
   325        01  WS-Runtime-Switches-TXT.
   326            05 WS-RS-Compile-OK-CHR               PIC X(1).
   327               88 WS-RS-Compile-OK-BOOL           VALUE 'Y'.
   328 GC0909        88 WS-RS-Compile-OK-Warn-BOOL      VALUE 'W'.
   329               88 WS-RS-Compile-Failed-BOOL       VALUE 'N'.
   330 GC0609     05 WS-RS-Complete-CHR                 PIC X(1).
   331 GC0609        88 WS-RS-Complete-BOOL             VALUE 'Y'.
   332 GC0609        88 WS-RS-Not-Complete-BOOL         VALUE 'N'.
   333 GC0712     05 WS-RS-Quote-CHR                    PIC X(1).
   334 GC0712        88 WS-RS-Double-Quote-Used-BOOL    VALUE 'Y' FALSE 'N'.
   335 GC0809     05 WS-RS-IDENT-DIV-CHR                PIC X(1).
   336 GC0809        88 WS-RS-1st-Prog-Complete-BOOL    VALUE 'Y'.
   337 GC0809        88 WS-RS-More-To-1st-Prog-BOOL     VALUE 'N'.
   338            05 WS-RS-No-Switch-Chgs-CHR           PIC X(1).
   339               88 WS-RS-No-Switch-Changes-BOOL    VALUE 'Y'.
   340               88 WS-RS-Switch-Changes-BOOL       VALUE 'N'.
   341 GC0709     05 WS-RS-Output-File-Busy-CHR         PIC X(1).
   342 GC0709        88 WS-RS-Output-File-Busy-BOOL     VALUE 'Y'.
   343 GC0709        88 WS-RS-Output-File-Avail-BOOL    VALUE 'N'.
   344 GC0809     05 WS-RS-Source-Record-Type-CHR       PIC X(1).
   345 GC0809        88 WS-RS-Source-Rec-Linkage-BOOL   VALUE 'L'.
   346 GC0809        88 WS-RS-Source-Rec-Ident-BOOL     VALUE 'I'.
   347 GC0712        88 WS-RS-Source-Rec-Ignored-BOOL   VALUE ' '.
   348            05 WS-RS-Switch-Error-CHR             PIC X(1).
   349               88 WS-RS-Switch-Is-Bad-BOOL        VALUE 'Y'.

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                         Page: 9

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 10
====== =========================================================================================
   350               88 WS-RS-Switch-Is-Good-BOOL       VALUE 'N'.
   351
   352        01  WS-Tally-QTY                          USAGE BINARY-LONG.

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 10

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 11
====== =========================================================================================

   354        SCREEN SECTION.
   355       *>
   356       *> Here is the layout of the GCic screen.
   357       *>
   358       *> The sample screen below shows how the screen would look if the LINEDRAW
   359       *> configuration setting is set to a value of 2
   360       *>
   361       *> The following sample screen layout shows how the screen looks with line-drawing
   362       *> characters disabled.
   363       *>
   364       *>         1         2         3         4         5         6         7         8
   365       *>12345678901234567890123456789012345678901234567890123456789012345678901234567890
   366       *>================================================================================
   367    01 *> GCic (2011/07/11 08:52) - GNU COBOL V2.1 23NOV2013 Interactive Compilation
   368    02 *>+------------------------------------------------------------------------------+
   369    03 *>| Folder:   E:\GNU COBOL\Samples                                               |
   370    04 *>| Filename: GCic.cbl                                                           |
   371    05 *>+------------------------------------------------------------------------------+
   372    06 *> Set/Clr Switches Via F1-F9; Set Config Via F12; ENTER Key Compiles; ESC Quits
   373    07 *>+-----------------------------------------------------------------+------------+
   374    08 *>| F1  Assume WITH DEBUGGING MODE  F6  "FUNCTION" Is Optional      | Current    |
   375    09 *>| F2  Procedure+Statement Trace   F7  Enable All Warnings         | Config:    |
   376    10 *>| F3  Make A Library (DLL)        F8  Source Is Free-Format       | XXXXXXXXXX |
   377    11 *>| F4  Execute If Compilation OK   F9  No COMP/BINARY Truncation   |            |
   378    12 *>| F5 >Produce Listing (Landscape)                                 |            |
   379    13 *>+-----------------------------------------------------------------+------------+
   380    14 *> Extra "cobc" Switches, If Any ("-save-temps=xxx" Prevents Listings):
   381    15 *>+------------------------------------------------------------------------------+
   382    16 *>| ____________________________________________________________________________ |
   383    17 *>| ____________________________________________________________________________ |
   384    18 *>+------------------------------------------------------------------------------+
   385    19 *> Program Execution Arguments, If Any:
   386    20 *>+------------------------------------------------------------------------------+
   387    21 *>| ____________________________________________________________________________ |
   388    22 *>| ____________________________________________________________________________ |
   389    23 *>+------------------------------------------------------------------------------+
   390    24 *> GCic Copyright (C) 2009-2017, Gary L. Cutler, GPL
   391       *>================================================================================
   392       *>12345678901234567890123456789012345678901234567890123456789012345678901234567890
   393       *>         1         2         3         4         5         6         7         8
   394       *>
   395       *> If this program is run on Windows, it must run with codepage 437 activated to
   396       *> display the line-drawing characters.  With a native Windows build or a
   397       *> Windows/MinGW build, one could use the command 'chcp 437' to set that codepage
   398       *> for display within a Windows console window (that should be the default though).
   399       *> With a Windows/Cygwin build, set the environment variable CYGWIN to a value of
   400       *> 'codepage:oem' (this cannot be done from within the program though - you will
   401       *> have to use the 'Computer/Advanced System Settings/Environment Variables' (Vista
   402       *> or Windows 7) function to define the variable.  XP Users: use 'My Computer/
   403       *> Properties/Advanced/Environment Variables'.
   404       *>
   405       *> OSX users may use line drawing characters in this and any GNU COBOL program

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 11

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 12
====== =========================================================================================
   406       *> simply by setting their 'terminal' application's font to "Lucida Console".
   407       *>
   408        >>IF LINEDRAW IS EQUAL TO 0
   409        78 LD-UL-Corner                 VALUE ' '.
   410        78 LD-LL-Corner                 VALUE ' '.
   411        78 LD-UR-Corner                 VALUE ' '.
   412        78 LD-LR-Corner                 VALUE ' '.
   413        78 LD-Upper-T                   VALUE ' '.
   414        78 LD-Lower-T                   VALUE ' '.
   415        78 LD-Horiz-Line                VALUE ' '.
   416        78 LD-Vert-Line                 VALUE ' '.
   417        >>ELIF LINEDRAW IS EQUAL TO 1
   418        78 LD-UL-Corner                 VALUE X'DA'.
   419        78 LD-LL-Corner                 VALUE X'C0'.
   420        78 LD-UR-Corner                 VALUE X'BF'.
   421        78 LD-LR-Corner                 VALUE X'D9'.
   422        78 LD-Upper-T                   VALUE X'C2'.
   423        78 LD-Lower-T                   VALUE X'C1'.
   424        78 LD-Horiz-Line                VALUE X'C4'.
   425        78 LD-Vert-Line                 VALUE X'B3'.
   426        >>ELSE
   427        78 LD-UL-Corner                 VALUE '+'.
   428        78 LD-LL-Corner                 VALUE '+'.
   429        78 LD-UR-Corner                 VALUE '+'.
   430        78 LD-LR-Corner                 VALUE '+'.
   431        78 LD-Upper-T                   VALUE '+'.
   432        78 LD-Lower-T                   VALUE '+'.
   433        78 LD-Horiz-Line                VALUE '-'.
   434        78 LD-Vert-Line                 VALUE '|'.
   435        >>END-IF
   436
   437        01 S-Blank-SCR LINE 1 COLUMN 1 BLANK SCREEN.
   438
   439        01 S-Switches-SCR BACKGROUND-COLOR COB-COLOR-BLACK
   440                          FOREGROUND-COLOR COB-COLOR-WHITE AUTO.
   441       *>
   442       *> GENERAL SCREEN FRAMEWORK
   443       *>
   444           03 BACKGROUND-COLOR COB-COLOR-BLACK
   445              FOREGROUND-COLOR COB-COLOR-GREEN HIGHLIGHT.
   446 GC0712       05 LINE 02 COL 01           VALUE LD-UL-Corner.
   447 GC0712       05         COL 02 PIC X(78) FROM  WS-Horizontal-Line-TXT.
   448              05         COL 80           VALUE LD-UR-Corner.
   449
   450 GC0712       05 LINE 03 COL 01           VALUE LD-Vert-Line.
   451              05         COL 80           VALUE LD-Vert-Line.
   452
   453 GC0712       05 LINE 04 COL 01           VALUE LD-Vert-Line.
   454              05         COL 80           VALUE LD-Vert-Line.
   455
   456 GC0712       05 LINE 05 COL 01           VALUE LD-LL-Corner.
   457 GC0712       05         COL 02 PIC X(78) FROM  WS-Horizontal-Line-TXT.
   458              05         COL 80           VALUE LD-LR-Corner.

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 12

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 13
====== =========================================================================================
   459
   460 GC0712       05 LINE 07 COL 01           VALUE LD-UL-Corner.
   461 GC0712       05         COL 02 PIC X(65) FROM  WS-Horizontal-Line-TXT.
   462 GC0712       05         COL 67           VALUE LD-Upper-T.
   463 GC0712       05         COL 68 PIC X(12) FROM  WS-Horizontal-Line-TXT.
   464              05         COL 80           VALUE LD-UR-Corner.
   465
   466 GC0712       05 LINE 08 COL 01           VALUE LD-Vert-Line.
   467 GC0712       05         COL 67           VALUE LD-Vert-Line.
   468              05         COL 80           VALUE LD-Vert-Line.
   469
   470 GC0712       05 LINE 09 COL 01           VALUE LD-Vert-Line.
   471 GC0712       05         COL 67           VALUE LD-Vert-Line.
   472              05         COL 80           VALUE LD-Vert-Line.
   473
   474 GC0712       05 LINE 10 COL 01           VALUE LD-Vert-Line.
   475 GC0712       05         COL 67           VALUE LD-Vert-Line.
   476              05         COL 80           VALUE LD-Vert-Line.
   477
   478 GC0712       05 LINE 11 COL 01           VALUE LD-Vert-Line.
   479 GC0712       05         COL 67           VALUE LD-Vert-Line.
   480              05         COL 80           VALUE LD-Vert-Line.
   481
   482 GC0712       05 LINE 12 COL 01           VALUE LD-Vert-Line.
   483 GC0712       05         COL 67           VALUE LD-Vert-Line.
   484              05         COL 80           VALUE LD-Vert-Line.
   485
   486 GC0712       05 LINE 13 COL 01           VALUE LD-LL-Corner.
   487 GC0712       05         COL 02 PIC X(65) FROM  WS-Horizontal-Line-TXT.
   488 GC0712       05         COL 67           VALUE LD-Lower-T.
   489 GC0712       05         COL 68 PIC X(12) FROM  WS-Horizontal-Line-TXT.
   490              05         COL 80           VALUE LD-LR-Corner.
   491
   492 GC0712       05 LINE 15 COL 01           VALUE LD-UL-Corner.
   493 GC0712       05         COL 02 PIC X(78) FROM  WS-Horizontal-Line-TXT.
   494              05         COL 80           VALUE LD-UR-Corner.
   495
   496 GC0712       05 LINE 16 COL 01           VALUE LD-Vert-Line.
   497              05         COL 80           VALUE LD-Vert-Line.
   498
   499 GC0712       05 LINE 17 COL 01           VALUE LD-Vert-Line.
   500              05         COL 80           VALUE LD-Vert-Line.
   501
   502 GC0712       05 LINE 18 COL 01           VALUE LD-LL-Corner.
   503 GC0712       05         COL 02 PIC X(78) FROM  WS-Horizontal-Line-TXT.
   504              05         COL 80           VALUE LD-LR-Corner.
   505
   506 GC0712       05 LINE 20 COL 01           VALUE LD-UL-Corner.
   507 GC0712       05         COL 02 PIC X(78) FROM  WS-Horizontal-Line-TXT.
   508              05         COL 80           VALUE LD-UR-Corner.
   509
   510 GC0712       05 LINE 21 COL 01           VALUE LD-Vert-Line.
   511              05         COL 80           VALUE LD-Vert-Line.

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 13

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 14
====== =========================================================================================
   512
   513 GC0712       05 LINE 22 COL 01           VALUE LD-Vert-Line.
   514              05         COL 80           VALUE LD-Vert-Line.
   515
   516 GC0712       05 LINE 23 COL 01           VALUE LD-LL-Corner.
   517 GC0712       05         COL 02 PIC X(78) FROM  WS-Horizontal-Line-TXT.
   518              05         COL 80           VALUE LD-LR-Corner.
   519       *>
   520       *> TOP AND BOTTOM LINES
   521       *>
   522 GC0712    03 BACKGROUND-COLOR COB-COLOR-BLUE
   523              FOREGROUND-COLOR COB-COLOR-WHITE HIGHLIGHT.
   524 GC0410       05 LINE 01 COL 01 VALUE ' GCic ('.
   525 GC0410       05         COL 08 PIC X(16) FROM WS-OC-Compile-DT.
   526 GC1213       05         COL 24 VALUE ') GNUCOBOL 2.2 20JUL2017 ' &
   527 GC0410                               'Interactive Compilation        '.
   528 VC0617    03 BACKGROUND-COLOR COB-COLOR-RED
   529 GC0712       FOREGROUND-COLOR COB-COLOR-WHITE HIGHLIGHT.
   530 GC0712       05 LINE 24 COL 01 PIC X(80) FROM WS-Output-Msg-TXT.
   531       *>
   532       *> LABELS
   533       *>
   534           03 BACKGROUND-COLOR COB-COLOR-BLACK
   535              FOREGROUND-COLOR COB-COLOR-CYAN  HIGHLIGHT.
   536 GC0712       05 LINE 06 COL 02 VALUE 'Set/Clr Switches Via F1-F9; ' &
   537 GC0712                               'Set Config Via F12; Enter Key ' &
   538 GC0712                               'Compiles; Esc Quits'.
   539 GC0712       05 LINE 14 COL 02 VALUE 'Extra "cobc" Switches, If Any ' &
   540 GC0712                               '("-save-temps=xxx" Prevents ' &
   541 GC0712                               'Listings):'.
   542 GC0712       05 LINE 19 COL 02 VALUE 'Program Execution Arguments, ' &
   543 GC0712                               'If Any:'.
   544 GC0712    03 BACKGROUND-COLOR COB-COLOR-BLACK
   545 GC0712       FOREGROUND-COLOR COB-COLOR-WHITE HIGHLIGHT.
   546 GC0712       05 LINE 06 COL 23 VALUE 'F1'.
   547 GC0712       05         COL 26 VALUE 'F9'.
   548 GC0712       05         COL 45 VALUE 'F12'.
   549 GC0712       05         COL 50 VALUE 'ENTER'.
   550 GC0712       05         COL 70 VALUE 'ESC'.
   551       *>
   552       *> TOP SECTION BACKGROUND
   553       *>
   554           03 BACKGROUND-COLOR COB-COLOR-BLACK
   555              FOREGROUND-COLOR COB-COLOR-WHITE HIGHLIGHT.
   556 GC0712       05 LINE 03 COL 62 VALUE 'Enter'.
   557 GC0712       05 LINE 04 COL 62 VALUE 'Esc'.
   558
   559           03 BACKGROUND-COLOR COB-COLOR-BLACK
   560              FOREGROUND-COLOR COB-COLOR-GREEN HIGHLIGHT.
   561 GC0712       05 LINE 04 COL 03 VALUE 'Folder:   '.
   562 GC0712       05 LINE 03 COL 03 VALUE 'Filename: '.
   563
   564 GC0712       05 LINE 03 COL 67 VALUE ': Compile   '.

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 14

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 15
====== =========================================================================================
   565 GC0712       05 LINE 04 COL 65 VALUE ':   Quit      '.
   566       *>
   567       *> TOP SECTION PROGRAM INFO
   568       *>
   569           03 BACKGROUND-COLOR COB-COLOR-BLACK
   570              FOREGROUND-COLOR COB-COLOR-WHITE HIGHLIGHT.
   571 GC0712       05 LINE 03 COL 13 PIC X(66) FROM WS-Prog-File-Name-TXT.
   572 GC0712       05 LINE 04 COL 13 PIC X(66) FROM WS-Prog-Folder-TXT.
   573       *>
   574       *> MIDDLE LEFT SECTION F-KEYS
   575       *>
   576           03 BACKGROUND-COLOR COB-COLOR-BLACK
   577              FOREGROUND-COLOR COB-COLOR-WHITE HIGHLIGHT.
   578 GC0712       05 LINE 08 COL 03 VALUE 'F1'.
   579 GC0712       05 LINE 09 COL 03 VALUE 'F2'.
   580 GC0712       05 LINE 10 COL 03 VALUE 'F3'.
   581 GC0712       05 LINE 11 COL 03 VALUE 'F4'.
   582 GC0712       05 LINE 12 COL 03 VALUE 'F5'.
   583
   584 GC0712       05 LINE 08 COL 35 VALUE 'F6'.
   585 GC0712       05 LINE 09 COL 35 VALUE 'F7'.
   586 GC0712       05 LINE 10 COL 35 VALUE 'F8'.
   587 GC0712       05 LINE 11 COL 35 VALUE 'F9'.
   588       *>
   589       *> MIDDLE LEFT SECTION SWITCHES
   590       *>
   591           03 BACKGROUND-COLOR COB-COLOR-BLACK
   592              FOREGROUND-COLOR COB-COLOR-RED   HIGHLIGHT.
   593 GC0712       05 LINE 08 COL 06 PIC X(1) FROM WS-CS-DEBUG-CHR.
   594 GC0712       05 LINE 09 COL 06 PIC X(1) FROM WS-CS-TRACEALL-CHR.
   595 GC0712       05 LINE 10 COL 06 PIC X(1) FROM WS-CS-LIBRARY-CHR.
   596 GC0712       05 LINE 11 COL 06 PIC X(1) FROM WS-CS-EXECUTE-CHR.
   597 GC0712       05 LINE 12 COL 06 PIC X(1) FROM WS-CS-LISTING-CHR.
   598
   599 GC0712       05 LINE 08 COL 38 PIC X(1) FROM WS-CS-NOFUNC-CHR.
   600 GC0712       05 LINE 09 COL 38 PIC X(1) FROM WS-CS-WARNALL-CHR.
   601 GC0712       05 LINE 10 COL 38 PIC X(1) FROM WS-CS-FREE-CHR.
   602 GC0712       05 LINE 11 COL 38 PIC X(1) FROM WS-CS-NOTRUNC-CHR.
   603       *>
   604       *> MIDDLE LEFT SECTION BACKGROUND
   605       *>
   606           03 BACKGROUND-COLOR COB-COLOR-BLACK
   607              FOREGROUND-COLOR COB-COLOR-GREEN HIGHLIGHT.
   608 GC0712       05 LINE 08 COL 07 VALUE 'Assume WITH DEBUGGING MODE'.
   609 GC0712       05 LINE 09 COL 07 VALUE 'Procedure+Statement Trace '.
   610 GC0712       05 LINE 10 COL 07 VALUE 'Make a Library ('.
   611 GC0712       05         COL 23 VALUE WS-OS-Lib-Type-CONST.
   612 GC0712       05 LINE 11 COL 07 VALUE 'Execute If Compilation OK '.
   613 GC1213       05 LINE 12 COL 07 FROM  WS-Listing-TXT.
   614
   615 GC0712       05 LINE 08 COL 39 VALUE '"FUNCTION" Is Optional    '.
   616 GC0712       05 LINE 09 COL 39 VALUE 'Enable All Warnings       '.
   617 GC0712       05 LINE 10 COL 39 VALUE 'Source Is Free-Format     '.

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 15

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 16
====== =========================================================================================
   618 GC0712       05 LINE 11 COL 39 VALUE 'No COMP/BINARY Truncation '.
   619       *>
   620       *> MIDDLE RIGHT SECTION Text
   621       *>
   622           03 BACKGROUND-COLOR COB-COLOR-BLACK
   623              FOREGROUND-COLOR COB-COLOR-GREEN HIGHLIGHT.
   624 GC0712       05 LINE 08 COL 69 VALUE 'Current'.
   625 GC0712       05 LINE 09 COL 69 VALUE 'Config:'.
   626       *>
   627       *> MIDDLE RIGHT SECTION CONFIG FILE
   628       *>
   629           03 BACKGROUND-COLOR COB-COLOR-BLACK
   630              FOREGROUND-COLOR COB-COLOR-WHITE HIGHLIGHT.
   631 GC0712       05 LINE 10 COL 69 PIC X(10)
   632 GC0712          FROM WS-CS-Filename-TXT (WS-CS-Config-NUM).
   633       *>
   634       *> FREE-FORM OPTIONS FIELDS
   635       *>
   636           03 BACKGROUND-COLOR COB-COLOR-BLACK
   637              FOREGROUND-COLOR COB-COLOR-WHITE HIGHLIGHT.
   638 GC0712       05 LINE 16 COL 03 PIC X(76) USING WS-CS-Extra-H1-TXT.
   639 GC0712       05 LINE 17 COL 03 PIC X(76) USING WS-CS-Extra-H2-TXT.
   640 GC0712       05 LINE 21 COL 03 PIC X(76) USING WS-CS-Arg-H1-TXT.
   641 GC0712       05 LINE 22 COL 03 PIC X(76) USING WS-CS-Arg-H2-TXT.

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 16

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 17
====== =========================================================================================

   643        PROCEDURE DIVISION.
   644       *>***************************************************************
   645       *> Legend to procedure names:                                  **
   646       *>                                                             **
   647       *> 00x-xxx   All MAIN driver procedures                        **
   648       *> 0xx-xxx   All GLOBAL UTILITY procedures                     **
   649       *> 1xx-xxx   All INITIALIZATION procedures                     **
   650       *> 2xx-xxx   All CORE PROCESSING procedures                    **
   651       *> 9xx-xxx   All TERMINATION procedures                        **
   652       *>***************************************************************
   653        DECLARATIVES.
   654        000-File-Error SECTION.
   655            USE AFTER STANDARD ERROR PROCEDURE ON F-Source-Code-FILE.
   656            COPY FileStat-Msgs
   657                REPLACING STATUS BY WS-FSM-Status-CD
   658                          MSG    BY WS-FSM-Msg-TXT.
        EVALUATE WS-FSM-Status-CD
        WHEN 00 MOVE 'SUCCESS                  ' TO WS-FSM-Msg-TXT
        WHEN 02 MOVE 'SUCCESS DUPLICATE        ' TO WS-FSM-Msg-TXT
        WHEN 04 MOVE 'SUCCESS INCOMPLETE       ' TO WS-FSM-Msg-TXT
        WHEN 05 MOVE 'SUCCESS OPTIONAL         ' TO WS-FSM-Msg-TXT
        WHEN 07 MOVE 'SUCCESS NO UNIT          ' TO WS-FSM-Msg-TXT
        WHEN 10 MOVE 'END OF FILE              ' TO WS-FSM-Msg-TXT
        WHEN 14 MOVE 'OUT OF KEY RANGE         ' TO WS-FSM-Msg-TXT
        WHEN 21 MOVE 'KEY INVALID              ' TO WS-FSM-Msg-TXT
        WHEN 22 MOVE 'KEY EXISTS               ' TO WS-FSM-Msg-TXT
        WHEN 23 MOVE 'KEY NOT EXISTS           ' TO WS-FSM-Msg-TXT
        WHEN 30 MOVE 'PERMANENT ERROR          ' TO WS-FSM-Msg-TXT
        WHEN 31 MOVE 'INCONSISTENT FILENAME    ' TO WS-FSM-Msg-TXT
        WHEN 34 MOVE 'BOUNDARY VIOLATION       ' TO WS-FSM-Msg-TXT
        WHEN 35 MOVE 'FILE NOT FOUND           ' TO WS-FSM-Msg-TXT
        WHEN 37 MOVE 'PERMISSION DENIED        ' TO WS-FSM-Msg-TXT
        WHEN 38 MOVE 'CLOSED WITH LOCK         ' TO WS-FSM-Msg-TXT
        WHEN 39 MOVE 'CONFLICT ATTRIBUTE       ' TO WS-FSM-Msg-TXT
        WHEN 41 MOVE 'ALREADY OPEN             ' TO WS-FSM-Msg-TXT
        WHEN 42 MOVE 'NOT OPEN                 ' TO WS-FSM-Msg-TXT
        WHEN 43 MOVE 'READ NOT DONE            ' TO WS-FSM-Msg-TXT
        WHEN 44 MOVE 'RECORD OVERFLOW          ' TO WS-FSM-Msg-TXT
        WHEN 46 MOVE 'READ ERROR               ' TO WS-FSM-Msg-TXT
        WHEN 47 MOVE 'INPUT DENIED             ' TO WS-FSM-Msg-TXT
        WHEN 48 MOVE 'OUTPUT DENIED            ' TO WS-FSM-Msg-TXT
        WHEN 49 MOVE 'I/O DENIED               ' TO WS-FSM-Msg-TXT
        WHEN 51 MOVE 'RECORD LOCKED            ' TO WS-FSM-Msg-TXT
        WHEN 52 MOVE 'END-OF-PAGE              ' TO WS-FSM-Msg-TXT
        WHEN 57 MOVE 'I/O LINAGE               ' TO WS-FSM-Msg-TXT
        WHEN 61 MOVE 'FILE SHARING FAILURE     ' TO WS-FSM-Msg-TXT
        WHEN 91 MOVE 'FILE NOT AVAILABLE       ' TO WS-FSM-Msg-TXT
        END-EVALUATE.
   659            MOVE SPACES TO WS-Output-Msg-TXT
   660            IF WS-FSM-Status-CD = 35
   661                DISPLAY
   662                    'File not found: "'

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 17

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 18
====== =========================================================================================
   663                    TRIM(WS-File-Name-TXT,TRAILING)
   664                    '"'
   665            ELSE
   666                DISPLAY
   667                    'Error accessing file: "'
   668                    TRIM(WS-File-Name-TXT,TRAILING)
   669                    '"'
   670            END-IF
   671            GOBACK
   672            .
   673        END DECLARATIVES.
   674
   675        000-Main SECTION.
   676            PERFORM 100-Initialization
   677 GC0609     SET WS-RS-Not-Complete-BOOL TO TRUE
   678 GC0609     PERFORM UNTIL WS-RS-Complete-BOOL
   679 GC0609         PERFORM 200-Let-User-Set-Switches
   680 GC0609         PERFORM 210-Run-Compiler
   681 GC0410         IF (WS-RS-Compile-OK-BOOL OR WS-RS-Compile-OK-Warn-BOOL)
   682 GC0712         AND (WS-CS-LISTING-CHR > SPACE)
   683 GC0712             DISPLAY S-Blank-SCR
   684 GC0410             PERFORM 220-Make-Listing
   685 GC0410         END-IF
   686 GC0709         IF  (WS-CS-EXECUTE-CHR NOT = SPACES)
   687 GC0709         AND (WS-RS-Output-File-Avail-BOOL)
   688 GC0609             PERFORM 230-Run-Program
   689 GC0609         END-IF
   690 GC0712         PERFORM 250-Autoload-Listing
   691 GC0609     END-PERFORM
   692            PERFORM 900-Terminate
   693       * -- Control will NOT return
   694            .

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 18

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 19
====== =========================================================================================

   696       *>***************************************************************
   697       *> Perform all program-wide initialization operations          **
   698       *>***************************************************************
   699        100-Initialization SECTION.
   700       *>***************************************************************
   701       *> Make sure full screen-handling is in effect                 **
   702       *>***************************************************************
   703            SET ENVIRONMENT 'COB_SCREEN_EXCEPTIONS' TO 'Y'
   704            SET ENVIRONMENT 'COB_SCREEN_ESC'        TO 'Y'
   705 VC0617     SET ENVIRONMENT "COB_EXIT_WAIT"         TO "0".
   706       *>***************************************************************
   707       *> Get GCic Compilation Date/Time                              **
   708       *>***************************************************************
   709            MOVE WHEN-COMPILED (1:12) TO WS-OC-Compile-DT
   710            INSPECT WS-OC-Compile-DT
   711                REPLACING ALL '/' BY ':'
   712                AFTER INITIAL SPACE
   713       *>***************************************************************
   714       *> Convert WS-CS-All-Switches-TXT to Needed Alphanumeric Values**
   715       *>***************************************************************
   716            INSPECT WS-CS-All-Switches-TXT
   717                REPLACING ALL '0' BY SPACE
   718                          ALL '1' BY SELCHAR
   719 GC1213                   ALL '2' BY SELCHAR
   720       *>***************************************************************
   721       *> Process filename (the only command-line argument)           **
   722       *>***************************************************************
   723 GC0712     ACCEPT WS-Cmd-Args-TXT FROM COMMAND-LINE
   724 GC0712     MOVE 1 TO WS-Cmd-SUB
   725 GC0712     IF WS-Cmd-Args-TXT(WS-Cmd-SUB:1) = '"' OR "'"
   726 GC0712         MOVE WS-Cmd-Args-TXT(WS-Cmd-SUB:1)
   727 GC0712           TO WS-Cmd-End-Quote-CHR
   728 GC0712         ADD 1 TO WS-Cmd-SUB
   729 GC0712         UNSTRING WS-Cmd-Args-TXT
   730 GC0712             DELIMITED BY WS-Cmd-End-Quote-CHR
   731 GC0712             INTO WS-File-Name-TXT
   732 GC0712             WITH POINTER WS-Cmd-SUB
   733 GC0712     ELSE
   734 GC0712         UNSTRING WS-Cmd-Args-TXT
   735 GC0712             DELIMITED BY ALL SPACES
   736 GC0712             INTO WS-File-Name-TXT
   737 GC0712             WITH POINTER WS-Cmd-SUB
   738 GC0712     END-IF
   739            IF WS-File-Name-TXT = SPACES
   740 GC0712         DISPLAY 'No program filename was specified'
   741                PERFORM 900-Terminate
   742       * ------ Control will NOT return
   743            END-IF
   744       *>***************************************************************
   745       *> Determine if 'Make A Library' feature should be forced 'ON' **
   746       *>***************************************************************
   747            PERFORM 240-Find-LINKAGE-SECTION

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 19

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 20
====== =========================================================================================
   748       *>***************************************************************
   749       *> Split 'WS-File-Name-TXT' into 'WS-Prog-Folder-TXT' and      **
   750       *> 'WS-Prog-File-Name-TXT'                                     **
   751       *>***************************************************************
   752 GC0909     IF WS-OS-Cygwin-BOOL AND WS-File-Name-TXT (2:1) = ':'
   753 GC0712         MOVE '\' TO WS-OS-Dir-CHR
   754 GC0909     END-IF
   755 GC0712     MOVE LENGTH(WS-File-Name-TXT) TO WS-I-SUB
   756 GC0712     PERFORM UNTIL WS-I-SUB = 0
   757 GC0712     OR WS-FN-CHR (WS-I-SUB) = WS-OS-Dir-CHR
   758                SUBTRACT 1 FROM WS-I-SUB
   759            END-PERFORM
   760            IF WS-I-SUB = 0
   761                MOVE SPACES    TO WS-Prog-Folder-TXT
   762                MOVE WS-File-Name-TXT TO WS-Prog-File-Name-TXT
   763            ELSE
   764                MOVE '*' TO WS-FN-CHR (WS-I-SUB)
   765                UNSTRING WS-File-Name-TXT DELIMITED BY '*'
   766                    INTO WS-Prog-Folder-TXT
   767                         WS-Prog-File-Name-TXT
   768 GC0712         MOVE WS-OS-Dir-CHR TO WS-FN-CHR (WS-I-SUB)
   769            END-IF
   770            IF WS-Prog-Folder-TXT = SPACES
   771                ACCEPT WS-Prog-Folder-TXT FROM ENVIRONMENT 'CD'
   772 GC0909     ELSE
   773 GC0909         CALL 'CBL_CHANGE_DIR'
   774 GC0909             USING TRIM(WS-Prog-Folder-TXT,TRAILING)
   775            END-IF
   776 GC0909     IF WS-OS-Cygwin-BOOL AND WS-File-Name-TXT (2:1) = ':'
   777 GC0712         MOVE '/' TO WS-OS-Dir-CHR
   778 GC0909     END-IF
   779       *>***************************************************************
   780       *> Split 'WS-Prog-File-Name-TXT' into 'WS-Pgm-Nm-TXT' &        **
   781       *> 'WS-Prog-Extension-TXT'                                     **
   782       *>***************************************************************
   783 GC0712     MOVE LENGTH(WS-Prog-File-Name-TXT) TO WS-I-SUB
   784 GC0712     PERFORM UNTIL WS-I-SUB = 0
   785 GC0712     OR WS-PFN-CHR (WS-I-SUB) = '.'
   786 GC0712         SUBTRACT 1 FROM WS-I-SUB
   787 GC0712     END-PERFORM
   788 GC0712     IF WS-I-SUB = 0
   789 GC0712         MOVE WS-Prog-File-Name-TXT TO WS-Pgm-Nm-TXT
   790 GC0712         MOVE SPACES         TO WS-Prog-Extension-TXT
   791 GC0712     ELSE
   792 GC0712         MOVE '*' TO WS-PFN-CHR (WS-I-SUB)
   793 GC0712         UNSTRING WS-Prog-File-Name-TXT DELIMITED BY '*'
   794 GC0712             INTO WS-Pgm-Nm-TXT
   795 GC0712                  WS-Prog-Extension-TXT
   796 GC0712         MOVE '.' TO WS-PFN-CHR (WS-I-SUB)
   797 GC0712     END-IF
   798       *>***************************************************************
   799       *> Build initial Line 24 Message                               **
   800       *>***************************************************************

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 20

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 21
====== =========================================================================================
   801 GC0909     MOVE ALL LD-Horiz-Line TO WS-Horizontal-Line-TXT.
   802 GC0410     MOVE CONCATENATE(' GCic for '
   803 GC0410                      TRIM(WS-OS-Type-TXT(WS-OS-Type-CD),Trailing)
   804 GC1213                      ' Copyright (C) 2009-2017, Gary L. '
   805 GC0410                      'Cutler, GPL')
   806 GC0410       TO WS-Output-Msg-TXT.
   807 GC0909

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 21

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 22
====== =========================================================================================

   809       *>***************************************************************
   810       *> Show the user the current switch settings and allow them to **
   811       *> be changed.                                                 **
   812       *>***************************************************************
   813        200-Let-User-Set-Switches SECTION.
   814            SET WS-RS-Switch-Changes-BOOL TO TRUE
   815            PERFORM UNTIL WS-RS-No-Switch-Changes-BOOL
   816 GC1213         EVALUATE WS-Listing-CD
   817 GC1213         WHEN 0
   818 GC1213             MOVE 'Listing Off'            TO WS-Listing-TXT
   819 GC1213             MOVE SPACE                    TO WS-CS-LISTING-CHR
   820 GC1213         WHEN 1
   821 GC1213             MOVE 'Listing On (Landscape)' TO WS-Listing-TXT
   822 GC1213             MOVE SELCHAR                  TO WS-CS-LISTING-CHR
   823 GC1213         WHEN 2
   824 GC1213             MOVE 'Listing On (Portrait)' TO WS-Listing-TXT
   825 GC1213             MOVE SELCHAR                  TO WS-CS-LISTING-CHR
   826 GC1213         END-EVALUATE
   827                ACCEPT S-Switches-SCR
   828                IF COB-CRT-STATUS > 0
   829                    EVALUATE COB-CRT-STATUS
   830                        WHEN COB-SCR-F1
   831                            IF WS-CS-DEBUG-CHR = SPACE
   832 GC0712                         MOVE SELCHAR TO WS-CS-DEBUG-CHR
   833                            ELSE
   834                                MOVE ' ' TO WS-CS-DEBUG-CHR
   835                            END-IF
   836 GC0712                 WHEN COB-SCR-F2
   837 GC0712                     IF  WS-CS-TRACEALL-CHR = SPACE
   838 GC0712                         MOVE SELCHAR TO WS-CS-TRACEALL-CHR
   839 GC0712                     ELSE
   840 GC0712                         MOVE ' ' TO WS-CS-TRACEALL-CHR
   841 GC0712                     END-IF
   842                        WHEN COB-SCR-F3
   843 GC0712                     IF WS-CS-LIBRARY-CHR = SPACE
   844 GC0712                         MOVE SELCHAR TO WS-CS-LIBRARY-CHR
   845                            ELSE
   846 GC0712                         MOVE ' ' TO WS-CS-LIBRARY-CHR
   847                            END-IF
   848                        WHEN COB-SCR-F4
   849                            IF  WS-CS-EXECUTE-CHR = SPACE
   850 GC0712                         MOVE SELCHAR TO WS-CS-EXECUTE-CHR
   851                            ELSE
   852                                MOVE ' ' TO WS-CS-EXECUTE-CHR
   853                            END-IF
   854 GC0712                 WHEN COB-SCR-F5
   855 GC1213                     ADD 1 TO WS-Listing-CD
   856 GC1213                     IF WS-Listing-CD > 2
   857 GC1213                         MOVE 0 TO WS-Listing-CD
   858 GC1213                     END-IF
   859 GC0712                 WHEN COB-SCR-F6
   860 GC0712                     IF WS-CS-NOFUNC-CHR = SPACE

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 22

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 23
====== =========================================================================================
   861 GC0712                         MOVE SELCHAR TO WS-CS-NOFUNC-CHR
   862 GC0712                     ELSE
   863 GC0712                         MOVE ' ' TO WS-CS-NOFUNC-CHR
   864 GC0712                     END-IF
   865 GC0712                 WHEN COB-SCR-F7
   866 GC0712                     IF WS-CS-WARNALL-CHR = SPACE
   867 GC0712                         MOVE SELCHAR TO WS-CS-WARNALL-CHR
   868 GC0712                     ELSE
   869 GC0712                         MOVE ' ' TO WS-CS-WARNALL-CHR
   870 GC0712                     END-IF
   871 GC0712                 WHEN COB-SCR-F8
   872 GC0712                     IF WS-CS-FREE-CHR = SPACE
   873 GC0712                         MOVE SELCHAR TO WS-CS-FREE-CHR
   874 GC0712                     ELSE
   875 GC0712                         MOVE ' ' TO WS-CS-FREE-CHR
   876 GC0712                     END-IF
   877 GC0712                 WHEN COB-SCR-F9
   878 GC0712                     IF  WS-CS-NOTRUNC-CHR = SPACE
   879 GC0712                         MOVE SELCHAR TO WS-CS-NOTRUNC-CHR
   880 GC0712                     ELSE
   881 GC0712                         MOVE ' ' TO WS-CS-NOTRUNC-CHR
   882 GC0712                     END-IF
   883                        WHEN COB-SCR-ESC
   884                            PERFORM 900-Terminate
   885       * ------------------ Control will NOT return
   886 GC0712                 WHEN COB-SCR-F12
   887 GC0712                     ADD 1 TO WS-CS-Config-NUM
   888 GC0712                     IF WS-CS-Config-NUM > 7
   889 GC0712                         MOVE 1 TO WS-CS-Config-NUM
   890 GC0712                     END-IF
   891                        WHEN OTHER
   892                            MOVE 'An unsupported key was pressed'
   893                              TO WS-Output-Msg-TXT
   894                    END-EVALUATE
   895                ELSE
   896                    SET WS-RS-No-Switch-Changes-BOOL TO TRUE
   897                END-IF
   898            END-PERFORM
   899            .

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 23

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 24
====== =========================================================================================

   901       *>***************************************************************
   902       *> Run the compiler using the switch settings we've prepared.  **
   903       *>***************************************************************
   904        210-Run-Compiler SECTION.
   905            MOVE SPACES TO WS-Cmd-TXT
   906                           WS-Cobc-Cmd-TXT
   907                           WS-Output-Msg-TXT
   908            DISPLAY S-Switches-SCR
   909            MOVE 1 TO WS-I-SUB
   910 GC0712     MOVE LOWER-CASE(WS-CS-Filename-TXT (WS-CS-Config-NUM))
   911 GC0712       TO WS-Config-Fn-TXT
   912       *>***************************************************************
   913       *> Build the 'cobc' command                                    **
   914       *>***************************************************************
   915 GC0909     MOVE SPACES TO WS-Cobc-Cmd-TXT
   916 GC0909     STRING 'cobc -v -std='
   917 GC0909         TRIM(WS-Config-Fn-TXT,TRAILING)
   918 GC0909         ' '
   919 GC0909         INTO WS-Cobc-Cmd-TXT
   920 GC0909         WITH POINTER WS-I-SUB
   921            IF WS-CS-LIBRARY-CHR NOT = ' '
   922                STRING '-m '
   923                    DELIMITED SIZE INTO WS-Cobc-Cmd-TXT
   924                    WITH POINTER WS-I-SUB
   925            ELSE
   926                STRING '-x '
   927                    DELIMITED SIZE INTO WS-Cobc-Cmd-TXT
   928                    WITH POINTER WS-I-SUB
   929            END-IF
   930            IF WS-CS-DEBUG-CHR NOT = ' '
   931                STRING '-fdebugging-line '
   932                    DELIMITED SIZE INTO WS-Cobc-Cmd-TXT
   933                    WITH POINTER WS-I-SUB
   934            END-IF
   935            IF WS-CS-NOTRUNC-CHR NOT = ' '
   936                STRING '-fnotrunc '
   937                    DELIMITED SIZE INTO WS-Cobc-Cmd-TXT
   938                    WITH POINTER WS-I-SUB
   939            END-IF
   940            IF WS-CS-TRACEALL-CHR NOT = ' '
   941 GC0809         STRING '-ftraceall '
   942                    DELIMITED SIZE INTO WS-Cobc-Cmd-TXT
   943                    WITH POINTER WS-I-SUB
   944            END-IF
   945 GC0712     IF WS-CS-NOFUNC-CHR NOT = ' '
   946 VC0717         STRING '-fintrinsics=ALL '
   947 GC0712             DELIMITED SIZE INTO WS-Cobc-Cmd-TXT
   948 GC0712             WITH POINTER WS-I-SUB
   949 GC0712     END-IF
   950 GC0712     IF WS-CS-WARNALL-CHR NOT = ' '
   951 GC0712         STRING '-Wall '
   952 GC0712             DELIMITED SIZE INTO WS-Cobc-Cmd-TXT

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 24

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 25
====== =========================================================================================
   953 GC0712             WITH POINTER WS-I-SUB
   954 GC0712     END-IF
   955 GC0712     IF WS-CS-FREE-CHR NOT = ' '
   956 GC0712         STRING '-free '
   957 GC0712             DELIMITED SIZE INTO WS-Cobc-Cmd-TXT
   958 GC0712             WITH POINTER WS-I-SUB
   959 GC0712     ELSE
   960 GC0712         STRING '-fixed '
   961 GC0712             DELIMITED SIZE INTO WS-Cobc-Cmd-TXT
   962 GC0712             WITH POINTER WS-I-SUB
   963 GC0712     END-IF
   964
   965 GC0712     MOVE 0 TO WS-Tally-QTY
   966 GC0712     INSPECT WS-CS-Extra-TXT
   967 GC0712         TALLYING WS-Tally-QTY FOR ALL '-save-temps'
   968 GC0712     IF WS-CS-LISTING-CHR > SPACE
   969 GC0712     AND WS-Tally-QTY > 0
   970 GC0712         MOVE SPACE TO WS-CS-LISTING-CHR *> Can't generate listing if -save-temps u
       sed
   971 GC0712     END-IF
   972 GC0712     IF WS-CS-LISTING-CHR > SPACE
   973 GC1010         STRING '-save-temps '
   974 GC1010             DELIMITED SIZE INTO WS-Cobc-Cmd-TXT
   975 GC1010             WITH POINTER WS-I-SUB
   976 GC1010     END-IF
   977
   978 GC0709     IF WS-CS-Extra-TXT > SPACES
   979 GC0709         STRING ' '
   980 GC0709                TRIM(WS-CS-Extra-TXT,TRAILING)
   981 GC0709                ' '
   982 GC0709                DELIMITED SIZE INTO WS-Cobc-Cmd-TXT
   983 GC0709                WITH POINTER WS-I-SUB
   984 GC0709     END-IF
   985 GC0909     STRING TRIM(WS-Prog-File-Name-TXT,TRAILING)
   986 GC0909         DELIMITED SIZE INTO WS-Cobc-Cmd-TXT
   987 GC0909         WITH POINTER WS-I-SUB
   988       *>***************************************************************
   989       *> Prepare the compilation listing file                        **
   990       *>***************************************************************
   991 GC1113     MOVE CONCATENATE(TRIM(WS-Pgm-Nm-TXT,Trailing),'.gclst')
   992 GC0712       TO WS-Listing-Filename-TXT
   993 GC0712     CALL 'CBL_DELETE_FILE' USING WS-Listing-Filename-TXT
   994       *>***************************************************************
   995       *> Now execute the 'cobc' command                              **
   996       *>***************************************************************
   997 GC0410     MOVE ' Compiling...' TO WS-Output-Msg-TXT
   998 GC0410     DISPLAY S-Switches-SCR
   999 GC0609     SET WS-RS-Output-File-Avail-BOOL TO TRUE
  1000            MOVE SPACES TO WS-Cmd-TXT
  1001            STRING TRIM(WS-Cobc-Cmd-TXT,TRAILING)
  1002 GC0712            ' >' WS-Listing-Filename-TXT
  1003 GC0712            ' 2>&1'
  1004                   DELIMITED SIZE

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 25

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 26
====== =========================================================================================
  1005                   INTO WS-Cmd-TXT
  1006 DEBUG D    DISPLAY WS-Cmd-TXT UPON SYSERR
  1007            CALL 'SYSTEM' USING TRIM(WS-Cmd-TXT,TRAILING)
  1008 GC0712     OPEN EXTEND F-Cobc-Output-FILE
  1009 GC0712     WRITE F-Cobc-Output-REC FROM SPACES
  1010 GC0712     IF RETURN-CODE = 0
  1011 GC0712         SET WS-RS-Compile-OK-BOOL TO TRUE
  1012 GC0712         MOVE ' Compilation Was Successful' TO WS-Output-Msg-TXT
  1013 GC0712         MOVE CONCATENATE('GNU COBOL',WS-Output-Msg-TXT)
  1014 GC0712           TO F-Cobc-Output-REC
  1015 GC0712         WRITE F-Cobc-Output-REC
  1016 GC0712         SET WS-RS-Complete-BOOL TO TRUE
  1017 GC0712     ELSE
  1018 GC0712         SET WS-RS-Compile-Failed-BOOL TO TRUE
  1019 GC0712         MOVE CONCATENATE(' Compilation Failed - See ',
  1020 GC0712                     TRIM(WS-Listing-Filename-TXT,Trailing))
  1021 GC0712           TO WS-Output-Msg-TXT
  1022 GC0712         MOVE 'GNU COBOL Compilation HAS FAILED - See Above'
  1023 GC0712           TO F-Cobc-Output-REC
  1024 GC0712         WRITE F-Cobc-Output-REC
  1025 GC0712     END-IF
  1026 GC0712     CLOSE F-Cobc-Output-FILE
  1027 GC0712     DISPLAY S-Switches-SCR
  1028 GC0712     CALL 'C$SLEEP' USING 2
  1029 GC0712     MOVE SPACES TO WS-Output-Msg-TXT
  1030            IF WS-RS-Compile-Failed-BOOL
  1031 GC0712         PERFORM 250-Autoload-Listing
  1032                PERFORM 900-Terminate
  1033       *> ----- Control will not return
  1034            END-IF
  1035            .

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 26

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 27
====== =========================================================================================

  1037       *>***************************************************************
  1038       *> Generate a source + xref listing using 'LISTING' subroutine **
  1039       *>***************************************************************
  1040 GC0410 220-Make-Listing SECTION.
  1041 GC0410     MOVE ' Generating listing...' TO WS-Output-Msg-TXT
  1042 GC0410     DISPLAY S-Switches-SCR
  1043 GC0410     MOVE 0 TO RETURN-CODE
  1044       *>***************************************************************
  1045       *> Create the listing                                          **
  1046       *>***************************************************************
  1047 GC0410     MOVE SPACES TO WS-Output-Msg-TXT
  1048 GC0410     CALL 'LISTING' USING WS-Listing-Filename-TXT
  1049 GC0712                          WS-File-Name-TXT
  1050 GC0712                          WS-OS-Type-CD
  1051 GC1213                          LPP
  1052 GC1213                          LPPP
  1053 GC1213                          WS-Listing-CD
  1054 GC0410     ON EXCEPTION
  1055 GC0410         MOVE ' LISTING module is not available'
  1056 GC0410           TO WS-Output-Msg-TXT
  1057 GC0410         MOVE 1 TO RETURN-CODE
  1058 GC0410     END-CALL
  1059 GC0410     IF RETURN-CODE = 0
  1060 GC0712         MOVE ' Source+Xref listing generated '
  1061 GC0712           TO WS-Output-Msg-TXT
  1062 GC0410     END-IF
  1063 GC0712     DISPLAY S-Switches-SCR
  1064 GC0712     CALL 'C$SLEEP' USING 2
  1065 GC0712     PERFORM 250-Autoload-Listing
  1066 GC0410     .

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 27

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 28
====== =========================================================================================

  1068       *>***************************************************************
  1069       *> Run the compiled program                                    **
  1070       *>***************************************************************
  1071        230-Run-Program SECTION.
  1072 GC0114     MOVE ' Preparing to run program ... press ENTER to close '
  1073 GC0114       TO WS-Output-Msg-TXT
  1074 GC0114     DISPLAY S-Switches-SCR
  1075 GC0114     CALL 'C$SLEEP' USING 3
  1076 GC0909     MOVE SPACES TO WS-Cmd-TXT
  1077 GC0909     MOVE 1 TO WS-I-SUB
  1078       *>***************************************************************
  1079       *> If necessary, start with 'cobcrun' command                  **
  1080       *>***************************************************************
  1081 GC0712     IF WS-CS-LIBRARY-CHR NOT = ' '
  1082                STRING 'cobcrun ' DELIMITED SIZE
  1083                       INTO WS-Cmd-TXT
  1084                       WITH POINTER WS-I-SUB
  1085            END-IF
  1086       *>***************************************************************
  1087       *> Add any necessary path prefix                               **
  1088       *>***************************************************************
  1089 GC0712     SET WS-RS-Double-Quote-Used-BOOL TO FALSE
  1090            IF WS-Prog-Folder-TXT NOT = SPACES
  1091 GC0909         IF WS-OS-Cygwin-BOOL AND WS-Prog-Folder-TXT (2:1) = ':'
  1092 GC0909             STRING '/cygdrive/'
  1093 GC0909                 INTO WS-Cmd-TXT
  1094 GC0909                 WITH POINTER WS-I-SUB
  1095 GC0909             STRING LOWER-CASE(WS-Prog-Folder-TXT (1:1))
  1096 GC0909                 INTO WS-Cmd-TXT
  1097 GC0909                 WITH POINTER WS-I-SUB
  1098 GC0909             PERFORM
  1099 GC0909                 VARYING WS-J-SUB FROM 3 BY 1
  1100 GC0909                 UNTIL WS-J-SUB > LENGTH(TRIM(WS-Prog-Folder-TXT))
  1101 GC0909                 IF WS-Prog-Folder-TXT (WS-J-SUB:1) = '\'
  1102 GC0909                     STRING '/'
  1103 GC0909                         INTO WS-Cmd-TXT
  1104 GC0909                         WITH POINTER WS-I-SUB
  1105 GC0909                 ELSE
  1106 GC0909                     STRING WS-Prog-Folder-TXT (WS-J-SUB:1)
  1107 GC0909                         INTO WS-Cmd-TXT
  1108 GC0909                         WITH POINTER WS-I-SUB
  1109 GC0909                 END-IF
  1110 GC0909             END-PERFORM
  1111 GC0909         ELSE
  1112 GC0410             STRING '"' TRIM(WS-Prog-Folder-TXT,TRAILING)
  1113 GC0909                 INTO WS-Cmd-TXT
  1114 GC0909                 WITH POINTER WS-I-SUB
  1115 GC0712             SET WS-RS-Double-Quote-Used-BOOL TO TRUE
  1116 GC0909         END-IF
  1117 GC0712         STRING WS-OS-Dir-CHR
  1118 GC0909             INTO WS-Cmd-TXT
  1119 GC0909             WITH POINTER WS-I-SUB

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 28

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 29
====== =========================================================================================
  1120 GC0909     ELSE
  1121 GC0909         IF WS-OS-Cygwin-BOOL OR WS-OS-UNIX-BOOL
  1122 GC0909             STRING './'
  1123 GC0909                 INTO WS-Cmd-TXT
  1124 GC0909                 WITH POINTER WS-I-SUB
  1125 GC0909         END-IF
  1126            END-IF
  1127       *>***************************************************************
  1128       *> Insert program filename                                     **
  1129       *>***************************************************************
  1130 GC0909     STRING TRIM(WS-Pgm-Nm-TXT,TRAILING)
  1131 GC0909         INTO WS-Cmd-TXT
  1132 GC0909         WITH POINTER WS-I-SUB
  1133       *>***************************************************************
  1134       *> Insert proper extension                                     **
  1135       *>***************************************************************
  1136 GC0712     IF WS-CS-LIBRARY-CHR = ' '
  1137 GC0712         IF WS-OS-Exe-Ext-CONST > ' '
  1138 GC0712             STRING WS-OS-Exe-Ext-CONST DELIMITED SPACE
  1139 GC0712                 INTO WS-Cmd-TXT
  1140 GC0712                 WITH POINTER WS-I-SUB
  1141 GC0712         END-IF
  1142 GC0712     ELSE
  1143 GC0712         IF WS-OS-Lib-Ext-CONST > ' '
  1144 GC0712             STRING WS-OS-Lib-Ext-CONST DELIMITED SPACE
  1145 GC0712                 INTO WS-Cmd-TXT
  1146 GC0712                 WITH POINTER WS-I-SUB
  1147 GC0712         END-IF
  1148 GC0712     END-IF
  1149 GC0712     IF WS-RS-Double-Quote-Used-BOOL
  1150 GC0712         STRING '"' DELIMITED SIZE
  1151 GC0712             INTO WS-Cmd-TXT
  1152 GC0712             WITH POINTER WS-I-SUB
  1153 GC0712     END-IF
  1154            IF WS-CS-Args-TXT NOT = SPACES
  1155 GC0809         STRING ' ' TRIM(WS-CS-Args-TXT,TRAILING)
  1156                    INTO WS-Cmd-TXT
  1157                    WITH POINTER WS-I-SUB
  1158            END-IF
  1159       *>***************************************************************
  1160       *> Run the program                                             **
  1161       *>***************************************************************
  1162 GC0114     CALL X'E4'
  1163            CALL 'SYSTEM' USING TRIM(WS-Cmd-TXT,TRAILING)
  1164 GC0712     MOVE SPACES TO WS-Output-Msg-TXT
  1165 GC0114     ACCEPT WS-Output-Msg-TXT(1:1) AT 0101
  1166            PERFORM 900-Terminate
  1167       * -- Control will NOT return
  1168            .

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 29

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 30
====== =========================================================================================

  1170       *>***************************************************************
  1171       *> Determine if the program being compiled is a MAIN program   **
  1172       *>***************************************************************
  1173        240-Find-LINKAGE-SECTION SECTION.
  1174            OPEN INPUT F-Source-Code-FILE
  1175 GC0712     MOVE ' ' TO WS-CS-LIBRARY-CHR
  1176            SET WS-RS-More-To-1st-Prog-BOOL   TO TRUE
  1177            PERFORM UNTIL WS-RS-1st-Prog-Complete-BOOL
  1178                READ F-Source-Code-FILE AT END
  1179                    CLOSE F-Source-Code-FILE
  1180                    EXIT SECTION
  1181                END-READ
  1182 GC0712         CALL 'CHECKSRC'
  1183 GC0712             USING BY CONTENT   F-Source-Code-REC
  1184 GC0712                   BY REFERENCE WS-RS-Source-Record-Type-CHR
  1185                IF WS-RS-Source-Rec-Ident-BOOL
  1186                    SET WS-RS-1st-Prog-Complete-BOOL TO TRUE
  1187                END-IF
  1188            END-PERFORM
  1189 GC0712     SET WS-RS-Source-Rec-Ignored-BOOL TO TRUE
  1190            PERFORM UNTIL WS-RS-Source-Rec-Linkage-BOOL
  1191                       OR WS-RS-Source-Rec-Ident-BOOL
  1192                READ F-Source-Code-FILE AT END
  1193                    CLOSE F-Source-Code-FILE
  1194                    EXIT SECTION
  1195                END-READ
  1196 GC0712         CALL 'CHECKSRC'
  1197 GC0712             USING BY CONTENT   F-Source-Code-REC
  1198 GC0712                   BY REFERENCE WS-RS-Source-Record-Type-CHR
  1199            END-PERFORM
  1200            CLOSE F-Source-Code-FILE
  1201            IF WS-RS-Source-Rec-Linkage-BOOL
  1202 GC0712         MOVE SELCHAR TO WS-CS-LIBRARY-CHR
  1203            END-IF
  1204            .

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 30

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 31
====== =========================================================================================

  1206 GC0712*>***************************************************************
  1207 GC0712*> Attempt to open the listing file as a command.  This will - **
  1208 GC1113*> if the user has associated filetype/extension 'gclst' with  **
  1209 GC0712*> an application - invoke the appropriate application to      **
  1210 GC0712*> allow the user to view the listing.                         **
  1211 GC0712*>***************************************************************'
  1212 GC0712 250-Autoload-Listing SECTION.
  1213 GC0712     EVALUATE TRUE
  1214 GC0712         WHEN WS-OS-Windows-BOOL OR WS-OS-Cygwin-BOOL
  1215 GC0712             MOVE SPACES TO WS-Cmd-TXT
  1216 GC0712             STRING
  1217 GC0712                 'cmd /c '
  1218 GC0712                 TRIM(WS-Listing-Filename-TXT,TRAILING)
  1219 GC0712                 DELIMITED SIZE INTO WS-Cmd-TXT
  1220 GC0712             CALL 'SYSTEM' USING TRIM(WS-Cmd-TXT,TRAILING)
  1221 GC0712         WHEN WS-OS-OSX-BOOL
  1222 GC0712             MOVE SPACES TO WS-Cmd-TXT
  1223 GC0712             STRING
  1224 GC0712                 'open -t '
  1225 GC0712                 TRIM(WS-Listing-Filename-TXT,TRAILING)
  1226 GC0712                 DELIMITED SIZE INTO WS-Cmd-TXT
  1227 GC0712             CALL 'SYSTEM' USING TRIM(WS-Cmd-TXT,TRAILING)
  1228 GC0712     END-EVALUATE
  1229 GC0712*>   ************************************************************
  1230 GC0712*>   ** Since we had to do our own '-save-temps' when we       **
  1231 GC0712*>   ** compiled (in order to generate the cross-reference     **
  1232 GC0712*>   ** listing) we now need to clean up after ourselves.      **
  1233 GC0712*>   ************************************************************
  1234 GC1112     DISPLAY S-Blank-SCR
  1235 GC0712     IF WS-OS-Windows-BOOL
  1236 GC0712         MOVE CONCATENATE('del ',TRIM(WS-Pgm-Nm-TXT,TRAILING))
  1237 GC0712           TO WS-Cmd-TXT
  1238 GC0712     ELSE
  1239 GC0712         MOVE CONCATENATE('rm ',TRIM(WS-Pgm-Nm-TXT,TRAILING))
  1240 GC0712           TO WS-Cmd-TXT
  1241 GC0712     END-IF
  1242 GC0712     CALL 'SYSTEM'
  1243 GC0712         USING CONCATENATE(TRIM(WS-Cmd-TXT,TRAILING),'.c')
  1244 GC0712     CALL 'SYSTEM'
  1245 GC0712         USING CONCATENATE(TRIM(WS-Cmd-TXT,TRAILING),'.c.h')
  1246 GC0712     CALL 'SYSTEM'
  1247 GC0712         USING CONCATENATE(TRIM(WS-Cmd-TXT,TRAILING),'.c.l*.h')
  1248 GC0712     CALL 'SYSTEM'
  1249 GC0712         USING CONCATENATE(TRIM(WS-Cmd-TXT,TRAILING),'.i')
  1250 GC0712     CALL 'SYSTEM'
  1251 GC0712         USING CONCATENATE(TRIM(WS-Cmd-TXT,TRAILING),'.o')
  1252
  1253 GC0712     .

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 31

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 32
====== =========================================================================================

  1255       *>***************************************************************
  1256       *> Display a message and halt the program                      **
  1257       *>***************************************************************
  1258        900-Terminate SECTION.
  1259 GC0909     IF WS-Output-Msg-TXT > SPACES
  1260 GC0909         DISPLAY S-Switches-SCR
  1261 GC0909         CALL 'C$SLEEP' USING 2
  1262 GC0909     END-IF
  1263            DISPLAY S-Blank-SCR
  1264            STOP RUN
  1265            .
  1266
  1267        END PROGRAM GCic.

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 32

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 33
====== =========================================================================================

  1269        IDENTIFICATION DIVISION.
  1270        PROGRAM-ID.  CHECKSRC.
  1271       *>***************************************************************
  1272       *> This subprogram will scan a line of source code it is given **
  1273       *> looking for 'LINKAGE SECTION' or 'IDENTIFICATION DIVISION'. **
  1274       *>                                                             **
  1275       *>  ****NOTE****   ****NOTE****    ****NOTE****   ****NOTE***  **
  1276       *>                                                             **
  1277       *> These two strings must be found IN THEIR ENTIRETY within    **
  1278       *> the 1st 80 columns of program source records, and cannot    **
  1279       *> follow either a '*>' sequence OR a '*' in col 7.            **
  1280       *>***************************************************************
  1281       *>  DATE  CHANGE DESCRIPTION                                   **
  1282       *> ====== ==================================================== **
  1283       *> GC0809 Initial coding.                                      **
  1284       *>***************************************************************
  1285        ENVIRONMENT DIVISION.
  1286        CONFIGURATION SECTION.
  1287        REPOSITORY.
  1288            FUNCTION ALL INTRINSIC.
  1289        DATA DIVISION.
  1290        WORKING-STORAGE SECTION.
  1291        01  WS-Compressed-Src-TXT.
  1292            05 WS-CS-CHR                          OCCURS 80 TIMES
  1293                                                  PIC X(1).
  1294
  1295        01  WS-Runtime-Switches-TXT.
  1296            05 WS-RS-Found-SPACE-CHR              PIC X(1).
  1297               88 WS-RS-Skipping-SPACE-BOOL     VALUE 'Y'.
  1298               88 WS-RS-Not-Skipping-SPACE-BOOL VALUE 'N'.
  1299
  1300        01  WS-I-SUB                              USAGE BINARY-CHAR.
  1301
  1302        01  WS-J-SUB                              USAGE BINARY-CHAR.
  1303        LINKAGE SECTION.
  1304        01  L-Argument-1-TXT.
  1305            02 L-A1-CHR                           OCCURS 80 TIMES
  1306                                                  PIC X(1).
  1307
  1308        01  L-Argument-2-CHR                      PIC X(1).
  1309            88 L-A2-LINKAGE-SECTION-BOOL VALUE 'L'.
  1310            88 L-A2-IDENT-DIVISION-BOOL  VALUE 'I'.
  1311            88 L-A2-Nothing-Special-BOOL VALUE ' '.

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 33

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 34
====== =========================================================================================

  1313 GC0712 PROCEDURE DIVISION USING BY VALUE     L-Argument-1-TXT
  1314 GC0712                          BY REFERENCE L-Argument-2-CHR.
  1315        000-Main SECTION.
  1316            SET L-A2-Nothing-Special-BOOL TO TRUE
  1317            IF L-A1-CHR (7) = '*'
  1318                GOBACK
  1319            END-IF
  1320            .
  1321       *>
  1322       *> Compress multiple consecutive spaces
  1323       *>
  1324            SET WS-RS-Not-Skipping-SPACE-BOOL TO TRUE
  1325            MOVE 0 TO WS-J-SUB
  1326            MOVE SPACES TO WS-Compressed-Src-TXT
  1327            PERFORM VARYING WS-I-SUB FROM 1 BY 1
  1328                      UNTIL WS-I-SUB > 80
  1329                IF L-A1-CHR (WS-I-SUB) = SPACE
  1330                    IF WS-RS-Not-Skipping-SPACE-BOOL
  1331                        ADD 1 TO WS-J-SUB
  1332                        MOVE UPPER-CASE(L-A1-CHR (WS-I-SUB))
  1333                          TO WS-CS-CHR (WS-J-SUB)
  1334                        SET WS-RS-Skipping-SPACE-BOOL TO TRUE
  1335                    END-IF
  1336                ELSE
  1337                    SET WS-RS-Not-Skipping-SPACE-BOOL TO TRUE
  1338                    ADD 1 TO WS-J-SUB
  1339                    MOVE L-A1-CHR (WS-I-SUB) TO WS-CS-CHR (WS-J-SUB)
  1340                END-IF
  1341            END-PERFORM
  1342       *>
  1343       *> Scan the compressed source line
  1344       *>
  1345            PERFORM VARYING WS-I-SUB FROM 1 BY 1
  1346                      UNTIL WS-I-SUB > 66
  1347                EVALUATE TRUE
  1348                    WHEN WS-CS-CHR (WS-I-SUB) = '*'
  1349                        IF WS-Compressed-Src-TXT (WS-I-SUB : 2) = '*>'
  1350                            GOBACK
  1351                        END-IF
  1352                    WHEN (WS-CS-CHR (WS-I-SUB) = 'L') AND (WS-I-SUB < 66)
  1353                        IF WS-Compressed-Src-TXT (WS-I-SUB : 15)
  1354                           = 'LINKAGE SECTION'
  1355                            SET L-A2-LINKAGE-SECTION-BOOL TO TRUE
  1356                            GOBACK
  1357                        END-IF
  1358                    WHEN (WS-CS-CHR (WS-I-SUB) = 'I') AND (WS-I-SUB < 58)
  1359                        IF WS-Compressed-Src-TXT (WS-I-SUB : 23)
  1360                           = 'IDENTIFICATION DIVISION'
  1361                            SET L-A2-IDENT-DIVISION-BOOL TO TRUE
  1362                            GOBACK
  1363                        END-IF
  1364                END-EVALUATE

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 34

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 35
====== =========================================================================================
  1365            END-PERFORM
  1366       *>
  1367       *> If we get to here, we never found anything!
  1368       *>
  1369 +           GOBACK
  1370            .
  1371        END PROGRAM CHECKSRC.
  1372
  1373        IDENTIFICATION DIVISION.
  1374        PROGRAM-ID.  LISTING.
  1375       *>***************************************************************
  1376       *> This subprogram generates a cross-reference listing of an   **
  1377       *> GNU COBOL program.                                          **
  1378       *>***************************************************************
  1379       *>                                                             **
  1380       *> AUTHOR:       GARY L. CUTLER                                **
  1381       *>               Copyright (C) 2010, Gary L. Cutler, GPL       **
  1382       *>                                                             **
  1383       *> DATE-WRITTEN: April 1, 2010                                 **
  1384       *>                                                             **
  1385       *>***************************************************************
  1386       *>  DATE  CHANGE DESCRIPTION                                   **
  1387       *> ====== ==================================================== **
  1388       *> GC0410 Initial coding                                       **
  1389       *> GC0711 Updates to accommodate the 12MAR2010 version of OC   **
  1390       *> GC0710 Handle duplicate data names (i.e. 'CORRESPONDING' or **
  1391       *>        qualified items) better; ignore 'END PROGRAM' recs   **
  1392       *>        so program name doesn't appear in listing.           **
  1393       *> GC0313 Fix problem where the first procedure name defined   **
  1394       *>        in the PROCEDURE DIVISION lacks a "Defined" line     **
  1395       *>        number.                                              **
  1396       *> GC1213 Updated for 23NOV2013 version of GNU COBOL 2.1; Stop **
  1397       *>        showing functions as if they were identifiers in the **
  1398       *>        xref listing; Flag all CALL argument references with **
  1399       *>        a "C" rather than "*" because they aren't necessari- **
  1400       *>        ly altered; Fixed assorted formatting bugs; DOWN-    **
  1401       *>        WARD COMPATIBLE WITH GNU COBOL 2.0 SYNTAX            **
  1402       *> GC0314 Fix problem where 1st char of 1st token on a line is **
  1403       *>        lost if >>SOURCE MODE IS FREE is in effect and the   **
  1404       *>        1st character is non-blank.                          **
  1405       *>***************************************************************
  1406        ENVIRONMENT DIVISION.
  1407        CONFIGURATION SECTION.
  1408        REPOSITORY.
  1409            FUNCTION ALL INTRINSIC.
  1410        INPUT-OUTPUT SECTION.
  1411        FILE-CONTROL.
  1412            SELECT F-Expanded-Src-FILE  ASSIGN TO WS-Expanded-Src-Fn-TXT
  1413                                        ORGANIZATION IS LINE SEQUENTIAL.
  1414 GC0712     SELECT F-Listing-FILE       ASSIGN TO L-Listing-Fn-TXT
  1415                                        ORGANIZATION IS LINE SEQUENTIAL.
  1416            SELECT F-Original-Src-FILE  ASSIGN TO L-Src-Fn-TXT
  1417                                        ORGANIZATION IS LINE SEQUENTIAL.

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 35

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 36
====== =========================================================================================
  1418            SELECT F-Sort-Work-FILE     ASSIGN TO DISK.
  1419        DATA DIVISION.
  1420        FILE SECTION.
  1421        FD  F-Expanded-Src-FILE.
  1422        01  F-Expanded-Src-REC.
  1423            05 F-ES-1-CHR                         PIC X.
  1424            05 F-ES-2-256-TXT-256                 PIC X(256).
  1425 GC0712 01  F-Expanded-Src2-REC.
  1426 GC0712     05 F-ES-1-7-TXT                       PIC X(7).
  1427 GC0712     05 F-ES-8-256-TXT                     PIC X(249).
  1428
  1429 GC0712 FD  F-Listing-FILE.
  1430 GC1213 01  F-Listing-96-REC                      PIC X(96).
  1431 GC1213 01  F-Listing-135-REC                     PIC X(135).
  1432        01  F-Listing-REC                         PIC X(135).
  1433
  1434        FD  F-Original-Src-FILE.
  1435        01  F-Original-Src-REC.
  1436 GC0410     05 F-OS-1-128-TXT.
  1437 GC0410        10 FILLER                          PIC X(6).
  1438 GC0410        10 F-OS-7-CHR                      PIC X(1).
  1439 GC0712        10 F-OS-8-72-TXT                   PIC X(65).
  1440 GC0712        10 FILLER                          PIC X(56).
  1441            05 F-OS-129-256-TXT                   PIC X(128).
  1442
  1443        SD  F-Sort-Work-FILE.
  1444        01  F-Sort-Work-REC.
  1445            05 F-SW-Prog-ID-TXT                   PIC X(15).
  1446            05 F-SW-Token-Uc-TXT                  PIC X(32).
  1447            05 F-SW-Token-TXT                     PIC X(32).
  1448            05 F-SW-Section-TXT                   PIC X(15).
  1449            05 F-SW-Def-Line-NUM                  PIC 9(6).
  1450            05 F-SW-Reference-TXT.
  1451               10 F-SW-Ref-Line-NUM               PIC 9(6).
  1452               10 F-SW-Ref-Flag-CHR               PIC X(1).
  1453
  1454        WORKING-STORAGE SECTION.
  1455 GC1213 01  WS-Copyright-TXT                      PIC X(86).
  1456
  1457        01  WS-Curr-CHR                           PIC X(1).
  1458            88 WS-Curr-Char-Is-Punct-BOOL         VALUE '=', '(', ')',
  1459                                                        '*', '/', '&',
  1460                                                        ';', ',', '<',
  1461                                                        '>', ':'.
  1462            88 WS-Curr-Char-Is-Quote-BOOL         VALUE "'", '"'.
  1463            88 WS-Curr-Char-Is-X-BOOL             VALUE 'x', 'X'.
  1464            88 WS-Curr-Char-Is-Z-BOOL             VALUE 'z', 'Z'.
  1465
  1466        01  WS-Curr-Division-TXT                  PIC X(1).
  1467 GC1010     88 WS-CD-In-IDENT-DIV-BOOL            VALUE 'i', 'I', '?'.
  1468 GC1010     88 WS-CD-In-ENV-DIV-BOOL              VALUE 'e', 'E'.
  1469 GC1010     88 WS-CD-In-DATA-DIV-BOOL             VALUE 'd', 'D'.
  1470 GC1010     88 WS-CD-In-PROC-DIV-BOOL             VALUE 'p', 'P'.

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 36

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 37
====== =========================================================================================
  1471
  1472        01  WS-Curr-Line-NUM                      PIC 9(6).
  1473
  1474        01  WS-Curr-Prog-ID-TXT.
  1475            05 FILLER                             PIC X(12).
  1476            05 WS-CPI-13-15-TXT                   PIC X(3).
  1477 GC0712     05 WS-CPI-16-CHR                      PIC X(1).
  1478
  1479        01  WS-Curr-Section-TXT.
  1480            05 WS-CS-1-CHR                        PIC X(1).
  1481            05 WS-CS-2-14-TXT.
  1482               10 FILLER                          PIC X(10).
  1483               10 WS-CS-11-14-TXT                 PIC X(3).
  1484            05 WS-CS-15-CHR                       PIC X(1).
  1485
  1486        01  WS-Curr-Verb-TXT                      PIC X(12).
  1487
  1488        01  WS-Delim-TXT                          PIC X(2).
  1489
  1490        01  WS-Dummy-TXT                          PIC X(1).
  1491
  1492        01  WS-Expanded-Src-Fn-TXT                PIC X(256).
  1493
  1494        01  WS-Filename-TXT                       PIC X(256).
  1495
  1496 GC1213 01  WS-Flags-TXT.
  1497 GC1213     05 WS-Suppress-FF-CHR                 PIC X(1).
  1498
  1499 GC1213 01  WS-Formatted-DT                       PIC 9999/99/99.
  1500
  1501        01  WS-Group-Indicators-TXT.
  1502            05 WS-GI-Prog-ID-TXT                  PIC X(15).
  1503            05 WS-GI-Token-TXT                    PIC X(32).
  1504
  1505        01  WS-Held-Reference-TXT                 PIC X(100).
  1506
  1507        01  WS-I-SUB                              USAGE BINARY-LONG.
  1508
  1509        01  WS-J-SUB                              USAGE BINARY-LONG.
  1510
  1511        01  WS-Lines-Left-NUM                     USAGE BINARY-LONG.
  1512
  1513        01  WS-Lines-Per-Page-NUM                 USAGE BINARY-LONG.
  1514
  1515        01  WS-Lines-Per-Page-Env-TXT             PIC X(256).
  1516
  1517 GC1010 01  WS-Main-Module-Name-TXT               PIC X(256).
  1518
  1519        01  WS-Next-CHR                           PIC X(1).
  1520            88 WS-Next-Char-Is-Quote-BOOL         VALUE '"', "'".
  1521
  1522        01  WS-OS-Type-FILLER-TXT.
  1523            05 VALUE 'Windows'                    PIC X(14).

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 37

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 38
====== =========================================================================================
  1524            05 VALUE 'Windows/Cygwin'             PIC X(14).
  1525            05 VALUE 'UNIX/Linux'                 PIC X(14).
  1526            05 VALUE 'OSX'                        PIC X(14).
  1527            05 VALUE 'Windows/MinGW'              PIC X(14).
  1528        01  WS-OS-Types-TXT REDEFINES WS-OS-Type-FILLER-TXT.
  1529            05 WS-OS-Type-TXT                     PIC X(14)
  1530                                           OCCURS 5 TIMES .
  1531
  1532 GC0712 01  WS-Page-NUM                           USAGE BINARY-LONG.
  1533
  1534 GC0712 01  WS-Page-No-TXT.
  1535 GC0712     05 WS-PN-Literal-TXT                  PIC X(6).
  1536 GC0712     05 WS-PN-Page-NUM                     PIC Z(3)9.
  1537
  1538 GC1213 01  WS-Program-Path-TXT                   PIC X(135).
  1539
  1540        01  WS-Reserved-Words-TXT.
  1541            05 VALUE '                                 ' PIC X(33).
  1542 GC1213     05 VALUE 'FABS                             ' PIC X(33).
  1543            05 VALUE 'VACCEPT                          ' PIC X(33).
  1544            05 VALUE ' ACCESS                          ' PIC X(33).
  1545 GC1213     05 VALUE 'FACOS                            ' PIC X(33).
  1546            05 VALUE ' ACTIVE-CLASS                    ' PIC X(33).      UNIMPLEMENTED
  1547            05 VALUE 'VADD                             ' PIC X(33).
  1548            05 VALUE ' ADDRESS                         ' PIC X(33).
  1549            05 VALUE ' ADVANCING                       ' PIC X(33).
  1550            05 VALUE 'KAFTER                           ' PIC X(33).
  1551            05 VALUE ' ALIGNED                         ' PIC X(33).      UNIMPLEMENTED
  1552            05 VALUE ' ALL                             ' PIC X(33).
  1553            05 VALUE 'VALLOCATE                        ' PIC X(33).
  1554            05 VALUE ' ALPHABET                        ' PIC X(33).
  1555            05 VALUE ' ALPHABETIC                      ' PIC X(33).
  1556            05 VALUE ' ALPHABETIC-LOWER                ' PIC X(33).
  1557            05 VALUE ' ALPHABETIC-UPPER                ' PIC X(33).
  1558            05 VALUE ' ALPHANUMERIC                    ' PIC X(33).
  1559            05 VALUE ' ALPHANUMERIC-EDITED             ' PIC X(33).
  1560            05 VALUE ' ALSO                            ' PIC X(33).
  1561            05 VALUE 'VALTER                           ' PIC X(33).
  1562            05 VALUE ' ALTERNATE                       ' PIC X(33).
  1563            05 VALUE ' AND                             ' PIC X(33).
  1564 GC1213     05 VALUE 'FANNUITY                         ' PIC X(33).
  1565            05 VALUE ' ANY                             ' PIC X(33).
  1566            05 VALUE ' ANYCASE                         ' PIC X(33).      UNIMPLEMENTED
  1567            05 VALUE ' ARE                             ' PIC X(33).
  1568            05 VALUE ' AREA                            ' PIC X(33).
  1569            05 VALUE ' AREAS                           ' PIC X(33).
  1570            05 VALUE ' ARGUMENT-NUMBER                 ' PIC X(33).
  1571            05 VALUE ' ARGUMENT-VALUE                  ' PIC X(33).
  1572            05 VALUE ' ARITHMETIC                      ' PIC X(33).      UNIMPLEMENTED
  1573            05 VALUE ' AS                              ' PIC X(33).
  1574            05 VALUE ' ASCENDING                       ' PIC X(33).
  1575            05 VALUE ' ASCII                           ' PIC X(33).
  1576 GC1213     05 VALUE 'FASIN                            ' PIC X(33).

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 38

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 39
====== =========================================================================================
  1577            05 VALUE ' ASSIGN                          ' PIC X(33).
  1578            05 VALUE ' AT                              ' PIC X(33).
  1579 GC1213     05 VALUE 'FATAN                            ' PIC X(33).
  1580 GC0711     05 VALUE ' ATTRIBUTE                       ' PIC X(33).
  1581            05 VALUE ' AUTHOR                          ' PIC X(33).      OBSOLETE
  1582            05 VALUE ' AUTO                            ' PIC X(33).
  1583            05 VALUE ' AUTO-SKIP                       ' PIC X(33).
  1584            05 VALUE ' AUTOMATIC                       ' PIC X(33).
  1585            05 VALUE ' AUTOTERMINATE                   ' PIC X(33).
  1586            05 VALUE ' AWAY-FROM-ZERO                  ' PIC X(33).
  1587            05 VALUE ' B-AND                           ' PIC X(33).      UNIMPLEMENTED
  1588            05 VALUE ' B-NOT                           ' PIC X(33).      UNIMPLEMENTED
  1589            05 VALUE ' B-OR                            ' PIC X(33).      UNIMPLEMENTED
  1590            05 VALUE ' B-XOR                           ' PIC X(33).      UNIMPLEMENTED
  1591            05 VALUE ' BACKGROUND-COLOR                ' PIC X(33).
  1592            05 VALUE ' BACKGROUND-COLOUR               ' PIC X(33).
  1593            05 VALUE ' BASED                           ' PIC X(33).
  1594            05 VALUE ' BEEP                            ' PIC X(33).
  1595            05 VALUE ' BEFORE                          ' PIC X(33).
  1596            05 VALUE ' BELL                            ' PIC X(33).
  1597            05 VALUE ' BINARY                          ' PIC X(33).
  1598            05 VALUE ' BINARY-C-LONG                   ' PIC X(33).
  1599            05 VALUE ' BINARY-CHAR                     ' PIC X(33).
  1600            05 VALUE ' BINARY-DOUBLE                   ' PIC X(33).
  1601            05 VALUE ' BINARY-INT                      ' PIC X(33).
  1602            05 VALUE ' BINARY-LONG                     ' PIC X(33).
  1603            05 VALUE ' BINARY-LONG-LONG                ' PIC X(33).
  1604            05 VALUE ' BINARY-SHORT                    ' PIC X(33).
  1605            05 VALUE ' BIT                             ' PIC X(33).      UNIMPLEMENTED
  1606            05 VALUE ' BLANK                           ' PIC X(33).
  1607            05 VALUE ' BLINK                           ' PIC X(33).
  1608            05 VALUE ' BLOCK                           ' PIC X(33).
  1609            05 VALUE ' BOOLEAN                         ' PIC X(33).      UNIMPLEMENTED
  1610 GC1213     05 VALUE 'FBOOLEAN-OF-INTEGER              ' PIC X(33).      UNIMPLEMENTED
  1611            05 VALUE ' BOTTOM                          ' PIC X(33).
  1612            05 VALUE 'YBY                              ' PIC X(33).
  1613 GC1213     05 VALUE 'FBYTE-LENGTH                     ' PIC X(33).
  1614            05 VALUE 'MC01                             ' PIC X(33).
  1615            05 VALUE 'MC02                             ' PIC X(33).
  1616            05 VALUE 'MC03                             ' PIC X(33).
  1617            05 VALUE 'MC04                             ' PIC X(33).
  1618            05 VALUE 'MC05                             ' PIC X(33).
  1619            05 VALUE 'MC06                             ' PIC X(33).
  1620            05 VALUE 'MC07                             ' PIC X(33).
  1621            05 VALUE 'MC08                             ' PIC X(33).
  1622            05 VALUE 'MC09                             ' PIC X(33).
  1623            05 VALUE 'MC10                             ' PIC X(33).
  1624            05 VALUE 'MC11                             ' PIC X(33).
  1625            05 VALUE 'MC12                             ' PIC X(33).
  1626            05 VALUE 'VCALL                            ' PIC X(33).
  1627            05 VALUE 'MCALL-CONVENTION                 ' PIC X(33).
  1628            05 VALUE 'VCANCEL                          ' PIC X(33).
  1629            05 VALUE ' CAPACITY                        ' PIC X(33).      UNIMPLEMENTED

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 39

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 40
====== =========================================================================================
  1630            05 VALUE ' CD                              ' PIC X(33).      OBSOLETE
  1631            05 VALUE ' CENTER                          ' PIC X(33).      UNIMPLEMENTED
  1632            05 VALUE ' CF                              ' PIC X(33).
  1633            05 VALUE ' CH                              ' PIC X(33).
  1634            05 VALUE ' CHAIN                           ' PIC X(33).      UNIMPLEMENTED
  1635            05 VALUE ' CHAINING                        ' PIC X(33).
  1636 GC1213     05 VALUE 'FCHAR                            ' PIC X(33).
  1637 GC1213     05 VALUE 'FCHAR-NATIONAL                   ' PIC X(33).      UNIMPLEMENTED
  1638            05 VALUE ' CHARACTER                       ' PIC X(33).
  1639            05 VALUE ' CHARACTERS                      ' PIC X(33).
  1640            05 VALUE ' CLASS                           ' PIC X(33).
  1641            05 VALUE ' CLASS-ID                        ' PIC X(33).      UNIMPLEMENTED
  1642 GC0711     05 VALUE ' CLASSIFICATION                  ' PIC X(33).
  1643            05 VALUE 'VCLOSE                           ' PIC X(33).
  1644 GC1213     05 VALUE 'FCOB-CRT-STATUS                  ' PIC X(33).
  1645            05 VALUE ' CODE                            ' PIC X(33).
  1646            05 VALUE ' CODE-SET                        ' PIC X(33).
  1647            05 VALUE ' COL                             ' PIC X(33).
  1648            05 VALUE ' COLLATING                       ' PIC X(33).
  1649            05 VALUE ' COLS                            ' PIC X(33).
  1650            05 VALUE ' COLUMN                          ' PIC X(33).
  1651            05 VALUE ' COLUMNS                         ' PIC X(33).
  1652 GC1213     05 VALUE 'FCOMBINED-DATETIME               ' PIC X(33).
  1653            05 VALUE ' COMMA                           ' PIC X(33).
  1654            05 VALUE ' COMMAND-LINE                    ' PIC X(33).
  1655            05 VALUE 'VCOMMIT                          ' PIC X(33).
  1656            05 VALUE ' COMMON                          ' PIC X(33).
  1657            05 VALUE ' COMMUNICATION                   ' PIC X(33).      OBSOLETE
  1658            05 VALUE ' COMP                            ' PIC X(33).
  1659            05 VALUE ' COMP-1                          ' PIC X(33).
  1660            05 VALUE ' COMP-2                          ' PIC X(33).
  1661            05 VALUE ' COMP-3                          ' PIC X(33).
  1662            05 VALUE ' COMP-4                          ' PIC X(33).
  1663            05 VALUE ' COMP-5                          ' PIC X(33).
  1664            05 VALUE ' COMP-6                          ' PIC X(33).
  1665            05 VALUE ' COMP-X                          ' PIC X(33).
  1666            05 VALUE ' COMPUTATIONAL                   ' PIC X(33).
  1667            05 VALUE ' COMPUTATIONAL-1                 ' PIC X(33).
  1668            05 VALUE ' COMPUTATIONAL-2                 ' PIC X(33).
  1669            05 VALUE ' COMPUTATIONAL-3                 ' PIC X(33).
  1670            05 VALUE ' COMPUTATIONAL-4                 ' PIC X(33).
  1671            05 VALUE ' COMPUTATIONAL-5                 ' PIC X(33).
  1672            05 VALUE ' COMPUTATIONAL-X                 ' PIC X(33).
  1673            05 VALUE 'VCOMPUTE                         ' PIC X(33).
  1674 GC1213     05 VALUE 'FCONCATENATE                     ' PIC X(33).
  1675 GC0712     05 VALUE ' CONDITION                       ' PIC X(33).
  1676            05 VALUE 'KCONFIGURATION                   ' PIC X(33).
  1677            05 VALUE 'MCONSOLE                         ' PIC X(33).
  1678            05 VALUE ' CONSTANT                        ' PIC X(33).
  1679            05 VALUE ' CONTAINS                        ' PIC X(33).
  1680 GC0712     05 VALUE 'ACONTENT                         ' PIC X(33).
  1681            05 VALUE 'VCONTINUE                        ' PIC X(33).
  1682            05 VALUE ' CONTROL                         ' PIC X(33).

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 40

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 41
====== =========================================================================================
  1683            05 VALUE ' CONTROLS                        ' PIC X(33).
  1684 GC0711     05 VALUE ' CONVERSION                      ' PIC X(33).
  1685            05 VALUE 'KCONVERTING                      ' PIC X(33).
  1686            05 VALUE ' COPY                            ' PIC X(33).
  1687            05 VALUE ' CORR                            ' PIC X(33).
  1688            05 VALUE ' CORRESPONDING                   ' PIC X(33).
  1689 GC1213     05 VALUE 'FCOS                             ' PIC X(33).
  1690            05 VALUE 'KCOUNT                           ' PIC X(33).
  1691            05 VALUE ' CRT                             ' PIC X(33).
  1692            05 VALUE ' CRT-UNDER                       ' PIC X(33).
  1693            05 VALUE 'MCSP                             ' PIC X(33).
  1694            05 VALUE ' CURRENCY                        ' PIC X(33).
  1695 GC1213     05 VALUE 'FCURRENCY-SYMBOL                 ' PIC X(33).
  1696 GC1213     05 VALUE 'FCURRENT-DATE                    ' PIC X(33).
  1697            05 VALUE ' CURSOR                          ' PIC X(33).
  1698            05 VALUE ' CYCLE                           ' PIC X(33).
  1699            05 VALUE 'KDATA                            ' PIC X(33).
  1700            05 VALUE ' DATA-POINTER                    ' PIC X(33).      UNIMPLEMENTED
  1701            05 VALUE ' DATE                            ' PIC X(33).
  1702            05 VALUE ' DATE-COMPILED                   ' PIC X(33).      OBSOLETE
  1703            05 VALUE ' DATE-MODIFIED                   ' PIC X(33).      OBSOLETE
  1704 GC1213     05 VALUE 'FDATE-OF-INTEGER                 ' PIC X(33).
  1705 GC1213     05 VALUE 'FDATE-TO-YYYYMMDD                ' PIC X(33).
  1706            05 VALUE ' DATE-WRITTEN                    ' PIC X(33).      OBSOLETE
  1707            05 VALUE ' DAY                             ' PIC X(33).
  1708 GC1213     05 VALUE 'FDAY-OF-INTEGER                  ' PIC X(33).
  1709            05 VALUE ' DAY-OF-WEEK                     ' PIC X(33).
  1710 GC1213     05 VALUE 'IDAY-TO-YYYYDDD                  ' PIC X(33).
  1711            05 VALUE ' DE                              ' PIC X(33).
  1712 GC0712     05 VALUE 'IDEBUG-CONTENTS                  ' PIC X(33).
  1713 GC0712     05 VALUE 'IDEBUG-ITEM                      ' PIC X(33).
  1714 GC0712     05 VALUE 'IDEBUG-LINE                      ' PIC X(33).
  1715 GC0712     05 VALUE 'IDEBUG-NAME                      ' PIC X(33).
  1716 GC0712     05 VALUE 'IDEBUG-SUB-1                     ' PIC X(33).
  1717 GC0712     05 VALUE 'IDEBUG-SUB-2                     ' PIC X(33).
  1718 GC0712     05 VALUE 'IDEBUG-SUB-3                     ' PIC X(33).
  1719            05 VALUE ' DEBUGGING                       ' PIC X(33).
  1720            05 VALUE ' DECIMAL-POINT                   ' PIC X(33).
  1721            05 VALUE ' DECLARATIVES                    ' PIC X(33).
  1722            05 VALUE ' DEFAULT                         ' PIC X(33).
  1723            05 VALUE 'VDELETE                          ' PIC X(33).
  1724            05 VALUE ' DELIMITED                       ' PIC X(33).
  1725            05 VALUE 'KDELIMITER                       ' PIC X(33).
  1726            05 VALUE ' DEPENDING                       ' PIC X(33).
  1727            05 VALUE ' DESCENDING                      ' PIC X(33).
  1728            05 VALUE ' DESTINATION                     ' PIC X(33).      UNIMPLEMENTED
  1729            05 VALUE ' DETAIL                          ' PIC X(33).
  1730 GC0711     05 VALUE ' DISC                            ' PIC X(33).
  1731            05 VALUE ' DISK                            ' PIC X(33).
  1732            05 VALUE 'VDISPLAY                         ' PIC X(33).
  1733 GC1213     05 VALUE 'FDISPLAY-OF                      ' PIC X(33).      UNIMPLEMENTED
  1734            05 VALUE 'VDIVIDE                          ' PIC X(33).
  1735            05 VALUE 'KDIVISION                        ' PIC X(33).

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 41

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 42
====== =========================================================================================
  1736            05 VALUE 'KDOWN                            ' PIC X(33).
  1737            05 VALUE ' DUPLICATES                      ' PIC X(33).
  1738            05 VALUE ' DYNAMIC                         ' PIC X(33).
  1739 GC1213     05 VALUE 'FE                               ' PIC X(33).
  1740            05 VALUE ' EBCDIC                          ' PIC X(33).
  1741 GC0712     05 VALUE ' EC                              ' PIC X(33).
  1742            05 VALUE ' EGI                             ' PIC X(33).      OBSOLETE
  1743            05 VALUE 'VELSE                            ' PIC X(33).
  1744            05 VALUE ' EMI                             ' PIC X(33).      OBSOLETE
  1745            05 VALUE ' EMPTY-CHECK                     ' PIC X(33).
  1746            05 VALUE 'VENABLE                          ' PIC X(33).      OBSOLETE
  1747 GC0710     05 VALUE 'KEND                             ' PIC X(33).
  1748            05 VALUE ' END-ACCEPT                      ' PIC X(33).
  1749            05 VALUE ' END-ADD                         ' PIC X(33).
  1750            05 VALUE ' END-CALL                        ' PIC X(33).
  1751            05 VALUE ' END-CHAIN                       ' PIC X(33).      UNIMPLEMENTED
  1752            05 VALUE ' END-COMPUTE                     ' PIC X(33).
  1753            05 VALUE ' END-DELETE                      ' PIC X(33).
  1754            05 VALUE ' END-DISPLAY                     ' PIC X(33).
  1755            05 VALUE ' END-DIVIDE                      ' PIC X(33).
  1756            05 VALUE ' END-EVALUATE                    ' PIC X(33).
  1757            05 VALUE ' END-IF                          ' PIC X(33).
  1758            05 VALUE ' END-MULTIPLY                    ' PIC X(33).
  1759            05 VALUE ' END-OF-PAGE                     ' PIC X(33).
  1760            05 VALUE ' END-PERFORM                     ' PIC X(33).
  1761            05 VALUE ' END-READ                        ' PIC X(33).
  1762            05 VALUE ' END-RECEIVE                     ' PIC X(33).      OBSOLETE
  1763            05 VALUE ' END-RETURN                      ' PIC X(33).
  1764            05 VALUE ' END-REWRITE                     ' PIC X(33).
  1765            05 VALUE ' END-SEARCH                      ' PIC X(33).
  1766            05 VALUE ' END-START                       ' PIC X(33).
  1767            05 VALUE ' END-STRING                      ' PIC X(33).
  1768            05 VALUE ' END-SUBTRACT                    ' PIC X(33).
  1769            05 VALUE ' END-UNSTRING                    ' PIC X(33).
  1770            05 VALUE ' END-WRITE                       ' PIC X(33).
  1771            05 VALUE 'VENTRY                           ' PIC X(33).
  1772            05 VALUE ' ENTRY-CONVENTION                ' PIC X(33).      UNIMPLEMENTED
  1773            05 VALUE 'KENVIRONMENT                     ' PIC X(33).
  1774            05 VALUE ' ENVIRONMENT-NAME                ' PIC X(33).
  1775            05 VALUE ' ENVIRONMENT-VALUE               ' PIC X(33).
  1776            05 VALUE ' EO                              ' PIC X(33).      UNIMPLEMENTED
  1777            05 VALUE ' EOL                             ' PIC X(33).
  1778            05 VALUE ' EOP                             ' PIC X(33).
  1779            05 VALUE ' EOS                             ' PIC X(33).
  1780            05 VALUE ' EQUAL                           ' PIC X(33).
  1781            05 VALUE 'KEQUALS                          ' PIC X(33).
  1782            05 VALUE ' ERASE                           ' PIC X(33).
  1783            05 VALUE ' ERROR                           ' PIC X(33).
  1784            05 VALUE ' ESCAPE                          ' PIC X(33).
  1785            05 VALUE ' ESI                             ' PIC X(33).      OBSOLETE
  1786            05 VALUE 'VEVALUATE                        ' PIC X(33).
  1787            05 VALUE ' EXCEPTION                       ' PIC X(33).
  1788 GC1213     05 VALUE 'FEXCEPTION-FILE                  ' PIC X(33).

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 42

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 43
====== =========================================================================================
  1789 GC1213     05 VALUE 'FEXCEPTION-FILE-N                ' PIC X(33).      UNIMPLEMENTED
  1790 GC1213     05 VALUE 'FEXCEPTION-LOCATION              ' PIC X(33).
  1791 GC1213     05 VALUE 'FEXCEPTION-LOCATION-N            ' PIC X(33).      UNIMPLEMENTED
  1792            05 VALUE ' EXCEPTION-OBJECT                ' PIC X(33).      UNIMPLEMENTED
  1793 GC1213     05 VALUE 'FEXCEPTION-STATEMENT             ' PIC X(33).
  1794 GC1213     05 VALUE 'FEXCEPTION-STATUS                ' PIC X(33).
  1795            05 VALUE ' EXCLUSIVE                       ' PIC X(33).
  1796            05 VALUE 'VEXIT                            ' PIC X(33).
  1797 GC1213     05 VALUE 'FEXP                             ' PIC X(33).
  1798 GC1213     05 VALUE 'FEXP10                           ' PIC X(33).
  1799            05 VALUE ' EXPANDS                         ' PIC X(33).      UNIMPLEMENTED
  1800            05 VALUE ' EXTEND                          ' PIC X(33).
  1801            05 VALUE ' EXTERNAL                        ' PIC X(33).
  1802 GC1213     05 VALUE 'FFACTORIAL                       ' PIC X(33).
  1803            05 VALUE ' FACTORY                         ' PIC X(33).      UNIMPLEMENTED
  1804            05 VALUE ' FALSE                           ' PIC X(33).
  1805            05 VALUE 'KFD                              ' PIC X(33).
  1806            05 VALUE 'KFILE                            ' PIC X(33).
  1807            05 VALUE ' FILE-CONTROL                    ' PIC X(33).
  1808            05 VALUE ' FILE-ID                         ' PIC X(33).
  1809 GC1113     05 VALUE ' FILLER                          ' PIC X(33).
  1810            05 VALUE ' FINAL                           ' PIC X(33).
  1811            05 VALUE ' FIRST                           ' PIC X(33).
  1812 GC0712     05 VALUE ' FLOAT-BINARY-128                ' PIC X(33).      UNIMPLEMENTED
  1813 GC0712     05 VALUE ' FLOAT-BINARY-32                 ' PIC X(33).      UNIMPLEMENTED
  1814 GC0712     05 VALUE ' FLOAT-BINARY-64                 ' PIC X(33).      UNIMPLEMENTED
  1815            05 VALUE ' FLOAT-DECIMAL-16                ' PIC X(33).
  1816            05 VALUE ' FLOAT-DECIMAL-34                ' PIC X(33).
  1817            05 VALUE ' FLOAT-EXTENDED                  ' PIC X(33).      UNIMPLEMENTED
  1818 GC0712     05 VALUE ' FLOAT-INFINITY                  ' PIC X(33).      UNIMPLEMENTED
  1819            05 VALUE ' FLOAT-LONG                      ' PIC X(33).
  1820 GC0712     05 VALUE ' FLOAT-NOT-A-NUMBER              ' PIC X(33).      UNIMPLEMENTED
  1821            05 VALUE ' FLOAT-SHORT                     ' PIC X(33).
  1822            05 VALUE ' FOOTING                         ' PIC X(33).
  1823            05 VALUE ' FOR                             ' PIC X(33).
  1824            05 VALUE ' FOREGROUND-COLOR                ' PIC X(33).
  1825            05 VALUE ' FOREGROUND-COLOUR               ' PIC X(33).
  1826 GC0711     05 VALUE ' FOREVER                         ' PIC X(33).
  1827            05 VALUE ' FORMAT                          ' PIC X(33).      UNIMPLEMENTED
  1828 GC1213     05 VALUE 'FFORMATTED-CURRENT-DATE          ' PIC X(33).      UNIMPLEMENTED
  1829 GC1213     05 VALUE 'FFORMATTED-DATE                  ' PIC X(33).      UNIMPLEMENTED
  1830 GC1213     05 VALUE 'FFORMATTED-DATETIME              ' PIC X(33).      UNIMPLEMENTED
  1831 GC1213     05 VALUE 'FFORMATTED-TIME                  ' PIC X(33).      UNIMPLEMENTED
  1832            05 VALUE 'MFORMFEED                        ' PIC X(33).
  1833 GC1213     05 VALUE 'FFRACTION-PART                   ' PIC X(33).
  1834            05 VALUE 'VFREE                            ' PIC X(33).
  1835            05 VALUE ' FROM                            ' PIC X(33).
  1836            05 VALUE ' FULL                            ' PIC X(33).
  1837            05 VALUE ' FUNCTION                        ' PIC X(33).
  1838 GC0712     05 VALUE 'KFUNCTION-ID                     ' PIC X(33).
  1839            05 VALUE ' FUNCTION-POINTER                ' PIC X(33).      UNIMPLEMENTED
  1840            05 VALUE 'VGENERATE                        ' PIC X(33).
  1841            05 VALUE ' GET                             ' PIC X(33).      UNIMPLEMENTED

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 43

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 44
====== =========================================================================================
  1842            05 VALUE 'KGIVING                          ' PIC X(33).
  1843            05 VALUE ' GLOBAL                          ' PIC X(33).
  1844            05 VALUE 'VGO                              ' PIC X(33).
  1845            05 VALUE 'VGOBACK                          ' PIC X(33).
  1846            05 VALUE ' GREATER                         ' PIC X(33).
  1847            05 VALUE ' GROUP                           ' PIC X(33).
  1848            05 VALUE ' GROUP-USAGE                     ' PIC X(33).      UNIMPLEMENTED
  1849            05 VALUE ' HEADING                         ' PIC X(33).
  1850            05 VALUE ' HIGH-VALUE                      ' PIC X(33).
  1851            05 VALUE ' HIGH-VALUES                     ' PIC X(33).
  1852 GC1213     05 VALUE 'FHIGHEST-ALGEBRAIC               ' PIC X(33).
  1853            05 VALUE ' HIGHLIGHT                       ' PIC X(33).
  1854            05 VALUE ' I-O                             ' PIC X(33).
  1855            05 VALUE ' I-O-CONTROL                     ' PIC X(33).
  1856            05 VALUE 'KID                              ' PIC X(33).
  1857            05 VALUE 'KIDENTIFICATION                  ' PIC X(33).
  1858            05 VALUE 'VIF                              ' PIC X(33).
  1859            05 VALUE ' IGNORE                          ' PIC X(33).
  1860            05 VALUE ' IGNORING                        ' PIC X(33).
  1861            05 VALUE ' IMPLEMENTS                      ' PIC X(33).      UNIMPLEMENTED
  1862            05 VALUE ' IN                              ' PIC X(33).
  1863            05 VALUE ' INDEX                           ' PIC X(33).
  1864            05 VALUE 'KINDEXED                         ' PIC X(33).
  1865            05 VALUE ' INDICATE                        ' PIC X(33).
  1866            05 VALUE ' INDIRECT                        ' PIC X(33).      UNIMPLEMENTED
  1867            05 VALUE ' INHERITS                        ' PIC X(33).      UNIMPLEMENTED
  1868            05 VALUE ' INITIAL                         ' PIC X(33).
  1869            05 VALUE 'VINITIALISE                      ' PIC X(33).
  1870            05 VALUE ' INITIALISED                     ' PIC X(33).
  1871            05 VALUE 'VINITIALIZE                      ' PIC X(33).
  1872            05 VALUE ' INITIALIZED                     ' PIC X(33).
  1873            05 VALUE 'VINITIATE                        ' PIC X(33).
  1874            05 VALUE ' INPUT                           ' PIC X(33).
  1875            05 VALUE 'KINPUT-OUTPUT                    ' PIC X(33).
  1876            05 VALUE 'VINSPECT                         ' PIC X(33).
  1877            05 VALUE ' INSTALLATION                    ' PIC X(33).      OBSOLETE
  1878 GC1213     05 VALUE 'FINTEGER                         ' PIC X(33).
  1879 GC1213     05 VALUE 'FINTEGER-OF-BOOLEAN              ' PIC X(33).      UNIMPLEMENTED
  1880 GC1213     05 VALUE 'FINTEGER-OF-DATE                 ' PIC X(33).
  1881 GC1213     05 VALUE 'FINTEGER-OF-DAY                  ' PIC X(33).
  1882 GC1213     05 VALUE 'FINTEGER-OF-FORMATTED-DATE       ' PIC X(33).      UNIMPLEMENTED
  1883 GC1213     05 VALUE 'FINTEGER-PART                    ' PIC X(33).
  1884            05 VALUE ' INTERFACE                       ' PIC X(33).      UNIMPLEMENTED
  1885            05 VALUE ' INTERFACE-ID                    ' PIC X(33).      UNIMPLEMENTED
  1886            05 VALUE ' INTERMEDIATE                    ' PIC X(33).      UNIMPLEMENTED
  1887            05 VALUE 'KINTO                            ' PIC X(33).
  1888            05 VALUE ' INTRINSIC                       ' PIC X(33).
  1889            05 VALUE ' INVALID                         ' PIC X(33).
  1890            05 VALUE ' INVOKE                          ' PIC X(33).      UNIMPLEMENTED
  1891            05 VALUE ' IS                              ' PIC X(33).
  1892            05 VALUE ' JUST                            ' PIC X(33).
  1893            05 VALUE ' JUSTIFIED                       ' PIC X(33).
  1894            05 VALUE ' KEPT                            ' PIC X(33).

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 44

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 45
====== =========================================================================================
  1895            05 VALUE ' KEY                             ' PIC X(33).
  1896            05 VALUE ' KEYBOARD                        ' PIC X(33).
  1897            05 VALUE ' LABEL                           ' PIC X(33).
  1898            05 VALUE ' LAST                            ' PIC X(33).
  1899            05 VALUE ' LC_ALL                          ' PIC X(33).      UNIMPLEMENTED
  1900            05 VALUE ' LC_COLLATE                      ' PIC X(33).      UNIMPLEMENTED
  1901            05 VALUE ' LC_CTYPE                        ' PIC X(33).      UNIMPLEMENTED
  1902            05 VALUE ' LC_MESSAGES                     ' PIC X(33).      UNIMPLEMENTED
  1903            05 VALUE ' LC_MONETARY                     ' PIC X(33).      UNIMPLEMENTED
  1904            05 VALUE ' LC_NUMERIC                      ' PIC X(33).      UNIMPLEMENTED
  1905            05 VALUE ' LC_TIME                         ' PIC X(33).      UNIMPLEMENTED
  1906            05 VALUE ' LEADING                         ' PIC X(33).
  1907            05 VALUE ' LEFT                            ' PIC X(33).
  1908            05 VALUE ' LEFT-JUSTIFY                    ' PIC X(33).      UNIMPLEMENTED
  1909            05 VALUE ' LEFTLINE                        ' PIC X(33).
  1910 GC1213     05 VALUE 'FLENGTH                          ' PIC X(33).
  1911 GC1213     05 VALUE 'FLENGTH-AN                       ' PIC X(33).
  1912            05 VALUE ' LENGTH-CHECK                    ' PIC X(33).
  1913            05 VALUE ' LESS                            ' PIC X(33).
  1914            05 VALUE ' LIMIT                           ' PIC X(33).
  1915            05 VALUE ' LIMITS                          ' PIC X(33).
  1916            05 VALUE ' LINAGE                          ' PIC X(33).
  1917            05 VALUE 'ILINAGE-COUNTER                  ' PIC X(33).
  1918            05 VALUE ' LINE                            ' PIC X(33).
  1919 GC1213     05 VALUE 'ILINE-COUNTER                    ' PIC X(33).
  1920            05 VALUE ' LINES                           ' PIC X(33).
  1921            05 VALUE 'KLINKAGE                         ' PIC X(33).
  1922            05 VALUE 'KLOCAL-STORAGE                   ' PIC X(33).
  1923            05 VALUE ' LOCALE                          ' PIC X(33).
  1924 GC1213     05 VALUE 'FLOCALE-COMPARE                  ' PIC X(33).
  1925 GC1213     05 VALUE 'FLOCALE-DATE                     ' PIC X(33).
  1926 GC1213     05 VALUE 'FLOCALE-TIME                     ' PIC X(33).
  1927 GC1213     05 VALUE 'FLOCALE-TIME-FROM-SECONDS        ' PIC X(33).
  1928            05 VALUE ' LOCK                            ' PIC X(33).
  1929 GC1213     05 VALUE 'FLOG                             ' PIC X(33).
  1930 GC1213     05 VALUE 'FLOG10                           ' PIC X(33).
  1931            05 VALUE ' LOW-VALUE                       ' PIC X(33).
  1932            05 VALUE ' LOW-VALUES                      ' PIC X(33).
  1933            05 VALUE ' LOWER                           ' PIC X(33).
  1934 GC1213     05 VALUE 'FLOWER-CASE                      ' PIC X(33).
  1935 GC1213     05 VALUE 'FLOWEST-ALGEBRAIC                ' PIC X(33).
  1936            05 VALUE ' LOWLIGHT                        ' PIC X(33).
  1937            05 VALUE ' MANUAL                          ' PIC X(33).
  1938 GC1213     05 VALUE 'FMAX                             ' PIC X(33).
  1939 GC1213     05 VALUE 'FMEAN                            ' PIC X(33).
  1940 GC1213     05 VALUE 'FMEDIAN                          ' PIC X(33).
  1941            05 VALUE ' MEMORY                          ' PIC X(33).
  1942            05 VALUE 'VMERGE                           ' PIC X(33).
  1943            05 VALUE ' MESSAGE                         ' PIC X(33).      OBSOLETE
  1944            05 VALUE ' METHOD                          ' PIC X(33).      UNIMPLEMENTED
  1945            05 VALUE ' METHOD-ID                       ' PIC X(33).      UNIMPLEMENTED
  1946 GC1213     05 VALUE 'FMIDRANGE                        ' PIC X(33).
  1947 GC1213     05 VALUE 'FMIN                             ' PIC X(33).

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 45

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 46
====== =========================================================================================
  1948            05 VALUE ' MINUS                           ' PIC X(33).
  1949 GC1213     05 VALUE 'FMOD                             ' PIC X(33).
  1950            05 VALUE ' MODE                            ' PIC X(33).
  1951 GC1213     05 VALUE 'FMODULE-CALLER-ID                ' PIC X(33).
  1952 GC1213     05 VALUE 'FMODULE-DATE                     ' PIC X(33).
  1953 GC1213     05 VALUE 'FMODULE-FORMATTED-DATE           ' PIC X(33).
  1954 GC1213     05 VALUE 'FMODULE-ID                       ' PIC X(33).
  1955 GC1213     05 VALUE 'FMODULE-PATH                     ' PIC X(33).
  1956 GC1213     05 VALUE 'FMODULE-SOURCE                   ' PIC X(33).
  1957 GC1213     05 VALUE 'FMODULE-TIME                     ' PIC X(33).
  1958 GC1213     05 VALUE 'FMONETARY-DECIMAL-POINT          ' PIC X(33).
  1959 GC1213     05 VALUE 'FMONETARY-THOUSANDS-SEPARATOR    ' PIC X(33).
  1960            05 VALUE 'VMOVE                            ' PIC X(33).
  1961            05 VALUE ' MULTIPLE                        ' PIC X(33).
  1962            05 VALUE 'VMULTIPLY                        ' PIC X(33).
  1963 GC0711     05 VALUE ' NAME                            ' PIC X(33).
  1964            05 VALUE ' NATIONAL                        ' PIC X(33).
  1965            05 VALUE ' NATIONAL-EDITED                 ' PIC X(33).
  1966 GC1213     05 VALUE 'FNATIONAL-OF                     ' PIC X(33).      UNIMPLEMENTED
  1967            05 VALUE ' NATIVE                          ' PIC X(33).
  1968            05 VALUE ' NEAREST-AWAY-FROM-ZERO          ' PIC X(33).
  1969            05 VALUE ' NEAREST-EVEN                    ' PIC X(33).
  1970            05 VALUE ' NEAREST-TOWARD-ZERO             ' PIC X(33).
  1971            05 VALUE ' NEGATIVE                        ' PIC X(33).
  1972            05 VALUE ' NESTED                          ' PIC X(33).      UNIMPLEMENTED
  1973            05 VALUE 'VNEXT                            ' PIC X(33).
  1974            05 VALUE ' NO                              ' PIC X(33).
  1975            05 VALUE ' NO-ECHO                         ' PIC X(33).
  1976            05 VALUE ' NONE                            ' PIC X(33).      UNIMPLEMENTED
  1977            05 VALUE ' NORMAL                          ' PIC X(33).
  1978            05 VALUE ' NOT                             ' PIC X(33).
  1979            05 VALUE ' NULL                            ' PIC X(33).
  1980            05 VALUE ' NULLS                           ' PIC X(33).
  1981            05 VALUE ' NUMBER                          ' PIC X(33).
  1982            05 VALUE 'INUMBER-OF-CALL-PARAMETERS       ' PIC X(33).
  1983            05 VALUE ' NUMBERS                         ' PIC X(33).
  1984            05 VALUE ' NUMERIC                         ' PIC X(33).
  1985 GC1213     05 VALUE 'FNUMERIC-DECIMAL-POINT           ' PIC X(33).
  1986            05 VALUE ' NUMERIC-EDITED                  ' PIC X(33).
  1987 GC1213     05 VALUE 'FNUMERIC-THOUSANDS-SEPARATOR     ' PIC X(33).
  1988 GC1213     05 VALUE 'FNUMVAL                          ' PIC X(33).
  1989 GC1213     05 VALUE 'FNUMVAL-C                        ' PIC X(33).
  1990 GC1213     05 VALUE 'FNUMVAL-F                        ' PIC X(33).
  1991            05 VALUE ' OBJECT                          ' PIC X(33).      UNIMPLEMENTED
  1992            05 VALUE ' OBJECT-COMPUTER                 ' PIC X(33).
  1993            05 VALUE ' OBJECT-REFERENCE                ' PIC X(33).      UNIMPLEMENTED
  1994            05 VALUE ' OCCURS                          ' PIC X(33).
  1995            05 VALUE ' OF                              ' PIC X(33).
  1996            05 VALUE ' OFF                             ' PIC X(33).
  1997            05 VALUE ' OMITTED                         ' PIC X(33).
  1998            05 VALUE ' ON                              ' PIC X(33).
  1999            05 VALUE ' ONLY                            ' PIC X(33).
  2000            05 VALUE 'VOPEN                            ' PIC X(33).

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 46

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 47
====== =========================================================================================
  2001            05 VALUE ' OPTIONAL                        ' PIC X(33).
  2002            05 VALUE ' OPTIONS                         ' PIC X(33).      UNIMPLEMENTED
  2003            05 VALUE ' OR                              ' PIC X(33).
  2004 GC1213     05 VALUE 'FORD                             ' PIC X(33).
  2005 GC1213     05 VALUE 'FORD-MAX                         ' PIC X(33).
  2006 GC1213     05 VALUE 'FORD-MIN                         ' PIC X(33).
  2007            05 VALUE ' ORDER                           ' PIC X(33).
  2008            05 VALUE ' ORGANISATION                    ' PIC X(33).
  2009            05 VALUE ' ORGANIZATION                    ' PIC X(33).
  2010            05 VALUE ' OTHER                           ' PIC X(33).
  2011            05 VALUE ' OUTPUT                          ' PIC X(33).
  2012            05 VALUE ' OVERFLOW                        ' PIC X(33).
  2013            05 VALUE ' OVERLINE                        ' PIC X(33).
  2014            05 VALUE ' OVERRIDE                        ' PIC X(33).
  2015            05 VALUE ' PACKED-DECIMAL                  ' PIC X(33).
  2016            05 VALUE ' PADDING                         ' PIC X(33).
  2017            05 VALUE ' PAGE                            ' PIC X(33).
  2018 GC1213     05 VALUE 'IPAGE-COUNTER                    ' PIC X(33).
  2019            05 VALUE ' PARAGRAPH                       ' PIC X(33).
  2020            05 VALUE 'VPERFORM                         ' PIC X(33).
  2021            05 VALUE ' PF                              ' PIC X(33).
  2022            05 VALUE ' PH                              ' PIC X(33).
  2023 GC1213     05 VALUE 'FPI                              ' PIC X(33).
  2024            05 VALUE 'KPIC                             ' PIC X(33).
  2025            05 VALUE 'KPICTURE                         ' PIC X(33).
  2026            05 VALUE ' PLUS                            ' PIC X(33).
  2027            05 VALUE 'KPOINTER                         ' PIC X(33).
  2028            05 VALUE ' POSITION                        ' PIC X(33).
  2029            05 VALUE ' POSITIVE                        ' PIC X(33).
  2030            05 VALUE ' PREFIXED                        ' PIC X(33).      UNIMPLEMENTED
  2031            05 VALUE ' PRESENT                         ' PIC X(33).
  2032 GC1213     05 VALUE 'FPRESENT-VALUE                   ' PIC X(33).
  2033            05 VALUE ' PREVIOUS                        ' PIC X(33).
  2034            05 VALUE 'MPRINTER                         ' PIC X(33).
  2035            05 VALUE ' PRINTING                        ' PIC X(33).
  2036            05 VALUE 'KPROCEDURE                       ' PIC X(33).
  2037            05 VALUE ' PROCEDURE-POINTER               ' PIC X(33).
  2038            05 VALUE ' PROCEDURES                      ' PIC X(33).
  2039            05 VALUE ' PROCEED                         ' PIC X(33).
  2040            05 VALUE ' PROGRAM                         ' PIC X(33).
  2041            05 VALUE 'KPROGRAM-ID                      ' PIC X(33).
  2042            05 VALUE ' PROGRAM-POINTER                 ' PIC X(33).
  2043            05 VALUE ' PROHIBITED                      ' PIC X(33).
  2044            05 VALUE ' PROMPT                          ' PIC X(33).
  2045            05 VALUE ' PROPERTY                        ' PIC X(33).      UNIMPLEMENTED
  2046            05 VALUE ' PROTOTYPE                       ' PIC X(33).      UNIMPLEMENTED
  2047            05 VALUE ' PURGE                           ' PIC X(33).      OBSOLETE
  2048            05 VALUE ' QUEUE                           ' PIC X(33).      OBSOLETE
  2049            05 VALUE ' QUOTE                           ' PIC X(33).
  2050            05 VALUE ' QUOTES                          ' PIC X(33).
  2051            05 VALUE ' RAISE                           ' PIC X(33).      UNIMPLEMENTED
  2052            05 VALUE ' RAISING                         ' PIC X(33).      UNIMPLEMENTED
  2053 GC1213     05 VALUE 'FRANDOM                          ' PIC X(33).

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 47

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 48
====== =========================================================================================
  2054 GC1213     05 VALUE 'FRANGE                           ' PIC X(33).
  2055 GC1213     05 VALUE 'KRD                              ' PIC X(33).
  2056            05 VALUE 'VREAD                            ' PIC X(33).
  2057            05 VALUE 'VREADY                           ' PIC X(33).
  2058            05 VALUE 'VRECEIVE                         ' PIC X(33).      OBSOLETE
  2059            05 VALUE ' RECORD                          ' PIC X(33).
  2060            05 VALUE ' RECORDING                       ' PIC X(33).
  2061            05 VALUE ' RECORDS                         ' PIC X(33).
  2062            05 VALUE ' RECURSIVE                       ' PIC X(33).
  2063            05 VALUE 'KREDEFINES                       ' PIC X(33).
  2064            05 VALUE ' REEL                            ' PIC X(33).
  2065 GC0712     05 VALUE 'AREFERENCE                       ' PIC X(33).
  2066            05 VALUE ' REFERENCES                      ' PIC X(33).
  2067            05 VALUE ' RELATION                        ' PIC X(33).      UNIMPLEMENTED
  2068            05 VALUE ' RELATIVE                        ' PIC X(33).
  2069            05 VALUE 'VRELEASE                         ' PIC X(33).
  2070 GC1213     05 VALUE 'FREM                             ' PIC X(33).
  2071            05 VALUE ' REMAINDER                       ' PIC X(33).
  2072            05 VALUE ' REMARKS                         ' PIC X(33).      OBSOLETE
  2073            05 VALUE ' REMOVAL                         ' PIC X(33).
  2074            05 VALUE 'KRENAMES                         ' PIC X(33).
  2075            05 VALUE ' REPLACE                         ' PIC X(33).
  2076            05 VALUE 'KREPLACING                       ' PIC X(33).
  2077            05 VALUE 'KREPORT                          ' PIC X(33).
  2078            05 VALUE ' REPORTING                       ' PIC X(33).
  2079            05 VALUE ' REPORTS                         ' PIC X(33).
  2080            05 VALUE ' REPOSITORY                      ' PIC X(33).
  2081            05 VALUE ' REQUIRED                        ' PIC X(33).
  2082            05 VALUE ' RESERVE                         ' PIC X(33).
  2083            05 VALUE 'VRESET                           ' PIC X(33).
  2084            05 VALUE ' RESUME                          ' PIC X(33).      UNIMPLEMENTED
  2085            05 VALUE ' RETRY                           ' PIC X(33).      UNIMPLEMENTED
  2086            05 VALUE 'VRETURN                          ' PIC X(33).
  2087            05 VALUE 'IRETURN-CODE                     ' PIC X(33).
  2088            05 VALUE 'KRETURNING                       ' PIC X(33).
  2089 GC1213     05 VALUE 'FREVERSE                         ' PIC X(33).
  2090            05 VALUE ' REVERSE-VIDEO                   ' PIC X(33).
  2091            05 VALUE ' REVERSED                        ' PIC X(33).
  2092            05 VALUE ' REWIND                          ' PIC X(33).
  2093            05 VALUE 'VREWRITE                         ' PIC X(33).
  2094            05 VALUE ' RF                              ' PIC X(33).
  2095            05 VALUE ' RH                              ' PIC X(33).
  2096            05 VALUE ' RIGHT                           ' PIC X(33).
  2097            05 VALUE ' RIGHT-JUSTIFY                   ' PIC X(33).      UNIMPLEMENTED
  2098            05 VALUE 'VROLLBACK                        ' PIC X(33).
  2099            05 VALUE ' ROUNDED                         ' PIC X(33).
  2100            05 VALUE ' ROUNDING                        ' PIC X(33).      UNIMPLEMENTED
  2101            05 VALUE ' RUN                             ' PIC X(33).
  2102            05 VALUE ' SAME                            ' PIC X(33).
  2103            05 VALUE 'KSCREEN                          ' PIC X(33).
  2104            05 VALUE ' SCROLL                          ' PIC X(33).
  2105            05 VALUE 'KSD                              ' PIC X(33).
  2106            05 VALUE 'VSEARCH                          ' PIC X(33).

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 48

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 49
====== =========================================================================================
  2107            05 VALUE ' SECONDS                         ' PIC X(33).      UNIMPLEMENTED
  2108 GC1213     05 VALUE 'FSECONDS-FROM-FORMATTED-TIME     ' PIC X(33).
  2109 GC1213     05 VALUE 'FSECONDS-PAST-MIDNIGHT           ' PIC X(33).
  2110            05 VALUE 'KSECTION                         ' PIC X(33).
  2111            05 VALUE ' SECURE                          ' PIC X(33).
  2112            05 VALUE ' SECURITY                        ' PIC X(33).      OBSOLETE
  2113            05 VALUE ' SEGMENT                         ' PIC X(33).      OBSOLETE
  2114            05 VALUE ' SEGMENT-LIMIT                   ' PIC X(33).
  2115            05 VALUE ' SELECT                          ' PIC X(33).
  2116            05 VALUE ' SELF                            ' PIC X(33).      UNIMPLEMENTED
  2117            05 VALUE 'VSEND                            ' PIC X(33).      OBSOLETE
  2118            05 VALUE ' SENTENCE                        ' PIC X(33).
  2119            05 VALUE ' SEPARATE                        ' PIC X(33).
  2120            05 VALUE ' SEQUENCE                        ' PIC X(33).
  2121            05 VALUE ' SEQUENTIAL                      ' PIC X(33).
  2122            05 VALUE 'VSET                             ' PIC X(33).
  2123            05 VALUE ' SHARING                         ' PIC X(33).
  2124 GC1213     05 VALUE 'FSIGN                            ' PIC X(33).
  2125            05 VALUE ' SIGNED                          ' PIC X(33).
  2126            05 VALUE ' SIGNED-INT                      ' PIC X(33).
  2127            05 VALUE ' SIGNED-LONG                     ' PIC X(33).
  2128            05 VALUE ' SIGNED-SHORT                    ' PIC X(33).
  2129 GC1213     05 VALUE 'FSIN                             ' PIC X(33).
  2130            05 VALUE ' SIZE                            ' PIC X(33).
  2131            05 VALUE 'VSORT                            ' PIC X(33).
  2132            05 VALUE ' SORT-MERGE                      ' PIC X(33).
  2133            05 VALUE 'ISORT-RETURN                     ' PIC X(33).
  2134            05 VALUE ' SOURCE                          ' PIC X(33).
  2135            05 VALUE ' SOURCE-COMPUTER                 ' PIC X(33).
  2136            05 VALUE ' SOURCES                         ' PIC X(33).      UNIMPLEMENTED
  2137            05 VALUE ' SPACE                           ' PIC X(33).
  2138            05 VALUE ' SPACE-FILL                      ' PIC X(33).      UNIMPLEMENTED
  2139            05 VALUE ' SPACES                          ' PIC X(33).
  2140            05 VALUE ' SPECIAL-NAMES                   ' PIC X(33).
  2141 GC1213     05 VALUE 'FSQRT                            ' PIC X(33).
  2142            05 VALUE ' STANDARD                        ' PIC X(33).
  2143            05 VALUE ' STANDARD-1                      ' PIC X(33).
  2144            05 VALUE ' STANDARD-2                      ' PIC X(33).
  2145            05 VALUE ' STANDARD-BINARY                 ' PIC X(33).      UNIMPLEMENTED
  2146 GC1213     05 VALUE 'FSTANDARD-COMPARE                ' PIC X(33).      UNIMPLEMENTED
  2147            05 VALUE ' STANDARD-DECIMAL                ' PIC X(33).      UNIMPLEMENTED
  2148 GC1213     05 VALUE 'FSTANDARD-DEVIATION              ' PIC X(33).
  2149            05 VALUE 'VSTART                           ' PIC X(33).
  2150            05 VALUE ' STATEMENT                       ' PIC X(33).      UNIMPLEMENTED
  2151            05 VALUE ' STATIC                          ' PIC X(33).
  2152            05 VALUE ' STATUS                          ' PIC X(33).
  2153            05 VALUE ' STDCALL                         ' PIC X(33).
  2154            05 VALUE 'MSTDERR                          ' PIC X(33).
  2155            05 VALUE 'MSTDIN                           ' PIC X(33).
  2156            05 VALUE 'MSTDOUT                          ' PIC X(33).
  2157            05 VALUE ' STEP                            ' PIC X(33).
  2158            05 VALUE 'VSTOP                            ' PIC X(33).
  2159 GC1213     05 VALUE 'FSTORED-CHAR-LENGTH              ' PIC X(33).

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 49

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 50
====== =========================================================================================
  2160            05 VALUE 'VSTRING                          ' PIC X(33).
  2161            05 VALUE ' STRONG                          ' PIC X(33).      UNIMPLEMENTED
  2162            05 VALUE ' SUB-QUEUE-1                     ' PIC X(33).      OBSOLETE
  2163            05 VALUE ' SUB-QUEUE-2                     ' PIC X(33).      OBSOLETE
  2164            05 VALUE ' SUB-QUEUE-3                     ' PIC X(33).      OBSOLETE
  2165 GC1213     05 VALUE 'FSUBSTITUTE                      ' PIC X(33).
  2166 GC1213     05 VALUE 'FSUBSTITUTE-CASE                 ' PIC X(33).
  2167            05 VALUE 'VSUBTRACT                        ' PIC X(33).
  2168 GC1213     05 VALUE 'FSUM                             ' PIC X(33).
  2169            05 VALUE ' SUPER                           ' PIC X(33).      UNIMPLEMENTED
  2170            05 VALUE 'VSUPPRESS                        ' PIC X(33).
  2171            05 VALUE 'MSW0                             ' PIC X(33).
  2172            05 VALUE 'MSW1                             ' PIC X(33).
  2173            05 VALUE 'MSW10                            ' PIC X(33).
  2174            05 VALUE 'MSW11                            ' PIC X(33).
  2175            05 VALUE 'MSW12                            ' PIC X(33).
  2176            05 VALUE 'MSW13                            ' PIC X(33).
  2177            05 VALUE 'MSW14                            ' PIC X(33).
  2178            05 VALUE 'MSW15                            ' PIC X(33).
  2179            05 VALUE 'MSW2                             ' PIC X(33).
  2180            05 VALUE 'MSW3                             ' PIC X(33).
  2181            05 VALUE 'MSW4                             ' PIC X(33).
  2182            05 VALUE 'MSW5                             ' PIC X(33).
  2183            05 VALUE 'MSW6                             ' PIC X(33).
  2184            05 VALUE 'MSW7                             ' PIC X(33).
  2185            05 VALUE 'MSW8                             ' PIC X(33).
  2186            05 VALUE 'MSW9                             ' PIC X(33).
  2187            05 VALUE 'MSWITCH-0                        ' PIC X(33).
  2188            05 VALUE 'MSWITCH-1                        ' PIC X(33).
  2189            05 VALUE 'MSWITCH-10                       ' PIC X(33).
  2190            05 VALUE 'MSWITCH-11                       ' PIC X(33).
  2191            05 VALUE 'MSWITCH-12                       ' PIC X(33).
  2192            05 VALUE 'MSWITCH-13                       ' PIC X(33).
  2193            05 VALUE 'MSWITCH-14                       ' PIC X(33).
  2194            05 VALUE 'MSWITCH-15                       ' PIC X(33).
  2195            05 VALUE 'MSWITCH-2                        ' PIC X(33).
  2196            05 VALUE 'MSWITCH-3                        ' PIC X(33).
  2197            05 VALUE 'MSWITCH-4                        ' PIC X(33).
  2198            05 VALUE 'MSWITCH-5                        ' PIC X(33).
  2199            05 VALUE 'MSWITCH-6                        ' PIC X(33).
  2200            05 VALUE 'MSWITCH-7                        ' PIC X(33).
  2201            05 VALUE 'MSWITCH-8                        ' PIC X(33).
  2202            05 VALUE 'MSWITCH-9                        ' PIC X(33).
  2203            05 VALUE ' SYMBOL                          ' PIC X(33).      UNIMPLEMENTED
  2204            05 VALUE ' SYMBOLIC                        ' PIC X(33).
  2205            05 VALUE ' SYNC                            ' PIC X(33).
  2206            05 VALUE ' SYNCHRONISED                    ' PIC X(33).
  2207            05 VALUE ' SYNCHRONIZED                    ' PIC X(33).
  2208            05 VALUE 'MSYSERR                          ' PIC X(33).
  2209            05 VALUE 'MSYSIN                           ' PIC X(33).
  2210            05 VALUE 'MSYSIPT                          ' PIC X(33).
  2211            05 VALUE 'MSYSLIST                         ' PIC X(33).
  2212            05 VALUE 'MSYSLST                          ' PIC X(33).

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 50

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 51
====== =========================================================================================
  2213            05 VALUE 'MSYSOUT                          ' PIC X(33).
  2214            05 VALUE ' SYSTEM-DEFAULT                  ' PIC X(33).
  2215            05 VALUE ' TABLE                           ' PIC X(33).      UNIMPLEMENTED
  2216            05 VALUE 'KTALLYING                        ' PIC X(33).
  2217 GC1213     05 VALUE 'FTAN                             ' PIC X(33).
  2218            05 VALUE ' TAPE                            ' PIC X(33).
  2219            05 VALUE ' TERMINAL                        ' PIC X(33).      OBSOLETE
  2220            05 VALUE 'VTERMINATE                       ' PIC X(33).
  2221            05 VALUE ' TEST                            ' PIC X(33).
  2222 GC1213     05 VALUE 'FTEST-DATE-YYYYMMDD              ' PIC X(33).
  2223 GC1213     05 VALUE 'FTEST-DAY-YYYYDDD                ' PIC X(33).
  2224 GC1213     05 VALUE 'FTEST-FORMATTED-DATETIME         ' PIC X(33).      UNIMPLEMENTED
  2225 GC1213     05 VALUE 'FTEST-NUMVAL                     ' PIC X(33).
  2226 GC1213     05 VALUE 'FTEST-NUMVAL-C                   ' PIC X(33).
  2227 GC1213     05 VALUE 'FTEST-NUMVAL-F                   ' PIC X(33).
  2228            05 VALUE ' TEXT                            ' PIC X(33).      OBSOLETE
  2229            05 VALUE ' THAN                            ' PIC X(33).
  2230            05 VALUE ' THEN                            ' PIC X(33).
  2231            05 VALUE ' THROUGH                         ' PIC X(33).
  2232            05 VALUE ' THRU                            ' PIC X(33).
  2233            05 VALUE ' TIME                            ' PIC X(33).
  2234 GC0711     05 VALUE ' TIME-OUT                        ' PIC X(33).
  2235 GC0711     05 VALUE ' TIMEOUT                         ' PIC X(33).
  2236            05 VALUE ' TIMES                           ' PIC X(33).
  2237            05 VALUE 'KTO                              ' PIC X(33).
  2238            05 VALUE ' TOP                             ' PIC X(33).
  2239            05 VALUE ' TOWARD-GREATER                  ' PIC X(33).
  2240            05 VALUE ' TOWARD-LESSER                   ' PIC X(33).
  2241            05 VALUE ' TRAILING                        ' PIC X(33).
  2242            05 VALUE ' TRAILING-SIGN                   ' PIC X(33).      UNIMPLEMENTED
  2243            05 VALUE 'VTRANSFORM                       ' PIC X(33).
  2244 GC1213     05 VALUE 'FTRIM                            ' PIC X(33).
  2245            05 VALUE ' TRUE                            ' PIC X(33).
  2246            05 VALUE ' TRUNCATION                      ' PIC X(33).
  2247            05 VALUE ' TYPE                            ' PIC X(33).
  2248            05 VALUE ' TYPEDEF                         ' PIC X(33).      UNIMPLEMENTED
  2249            05 VALUE ' UCS-4                           ' PIC X(33).      UNIMPLEMENTED
  2250            05 VALUE ' UNDERLINE                       ' PIC X(33).
  2251            05 VALUE ' UNIT                            ' PIC X(33).
  2252            05 VALUE ' UNIVERSAL                       ' PIC X(33).      UNIMPLEMENTED
  2253            05 VALUE 'VUNLOCK                          ' PIC X(33).
  2254            05 VALUE ' UNSIGNED                        ' PIC X(33).
  2255            05 VALUE ' UNSIGNED-INT                    ' PIC X(33).
  2256            05 VALUE ' UNSIGNED-LONG                   ' PIC X(33).
  2257            05 VALUE ' UNSIGNED-SHORT                  ' PIC X(33).
  2258            05 VALUE 'VUNSTRING                        ' PIC X(33).
  2259            05 VALUE ' UNTIL                           ' PIC X(33).
  2260            05 VALUE 'KUP                              ' PIC X(33).
  2261            05 VALUE ' UPDATE                          ' PIC X(33).
  2262            05 VALUE ' UPON                            ' PIC X(33).
  2263            05 VALUE ' UPPER                           ' PIC X(33).
  2264 GC1213     05 VALUE 'FUPPER-CASE                      ' PIC X(33).
  2265            05 VALUE ' USAGE                           ' PIC X(33).

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 51

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 52
====== =========================================================================================
  2266            05 VALUE 'VUSE                             ' PIC X(33).
  2267 GC0711     05 VALUE ' USER                            ' PIC X(33).
  2268            05 VALUE ' USER-DEFAULT                    ' PIC X(33).
  2269            05 VALUE 'KUSING                           ' PIC X(33).
  2270            05 VALUE ' UTF-16                          ' PIC X(33).      UNIMPLEMENTED
  2271            05 VALUE ' UTF-8                           ' PIC X(33).      UNIMPLEMENTED
  2272            05 VALUE ' VAL-STATUS                      ' PIC X(33).      UNIMPLEMENTED
  2273            05 VALUE ' VALID                           ' PIC X(33).      UNIMPLEMENTED
  2274            05 VALUE ' VALIDATE                        ' PIC X(33).      UNIMPLEMENTED
  2275            05 VALUE ' VALIDATE-STATUS                 ' PIC X(33).      UNIMPLEMENTED
  2276 GC0712     05 VALUE 'AVALUE                           ' PIC X(33).
  2277            05 VALUE ' VALUES                          ' PIC X(33).
  2278 GC1213     05 VALUE 'FVARIANCE                        ' PIC X(33).
  2279            05 VALUE 'KVARYING                         ' PIC X(33).
  2280            05 VALUE ' VDISABLE                        ' PIC X(33).      UNIMPLEMENTED
  2281            05 VALUE ' WAIT                            ' PIC X(33).
  2282            05 VALUE 'VWHEN                            ' PIC X(33).
  2283 GC1213     05 VALUE 'FWHEN-COMPILED                   ' PIC X(33).
  2284            05 VALUE ' WITH                            ' PIC X(33).
  2285            05 VALUE ' WORDS                           ' PIC X(33).
  2286            05 VALUE 'KWORKING-STORAGE                 ' PIC X(33).
  2287            05 VALUE 'VWRITE                           ' PIC X(33).
  2288 GC1213     05 VALUE 'FYEAR-TO-YYYY                    ' PIC X(33).
  2289            05 VALUE ' YYYYDDD                         ' PIC X(33).
  2290            05 VALUE ' YYYYMMDD                        ' PIC X(33).
  2291            05 VALUE ' ZERO                            ' PIC X(33).
  2292            05 VALUE ' ZERO-FILL                       ' PIC X(33).      UNIMPLEMENTED
  2293            05 VALUE ' ZEROES                          ' PIC X(33).
  2294            05 VALUE ' ZEROS                           ' PIC X(33).
  2295        01  WS-Reserved-Word-Table-TXT REDEFINES WS-Reserved-Words-TXT.
  2296 GC1113     05 WS-Reserved-Word-TXT        OCCURS 754 TIMES
  2297                                                  ASCENDING KEY
  2298                                                      WS-RW-Word-TXT
  2299                                                  INDEXED WS-RW-IDX.
  2300               10 WS-RW-Type-CD                   PIC X(1).
  2301               10 WS-RW-Word-TXT                  PIC X(32).
  2302
  2303        01  WS-Runtime-Switches.
  2304 GC0710     05 WS-RS-Duplicate-CHR                PIC X(1).
  2305            05 WS-RS-In-Which-Pgm-CHR             PIC X(1).
  2306               88 WS-RS-In-Main-Module-BOOL       VALUE 'M'.
  2307               88 WS-RS-In-Copybook-BOOL          VALUE 'C'.
  2308            05 WS-RS-Last-Token-Ended-Sent-CHR    PIC X(1).
  2309            05 WS-RS-Processing-PICTURE-CHR       PIC X(1).
  2310            05 WS-RS-Token-Ended-Sentence-CHR     PIC X(1).
  2311 GC0710     05 WS-RS-Verb-Has-Been-Found-CHR      PIC X(1).
  2312
  2313        01  WS-Saved-Section-TXT                  PIC X(15).
  2314
  2315 GC1213 01  WS-Src-Dashes-TXT.
  2316 GC0712     05 VALUE '======'                     PIC X(7).
  2317 GC0712     05 VALUE ALL '='                      PIC X(128).
  2318

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 52

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 53
====== =========================================================================================
  2319        01  WS-Src-Detail-Line-TXT.
  2320            05 WS-SDL-Line-NUM                    PIC ZZZZZ9.
  2321            05 FILLER                             PIC X(1).
  2322            05 WS-SDL-Statement-TXT               PIC X(256).
  2323
  2324 GC1213 01  WS-Src-Hold-TXT                       PIC X(256).
  2325
  2326        01  WS-Src-Line-NUM                       PIC 9(6).
  2327
  2328 GC1213 01  WS-Src-Lines-NUM                      USAGE BINARY-LONG.
  2329
  2330        01  WS-Src-SUB                            USAGE BINARY-LONG.
  2331
  2332        01  WS-Tally-QTY                          USAGE BINARY-LONG.
  2333
  2334        01  WS-Temp-10-Chars-TXT                  PIC X(10).
  2335
  2336        01  WS-Temp-32-Chars-1-TXT                PIC X(32).
  2337
  2338 GC0711 01  WS-Temp-32-Chars-2-TXT                PIC X(32).
  2339
  2340 GC0711 01  WS-Temp-32-Chars-3-TXT                PIC X(32).
  2341
  2342 GC0712 01  WS-Temp-65-Chars-TXT                  PIC X(65).
  2343
  2344        01  WS-Temp-256-Chars-TXT                 PIC X(256).
  2345
  2346        01  WS-Today-DT                           PIC 9(8).
  2347
  2348        01  WS-Token-Curr-TXT                     PIC X(32).
  2349
  2350        01  WS-Token-Curr-Uc-TXT                  PIC X(32).
  2351
  2352        01  WS-Token-Prev-TXT                     PIC X(32).
  2353
  2354        01  WS-Token-Search-TXT                   PIC X(32).
  2355
  2356        01  WS-Token-Type-CD                      PIC X(1).
  2357 GC0712     88 WS-TT-Token-Is-Argtype-BOOL        VALUE 'A'.
  2358            88 WS-TT-Token-Is-EOF-BOOL            VALUE HIGH-VALUES.
  2359 GC1213     88 WS-TT-Token-Is-Function-BOOL       VALUE 'F'.
  2360            88 WS-TT-Token-Is-Identifier-BOOL     VALUE 'I'.
  2361 GC0712     88 WS-TT-Token-Is-Keyword-BOOL        VALUE 'K', 'V', 'A'.
  2362            88 WS-TT-Token-Is-Lit-Alpha-BOOL      VALUE 'L'.
  2363            88 WS-TT-Token-Is-Lit-Number-BOOL     VALUE 'N'.
  2364            88 WS-TT-Token-Is-Verb-BOOL           VALUE 'V'.
  2365 GC1213     88 WS-TT-Token-Is-Reserved-Wd-BOOL    VALUE ' ', 'F'.
  2366
  2367        01  WS-Usernames-QTY                      USAGE BINARY-LONG.
  2368
  2369        01  WS-Version-TXT                        PIC X(23).
  2370
  2371        01  WS-Xref-Detail-Line-TXT.

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 53

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 54
====== =========================================================================================
  2372            05 WS-XDL-Prog-ID-TXT                 PIC X(15).
  2373            05 FILLER                             PIC X(1).
  2374            05 WS-XDL-Token-TXT                   PIC X(32).
  2375            05 FILLER                             PIC X(1).
  2376            05 WS-XDL-Def-Line-NUM                PIC ZZZZZ9.
  2377            05 FILLER                             PIC X(1).
  2378            05 WS-XDL-Section-TXT                 PIC X(15).
  2379            05 FILLER                             PIC X(1).
  2380            05 WS-XDL-Reference-TXT               OCCURS 8 TIMES.
  2381               10 WS-XDL-Ref-Line-NUM             PIC ZZZZZ9.
  2382               10 WS-XDL-Ref-Flag-CHR             PIC X(1).
  2383               10 FILLER                          PIC X(1).
  2384
  2385 GC1213 01  WS-Xref-Lines-Per-Rec-NUM             PIC 9(1).
  2386
  2387        LINKAGE SECTION.
  2388 GC0712 01  L-Listing-Fn-TXT                      PIC X(256).
  2389
  2390        01  L-Src-Fn-TXT                          PIC X(256).
  2391
  2392 GC0712 01  L-OS-Type-CD                          PIC 9(1).
  2393
  2394 GC1213 01  L-LPP-NUM                             USAGE BINARY-LONG.
  2395
  2396 GC1213 01  L-LPP-Port-NUM                        USAGE BINARY-LONG.
  2397
  2398 GC1213 01  L-Listing-CD                          PIC 9(1).

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 54

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 55
====== =========================================================================================

  2400 GC0712 PROCEDURE DIVISION USING L-Listing-Fn-TXT
  2401 GC0712                          L-Src-Fn-TXT
  2402 GC0712                          L-OS-Type-CD
  2403 GC1213                          L-LPP-NUM
  2404 GC1213                          L-LPP-Port-NUM
  2405 GC1213                          L-Listing-CD.
  2406        000-Main SECTION.
  2407            PERFORM 100-Initialization
  2408 GC0712     OPEN OUTPUT F-Listing-FILE
  2409 GC0712     PERFORM 500-Produce-Source-Listing
  2410 GC0712     SORT F-Sort-Work-FILE
  2411 GC0712         ASCENDING KEY    F-SW-Prog-ID-TXT
  2412 GC0712                          F-SW-Token-Uc-TXT
  2413 GC0712                          F-SW-Ref-Line-NUM
  2414 GC0712         INPUT PROCEDURE  300-Tokenize-Source
  2415 GC0712         OUTPUT PROCEDURE 400-Produce-Xref-Listing
  2416 GC0712     CLOSE F-Listing-FILE
  2417            GOBACK
  2418            .

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 55

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 56
====== =========================================================================================

  2420       *>***************************************************************
  2421       *> Perform all program-wide initialization operations          **
  2422       *>***************************************************************
  2423        100-Initialization SECTION.
  2424 GC1213     MOVE 0 TO WS-Page-NUM
  2425 GC1213     MOVE 'N' TO WS-Suppress-FF-CHR
  2426 GC1213     MOVE SPACES TO WS-Copyright-TXT
  2427 GC1213     STRING 'GCic for '                  DELIMITED SIZE
  2428 GC1213            WS-OS-Type-TXT(L-OS-Type-CD) DELIMITED SPACE
  2429 GC1213            ' Copyright (C) 2009-2017, Gary L. Cutler, GPL'
  2430 GC1213                                         DELIMITED SIZE
  2431 GC1213            INTO WS-Copyright-TXT
  2432 GC1213     MOVE 'GNUCOBOL 2.2 20JUL2017' TO WS-Version-TXT
  2433            MOVE TRIM(L-Src-Fn-TXT,Leading) TO L-Src-Fn-TXT
  2434 GC1010     PERFORM VARYING WS-I-SUB FROM LENGTH(L-Src-Fn-TXT) BY -1 *> Locate last direct
       ory delimiter character so that the filename can be extracted
  2435 GC1010               UNTIL L-Src-Fn-TXT(WS-I-SUB:1) = '/' OR '\'
  2436 GC1010                     OR WS-I-SUB = 0
  2437 GC1010     END-PERFORM
  2438 GC1010     IF WS-I-SUB = 0
  2439 GC1010         MOVE UPPER-CASE(L-Src-Fn-TXT) TO WS-Main-Module-Name-TXT *> No directory d
       elimiter, whole thing is filename
  2440 GC1010     ELSE
  2441 GC1010         ADD 1 TO WS-I-SUB
  2442 GC1010         MOVE UPPER-CASE(L-Src-Fn-TXT(WS-I-SUB:))
  2443 GC1010           TO WS-Main-Module-Name-TXT *> Extract filename
  2444 GC1010     END-IF
  2445 GC1213     IF L-Listing-CD = 1 *> LANDSCAPE
  2446 GC1213         MOVE 8 TO WS-Xref-Lines-Per-Rec-NUM
  2447 GC1213         ACCEPT WS-Lines-Per-Page-Env-TXT
  2448 GC1213             FROM ENVIRONMENT 'GCXREF_LINES'
  2449 GC1213     ELSE *> PORTRAIT
  2450 GC1213         MOVE 3 TO WS-Xref-Lines-Per-Rec-NUM
  2451 GC1213         ACCEPT WS-Lines-Per-Page-Env-TXT
  2452 GC1213             FROM ENVIRONMENT 'GCXREF_LINES_PORT'
  2453 GC1213     END-IF
  2454            INSPECT L-Src-Fn-TXT REPLACING ALL '\' BY '/'
  2455            MOVE L-Src-Fn-TXT TO WS-Program-Path-TXT
  2456            CALL 'C$JUSTIFY' USING WS-Program-Path-TXT, 'Right'
  2457            MOVE LENGTH(TRIM(L-Src-Fn-TXT,Trailing)) TO WS-I-SUB
  2458            MOVE 0 TO WS-J-SUB
  2459            PERFORM UNTIL L-Src-Fn-TXT(WS-I-SUB:1) = '/'
  2460                       OR WS-I-SUB = 0
  2461                SUBTRACT 1 FROM WS-I-SUB
  2462                ADD      1 TO   WS-J-SUB
  2463            END-PERFORM
  2464            UNSTRING L-Src-Fn-TXT((WS-I-SUB + 1):WS-J-SUB)
  2465                DELIMITED BY '.'
  2466                INTO WS-Filename-TXT
  2467                     WS-Dummy-TXT
  2468 GC1010     STRING
  2469 GC1010            TRIM(WS-Filename-TXT,Trailing)

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 56

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 57
====== =========================================================================================
  2470 GC1010            '.i'
  2471 GC1010            DELIMITED SIZE
  2472 GC1010            INTO WS-Expanded-Src-Fn-TXT
  2473 GC1010     CALL 'CBL_CHECK_FILE_EXIST' USING WS-Expanded-Src-Fn-TXT
  2474 GC1010                                       WS-Temp-256-Chars-TXT
  2475 GC1010     IF RETURN-CODE NOT = 0
  2476 GC1010         GOBACK
  2477 GC1010     END-IF
  2478            IF WS-Lines-Per-Page-Env-TXT NOT = SPACES
  2479                MOVE NUMVAL(WS-Lines-Per-Page-Env-TXT)
  2480                  TO WS-Lines-Per-Page-NUM
  2481            ELSE
  2482 GC1213         IF L-LISTING-CD = 1 *> LANDSCAPE
  2483 GC1213             MOVE L-LPP-NUM TO WS-Lines-Per-Page-NUM
  2484 GC1213         ELSE                *> PORTRAIT
  2485 GC1213             MOVE L-LPP-Port-NUM TO WS-Lines-Per-Page-NUM
  2486 GC1213         END-IF
  2487            END-IF
  2488 GC1213     SUBTRACT 3 FROM WS-Lines-Per-Page-NUM *> FOR PAGE FOOTER
  2489            ACCEPT WS-Today-DT FROM DATE YYYYMMDD
  2490 GC1213     MOVE WS-Today-DT TO WS-Formatted-DT
  2491            MOVE '????????????...' TO WS-Curr-Prog-ID-TXT
  2492            MOVE SPACES            TO WS-Curr-Verb-TXT
  2493                                      WS-Held-Reference-TXT
  2494            .

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 57

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 58
====== =========================================================================================

  2496        300-Tokenize-Source SECTION.
  2497            OPEN INPUT F-Expanded-Src-FILE
  2498            MOVE SPACES TO F-Expanded-Src-REC
  2499            MOVE 256 TO WS-Src-SUB
  2500            MOVE 0 TO WS-Usernames-QTY
  2501                      WS-Curr-Line-NUM
  2502            MOVE '?' TO WS-Curr-Division-TXT
  2503 GC0710     MOVE 'N' TO WS-RS-Verb-Has-Been-Found-CHR
  2504            PERFORM FOREVER
  2505                PERFORM 310-Get-Token
  2506                IF WS-TT-Token-Is-EOF-BOOL
  2507                    EXIT PERFORM
  2508                END-IF
  2509                MOVE UPPER-CASE(WS-Token-Curr-TXT)
  2510                  TO WS-Token-Curr-Uc-TXT
  2511 GC1010         IF WS-TT-Token-Is-Keyword-BOOL
  2512 GC1010         OR WS-TT-Token-Is-Reserved-Wd-BOOL
  2513 GC1010             MOVE WS-Token-Curr-Uc-TXT TO WS-Token-Curr-TXT
  2514 GC1010         END-IF
  2515                IF WS-TT-Token-Is-Verb-BOOL
  2516                    MOVE WS-Token-Curr-Uc-TXT TO WS-Curr-Verb-TXT
  2517                                                 WS-Token-Prev-TXT
  2518                    IF WS-Held-Reference-TXT NOT = SPACES
  2519                        MOVE WS-Held-Reference-TXT TO F-Sort-Work-REC
  2520                        MOVE SPACES         TO WS-Held-Reference-TXT
  2521                        RELEASE F-Sort-Work-REC
  2522                    END-IF
  2523                END-IF
  2524                EVALUATE TRUE
  2525                WHEN WS-CD-In-IDENT-DIV-BOOL
  2526                    PERFORM 320-IDENTIFICATION-DIVISION
  2527                WHEN WS-CD-In-ENV-DIV-BOOL
  2528                    PERFORM 330-ENVIRONMENT-DIVISION
  2529                WHEN WS-CD-In-DATA-DIV-BOOL
  2530                    PERFORM 340-DATA-DIVISION
  2531                WHEN WS-CD-In-PROC-DIV-BOOL
  2532                    PERFORM 350-PROCEDURE-DIVISION
  2533                END-EVALUATE
  2534                IF WS-TT-Token-Is-Keyword-BOOL
  2535                    MOVE WS-Token-Curr-Uc-TXT TO WS-Token-Prev-TXT
  2536                END-IF
  2537                IF WS-RS-Token-Ended-Sentence-CHR = 'Y'
  2538                AND WS-Curr-Division-TXT NOT = 'I'
  2539                    MOVE SPACES TO WS-Token-Prev-TXT
  2540                                   WS-Curr-Verb-TXT
  2541                END-IF
  2542
  2543            END-PERFORM
  2544            CLOSE F-Expanded-Src-FILE
  2545            .

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 58

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 59
====== =========================================================================================

  2547        310-Get-Token SECTION.
  2548       *>-- Position to 1st non-blank character
  2549            MOVE WS-RS-Token-Ended-Sentence-CHR
  2550              TO WS-RS-Last-Token-Ended-Sent-CHR
  2551            MOVE 'N' TO WS-RS-Token-Ended-Sentence-CHR
  2552            PERFORM UNTIL F-Expanded-Src-REC(WS-Src-SUB : 1) NOT = SPACE
  2553                IF WS-Src-SUB > 255
  2554                    READ F-Expanded-Src-FILE AT END
  2555                        IF WS-Held-Reference-TXT NOT = SPACES
  2556                            MOVE WS-Held-Reference-TXT TO F-Sort-Work-REC
  2557                            MOVE SPACES         TO WS-Held-Reference-TXT
  2558                            RELEASE F-Sort-Work-REC
  2559                        END-IF
  2560                        SET WS-TT-Token-Is-EOF-BOOL TO TRUE
  2561                        MOVE 0 TO WS-Curr-Line-NUM
  2562                        EXIT SECTION
  2563                    END-READ
  2564 GC0712             IF F-ES-1-7-TXT NOT = '#DEFLIT'
  2565 GC0712                 IF F-ES-1-CHR = '#'
  2566 GC0712                     PERFORM 311-Control-Record
  2567 GC0712                 ELSE
  2568 GC0712                     PERFORM 312-Expanded-Src-Record
  2569 GC0712                 END-IF
  2570 GC0712             END-IF
  2571                ELSE
  2572                    ADD 1 TO WS-Src-SUB
  2573                END-IF
  2574            END-PERFORM
  2575       *>-- Extract token string
  2576            MOVE F-Expanded-Src-REC(WS-Src-SUB : 1)
  2577              TO WS-Curr-CHR
  2578            MOVE F-Expanded-Src-REC(WS-Src-SUB + 1: 1)
  2579              TO WS-Next-CHR
  2580            IF WS-Curr-CHR = '.'
  2581                ADD 1 TO WS-Src-SUB
  2582                MOVE WS-Curr-CHR TO WS-Token-Curr-TXT
  2583                MOVE SPACE TO WS-Token-Type-CD
  2584                MOVE 'Y' TO WS-RS-Token-Ended-Sentence-CHR
  2585                EXIT SECTION
  2586            END-IF
  2587            IF WS-Curr-Char-Is-Punct-BOOL
  2588            AND WS-Curr-CHR = '='
  2589            AND WS-Curr-Division-TXT = 'P'
  2590                ADD 1 TO WS-Src-SUB
  2591                MOVE 'EQUALS' TO WS-Token-Curr-TXT
  2592                MOVE 'K'      TO WS-Token-Type-CD
  2593                EXIT SECTION
  2594            END-IF
  2595            IF WS-Curr-Char-Is-Punct-BOOL *> So subscripts don't get flagged w/ '*'
  2596            AND WS-Curr-CHR = '('
  2597            AND WS-Curr-Division-TXT = 'P'
  2598                MOVE SPACES TO WS-Token-Prev-TXT

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 59

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 60
====== =========================================================================================
  2599            END-IF
  2600            IF WS-Curr-Char-Is-Punct-BOOL
  2601                ADD 1 TO WS-Src-SUB
  2602                MOVE WS-Curr-CHR TO WS-Token-Curr-TXT
  2603                MOVE SPACE TO WS-Token-Type-CD
  2604                EXIT SECTION
  2605            END-IF
  2606            IF WS-Curr-Char-Is-Quote-BOOL
  2607                ADD 1 TO WS-Src-SUB
  2608                UNSTRING F-Expanded-Src-REC
  2609                    DELIMITED BY WS-Curr-CHR
  2610                    INTO WS-Token-Curr-TXT
  2611                    WITH POINTER WS-Src-SUB
  2612                IF F-Expanded-Src-REC(WS-Src-SUB : 1) = '.'
  2613                    MOVE 'Y' TO WS-RS-Token-Ended-Sentence-CHR
  2614                    ADD 1 TO WS-Src-SUB
  2615                END-IF
  2616                SET WS-TT-Token-Is-Lit-Alpha-BOOL TO TRUE
  2617                EXIT SECTION
  2618            END-IF
  2619            IF WS-Curr-Char-Is-X-BOOL AND WS-Next-Char-Is-Quote-BOOL
  2620                ADD 2 TO WS-Src-SUB
  2621                UNSTRING F-Expanded-Src-REC
  2622                    DELIMITED BY WS-Next-CHR
  2623                    INTO WS-Token-Curr-TXT
  2624                    WITH POINTER WS-Src-SUB
  2625                IF F-Expanded-Src-REC(WS-Src-SUB : 1) = '.'
  2626                    MOVE 'Y' TO WS-RS-Token-Ended-Sentence-CHR
  2627                    ADD 1 TO WS-Src-SUB
  2628                END-IF
  2629                SET WS-TT-Token-Is-Lit-Number-BOOL TO TRUE
  2630                EXIT SECTION
  2631            END-IF
  2632            IF WS-Curr-Char-Is-Z-BOOL AND WS-Next-Char-Is-Quote-BOOL
  2633                ADD 2 TO WS-Src-SUB
  2634                UNSTRING F-Expanded-Src-REC
  2635                    DELIMITED BY WS-Next-CHR
  2636                    INTO WS-Token-Curr-TXT
  2637                    WITH POINTER WS-Src-SUB
  2638                IF F-Expanded-Src-REC(WS-Src-SUB : 1) = '.'
  2639                    MOVE 'Y' TO WS-RS-Token-Ended-Sentence-CHR
  2640                    ADD 1 TO WS-Src-SUB
  2641                END-IF
  2642                SET WS-TT-Token-Is-Lit-Alpha-BOOL TO TRUE
  2643                EXIT SECTION
  2644            END-IF
  2645            IF WS-RS-Processing-PICTURE-CHR = 'Y'
  2646                UNSTRING F-Expanded-Src-REC
  2647                    DELIMITED BY '. ' OR ' '
  2648                    INTO WS-Token-Curr-TXT
  2649                    DELIMITER IN WS-Delim-TXT
  2650                    WITH POINTER WS-Src-SUB
  2651                IF WS-Delim-TXT = '. '

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 60

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 61
====== =========================================================================================
  2652                    MOVE 'Y' TO WS-RS-Token-Ended-Sentence-CHR
  2653                    ADD 1 TO WS-Src-SUB
  2654                END-IF
  2655                IF UPPER-CASE(WS-Token-Curr-TXT) = 'IS'
  2656                    MOVE SPACE TO WS-Token-Type-CD
  2657                    EXIT SECTION
  2658                ELSE
  2659                    MOVE 'N' TO WS-RS-Processing-PICTURE-CHR
  2660                    MOVE SPACE TO WS-Token-Type-CD
  2661                    EXIT SECTION
  2662                END-IF
  2663            END-IF
  2664            UNSTRING F-Expanded-Src-REC
  2665                DELIMITED BY '. ' OR ' ' OR '=' OR '(' OR ')' OR '*'
  2666                                  OR '/' OR '&' OR ';' OR ',' OR '<'
  2667                                  OR '>' OR ':'
  2668                INTO WS-Token-Curr-TXT
  2669                DELIMITER IN WS-Delim-TXT
  2670                WITH POINTER WS-Src-SUB
  2671            IF WS-Delim-TXT = '. '
  2672                MOVE 'Y' TO WS-RS-Token-Ended-Sentence-CHR
  2673            END-IF
  2674            IF WS-Delim-TXT NOT = '. ' AND ' '
  2675                SUBTRACT 1 FROM WS-Src-SUB
  2676            END-IF
  2677       *>-- Classify Token
  2678            MOVE UPPER-CASE(WS-Token-Curr-TXT) TO WS-Token-Search-TXT
  2679            IF WS-Token-Search-TXT = 'EQUAL' OR 'EQUALS'
  2680                MOVE 'EQUALS' TO WS-Token-Curr-TXT
  2681                MOVE 'K'      TO WS-Token-Type-CD
  2682                EXIT SECTION
  2683            END-IF
  2684            SEARCH ALL WS-Reserved-Word-TXT
  2685                WHEN WS-RW-Word-TXT (WS-RW-IDX) = WS-Token-Search-TXT
  2686                    MOVE WS-RW-Type-CD (WS-RW-IDX) TO WS-Token-Type-CD
  2687 GC0710             IF WS-TT-Token-Is-Verb-BOOL
  2688 GC0710                 MOVE 'Y' TO WS-RS-Verb-Has-Been-Found-CHR
  2689 GC0710             END-IF
  2690                    EXIT SECTION
  2691            END-SEARCH
  2692       *>-- Not a reserved word, must be a user name
  2693            SET WS-TT-Token-Is-Identifier-BOOL TO TRUE
  2694            PERFORM 313-Check-For-Numeric-Token
  2695            IF WS-TT-Token-Is-Lit-Number-BOOL
  2696                IF  (WS-RS-Last-Token-Ended-Sent-CHR = 'Y')
  2697                AND (WS-Curr-Division-TXT = 'D')
  2698                    MOVE 'LEVEL #' TO WS-Token-Curr-TXT
  2699                    MOVE 'K'       TO WS-Token-Type-CD
  2700                    EXIT SECTION
  2701                ELSE
  2702                    EXIT SECTION
  2703                END-IF
  2704            END-IF

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 61

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 62
====== =========================================================================================
  2705            .

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 62

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 63
====== =========================================================================================

  2707        311-Control-Record SECTION.
  2708            UNSTRING F-ES-2-256-TXT-256
  2709                DELIMITED BY '"'
  2710                INTO WS-Temp-10-Chars-TXT
  2711                     WS-Temp-256-Chars-TXT
  2712                     WS-Dummy-TXT
  2713            INSPECT WS-Temp-10-Chars-TXT REPLACING ALL '"' BY SPACE
  2714 GC0712     IF WS-Temp-10-Chars-TXT(1:4) = 'line'
  2715 GC0712         MOVE SPACES TO WS-Temp-10-Chars-TXT(1:4)
  2716 GC0712     END-IF
  2717            COMPUTE WS-I-SUB = NUMVAL(WS-Temp-10-Chars-TXT) - 1
  2718 GC1010     IF UPPER-CASE(TRIM(WS-Temp-256-Chars-TXT,Trailing)) =
  2719 GC1010        TRIM(WS-Main-Module-Name-TXT)
  2720                MOVE WS-I-SUB TO WS-Curr-Line-NUM
  2721                SET WS-RS-In-Main-Module-BOOL TO TRUE
  2722                IF WS-Saved-Section-TXT NOT = SPACES
  2723                    MOVE WS-Saved-Section-TXT TO WS-Curr-Section-TXT
  2724                END-IF
  2725            ELSE
  2726                SET WS-RS-In-Copybook-BOOL TO TRUE
  2727                IF WS-Saved-Section-TXT = SPACES
  2728                    MOVE WS-Curr-Section-TXT TO WS-Saved-Section-TXT
  2729                END-IF
  2730                MOVE LENGTH(TRIM(WS-Temp-256-Chars-TXT,Trailing))
  2731                  TO WS-I-SUB
  2732                MOVE 0 TO WS-J-SUB
  2733                PERFORM UNTIL WS-Temp-256-Chars-TXT(WS-I-SUB:1) = '/'
  2734                           OR WS-I-SUB = 0
  2735                    SUBTRACT 1 FROM WS-I-SUB
  2736                    ADD      1 TO   WS-J-SUB
  2737                END-PERFORM
  2738                UNSTRING WS-Temp-256-Chars-TXT((WS-I-SUB + 1):WS-J-SUB)
  2739                    DELIMITED BY '.'
  2740                    INTO WS-Filename-TXT
  2741                         WS-Dummy-TXT
  2742                MOVE '['      TO WS-CS-1-CHR
  2743                MOVE WS-Filename-TXT TO WS-CS-2-14-TXT
  2744                IF WS-CS-11-14-TXT NOT = SPACES
  2745                    MOVE '...' TO WS-CS-11-14-TXT
  2746                END-IF
  2747                MOVE ']'      TO WS-CS-15-CHR
  2748            END-IF
  2749            MOVE SPACES TO F-Expanded-Src-REC *> Force another READ
  2750            MOVE 256    TO WS-Src-SUB
  2751            .

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 63

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 64
====== =========================================================================================

  2753        312-Expanded-Src-Record SECTION.
  2754 GC0314     IF F-Expanded-Src-REC(1:1) = SPACE
  2755 GC0314         MOVE 2 TO WS-Src-SUB
  2756 GC0314     ELSE
  2757 GC0314         MOVE 1 TO WS-Src-SUB
  2758 GC0314     END-IF
  2759            IF WS-RS-In-Main-Module-BOOL
  2760                ADD 1 To WS-Curr-Line-NUM
  2761            END-IF
  2762            .

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 64

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 65
====== =========================================================================================

  2764        313-Check-For-Numeric-Token SECTION.
  2765            MOVE WS-Token-Curr-TXT TO WS-Temp-32-Chars-1-TXT
  2766            INSPECT WS-Temp-32-Chars-1-TXT
  2767 GC0711         CONVERTING '0123456789' TO SPACES
  2768 GC0711     IF WS-Temp-32-Chars-1-TXT = SPACES                      *> Simple Unsigned Int
       eger
  2769                SET WS-TT-Token-Is-Lit-Number-BOOL TO TRUE
  2770                EXIT SECTION
  2771            END-IF
  2772 GC0711     MOVE SPACES TO WS-Temp-32-Chars-2-TXT
  2773 GC0711                    WS-Temp-32-Chars-3-TXT
  2774 GC0711                    WS-Dummy-TXT
  2775 GC0711     UNSTRING WS-Temp-32-Chars-1-TXT
  2776 GC0711         DELIMITED BY 'e' OR 'E'
  2777 GC0711         INTO WS-Temp-32-Chars-2-TXT
  2778 GC0711              WS-Temp-32-Chars-3-TXT
  2779 GC0711              WS-Dummy-TXT
  2780 GC0711     IF WS-Dummy-TXT NOT = SPACES                    *> More than one 'E' - Not Num
       eric
  2781 GC0711         EXIT SECTION
  2782 GC0711     END-IF
  2783 GC0711     IF WS-Temp-32-Chars-2-TXT(1:1) = '+' OR '-'
  2784 GC0711         MOVE SPACE TO WS-Temp-32-Chars-2-TXT(1:1)
  2785 GC0711     END-IF
  2786 GC0711     IF WS-Temp-32-Chars-3-TXT(1:1) = '+' OR '-'
  2787 GC0711         MOVE SPACE TO WS-Temp-32-Chars-3-TXT(1:1)
  2788 GC0711     END-IF
  2789            MOVE 0 TO WS-Tally-QTY
  2790 GC0711     INSPECT WS-Temp-32-Chars-2-TXT
  2791                TALLYING WS-Tally-QTY FOR ALL '.'
  2792            IF WS-Tally-QTY = 1
  2793 GC0711         INSPECT WS-Temp-32-Chars-2-TXT REPLACING ALL '.' BY SPACE
  2794            END-IF
  2795 GC0711     INSPECT WS-Temp-32-Chars-3-TXT
  2796 GC0711         TALLYING WS-Tally-QTY FOR ALL '.'
  2797 GC0711     IF WS-Tally-QTY = 1
  2798 GC0711         INSPECT WS-Temp-32-Chars-3-TXT REPLACING ALL '.' BY SPACE
  2799 GC0711     END-IF
  2800 GC0711     IF WS-Temp-32-Chars-2-TXT = SPACES AND WS-Temp-32-Chars-3-TXT = SPACES
  2801                SET WS-TT-Token-Is-Lit-Number-BOOL TO TRUE
  2802                EXIT SECTION
  2803            END-IF
  2804            .

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 65

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 66
====== =========================================================================================

  2806        320-IDENTIFICATION-DIVISION SECTION.
  2807 GC0712     IF WS-TT-Token-Is-Argtype-BOOL
  2808 GC0712         SET WS-TT-Token-Is-Reserved-Wd-BOOL TO TRUE
  2809 GC0712     END-IF
  2810 GC0710     MOVE 'N' TO WS-RS-Verb-Has-Been-Found-CHR
  2811            IF WS-TT-Token-Is-Keyword-BOOL
  2812            AND WS-Token-Curr-TXT = 'DIVISION'
  2813                MOVE WS-Token-Prev-TXT TO WS-Curr-Division-TXT
  2814                EXIT SECTION
  2815            END-IF
  2816 GC0712     IF WS-Token-Prev-TXT = 'PROGRAM-ID' OR 'FUNCTION-ID'
  2817                MOVE SPACES TO WS-Token-Prev-TXT
  2818                MOVE WS-Token-Curr-TXT TO WS-Curr-Prog-ID-TXT
  2819 GC0712         IF WS-CPI-16-CHR NOT = SPACES
  2820                    MOVE '...' TO WS-CPI-13-15-TXT
  2821                END-IF
  2822                EXIT SECTION
  2823            END-IF
  2824            .

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 66

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 67
====== =========================================================================================

  2826        330-ENVIRONMENT-DIVISION SECTION.
  2827 GC0712     IF WS-TT-Token-Is-Argtype-BOOL
  2828 GC0712         SET WS-TT-Token-Is-Reserved-Wd-BOOL TO TRUE
  2829 GC0712     END-IF
  2830            IF WS-TT-Token-Is-Keyword-BOOL
  2831            AND WS-Token-Curr-TXT = 'DIVISION'
  2832                MOVE WS-Token-Prev-TXT TO WS-Curr-Division-TXT
  2833                EXIT SECTION
  2834            END-IF
  2835            IF WS-TT-Token-Is-Keyword-BOOL
  2836            AND WS-Token-Curr-TXT = 'SECTION'
  2837                MOVE WS-Token-Prev-TXT TO WS-Curr-Section-TXT
  2838                EXIT SECTION
  2839            END-IF
  2840            IF WS-TT-Token-Is-Identifier-BOOL
  2841 GC0712         IF WS-Token-Prev-TXT = 'FUNCTION'
  2842 GC0712             PERFORM 360-Release-Def
  2843 GC0712         ELSE
  2844 GC0712             PERFORM 361-Release-Ref
  2845 GC0712         END-IF
  2846            END-IF
  2847 GC1213     IF WS-TT-Token-Is-Function-BOOL
  2848 GC1213         PERFORM 361-Release-Ref
  2849 GC1213     END-IF
  2850            .

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 67

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 68
====== =========================================================================================

  2852        340-DATA-DIVISION SECTION.
  2853 GC0712     IF WS-TT-Token-Is-Argtype-BOOL
  2854 GC0712         SET WS-TT-Token-Is-Reserved-Wd-BOOL TO TRUE
  2855 GC0712     END-IF
  2856            IF WS-TT-Token-Is-Keyword-BOOL
  2857            AND WS-Token-Curr-TXT = 'DIVISION'
  2858                MOVE WS-Token-Prev-TXT TO WS-Curr-Division-TXT
  2859                EXIT SECTION
  2860            END-IF
  2861            IF WS-TT-Token-Is-Keyword-BOOL
  2862            AND WS-Token-Curr-TXT = 'SECTION'
  2863                MOVE WS-Token-Prev-TXT TO WS-Curr-Section-TXT
  2864                EXIT SECTION
  2865            END-IF
  2866            IF  (WS-Token-Curr-TXT = 'PIC' OR 'PICTURE')
  2867            AND (WS-TT-Token-Is-Keyword-BOOL)
  2868                MOVE 'Y' TO WS-RS-Processing-PICTURE-CHR
  2869                EXIT SECTION
  2870            END-IF
  2871 GC0710     IF WS-TT-Token-Is-Reserved-Wd-BOOL
  2872 GC0710     AND WS-Token-Prev-TXT = 'LEVEL #'
  2873 GC0710         MOVE SPACES TO WS-Token-Prev-TXT
  2874 GC0710         EXIT SECTION
  2875 GC0710     END-IF
  2876            IF WS-TT-Token-Is-Identifier-BOOL
  2877                EVALUATE WS-Token-Prev-TXT
  2878                WHEN 'FD'
  2879                    PERFORM 360-Release-Def
  2880                    MOVE SPACES TO WS-Token-Prev-TXT
  2881 GC1213         WHEN 'RD'
  2882 GC1213             PERFORM 360-Release-Def
  2883 GC1213             MOVE SPACES TO WS-Token-Prev-TXT
  2884                WHEN 'SD'
  2885                    PERFORM 360-Release-Def
  2886                    MOVE SPACES TO WS-Token-Prev-TXT
  2887                WHEN 'LEVEL #'
  2888                    PERFORM 360-Release-Def
  2889                    MOVE SPACES TO WS-Token-Prev-TXT
  2890                WHEN 'INDEXED'
  2891                    PERFORM 360-Release-Def
  2892                    MOVE SPACES TO WS-Token-Prev-TXT
  2893                WHEN 'USING'
  2894                    PERFORM 362-Release-Upd
  2895                    MOVE SPACES TO WS-Token-Prev-TXT
  2896                WHEN 'INTO'
  2897                    PERFORM 362-Release-Upd
  2898                    MOVE SPACES TO WS-Token-Prev-TXT
  2899                WHEN OTHER
  2900 GC1213             IF WS-Token-Curr-TXT NOT = 'SUM'
  2901 GC1213                 PERFORM 361-Release-Ref
  2902 GC1213             END-IF
  2903                END-EVALUATE

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 68

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 69
====== =========================================================================================
  2904                EXIT SECTION
  2905            END-IF
  2906            .

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 69

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 70
====== =========================================================================================

  2908        350-PROCEDURE-DIVISION SECTION.
  2909            IF WS-Curr-Section-TXT NOT = 'PROCEDURE'
  2910                MOVE 'PROCEDURE' TO WS-Curr-Section-TXT
  2911            END-IF
  2912 GC0710     IF WS-Token-Curr-Uc-TXT = 'PROGRAM'
  2913 GC0710     AND WS-Token-Prev-TXT = 'END'
  2914 GC0710         MOVE '?' TO WS-Curr-Division-TXT
  2915 GC0710         EXIT SECTION
  2916 GC0710     END-IF
  2917            IF WS-TT-Token-Is-Keyword-BOOL
  2918            AND WS-Token-Curr-TXT = 'DIVISION'
  2919                MOVE WS-Token-Prev-TXT TO WS-Curr-Division-TXT
  2920                EXIT SECTION
  2921            END-IF
  2922 GC0313     IF WS-TT-Token-Is-Identifier-BOOL
  2923 GC0313     AND WS-Token-Prev-TXT = SPACES
  2924 GC0313     AND WS-Curr-Verb-TXT = SPACES
  2925 GC0313*> ----- Definition of a Paragraph or Section
  2926 GC0313         PERFORM 360-Release-Def
  2927 GC0313         MOVE SPACES TO WS-Token-Prev-TXT
  2928 GC0313         EXIT SECTION
  2929 GC0313     END-IF
  2930            IF NOT WS-TT-Token-Is-Identifier-BOOL
  2931                EXIT SECTION
  2932            END-IF
  2933            EVALUATE WS-Curr-Verb-TXT
  2934            WHEN 'ACCEPT'
  2935                PERFORM 351-ACCEPT
  2936            WHEN 'ADD'
  2937                PERFORM 351-ADD
  2938            WHEN 'ALLOCATE'
  2939                PERFORM 351-ALLOCATE
  2940            WHEN 'CALL'
  2941                PERFORM 351-CALL
  2942            WHEN 'COMPUTE'
  2943                PERFORM 351-COMPUTE
  2944            WHEN 'DIVIDE'
  2945                PERFORM 351-DIVIDE
  2946            WHEN 'FREE'
  2947                PERFORM 351-FREE
  2948 GC1213     WHEN 'GENERATE'
  2949 GC1213         PERFORM 351-GENERATE
  2950            WHEN 'INITIALIZE'
  2951                PERFORM 351-INITIALIZE
  2952 GC1213     WHEN 'INITIATE'
  2953 GC1213         PERFORM 351-GENERATE
  2954            WHEN 'INSPECT'
  2955                PERFORM 351-INSPECT
  2956            WHEN 'MOVE'
  2957                PERFORM 351-MOVE
  2958            WHEN 'MULTIPLY'
  2959                PERFORM 351-MULTIPLY

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 70

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 71
====== =========================================================================================
  2960            WHEN 'PERFORM'
  2961                PERFORM 351-PERFORM
  2962            WHEN 'SET'
  2963                PERFORM 351-SET
  2964            WHEN 'STRING'
  2965                PERFORM 351-STRING
  2966            WHEN 'SUBTRACT'
  2967                PERFORM 351-SUBTRACT
  2968 GC1213     WHEN 'TERMINATE'
  2969 GC1213         PERFORM 351-GENERATE
  2970            WHEN 'TRANSFORM'
  2971                PERFORM 351-TRANSFORM
  2972            WHEN 'UNSTRING'
  2973                PERFORM 351-UNSTRING
  2974            WHEN OTHER
  2975                PERFORM 361-Release-Ref
  2976            END-EVALUATE
  2977            .

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 71

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 72
====== =========================================================================================

  2979        351-ACCEPT SECTION.
  2980            EVALUATE WS-Token-Prev-TXT
  2981            WHEN 'ACCEPT'
  2982                PERFORM 362-Release-Upd
  2983                MOVE SPACES TO WS-Token-Prev-TXT
  2984            WHEN OTHER
  2985                PERFORM 361-Release-Ref
  2986            END-EVALUATE
  2987            .
  2988
  2989        351-ADD SECTION.
  2990            EVALUATE WS-Token-Prev-TXT
  2991            WHEN 'GIVING'
  2992                PERFORM 362-Release-Upd
  2993            WHEN 'TO'
  2994                PERFORM 362-Release-Upd
  2995            WHEN OTHER
  2996                PERFORM 361-Release-Ref
  2997            END-EVALUATE
  2998            .
  2999
  3000        351-ALLOCATE SECTION.
  3001            EVALUATE WS-Token-Prev-TXT
  3002            WHEN 'ALLOCATE'
  3003                PERFORM 362-Release-Upd
  3004                MOVE SPACES TO WS-Token-Prev-TXT
  3005            WHEN 'RETURNING'
  3006                PERFORM 362-Release-Upd
  3007            WHEN OTHER
  3008                PERFORM 361-Release-Ref
  3009            END-EVALUATE
  3010            .
  3011
  3012        351-CALL SECTION.
  3013            EVALUATE WS-Token-Prev-TXT
  3014            WHEN 'RETURNING'
  3015                PERFORM 362-Release-Upd
  3016            WHEN 'GIVING'
  3017                PERFORM 362-Release-Upd
  3018            WHEN OTHER
  3019 GC1213        PERFORM 365-Release-Arg
  3020            END-EVALUATE
  3021            .
  3022
  3023        351-COMPUTE SECTION.
  3024            EVALUATE WS-Token-Prev-TXT
  3025            WHEN 'COMPUTE'
  3026                PERFORM 362-Release-Upd
  3027            WHEN OTHER
  3028                PERFORM 361-Release-Ref
  3029            END-EVALUATE
  3030            .

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 72

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 73
====== =========================================================================================
  3031
  3032        351-DIVIDE SECTION.
  3033            EVALUATE WS-Token-Prev-TXT
  3034            WHEN 'INTO'
  3035                PERFORM 363-Set-Upd
  3036                MOVE F-Sort-Work-REC TO WS-Held-Reference-TXT
  3037            WHEN 'GIVING'
  3038                IF WS-Held-Reference-TXT NOT = SPACES
  3039                    MOVE WS-Held-Reference-TXT To F-Sort-Work-REC
  3040                    MOVE SPACES         To WS-Held-Reference-TXT
  3041                                           F-SW-Ref-Flag-CHR
  3042                    RELEASE F-Sort-Work-REC
  3043                END-IF
  3044                PERFORM 362-Release-Upd
  3045            WHEN 'REMAINDER'
  3046                PERFORM 362-Release-Upd
  3047            WHEN OTHER
  3048                PERFORM 361-Release-Ref
  3049            END-EVALUATE
  3050            .
  3051
  3052        351-FREE SECTION.
  3053            PERFORM 362-Release-Upd
  3054            .
  3055
  3056 GC1213 351-GENERATE SECTION.
  3057 GC1213     PERFORM 362-Release-Upd
  3058 GC1213     .
  3059
  3060        351-INITIALIZE SECTION.
  3061            EVALUATE WS-Token-Prev-TXT
  3062            WHEN 'INITIALIZE'
  3063                PERFORM 362-Release-Upd
  3064            WHEN 'REPLACING'
  3065                PERFORM 361-Release-Ref
  3066            END-EVALUATE
  3067            .
  3068
  3069 GC1213 351-INITIATE SECTION.
  3070 GC1213     PERFORM 362-Release-Upd
  3071 GC1213     .
  3072
  3073        351-INSPECT SECTION.
  3074            EVALUATE WS-Token-Prev-TXT
  3075            WHEN 'INSPECT'
  3076                PERFORM 364-Set-Ref
  3077                MOVE SPACES TO WS-Held-Reference-TXT
  3078                MOVE SPACES TO WS-Token-Prev-TXT
  3079            WHEN 'TALLYING'
  3080                PERFORM 362-Release-Upd
  3081                MOVE SPACES TO WS-Token-Prev-TXT
  3082            WHEN 'REPLACING'
  3083                IF WS-Held-Reference-TXT NOT = SPACES

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 73

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 74
====== =========================================================================================
  3084                    MOVE WS-Held-Reference-TXT TO F-Sort-Work-REC
  3085                    MOVE SPACES         TO WS-Held-Reference-TXT
  3086                    MOVE '*'            TO F-SW-Ref-Flag-CHR
  3087                    RELEASE F-Sort-Work-REC
  3088                END-IF
  3089                MOVE SPACES TO WS-Token-Prev-TXT
  3090            WHEN 'CONVERTING'
  3091                IF WS-Held-Reference-TXT NOT = SPACES
  3092                    MOVE WS-Held-Reference-TXT TO F-Sort-Work-REC
  3093                    MOVE SPACES         TO WS-Held-Reference-TXT
  3094                    MOVE '*'            TO F-SW-Ref-Flag-CHR
  3095                    RELEASE F-Sort-Work-REC
  3096                END-IF
  3097                MOVE SPACES TO WS-Token-Prev-TXT
  3098            WHEN OTHER
  3099                PERFORM 361-Release-Ref
  3100            END-EVALUATE
  3101           .
  3102
  3103        351-MOVE SECTION.
  3104            EVALUATE WS-Token-Prev-TXT
  3105            WHEN 'TO'
  3106                PERFORM 362-Release-Upd
  3107            WHEN OTHER
  3108                PERFORM 361-Release-Ref
  3109            END-EVALUATE
  3110            .
  3111
  3112        351-MULTIPLY SECTION.
  3113            EVALUATE WS-Token-Prev-TXT
  3114            WHEN 'BY'
  3115                PERFORM 363-Set-Upd
  3116                MOVE F-Sort-Work-REC TO WS-Held-Reference-TXT
  3117            WHEN 'GIVING'
  3118                MOVE WS-Held-Reference-TXT TO F-Sort-Work-REC
  3119                MOVE SPACES         TO WS-Held-Reference-TXT
  3120                                       F-SW-Ref-Flag-CHR
  3121                RELEASE F-Sort-Work-REC
  3122                PERFORM 362-Release-Upd
  3123            WHEN OTHER
  3124                PERFORM 361-Release-Ref
  3125            END-EVALUATE
  3126            .
  3127
  3128        351-PERFORM SECTION.
  3129            EVALUATE WS-Token-Prev-TXT
  3130            WHEN 'VARYING'
  3131                PERFORM 362-Release-Upd
  3132                MOVE SPACES TO WS-Token-Prev-TXT
  3133            WHEN 'AFTER'
  3134                PERFORM 362-Release-Upd
  3135                MOVE SPACES TO WS-Token-Prev-TXT
  3136            WHEN OTHER

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 74

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 75
====== =========================================================================================
  3137                PERFORM 361-Release-Ref
  3138            END-EVALUATE
  3139            .
  3140
  3141        351-SET SECTION.
  3142            EVALUATE WS-Token-Prev-TXT
  3143            WHEN 'SET'
  3144                PERFORM 362-Release-Upd
  3145            WHEN OTHER
  3146                PERFORM 361-Release-Ref
  3147            END-EVALUATE
  3148            .
  3149
  3150        351-STRING SECTION.
  3151            EVALUATE WS-Token-Prev-TXT
  3152            WHEN 'INTO'
  3153                PERFORM 362-Release-Upd
  3154            WHEN 'POINTER'
  3155                PERFORM 362-Release-Upd
  3156            WHEN OTHER
  3157                PERFORM 361-Release-Ref
  3158            END-EVALUATE
  3159            .
  3160
  3161        351-SUBTRACT SECTION.
  3162            EVALUATE WS-Token-Prev-TXT
  3163            WHEN 'GIVING'
  3164                PERFORM 362-Release-Upd
  3165            WHEN 'FROM'
  3166                PERFORM 362-Release-Upd
  3167            WHEN OTHER
  3168                PERFORM 361-Release-Ref
  3169            END-EVALUATE
  3170            .
  3171
  3172 GC1213 351-TERMINATE SECTION.
  3173 GC1213     PERFORM 362-Release-Upd
  3174 GC1213     .
  3175
  3176        351-TRANSFORM SECTION.
  3177            EVALUATE WS-Token-Prev-TXT
  3178            WHEN 'TRANSFORM'
  3179                PERFORM 362-Release-Upd
  3180                MOVE SPACES TO WS-Token-Prev-TXT
  3181            WHEN OTHER
  3182                PERFORM 361-Release-Ref
  3183            END-EVALUATE
  3184            .
  3185
  3186        351-UNSTRING SECTION.
  3187            EVALUATE WS-Token-Prev-TXT
  3188            WHEN 'INTO'
  3189                PERFORM 362-Release-Upd

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 75

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 76
====== =========================================================================================
  3190            WHEN 'DELIMITER'
  3191                PERFORM 362-Release-Upd
  3192            WHEN 'COUNT'
  3193                PERFORM 362-Release-Upd
  3194            WHEN 'POINTER'
  3195                PERFORM 362-Release-Upd
  3196            WHEN 'TALLYING'
  3197                PERFORM 362-Release-Upd
  3198            WHEN OTHER
  3199                PERFORM 361-Release-Ref
  3200            END-EVALUATE
  3201            .
  3202
  3203        360-Release-Def SECTION.
  3204            MOVE SPACES                 TO F-Sort-Work-REC
  3205            MOVE WS-Curr-Prog-ID-TXT    TO F-SW-Prog-ID-TXT
  3206            MOVE WS-Token-Curr-Uc-TXT   TO F-SW-Token-Uc-TXT
  3207            MOVE WS-Token-Curr-TXT      TO F-SW-Token-TXT
  3208            MOVE WS-Curr-Section-TXT    TO F-SW-Section-TXT
  3209            MOVE WS-Curr-Line-NUM       TO F-SW-Def-Line-NUM
  3210            MOVE 0                      TO F-SW-Ref-Line-NUM
  3211            RELEASE F-Sort-Work-REC
  3212            .
  3213
  3214        361-Release-Ref SECTION.
  3215            PERFORM 364-Set-Ref
  3216            RELEASE F-Sort-Work-REC
  3217            .
  3218
  3219        362-Release-Upd SECTION.
  3220            PERFORM 363-Set-Upd
  3221            RELEASE F-Sort-Work-REC
  3222            .
  3223
  3224        363-Set-Upd SECTION.
  3225            MOVE SPACES                 TO F-Sort-Work-REC
  3226            MOVE WS-Curr-Prog-ID-TXT    TO F-SW-Prog-ID-TXT
  3227            MOVE WS-Token-Curr-Uc-TXT   TO F-SW-Token-Uc-TXT
  3228            MOVE WS-Token-Curr-TXT      TO F-SW-Token-TXT
  3229            MOVE WS-Curr-Section-TXT    TO F-SW-Section-TXT
  3230            MOVE WS-Curr-Line-NUM       TO F-SW-Ref-Line-NUM
  3231            MOVE '*'                    TO F-SW-Ref-Flag-CHR
  3232            .
  3233
  3234        364-Set-Ref SECTION.
  3235            MOVE SPACES                 TO F-Sort-Work-REC
  3236            MOVE WS-Curr-Prog-ID-TXT    TO F-SW-Prog-ID-TXT
  3237            MOVE WS-Token-Curr-Uc-TXT   TO F-SW-Token-Uc-TXT
  3238            MOVE WS-Token-Curr-TXT      TO F-SW-Token-TXT
  3239            MOVE WS-Curr-Section-TXT    TO F-SW-Section-TXT
  3240            MOVE WS-Curr-Line-NUM       TO F-SW-Ref-Line-NUM
  3241            .
  3242

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 76

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 77
====== =========================================================================================
  3243 GC1213 365-Release-Arg SECTION.
  3244 GC1213     PERFORM 366-Set-Arg
  3245 GC1213     RELEASE F-Sort-Work-REC
  3246 GC1213     .
  3247
  3248 GC1213 366-Set-Arg SECTION.
  3249 GC1213     MOVE SPACES                 TO F-Sort-Work-REC
  3250 GC1213     MOVE WS-Curr-Prog-ID-TXT    TO F-SW-Prog-ID-TXT
  3251 GC1213     MOVE WS-Token-Curr-Uc-TXT   TO F-SW-Token-Uc-TXT
  3252 GC1213     MOVE WS-Token-Curr-TXT      TO F-SW-Token-TXT
  3253 GC1213     MOVE WS-Curr-Section-TXT    TO F-SW-Section-TXT
  3254 GC1213     MOVE WS-Curr-Line-NUM       TO F-SW-Ref-Line-NUM
  3255 GC1213     MOVE 'C'                    TO F-SW-Ref-Flag-CHR
  3256 GC1213     .
  3257

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 77

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 78
====== =========================================================================================

  3259        400-Produce-Xref-Listing SECTION.
  3260            MOVE SPACES       TO WS-Xref-Detail-Line-TXT
  3261                                 WS-Group-Indicators-TXT
  3262            MOVE 0            TO WS-I-SUB
  3263                                 WS-Lines-Left-NUM
  3264 GC0710     MOVE 'N'          TO WS-RS-Duplicate-CHR
  3265            PERFORM FOREVER
  3266                RETURN F-Sort-Work-FILE AT END
  3267 GC1213             IF WS-Xref-Detail-Line-TXT NOT = SPACES
  3268 GC1213                 PERFORM 410-Generate-Report-Line
  3269 GC1213             END-IF
  3270 GC1213             MOVE SPACES TO WS-Xref-Detail-Line-TXT
  3271 GC1213             PERFORM 410-Generate-Report-Line
  3272 GC1213                 UNTIL WS-Lines-Left-NUM = 0
  3273 GC1213             MOVE 'Y' TO WS-Suppress-FF-CHR
  3274 GC1213             PERFORM 420-Generate-Xref-Footer
  3275                    EXIT PERFORM
  3276                END-RETURN
  3277                IF F-SW-Prog-ID-TXT  NOT = WS-GI-Prog-ID-TXT
  3278                OR F-SW-Token-Uc-TXT NOT = WS-GI-Token-TXT
  3279 GC0710             MOVE 'N' TO WS-RS-Duplicate-CHR
  3280                    IF WS-Xref-Detail-Line-TXT NOT = SPACES
  3281                        PERFORM 410-Generate-Report-Line
  3282                    END-IF
  3283                    IF F-SW-Prog-ID-TXT NOT = WS-GI-Prog-ID-TXT
  3284 GC1213                 MOVE SPACES TO WS-Xref-Detail-Line-TXT
  3285 GC1213                 PERFORM 410-Generate-Report-Line
  3286 GC1213                     UNTIL WS-Lines-Left-NUM = 0
  3287                    END-IF
  3288                    MOVE F-SW-Prog-ID-TXT  TO WS-GI-Prog-ID-TXT
  3289                    MOVE F-SW-Token-Uc-TXT TO WS-GI-Token-TXT
  3290                END-IF
  3291 GC0710         IF F-SW-Token-Uc-TXT = WS-GI-Token-TXT
  3292 GC0710         AND F-SW-Def-Line-NUM NOT = SPACES
  3293 GC0710         AND WS-Xref-Detail-Line-TXT NOT = SPACES
  3294 GC0710             MOVE 'Y' TO WS-RS-Duplicate-CHR
  3295 GC0710             PERFORM 410-Generate-Report-Line
  3296 GC0710             MOVE 0 TO WS-I-SUB
  3297 GC0710             MOVE F-SW-Prog-ID-TXT TO WS-XDL-Prog-ID-TXT
  3298 GC0710             MOVE '  (Duplicate Definition)' TO WS-XDL-Token-TXT
  3299 GC0710             MOVE F-SW-Section-TXT TO WS-XDL-Section-TXT
  3300 GC0710             MOVE F-SW-Def-Line-NUM TO WS-XDL-Def-Line-NUM
  3301 GC0710             EXIT PERFORM CYCLE
  3302 GC0710         END-IF
  3303 GC0710         IF F-SW-Token-Uc-TXT = WS-GI-Token-TXT
  3304 GC0710         AND F-SW-Def-Line-NUM = SPACES
  3305 GC0710         AND WS-RS-Duplicate-CHR = 'Y'
  3306 GC0710             MOVE 'N' TO WS-RS-Duplicate-CHR
  3307 GC0710             PERFORM 410-Generate-Report-Line
  3308 GC0710             MOVE 0 TO WS-I-SUB
  3309 GC0710             MOVE F-SW-Prog-ID-TXT TO WS-XDL-Prog-ID-TXT
  3310 GC0710             MOVE '  (Duplicate References)' TO WS-XDL-Token-TXT

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 78

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 79
====== =========================================================================================
  3311 GC0710         END-IF
  3312                IF WS-Xref-Detail-Line-TXT = SPACES
  3313                    MOVE F-SW-Prog-ID-TXT TO WS-XDL-Prog-ID-TXT
  3314                    MOVE F-SW-Token-TXT TO WS-XDL-Token-TXT
  3315                    MOVE F-SW-Section-TXT TO WS-XDL-Section-TXT
  3316                    IF F-SW-Def-Line-NUM NOT = SPACES
  3317                        MOVE F-SW-Def-Line-NUM TO WS-XDL-Def-Line-NUM
  3318                    END-IF
  3319                END-IF
  3320                IF F-SW-Reference-TXT > '000000'
  3321                    ADD 1 TO WS-I-SUB
  3322                    IF WS-I-SUB > WS-Xref-Lines-Per-Rec-NUM
  3323                        PERFORM 410-Generate-Report-Line
  3324                        MOVE 1 TO WS-I-SUB
  3325                    END-IF
  3326                    MOVE F-SW-Ref-Line-NUM
  3327                      TO WS-XDL-Ref-Line-NUM (WS-I-SUB)
  3328                    MOVE F-SW-Ref-Flag-CHR
  3329                      TO WS-XDL-Ref-Flag-CHR (WS-I-SUB)
  3330                END-IF
  3331            END-PERFORM
  3332            IF WS-Xref-Detail-Line-TXT NOT = SPACES
  3333                PERFORM 410-Generate-Report-Line
  3334            END-IF
  3335            .

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 79

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 80
====== =========================================================================================

  3337        410-Generate-Report-Line SECTION.
  3338            IF WS-Lines-Left-NUM < 1
  3339 GC1213         PERFORM 420-Generate-Xref-Footer
  3340 GC1213         ADD  1           TO WS-Page-NUM
  3341 GC1213         MOVE 'Page:'     TO WS-PN-Literal-TXT
  3342 GC1213         MOVE WS-Page-NUM TO WS-PN-Page-NUM
  3343 GC1213         CALL 'C$JUSTIFY' USING WS-PN-Page-NUM, 'Left'
  3344 GC1213         CALL 'C$JUSTIFY' USING WS-Page-No-TXT, 'Right'
  3345 GC1213         IF L-Listing-CD = 1 *> LANDSCAPE
  3346 GC1213             MOVE WS-Version-TXT
  3347 GC1213               TO F-Listing-135-REC
  3348 GC1213             MOVE 'Cross-Reference Listing'
  3349 GC1213               TO F-Listing-135-REC(25:23)
  3350 GC1213             MOVE WS-Formatted-DT
  3351 GC1213               TO F-Listing-135-REC(126:10)
  3352 GC1213             WRITE F-Listing-135-REC BEFORE 1 *> Page Header Line #1
  3353 GC1213             MOVE WS-Program-Path-TXT
  3354 GC1213               TO F-Listing-135-REC
  3355 GC1213             WRITE F-Listing-135-REC BEFORE 1 *> Page Header Line #2
  3356 GC1213             MOVE 'PROGRAM-ID      Identifier/Register/Function' &
  3357 GC1213                  '     Defn   Where Defined   References'
  3358 GC1213               TO F-Listing-135-REC
  3359 GC1213             MOVE WS-Page-No-TXT
  3360 GC1213               TO F-Listing-135-REC(126:10)
  3361 GC1213             WRITE F-Listing-135-REC BEFORE 1 *> Page Header Line #3
  3362 GC1213             MOVE ALL '=' TO F-Listing-135-REC
  3363 GC1213             MOVE SPACE TO F-Listing-135-REC(16:1)
  3364 GC1213                           F-Listing-135-REC(49:1)
  3365 GC1213                           F-Listing-135-REC(56:1)
  3366 GC1213                           F-Listing-135-REC(72:1)
  3367 GC1213             WRITE F-Listing-135-REC BEFORE 1 *> Page Header Line #4
  3368 GC1213         ELSE                *> PORTRAIT
  3369 GC1213             MOVE WS-Version-TXT
  3370 GC1213               TO F-Listing-96-REC
  3371 GC1213             MOVE 'Cross-Reference Listing'
  3372 GC1213               TO F-Listing-96-REC(25:23)
  3373 GC1213             MOVE WS-Formatted-DT
  3374 GC1213               TO F-Listing-96-REC(87:10)
  3375 GC1213             WRITE F-Listing-96-REC BEFORE 1 *> Page Header Line #1
  3376 GC1213             MOVE WS-Program-Path-TXT(40:96)
  3377 GC1213               TO F-Listing-96-REC
  3378 GC1213             WRITE F-Listing-96-REC BEFORE 1 *> Page Header Line #2
  3379 GC1213             MOVE 'PROGRAM-ID      Identifier/Register/Function' &
  3380 GC1213                  '     Defn   Where Defined   References'
  3381 GC1213               TO F-Listing-96-REC
  3382 GC1213             MOVE WS-Page-No-TXT
  3383 GC1213               TO F-Listing-96-REC(87:10)
  3384 GC1213             WRITE F-Listing-96-REC BEFORE 1 *> Page Header Line #3
  3385 GC1213             MOVE ALL '=' TO F-Listing-96-REC
  3386 GC1213             MOVE SPACE TO F-Listing-96-REC(16:1)
  3387 GC1213                           F-Listing-96-REC(49:1)
  3388 GC1213                           F-Listing-96-REC(56:1)

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 80

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 81
====== =========================================================================================
  3389 GC1213                           F-Listing-96-REC(72:1)
  3390 GC1213             WRITE F-Listing-96-REC BEFORE 1 *> Page Header Line #4
  3391 GC1213         END-IF
  3392 GC1213         COMPUTE WS-Lines-Left-NUM = WS-Lines-Per-Page-NUM - 4
  3393            END-IF
  3394 GC1213     IF L-Listing-CD = 1 *> LANDSCAPE
  3395 GC1213         WRITE F-Listing-135-REC FROM WS-Xref-Detail-Line-TXT
  3396 GC1213             BEFORE 1
  3397 GC1213     ELSE                *> PORTRAIT
  3398 GC1213         WRITE F-Listing-96-REC FROM WS-Xref-Detail-Line-TXT
  3399 GC1213             BEFORE 1
  3400 GC1213     END-IF
  3401            MOVE SPACES TO WS-Xref-Detail-Line-TXT
  3402            MOVE 0 TO WS-I-SUB
  3403            SUBTRACT 1 FROM WS-Lines-Left-NUM
  3404            .
  3405 GC1213 420-Generate-Xref-Footer SECTION.
  3406 GC1213     IF L-Listing-CD = 1 *> LANDSCAPE
  3407 GC1213         WRITE F-Listing-135-REC FROM SPACES BEFORE 1 *> Footer Line #1
  3408 GC1213         MOVE ALL '='
  3409 GC1213           TO F-Listing-135-REC
  3410 GC1213         WRITE F-Listing-135-REC BEFORE 1 *> Footer Line #2
  3411 GC1213         MOVE WS-Copyright-TXT
  3412 GC1213           TO F-Listing-135-REC
  3413 GC1213         MOVE WS-Page-No-TXT
  3414 GC1213           TO F-Listing-135-REC(126:10)
  3415 GC1213         IF WS-Suppress-FF-CHR = 'Y'
  3416 GC1213             WRITE F-Listing-135-REC BEFORE 1 *> Footer Line #3
  3417 GC1213         ELSE
  3418 GC1213             WRITE F-Listing-135-REC BEFORE PAGE *> Footer Line #3
  3419 GC1213             WRITE F-Listing-135-REC FROM SPACES BEFORE 1 *> Spaces After FF Charac
       ter
  3420 GC1213         END-IF
  3421 GC1213     ELSE                *> PORTRAIT
  3422 GC1213         WRITE F-Listing-96-REC FROM SPACES BEFORE 1 *> Footer Line #1
  3423 GC1213         MOVE ALL '='
  3424 GC1213           TO F-Listing-96-REC
  3425 GC1213         WRITE F-Listing-96-REC BEFORE 1 *> Footer Line #2
  3426 GC1213         MOVE WS-Copyright-TXT
  3427 GC1213           TO F-Listing-96-REC
  3428 GC1213         MOVE WS-Page-No-TXT
  3429 GC1213           TO F-Listing-96-REC(87:10)
  3430 GC1213         IF WS-Suppress-FF-CHR = 'Y'
  3431 GC1213             WRITE F-Listing-96-REC BEFORE 1 *> Footer Line #3
  3432 GC1213         ELSE
  3433 GC1213             WRITE F-Listing-96-REC BEFORE PAGE *> Footer Line #3
  3434 GC1213             WRITE F-Listing-96-REC FROM SPACES BEFORE 1 *> Spaces After FF Charact
       er
  3435 GC1213         END-IF
  3436 GC1213     END-IF
  3437 GC1213     .

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 81

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 82
====== =========================================================================================

  3439        500-Produce-Source-Listing SECTION.
  3440            OPEN INPUT F-Original-Src-FILE
  3441                       F-Expanded-Src-FILE
  3442            MOVE 0 TO WS-Src-Line-NUM
  3443            PERFORM FOREVER
  3444                READ F-Expanded-Src-FILE AT END
  3445 GC1213             MOVE SPACES TO WS-Src-Detail-Line-TXT
  3446 GC1213             PERFORM 530-Generate-Source-Line
  3447 GC1213                 UNTIL WS-Lines-Left-NUM = 0
  3448                    EXIT PERFORM
  3449                END-READ
  3450 GC0712         IF F-ES-1-7-TXT NOT = '#DEFLIT'
  3451 GC0712             IF F-ES-1-CHR = '#'
  3452 GC0712                 PERFORM 510-Control-Record
  3453 GC0712             ELSE
  3454 GC0712                 PERFORM 520-Expanded-Src-Record
  3455 GC0712             END-IF
  3456 GC0712         END-IF
  3457            END-PERFORM
  3458            CLOSE F-Original-Src-FILE
  3459                  F-Expanded-Src-FILE
  3460            .

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 82

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 83
====== =========================================================================================

  3462        510-Control-Record SECTION.
  3463            UNSTRING F-ES-2-256-TXT-256
  3464                DELIMITED BY '"'
  3465                INTO WS-Temp-10-Chars-TXT
  3466                     WS-Temp-256-Chars-TXT
  3467                     WS-Dummy-TXT
  3468 GC1010     IF UPPER-CASE(TRIM(WS-Temp-256-Chars-TXT,Trailing)) =
  3469 GC1010        TRIM(WS-Main-Module-Name-TXT) *> Main Pgm
  3470                SET WS-RS-In-Main-Module-BOOL TO TRUE
  3471                IF WS-Src-Line-NUM > 0
  3472                    READ F-Expanded-Src-FILE END-READ
  3473                END-IF
  3474            ELSE *> COPY
  3475                SET WS-RS-In-Copybook-BOOL TO TRUE
  3476            END-IF
  3477            .

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 83

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 84
====== =========================================================================================

  3479        520-Expanded-Src-Record SECTION.
  3480            IF WS-RS-In-Main-Module-BOOL
  3481                ADD 1 To WS-Curr-Line-NUM
  3482 GC0712         READ F-Original-Src-FILE AT END CONTINUE END-READ
  3483                ADD 1 TO WS-Src-Line-NUM
  3484                MOVE SPACES TO WS-Src-Detail-Line-TXT
  3485                MOVE WS-Src-Line-NUM TO WS-SDL-Line-NUM
  3486 GC1213         MOVE F-Original-Src-REC TO WS-SDL-Statement-TXT
  3487 GC0712         MOVE LOWER-CASE(TRIM(F-OS-8-72-TXT,LEADING))
  3488 GC0712           TO WS-Temp-65-Chars-TXT
  3489 GC0712         INSPECT WS-Temp-65-Chars-TXT REPLACING ALL '.' BY SPACE
  3490 GC0712         EVALUATE TRUE
  3491 GC0712             WHEN F-OS-7-CHR = '/'
  3492 GC1213                 MOVE SPACES TO WS-Src-Detail-Line-TXT
  3493 GC1213                 PERFORM 530-Generate-Source-Line
  3494 GC1213                     UNTIL WS-Lines-Left-NUM = 0
  3495 GC0712             WHEN WS-Temp-65-Chars-TXT = "eject"
  3496 GC1213                 MOVE SPACES TO WS-Src-Detail-Line-TXT
  3497 GC1213                 PERFORM 530-Generate-Source-Line
  3498 GC1213                     UNTIL WS-Lines-Left-NUM = 0
  3499 GC0712                 EXIT SECTION
  3500 GC0712             WHEN WS-Temp-65-Chars-TXT = "skip1"
  3501 GC0712                 MOVE SPACES TO WS-Src-Detail-Line-TXT
  3502 GC0712                 PERFORM 530-Generate-Source-Line
  3503 GC0712                 EXIT SECTION
  3504 GC0712             WHEN WS-Temp-65-Chars-TXT = "skip2"
  3505 GC0712                 MOVE SPACES TO WS-Src-Detail-Line-TXT
  3506 GC0712                 PERFORM 530-Generate-Source-Line 2 TIMES
  3507 GC0712                 EXIT SECTION
  3508 GC0712             WHEN WS-Temp-65-Chars-TXT = "skip3"
  3509 GC0712                 MOVE SPACES TO WS-Src-Detail-Line-TXT
  3510 GC0712                 PERFORM 530-Generate-Source-Line 3 TIMES
  3511 GC0712                 EXIT SECTION
  3512 GC0712         END-EVALUATE
  3513                PERFORM 530-Generate-Source-Line
  3514            ELSE
  3515                IF F-Expanded-Src-REC NOT = SPACES
  3516                    MOVE SPACES TO WS-Src-Detail-Line-TXT
  3517 GC1213             MOVE F-Expanded-Src-REC
  3518                      TO WS-SDL-Statement-TXT
  3519 GC0712             MOVE LOWER-CASE(TRIM(F-OS-8-72-TXT,LEADING))
  3520 GC0712               TO WS-Temp-65-Chars-TXT
  3521 GC0712             INSPECT WS-Temp-65-Chars-TXT
  3522 GC0712                 REPLACING ALL '.' BY SPACE
  3523 GC0712             EVALUATE TRUE
  3524 GC0712                 WHEN WS-Temp-65-Chars-TXT = "eject"
  3525 GC0712                     MOVE 0 TO WS-Lines-Left-NUM
  3526 GC0712                     EXIT SECTION
  3527 GC0712                 WHEN WS-Temp-65-Chars-TXT = "skip1"
  3528 GC0712                     MOVE SPACES TO WS-Src-Detail-Line-TXT
  3529 GC0712                     PERFORM 530-Generate-Source-Line
  3530 GC0712                     EXIT SECTION

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 84

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 85
====== =========================================================================================
  3531 GC0712                 WHEN WS-Temp-65-Chars-TXT = "skip2"
  3532 GC0712                     MOVE SPACES TO WS-Src-Detail-Line-TXT
  3533 GC0712                     PERFORM 530-Generate-Source-Line 2 TIMES
  3534 GC0712                     EXIT SECTION
  3535 GC0712                 WHEN WS-Temp-65-Chars-TXT = "skip3"
  3536 GC0712                     MOVE SPACES TO WS-Src-Detail-Line-TXT
  3537 GC0712                     PERFORM 530-Generate-Source-Line 3 TIMES
  3538 GC0712                     EXIT SECTION
  3539 GC0712             END-EVALUATE
  3540                    PERFORM 530-Generate-Source-Line
  3541                END-IF
  3542            END-IF
  3543            .

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 85

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 86
====== =========================================================================================

  3545        530-Generate-Source-Line SECTION.
  3546 GC1213     MOVE 1 TO WS-Src-Lines-NUM
  3547 GC1213     IF L-Listing-CD = 1 *> LANDSCAPE
  3548 GC1213         IF WS-SDL-Statement-TXT(129:128) > SPACES
  3549 GC1213             ADD 1 TO WS-Src-Lines-NUM
  3550 GC1213         END-IF
  3551 GC1213     ELSE                *> PORTRAIT
  3552 GC1213         IF WS-SDL-Statement-TXT(90:167) > SPACES
  3553 GC1213             ADD 1 TO WS-Src-Lines-NUM
  3554 GC1213             IF WS-SDL-Statement-TXT(179:78) > SPACES
  3555 GC1213                 ADD 1 TO WS-Src-Lines-NUM
  3556 GC1213             END-IF
  3557 GC1213         END-IF
  3558 GC1213     END-IF
  3559 GC1213     IF WS-Lines-Left-NUM < WS-Src-Lines-NUM
  3560 GC1213         IF WS-Page-Num > 0 *> Don't print footer before page 1
  3561 GC1213             IF L-Listing-CD = 1 *> LANDSCAPE
  3562 GC1213                 IF WS-Src-Lines-NUM = 2
  3563 GC1213                     WRITE F-Listing-135-REC FROM SPACES BEFORE 1 *> Blank Line
  3564 GC1213                 END-IF
  3565 GC1213                 WRITE F-Listing-135-REC FROM SPACES BEFORE 1 *> Footer Line #1
  3566 GC1213                 MOVE ALL '='
  3567 GC1213                   TO F-Listing-135-REC
  3568 GC1213                 WRITE F-Listing-135-REC BEFORE 1 *> Footer Line #2
  3569 GC1213                 MOVE WS-Copyright-TXT
  3570 GC1213                   TO F-Listing-135-REC
  3571 GC1213                 MOVE WS-Page-No-TXT
  3572 GC1213                   TO F-Listing-135-REC(126:10)
  3573 GC1213                 WRITE F-Listing-135-REC BEFORE PAGE *> Footer Line #3
  3574 GC1213                 WRITE F-Listing-135-REC FROM SPACES BEFORE 1 *> Spaces After FF Ch
       aracter
  3575 GC1213             ELSE                *> PORTRAIT
  3576 GC1213                 EVALUATE WS-Src-Lines-NUM
  3577 GC1213                 WHEN 1 *> Need no extra blank lines
  3578 GC1213                     CONTINUE
  3579 GC1213                 WHEN 2 *> Need 1 extra blank line
  3580 GC1213                     WRITE F-Listing-96-REC FROM SPACES BEFORE 1
  3581 GC1213                 WHEN 3 *> Need 2 extra blank lines
  3582 GC1213                     WRITE F-Listing-96-REC FROM SPACES BEFORE 1
  3583 GC1213                     WRITE F-Listing-96-REC FROM SPACES BEFORE 1
  3584 GC1213                 END-EVALUATE
  3585 GC1213                 WRITE F-Listing-96-REC FROM SPACES BEFORE 1 *> Footer Line #1
  3586 GC1213                 MOVE ALL '='
  3587 GC1213                   TO F-Listing-96-REC
  3588 GC1213                 WRITE F-Listing-96-REC BEFORE 1 *> Footer Line #2
  3589 GC1213                 MOVE WS-Copyright-TXT
  3590 GC1213                   TO F-Listing-96-REC
  3591 GC1213                 MOVE WS-Page-No-TXT
  3592 GC1213                   TO F-Listing-96-REC(87:10)
  3593 GC1213                 WRITE F-Listing-96-REC BEFORE PAGE *> Footer Line #3
  3594 GC1213                 WRITE F-Listing-96-REC FROM SPACES BEFORE 1 *> Spaces After FF Cha
       racter

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 86

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 87
====== =========================================================================================
  3595 GC1213             END-IF
  3596 GC1213         END-IF
  3597 GC1213         ADD  1           TO WS-Page-NUM
  3598 GC1213         MOVE 'Page:'     TO WS-PN-Literal-TXT
  3599 GC1213         MOVE WS-Page-NUM TO WS-PN-Page-NUM
  3600 GC1213         CALL 'C$JUSTIFY' USING WS-PN-Page-NUM, 'Left'
  3601 GC1213         CALL 'C$JUSTIFY' USING WS-Page-No-TXT, 'Right'
  3602 GC1213         IF L-Listing-CD = 1 *> LANDSCAPE
  3603 GC1213             MOVE WS-Version-TXT
  3604 GC1213               TO F-Listing-135-REC
  3605 GC1213             MOVE 'Source Listing'
  3606 GC1213               TO F-Listing-135-REC(25:14)
  3607 GC1213             MOVE WS-Formatted-DT
  3608 GC1213               TO F-Listing-135-REC(126:10)
  3609 GC1213             WRITE F-Listing-135-REC BEFORE 1 *> Page Header Line #1
  3610 GC1213             MOVE WS-Program-Path-TXT
  3611 GC1213               TO F-Listing-135-REC
  3612 GC1213             WRITE F-Listing-135-REC BEFORE 1 *> Page Header Line #2
  3613 GC1213             MOVE 'Line   Statement'
  3614 GC1213               TO F-Listing-135-REC
  3615 GC1213             MOVE WS-Page-No-TXT
  3616 GC1213               TO F-Listing-135-REC(126:10)
  3617 GC1213             WRITE F-Listing-135-REC BEFORE 1 *> Page Header Line #3
  3618 GC1213             MOVE WS-Src-Dashes-TXT
  3619 GC1213               TO F-Listing-135-REC
  3620 GC1213             WRITE F-Listing-135-REC BEFORE 1 *> Page Header Line #4
  3621 GC1213         ELSE                *> PORTRAIT
  3622 GC1213             MOVE WS-Version-TXT
  3623 GC1213               TO F-Listing-96-REC
  3624 GC1213             MOVE 'Source Listing'
  3625 GC1213               TO F-Listing-96-REC(25:14)
  3626 GC1213             MOVE WS-Formatted-DT
  3627 GC1213               TO F-Listing-96-REC(87:10)
  3628 GC1213             WRITE F-Listing-96-REC BEFORE 1 *> Page Header Line #1
  3629 GC1213             MOVE WS-Program-Path-TXT(40:96)
  3630 GC1213               TO F-Listing-96-REC
  3631 GC1213             WRITE F-Listing-96-REC BEFORE 1 *> Page Header Line #2
  3632 GC1213             MOVE 'Line   Statement'
  3633 GC1213               TO F-Listing-96-REC
  3634 GC1213             MOVE WS-Page-No-TXT
  3635 GC1213               TO F-Listing-96-REC(87:10)
  3636 GC1213             WRITE F-Listing-96-REC BEFORE 1 *> Page Header Line #3
  3637 GC1213             MOVE WS-Src-Dashes-TXT
  3638 GC1213               TO F-Listing-96-REC
  3639 GC1213             WRITE F-Listing-96-REC BEFORE 1 *> Page Header Line #4
  3640 GC1213         END-IF
  3641 GC1213         COMPUTE WS-Lines-Left-NUM = WS-Lines-Per-Page-NUM - 4
  3642 GC1213     END-IF
  3643 GC1213     IF L-Listing-CD = 1 *> LANDSCAPE
  3644 GC1213         EVALUATE WS-Src-Lines-NUM
  3645 GC1213         WHEN 1
  3646 GC1213             MOVE WS-Src-Detail-Line-TXT TO F-Listing-135-REC
  3647 GC1213             WRITE F-Listing-96-REC BEFORE 1

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 87

GNUCOBOL 2.2 20JUL2017  Source Listing                                                2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 88
====== =========================================================================================
  3648 GC1213             SUBTRACT 1 FROM WS-Lines-Left-NUM
  3649 GC1213         WHEN 2
  3650 GC1213             MOVE WS-SDL-Statement-TXT TO WS-Src-Hold-TXT
  3651 GC1213             MOVE WS-Src-Detail-Line-TXT TO F-Listing-135-REC
  3652 GC1213             WRITE F-Listing-135-REC BEFORE 1 *> Prints chars 1-128 of stmnt
  3653 GC1213             MOVE SPACES TO WS-Src-Detail-Line-TXT
  3654 GC1213             MOVE WS-Src-Hold-TXT(129:128) TO WS-SDL-Statement-TXT
  3655 GC1213             MOVE WS-Src-Detail-Line-TXT TO F-Listing-135-REC
  3656 GC1213             WRITE F-Listing-135-REC BEFORE 1 *> Prints chars 129-256 of stmnt
  3657 GC1213             SUBTRACT 2 FROM WS-Lines-Left-NUM
  3658 GC1213         END-EVALUATE
  3659 GC1213     ELSE                *> PORTRAIT
  3660 GC1213         EVALUATE WS-Src-Lines-NUM
  3661 GC1213         WHEN 1 *> Print only chars 1-89 of stmnt
  3662 GC1213             WRITE F-Listing-96-REC FROM WS-Src-Detail-Line-TXT
  3663 GC1213                 BEFORE 1
  3664 GC1213             SUBTRACT 1 FROM WS-Lines-Left-NUM
  3665 GC1213         WHEN 2 *> Print only chars 1-89 and 90-178 of text
  3666 GC1213             MOVE WS-SDL-Statement-TXT TO WS-Src-Hold-TXT
  3667 GC1213             WRITE F-Listing-96-REC FROM WS-Src-Detail-Line-TXT
  3668 GC1213                 BEFORE 1
  3669 GC1213             MOVE SPACES TO WS-Src-Detail-Line-TXT
  3670 GC1213             MOVE WS-Src-Hold-TXT(90:89) TO WS-SDL-Statement-TXT
  3671 GC1213             WRITE F-Listing-96-REC FROM WS-Src-Detail-Line-TXT
  3672 GC1213                 BEFORE 1
  3673 GC1213             SUBTRACT 2 FROM WS-Lines-Left-NUM
  3674 GC1213         WHEN 3 *> Print chars 1-89, 90-178 and 179-256 of stmnt
  3675 GC1213             MOVE WS-SDL-Statement-TXT TO WS-Src-Hold-TXT
  3676 GC1213             WRITE F-Listing-96-REC FROM WS-Src-Detail-Line-TXT
  3677 GC1213                 BEFORE 1
  3678 GC1213             MOVE SPACES TO WS-Src-Detail-Line-TXT
  3679 GC1213             MOVE WS-Src-Hold-TXT(90:89) TO WS-SDL-Statement-TXT
  3680 GC1213             WRITE F-Listing-96-REC FROM WS-Src-Detail-Line-TXT
  3681 GC1213                 BEFORE 1
  3682 GC1213             MOVE SPACES TO WS-Src-Detail-Line-TXT
  3683 GC1213             MOVE WS-Src-Hold-TXT(179:78) TO WS-SDL-Statement-TXT
  3684 GC1213             WRITE F-Listing-96-REC FROM WS-Src-Detail-Line-TXT
  3685 GC1213                 BEFORE 1
  3686 GC1213             SUBTRACT 3 FROM WS-Lines-Left-NUM
  3687 GC1213         END-EVALUATE
  3688 GC1213     END-IF
  3689            MOVE SPACES TO WS-Src-Detail-Line-TXT
  3690            .
  3691
  3692        END PROGRAM LISTING.

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 88

GNUCOBOL 2.2 20JUL2017  Cross-Reference Listing                                       2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References      Page: 89
=============== ================================ ====== =============== ========================
CHECKSRC        000-Main                           1315 PROCEDURE
CHECKSRC        L-A1-CHR                           1305 LINKAGE           1317    1329    1332
                                                                          1339
CHECKSRC        L-A2-IDENT-DIVISION-BOOL           1310 LINKAGE           1361*
CHECKSRC        L-A2-LINKAGE-SECTION-BOOL          1309 LINKAGE           1355*
CHECKSRC        L-A2-Nothing-Special-BOOL          1311 LINKAGE           1316*
CHECKSRC        L-Argument-1-TXT                   1304 LINKAGE           1313
CHECKSRC        L-Argument-2-CHR                   1308 LINKAGE           1314
CHECKSRC        WS-Compressed-Src-TXT              1291 WORKING-STORAGE   1326*   1349    1353
                                                                          1359
CHECKSRC        WS-CS-CHR                          1292 WORKING-STORAGE   1333*   1339*   1348
                                                                          1352    1358
CHECKSRC        WS-I-SUB                           1300 WORKING-STORAGE   1327*   1328    1329
                                                                          1332    1339    1345*
                                                                          1346    1348    1349
                                                                          1352    1352    1353
                                                                          1358    1358    1359
CHECKSRC        WS-J-SUB                           1302 WORKING-STORAGE   1325*   1331*   1333
                                                                          1338*   1339
CHECKSRC        WS-RS-Found-SPACE-CHR              1296 WORKING-STORAGE
CHECKSRC        WS-RS-Not-Skipping-SPACE-BOOL      1298 WORKING-STORAGE   1324*   1330    1337*
CHECKSRC        WS-RS-Skipping-SPACE-BOOL          1297 WORKING-STORAGE   1334*
CHECKSRC        WS-Runtime-Switches-TXT            1295 WORKING-STORAGE

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 89

GNUCOBOL 2.2 20JUL2017  Cross-Reference Listing                                       2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References      Page: 90
=============== ================================ ====== =============== ========================
GCic            000-File-Error                      654 PROCEDURE
GCic            000-Main                            675 PROCEDURE
GCic            100-Initialization                  699 PROCEDURE          676
GCic            200-Let-User-Set-Switches           813 PROCEDURE          679
GCic            210-Run-Compiler                    904 PROCEDURE          680
GCic            220-Make-Listing                   1040 PROCEDURE          684
GCic            230-Run-Program                    1071 PROCEDURE          688
GCic            240-Find-LINKAGE-SECTION           1173 PROCEDURE          747
GCic            250-Autoload-Listing               1212 PROCEDURE          690    1031    1065
GCic            900-Terminate                      1258 PROCEDURE          692     741     884
                                                                          1032    1166
GCic            COB-COLOR-BLACK                     178 [screenio     ]    439     444     534
                                                                           544     554     559
                                                                           569     576     591
                                                                           606     622     629
                                                                           636
GCic            COB-COLOR-BLUE                      178 [screenio     ]    522
GCic            COB-COLOR-CYAN                      178 [screenio     ]    535
GCic            COB-COLOR-GREEN                     178 [screenio     ]    445     560     607
                                                                           623
GCic            COB-COLOR-MAGENTA                   178 [screenio     ]
GCic            COB-COLOR-RED                       178 [screenio     ]    528     592
GCic            COB-COLOR-WHITE                     178 [screenio     ]    440     523     529
                                                                           545     555     570
                                                                           577     630     637
GCic            COB-COLOR-YELLOW                    178 [screenio     ]
GCic            COB-SCR-ESC                         178 [screenio     ]    883
GCic            COB-SCR-F1                          178 [screenio     ]    830
GCic            COB-SCR-F10                         178 [screenio     ]
GCic            COB-SCR-F11                         178 [screenio     ]
GCic            COB-SCR-F12                         178 [screenio     ]    886
GCic            COB-SCR-F13                         178 [screenio     ]
GCic            COB-SCR-F14                         178 [screenio     ]
GCic            COB-SCR-F15                         178 [screenio     ]
GCic            COB-SCR-F16                         178 [screenio     ]
GCic            COB-SCR-F17                         178 [screenio     ]
GCic            COB-SCR-F18                         178 [screenio     ]
GCic            COB-SCR-F19                         178 [screenio     ]
GCic            COB-SCR-F2                          178 [screenio     ]    836
GCic            COB-SCR-F20                         178 [screenio     ]
GCic            COB-SCR-F21                         178 [screenio     ]
GCic            COB-SCR-F22                         178 [screenio     ]
GCic            COB-SCR-F23                         178 [screenio     ]
GCic            COB-SCR-F24                         178 [screenio     ]
GCic            COB-SCR-F25                         178 [screenio     ]
GCic            COB-SCR-F26                         178 [screenio     ]
GCic            COB-SCR-F27                         178 [screenio     ]
GCic            COB-SCR-F28                         178 [screenio     ]
GCic            COB-SCR-F29                         178 [screenio     ]
GCic            COB-SCR-F3                          178 [screenio     ]    842
GCic            COB-SCR-F30                         178 [screenio     ]
GCic            COB-SCR-F31                         178 [screenio     ]
GCic            COB-SCR-F32                         178 [screenio     ]

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 90

GNUCOBOL 2.2 20JUL2017  Cross-Reference Listing                                       2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References      Page: 91
=============== ================================ ====== =============== ========================
GCic            COB-SCR-F33                         178 [screenio     ]
GCic            COB-SCR-F34                         178 [screenio     ]
GCic            COB-SCR-F35                         178 [screenio     ]
GCic            COB-SCR-F36                         178 [screenio     ]
GCic            COB-SCR-F37                         178 [screenio     ]
GCic            COB-SCR-F38                         178 [screenio     ]
GCic            COB-SCR-F39                         178 [screenio     ]
GCic            COB-SCR-F4                          178 [screenio     ]    848
GCic            COB-SCR-F40                         178 [screenio     ]
GCic            COB-SCR-F41                         178 [screenio     ]
GCic            COB-SCR-F42                         178 [screenio     ]
GCic            COB-SCR-F43                         178 [screenio     ]
GCic            COB-SCR-F44                         178 [screenio     ]
GCic            COB-SCR-F45                         178 [screenio     ]
GCic            COB-SCR-F46                         178 [screenio     ]
GCic            COB-SCR-F47                         178 [screenio     ]
GCic            COB-SCR-F48                         178 [screenio     ]
GCic            COB-SCR-F49                         178 [screenio     ]
GCic            COB-SCR-F5                          178 [screenio     ]    854
GCic            COB-SCR-F50                         178 [screenio     ]
GCic            COB-SCR-F51                         178 [screenio     ]
GCic            COB-SCR-F52                         178 [screenio     ]
GCic            COB-SCR-F53                         178 [screenio     ]
GCic            COB-SCR-F54                         178 [screenio     ]
GCic            COB-SCR-F55                         178 [screenio     ]
GCic            COB-SCR-F56                         178 [screenio     ]
GCic            COB-SCR-F57                         178 [screenio     ]
GCic            COB-SCR-F58                         178 [screenio     ]
GCic            COB-SCR-F59                         178 [screenio     ]
GCic            COB-SCR-F6                          178 [screenio     ]    859
GCic            COB-SCR-F60                         178 [screenio     ]
GCic            COB-SCR-F61                         178 [screenio     ]
GCic            COB-SCR-F62                         178 [screenio     ]
GCic            COB-SCR-F63                         178 [screenio     ]
GCic            COB-SCR-F64                         178 [screenio     ]
GCic            COB-SCR-F7                          178 [screenio     ]    865
GCic            COB-SCR-F8                          178 [screenio     ]    871
GCic            COB-SCR-F9                          178 [screenio     ]    877
GCic            COB-SCR-FATAL                       178 [screenio     ]
GCic            COB-SCR-KEY-DOWN                    178 [screenio     ]
GCic            COB-SCR-KEY-UP                      178 [screenio     ]
GCic            COB-SCR-MAX-FIELD                   178 [screenio     ]
GCic            COB-SCR-NO-FIELD                    178 [screenio     ]
GCic            COB-SCR-OK                          178 [screenio     ]
GCic            COB-SCR-PAGE_DOWN                   178 [screenio     ]
GCic            COB-SCR-PAGE_UP                     178 [screenio     ]
GCic            COB-SCR-PRINT                       178 [screenio     ]
GCic            COB-SCR-TIME-OUT                    178 [screenio     ]
GCic            F-Cobc-Output-FILE                  171 FILE               162    1008    1026
GCic            F-Cobc-Output-REC                   172 FILE              1009    1014*   1015
                                                                          1023*   1024
GCic            F-Source-Code-FILE                  174 FILE               165     655    1174
                                                                          1178    1179    1192

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 91

GNUCOBOL 2.2 20JUL2017  Cross-Reference Listing                                       2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References      Page: 92
=============== ================================ ====== =============== ========================
                                                                          1193    1200
GCic            F-Source-Code-REC                   175 FILE              1183C   1197C
GCic            F1                                      WORKING-STORAGE    206
GCic            F12                                     WORKING-STORAGE    200
GCic            F2                                      WORKING-STORAGE    213
GCic            F3                                      WORKING-STORAGE    209
GCic            F4                                      WORKING-STORAGE    207
GCic            F5                                      WORKING-STORAGE    210     257
GCic            F6                                      WORKING-STORAGE    211
GCic            F7                                      WORKING-STORAGE    214
GCic            F8                                      WORKING-STORAGE    208
GCic            F9                                      WORKING-STORAGE    212
GCic            LD-Horiz-Line                       433 SCREEN             801
GCic            LD-LL-Corner                        428 SCREEN             456     486     502
                                                                           516
GCic            LD-Lower-T                          432 SCREEN             488
GCic            LD-LR-Corner                        430 SCREEN             458     490     504
                                                                           518
GCic            LD-UL-Corner                        427 SCREEN             446     460     492
                                                                           506
GCic            LD-Upper-T                          431 SCREEN             462
GCic            LD-UR-Corner                        429 SCREEN             448     464     494
                                                                           508
GCic            LD-Vert-Line                        434 SCREEN             450     451     453
                                                                           454     466     467
                                                                           468     470     471
                                                                           472     474     475
                                                                           476     478     479
                                                                           480     482     483
                                                                           484     496     497
                                                                           499     500     510
                                                                           511     513     514
GCic            LPP                                     PROCEDURE         1051C
GCic            LPPP                                    PROCEDURE         1052C
GCic            RETURN-CODE                             PROCEDURE         1010    1043*   1057*
                                                                          1059
GCic            S-Blank-SCR                         437 SCREEN             683    1234    1263
GCic            S-Switches-SCR                      439 SCREEN             827*    908     998
                                                                          1027    1042    1063
                                                                          1074    1260
GCic            SELCHAR                                 PROCEDURE          719     822     825
                                                                           832     838     844
                                                                           850     861     867
                                                                           873     879    1202
GCic            WS-Cmd-Args-TXT                     229 WORKING-STORAGE    723*    725     726
                                                                           729     734
GCic            WS-Cmd-End-Quote-CHR                231 WORKING-STORAGE    727*    730
GCic            WS-Cmd-SUB                          233 WORKING-STORAGE    724*    725     726
                                                                           728*    732*    737*
GCic            WS-Cmd-TXT                          227 WORKING-STORAGE    905*   1000*   1005*
                                                                          1007C   1076*   1083*
                                                                          1093*   1096*   1103*
                                                                          1107*   1113*   1118*

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 92

GNUCOBOL 2.2 20JUL2017  Cross-Reference Listing                                       2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References      Page: 93
=============== ================================ ====== =============== ========================
                                                                          1123*   1131*   1139*
                                                                          1145*   1151*   1156*
                                                                          1163C   1215*   1219*
                                                                          1220C   1222*   1226*
                                                                          1227C   1237*   1240*
                                                                          1243C   1245C   1247C
                                                                          1249C   1251C
GCic            WS-Cobc-Cmd-TXT                     235 WORKING-STORAGE    906*    915*    919*
                                                                           923*    927*    932*
                                                                           937*    942*    947*
                                                                           952*    957*    961*
                                                                           974*    982*    986*
                                                                          1001
GCic            WS-Compilation-Switches-TXT         180 WORKING-STORAGE
GCic            WS-Config-Fn-TXT                    237 WORKING-STORAGE    911*    917
GCic            WS-CS-All-Switches-TXT              215 WORKING-STORAGE
GCic            WS-CS-Arg-H1-TXT                    182 WORKING-STORAGE    640*
GCic            WS-CS-Arg-H2-TXT                    183 WORKING-STORAGE    641*
GCic            WS-CS-Args-TXT                      181 WORKING-STORAGE   1154    1155
GCic            WS-CS-Config-NUM                    200 WORKING-STORAGE    632     887*    888
                                                                           889*    910
GCic            WS-CS-DEBUG-CHR                     217 WORKING-STORAGE    593     831     832*
                                                                           834*    930
GCic            WS-CS-EXECUTE-CHR                   218 WORKING-STORAGE    596     686     849
                                                                           850*    852*
GCic            WS-CS-Extra-H1-TXT                  203 WORKING-STORAGE    638*
GCic            WS-CS-Extra-H2-TXT                  204 WORKING-STORAGE    639*
GCic            WS-CS-Extra-TXT                     202 WORKING-STORAGE    978     980
GCic            WS-CS-Filename-TXT                  193 WORKING-STORAGE    632     910
GCic            WS-CS-Filenames-Table-TXT           192 WORKING-STORAGE
GCic            WS-CS-Filenames-TXT                 184 WORKING-STORAGE    192
GCic            WS-CS-FREE-CHR                      219 WORKING-STORAGE    601     872     873*
                                                                           875*    955
GCic            WS-CS-LIBRARY-CHR                   220 WORKING-STORAGE    595     843     844*
                                                                           846*    921    1081
                                                                          1136    1175*   1202*
GCic            WS-CS-LISTING-CHR                   221 WORKING-STORAGE    597     682     819*
                                                                           822*    825*    968
                                                                           970*    972
GCic            WS-CS-NOFUNC-CHR                    222 WORKING-STORAGE    599     860     861*
                                                                           863*    945
GCic            WS-CS-NOTRUNC-CHR                   223 WORKING-STORAGE    602     878     879*
                                                                           881*    935
GCic            WS-CS-Switch-Defaults-TXT           205 WORKING-STORAGE    216
GCic            WS-CS-TRACEALL-CHR                  224 WORKING-STORAGE    594     837     838*
                                                                           840*    940
GCic            WS-CS-WARNALL-CHR                   225 WORKING-STORAGE    600     866     867*
                                                                           869*    950
GCic            WS-Delete-Fn-TXT                    239 WORKING-STORAGE
GCic            WS-File-Name-TXT                    241 WORKING-STORAGE    165     663     668
                                                                           731*    736*    739
                                                                           752     755     762
                                                                           765     776    1049C

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 93

GNUCOBOL 2.2 20JUL2017  Cross-Reference Listing                                       2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References      Page: 94
=============== ================================ ====== =============== ========================
GCic            WS-File-Status-Message-TXT          245 WORKING-STORAGE
GCic            WS-FN-CHR                           242 WORKING-STORAGE    757     764*    768*
GCic            WS-FSM-Msg-TXT                      249 WORKING-STORAGE    658*    658*    658*
                                                                           658*    658*    658*
                                                                           658*    658*    658*
                                                                           658*    658*    658*
                                                                           658*    658*    658*
                                                                           658*    658*    658*
                                                                           658*    658*    658*
                                                                           658*    658*    658*
                                                                           658*    658*    658*
                                                                           658*    658*    658*
GCic            WS-FSM-Status-CD                    247 WORKING-STORAGE    167     658     660
GCic            WS-Horizontal-Line-TXT              251 WORKING-STORAGE    447     457     461
                                                                           463     487     489
                                                                           493     503     507
                                                                           517     801*
GCic            WS-I-SUB                            253 WORKING-STORAGE    755*    756     757
                                                                           758     760     764
                                                                           768     783*    784
                                                                           785     786     788
                                                                           792     796     909*
                                                                           920*    924*    928*
                                                                           933*    938*    943*
                                                                           948*    953*    958*
                                                                           962*    975*    983*
                                                                           987*   1077*   1084*
                                                                          1094*   1097*   1104*
                                                                          1108*   1114*   1119*
                                                                          1124*   1132*   1140*
                                                                          1146*   1152*   1157*
GCic            WS-J-SUB                            255 WORKING-STORAGE   1099*   1100    1101
                                                                          1106
GCic            WS-Listing-CD                       257 WORKING-STORAGE    816     855*    856
                                                                           857*   1053C
GCic            WS-Listing-Filename-TXT             259 WORKING-STORAGE    162     992*    993C
                                                                          1002    1020    1048C
                                                                          1218    1225
GCic            WS-Listing-TXT                      261 WORKING-STORAGE    613     818*    821*
                                                                           824*
GCic            WS-OC-Compile-DT                    263 WORKING-STORAGE    525     709*
GCic            WS-OS-Cygwin-BOOL                   297 WORKING-STORAGE    752     776    1091
                                                                          1121    1214
GCic            WS-OS-Dir-CHR                       284 WORKING-STORAGE    753*    757     768
                                                                           777*   1117
GCic            WS-OS-Exe-Ext-CONST                 285 WORKING-STORAGE   1137    1138
GCic            WS-OS-Lib-Ext-CONST                 286 WORKING-STORAGE   1143    1144
GCic            WS-OS-Lib-Type-CONST                287 WORKING-STORAGE    611
GCic            WS-OS-OSX-BOOL                      299 WORKING-STORAGE   1221
GCic            WS-OS-Type-CD                       288 WORKING-STORAGE    803    1050C
GCic            WS-OS-Type-FILLER-TXT               301 WORKING-STORAGE    307
GCic            WS-OS-Type-TXT                      308 WORKING-STORAGE    803
GCic            WS-OS-Types-TXT                     307 WORKING-STORAGE

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 94

GNUCOBOL 2.2 20JUL2017  Cross-Reference Listing                                       2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References      Page: 95
=============== ================================ ====== =============== ========================
GCic            WS-OS-UNIX-BOOL                     298 WORKING-STORAGE   1121
GCic            WS-OS-Windows-BOOL                  296 WORKING-STORAGE   1214    1235
GCic            WS-Output-Msg-TXT                   311 WORKING-STORAGE    530     659*    806*
                                                                           893*    907*    997*
                                                                          1012*   1013    1021*
                                                                          1029*   1041*   1047*
                                                                          1056*   1061*   1073*
                                                                          1164*   1165*   1259
GCic            WS-Path-Delimiter-CHR               313 WORKING-STORAGE
GCic            WS-PFN-CHR                          320 WORKING-STORAGE    785     792*    796*
GCic            WS-Pgm-Nm-TXT                       323 WORKING-STORAGE    789*    794*    991
                                                                          1130    1236    1239
GCic            WS-Prog-Extension-TXT               315 WORKING-STORAGE    790*    795*
GCic            WS-Prog-File-Name-TXT               319 WORKING-STORAGE    571     762*    767*
                                                                           783     789     793
                                                                           985
GCic            WS-Prog-Folder-TXT                  317 WORKING-STORAGE    572     761*    766*
                                                                           770     771*    774C
                                                                          1090    1091    1095
                                                                          1100    1101    1106
                                                                          1112
GCic            WS-RS-1st-Prog-Complete-BOOL        336 WORKING-STORAGE   1177    1186*
GCic            WS-RS-Compile-Failed-BOOL           329 WORKING-STORAGE   1018*   1030
GCic            WS-RS-Compile-OK-BOOL               327 WORKING-STORAGE    681    1011*
GCic            WS-RS-Compile-OK-CHR                326 WORKING-STORAGE
GCic            WS-RS-Compile-OK-Warn-BOOL          328 WORKING-STORAGE    681
GCic            WS-RS-Complete-BOOL                 331 WORKING-STORAGE    678    1016*
GCic            WS-RS-Complete-CHR                  330 WORKING-STORAGE
GCic            WS-RS-Double-Quote-Used-BOOL        334 WORKING-STORAGE   1089*   1115*   1149
GCic            WS-RS-IDENT-DIV-CHR                 335 WORKING-STORAGE
GCic            WS-RS-More-To-1st-Prog-BOOL         337 WORKING-STORAGE   1176*
GCic            WS-RS-No-Switch-Changes-BOOL        339 WORKING-STORAGE    815     896*
GCic            WS-RS-No-Switch-Chgs-CHR            338 WORKING-STORAGE
GCic            WS-RS-Not-Complete-BOOL             332 WORKING-STORAGE    677*
GCic            WS-RS-Output-File-Avail-BOOL        343 WORKING-STORAGE    687     999*
GCic            WS-RS-Output-File-Busy-BOOL         342 WORKING-STORAGE
GCic            WS-RS-Output-File-Busy-CHR          341 WORKING-STORAGE
GCic            WS-RS-Quote-CHR                     333 WORKING-STORAGE
GCic            WS-RS-Source-Rec-Ident-BOOL         346 WORKING-STORAGE   1185    1191
GCic            WS-RS-Source-Rec-Ignored-BOOL       347 WORKING-STORAGE   1189*
GCic            WS-RS-Source-Rec-Linkage-BOOL       345 WORKING-STORAGE   1190    1201
GCic            WS-RS-Source-Record-Type-CHR        344 WORKING-STORAGE   1184C   1198C
GCic            WS-RS-Switch-Changes-BOOL           340 WORKING-STORAGE    814*
GCic            WS-RS-Switch-Error-CHR              348 WORKING-STORAGE
GCic            WS-RS-Switch-Is-Bad-BOOL            349 WORKING-STORAGE
GCic            WS-RS-Switch-Is-Good-BOOL           350 WORKING-STORAGE
GCic            WS-Runtime-Switches-TXT             325 WORKING-STORAGE
GCic            WS-Tally-QTY                        352 WORKING-STORAGE    965*    967*    969

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 95

GNUCOBOL 2.2 20JUL2017  Cross-Reference Listing                                       2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References      Page: 96
=============== ================================ ====== =============== ========================
LISTING         000-Main                           2406 PROCEDURE
LISTING         100-Initialization                 2423 PROCEDURE         2407
LISTING         300-Tokenize-Source                2496 PROCEDURE         2414
LISTING         310-Get-Token                      2547 PROCEDURE         2505
LISTING         311-Control-Record                 2707 PROCEDURE         2566
LISTING         312-Expanded-Src-Record            2753 PROCEDURE         2568
LISTING         313-Check-For-Numeric-Token        2764 PROCEDURE         2694
LISTING         320-IDENTIFICATION-DIVISION        2806 PROCEDURE         2526
LISTING         330-ENVIRONMENT-DIVISION           2826 PROCEDURE         2528
LISTING         340-DATA-DIVISION                  2852 PROCEDURE         2530
LISTING         350-PROCEDURE-DIVISION             2908 PROCEDURE         2532
LISTING         351-ACCEPT                         2979 PROCEDURE         2935
LISTING         351-ADD                            2989 PROCEDURE         2937
LISTING         351-ALLOCATE                       3000 PROCEDURE         2939
LISTING         351-CALL                           3012 PROCEDURE         2941
LISTING         351-COMPUTE                        3023 PROCEDURE         2943
LISTING         351-DIVIDE                         3032 PROCEDURE         2945
LISTING         351-FREE                           3052 PROCEDURE         2947
LISTING         351-GENERATE                       3056 PROCEDURE         2949    2953    2969
LISTING         351-INITIALIZE                     3060 PROCEDURE         2951
LISTING         351-INITIATE                       3069 PROCEDURE
LISTING         351-INSPECT                        3073 PROCEDURE         2955
LISTING         351-MOVE                           3103 PROCEDURE         2957
LISTING         351-MULTIPLY                       3112 PROCEDURE         2959
LISTING         351-PERFORM                        3128 PROCEDURE         2961
LISTING         351-SET                            3141 PROCEDURE         2963
LISTING         351-STRING                         3150 PROCEDURE         2965
LISTING         351-SUBTRACT                       3161 PROCEDURE         2967
LISTING         351-TERMINATE                      3172 PROCEDURE
LISTING         351-TRANSFORM                      3176 PROCEDURE         2971
LISTING         351-UNSTRING                       3186 PROCEDURE         2973
LISTING         360-Release-Def                    3203 PROCEDURE         2842    2879    2882
                                                                          2885    2888    2891
                                                                          2926
LISTING         361-Release-Ref                    3214 PROCEDURE         2844    2848    2901
                                                                          2975    2985    2996
                                                                          3008    3028    3048
                                                                          3065    3099    3108
                                                                          3124    3137    3146
                                                                          3157    3168    3182
                                                                          3199
LISTING         362-Release-Upd                    3219 PROCEDURE         2894    2897    2982
                                                                          2992    2994    3003
                                                                          3006    3015    3017
                                                                          3026    3044    3046
                                                                          3053    3057    3063
                                                                          3070    3080    3106
                                                                          3122    3131    3134
                                                                          3144    3153    3155
                                                                          3164    3166    3173
                                                                          3179    3189    3191
                                                                          3193    3195    3197
LISTING         363-Set-Upd                        3224 PROCEDURE         3035    3115    3220

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 96

GNUCOBOL 2.2 20JUL2017  Cross-Reference Listing                                       2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References      Page: 97
=============== ================================ ====== =============== ========================
LISTING         364-Set-Ref                        3234 PROCEDURE         3076    3215
LISTING         365-Release-Arg                    3243 PROCEDURE         3019
LISTING         366-Set-Arg                        3248 PROCEDURE         3244
LISTING         400-Produce-Xref-Listing           3259 PROCEDURE         2415
LISTING         410-Generate-Report-Line           3337 PROCEDURE         3268    3271    3281
                                                                          3285    3295    3307
                                                                          3323    3333
LISTING         420-Generate-Xref-Footer           3405 PROCEDURE         3274    3339
LISTING         500-Produce-Source-Listing         3439 PROCEDURE         2409
LISTING         510-Control-Record                 3462 PROCEDURE         3452
LISTING         520-Expanded-Src-Record            3479 PROCEDURE         3454
LISTING         530-Generate-Source-Line           3545 PROCEDURE         3446    3493    3497
                                                                          3502    3506    3510
                                                                          3513    3529    3533
                                                                          3537    3540
LISTING         F-ES-1-7-TXT                       1426 FILE              2564    3450
LISTING         F-ES-1-CHR                         1423 FILE              2565    3451
LISTING         F-ES-2-256-TXT-256                 1424 FILE              2708    3463
LISTING         F-ES-8-256-TXT                     1427 FILE
LISTING         F-Expanded-Src-FILE                1421 FILE              1412    2497    2544
                                                                          2554    3441    3444
                                                                          3459    3472
LISTING         F-Expanded-Src-REC                 1422 FILE              2498*   2552    2576
                                                                          2578    2608    2612
                                                                          2621    2625    2634
                                                                          2638    2646    2664
                                                                          2749*   2754    3515
                                                                          3517
LISTING         F-Expanded-Src2-REC                1425 FILE
LISTING         F-Listing-135-REC                  1431 FILE              3347*   3349*   3351*
                                                                          3352    3354*   3355
                                                                          3358*   3360*   3361
                                                                          3362*   3363*   3364
                                                                          3365    3366    3367
                                                                          3395    3407    3409*
                                                                          3410    3412*   3414*
                                                                          3416    3418    3419
                                                                          3563    3565    3567*
                                                                          3568    3570*   3572*
                                                                          3573    3574    3604*
                                                                          3606*   3608*   3609
                                                                          3611*   3612    3614*
                                                                          3616*   3617    3619*
                                                                          3620    3646*   3651*
                                                                          3652    3655*   3656
LISTING         F-Listing-96-REC                   1430 FILE              3370*   3372*   3374*
                                                                          3375    3377*   3378
                                                                          3381*   3383*   3384
                                                                          3385*   3386*   3387
                                                                          3388    3389    3390
                                                                          3398    3422    3424*
                                                                          3425    3427*   3429*
                                                                          3431    3433    3434

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 97

GNUCOBOL 2.2 20JUL2017  Cross-Reference Listing                                       2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References      Page: 98
=============== ================================ ====== =============== ========================
                                                                          3580    3582    3583
                                                                          3585    3587*   3588
                                                                          3590*   3592*   3593
                                                                          3594    3623*   3625*
                                                                          3627*   3628    3630*
                                                                          3631    3633*   3635*
                                                                          3636    3638*   3639
                                                                          3647    3662    3667
                                                                          3671    3676    3680
                                                                          3684
LISTING         F-Listing-FILE                     1429 FILE              1414    2408    2416
LISTING         F-Listing-REC                      1432 FILE
LISTING         F-Original-Src-FILE                1434 FILE              1416    3440    3458
                                                                          3482
LISTING         F-Original-Src-REC                 1435 FILE              3486
LISTING         F-OS-1-128-TXT                     1436 FILE
LISTING         F-OS-129-256-TXT                   1441 FILE
LISTING         F-OS-7-CHR                         1438 FILE              3491
LISTING         F-OS-8-72-TXT                      1439 FILE              3487    3519
LISTING         F-Sort-Work-FILE                   1443 FILE              1418    2410    3266
LISTING         F-Sort-Work-REC                    1444 FILE              2519*   2521    2556*
                                                                          2558    3036    3039*
                                                                          3042    3084*   3087
                                                                          3092*   3095    3116
                                                                          3118*   3121    3204*
                                                                          3211    3216    3221
                                                                          3225*   3235*   3245
                                                                          3249*
LISTING         F-SW-Def-Line-NUM                  1449 FILE              3209*   3292    3300
                                                                          3304    3316    3317
LISTING         F-SW-Prog-ID-TXT                   1445 FILE              2411    3205*   3226*
                                                                          3236*   3250*   3277
                                                                          3283    3288    3297
                                                                          3309    3313
LISTING         F-SW-Ref-Flag-CHR                  1452 FILE              3041*   3086*   3094*
                                                                          3120*   3231*   3255*
                                                                          3328
LISTING         F-SW-Ref-Line-NUM                  1451 FILE              2413    3210*   3230*
                                                                          3240*   3254*   3326
LISTING         F-SW-Reference-TXT                 1450 FILE              3320
LISTING         F-SW-Section-TXT                   1448 FILE              3208*   3229*   3239*
                                                                          3253*   3299    3315
LISTING         F-SW-Token-TXT                     1447 FILE              3207*   3228*   3238*
                                                                          3252*   3314
LISTING         F-SW-Token-Uc-TXT                  1446 FILE              2412    3206*   3227*
                                                                          3237*   3251*   3278
                                                                          3289    3291    3303
LISTING         L-Listing-CD                       2398 LINKAGE           2405    2445    2482
                                                                          3345    3394    3406
                                                                          3547    3561    3602
                                                                          3643
LISTING         L-Listing-Fn-TXT                   2388 LINKAGE           1414    2400
LISTING         L-LPP-NUM                          2394 LINKAGE           2403    2483

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 98

GNUCOBOL 2.2 20JUL2017  Cross-Reference Listing                                       2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References      Page: 99
=============== ================================ ====== =============== ========================
LISTING         L-LPP-Port-NUM                     2396 LINKAGE           2404    2485
LISTING         L-OS-Type-CD                       2392 LINKAGE           2402    2428
LISTING         L-Src-Fn-TXT                       2390 LINKAGE           1416    2401    2433
                                                                          2433*   2434    2435
                                                                          2439    2442    2455
                                                                          2457    2459    2464
LISTING         RETURN-CODE                             PROCEDURE         2475
LISTING         WS-CD-In-DATA-DIV-BOOL             1469 WORKING-STORAGE   2529
LISTING         WS-CD-In-ENV-DIV-BOOL              1468 WORKING-STORAGE   2527
LISTING         WS-CD-In-IDENT-DIV-BOOL            1467 WORKING-STORAGE   2525
LISTING         WS-CD-In-PROC-DIV-BOOL             1470 WORKING-STORAGE   2531
LISTING         WS-Copyright-TXT                   1455 WORKING-STORAGE   2426*   2431*   3411
                                                                          3426    3569    3589
LISTING         WS-CPI-13-15-TXT                   1476 WORKING-STORAGE   2820*
LISTING         WS-CPI-16-CHR                      1477 WORKING-STORAGE   2819
LISTING         WS-CS-1-CHR                        1480 WORKING-STORAGE   2742*
LISTING         WS-CS-11-14-TXT                    1483 WORKING-STORAGE   2744    2745*
LISTING         WS-CS-15-CHR                       1484 WORKING-STORAGE   2747*
LISTING         WS-CS-2-14-TXT                     1481 WORKING-STORAGE   2743*
LISTING         WS-Curr-Char-Is-Punct-BOOL         1458 WORKING-STORAGE   2587    2595    2600
LISTING         WS-Curr-Char-Is-Quote-BOOL         1462 WORKING-STORAGE   2606
LISTING         WS-Curr-Char-Is-X-BOOL             1463 WORKING-STORAGE   2619
LISTING         WS-Curr-Char-Is-Z-BOOL             1464 WORKING-STORAGE   2632
LISTING         WS-Curr-CHR                        1457 WORKING-STORAGE   2577*   2580    2582
                                                                          2588    2596    2602
                                                                          2609
LISTING         WS-Curr-Division-TXT               1466 WORKING-STORAGE   2502*   2538    2589
                                                                          2597    2697    2813*
                                                                          2832*   2858*   2914*
                                                                          2919*
LISTING         WS-Curr-Line-NUM                   1472 WORKING-STORAGE   2501*   2561*   2720*
                                                                          2760*   3209    3230
                                                                          3240    3254    3481*
LISTING         WS-Curr-Prog-ID-TXT                1474 WORKING-STORAGE   2491*   2818*   3205
                                                                          3226    3236    3250
LISTING         WS-Curr-Section-TXT                1479 WORKING-STORAGE   2723*   2728    2837*
                                                                          2863*   2909    2910*
                                                                          3208    3229    3239
                                                                          3253
LISTING         WS-Curr-Verb-TXT                   1486 WORKING-STORAGE   2492*   2516*   2540*
                                                                          2924    2933
LISTING         WS-Delim-TXT                       1488 WORKING-STORAGE   2649*   2651    2669*
                                                                          2671    2674
LISTING         WS-Dummy-TXT                       1490 WORKING-STORAGE   2467*   2712*   2741*
                                                                          2774*   2779*   2780
                                                                          3467*
LISTING         WS-Expanded-Src-Fn-TXT             1492 WORKING-STORAGE   1412    2472*   2473C
LISTING         WS-Filename-TXT                    1494 WORKING-STORAGE   2466*   2469    2740*
                                                                          2743
LISTING         WS-Flags-TXT                       1496 WORKING-STORAGE
LISTING         WS-Formatted-DT                    1499 WORKING-STORAGE   2490*   3350    3373
                                                                          3607    3626
LISTING         WS-GI-Prog-ID-TXT                  1502 WORKING-STORAGE   3277    3283    3288*

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                        Page: 99

GNUCOBOL 2.2 20JUL2017  Cross-Reference Listing                                       2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References     Page: 100
=============== ================================ ====== =============== ========================
LISTING         WS-GI-Token-TXT                    1503 WORKING-STORAGE   3278    3289*   3291
                                                                          3303
LISTING         WS-Group-Indicators-TXT            1501 WORKING-STORAGE   3261*
LISTING         WS-Held-Reference-TXT              1505 WORKING-STORAGE   2493*   2518    2519
                                                                          2520*   2555    2556
                                                                          2557*   3036*   3038
                                                                          3039    3040*   3077*
                                                                          3083    3084    3085*
                                                                          3091    3092    3093*
                                                                          3116*   3118    3119*
LISTING         WS-I-SUB                           1507 WORKING-STORAGE   2434*   2435    2436
                                                                          2438    2441*   2442
                                                                          2457*   2459    2460
                                                                          2461    2464    2717*
                                                                          2720    2731*   2733
                                                                          2734    2735    2738
                                                                          3262*   3296*   3308*
                                                                          3321*   3322    3324*
                                                                          3327    3329    3402*
LISTING         WS-J-SUB                           1509 WORKING-STORAGE   2458*   2462*   2464
                                                                          2732*   2736*   2738
LISTING         WS-Lines-Left-NUM                  1511 WORKING-STORAGE   3263*   3272    3286
                                                                          3338    3392*   3403
                                                                          3447    3494    3498
                                                                          3525*   3559    3641*
                                                                          3648    3657    3664
                                                                          3673    3686
LISTING         WS-Lines-Per-Page-Env-TXT          1515 WORKING-STORAGE   2447*   2451*   2478
                                                                          2479
LISTING         WS-Lines-Per-Page-NUM              1513 WORKING-STORAGE   2480*   2483*   2485*
                                                                          2488    3392    3641
LISTING         WS-Main-Module-Name-TXT            1517 WORKING-STORAGE   2439*   2443*   2719
                                                                          3469
LISTING         WS-Next-Char-Is-Quote-BOOL         1520 WORKING-STORAGE   2619    2632
LISTING         WS-Next-CHR                        1519 WORKING-STORAGE   2579*   2622    2635
LISTING         WS-OS-Type-FILLER-TXT              1522 WORKING-STORAGE   1528
LISTING         WS-OS-Type-TXT                     1529 WORKING-STORAGE   2428
LISTING         WS-OS-Types-TXT                    1528 WORKING-STORAGE
LISTING         WS-Page-No-TXT                     1534 WORKING-STORAGE   3344C   3359    3382
                                                                          3413    3428    3571
                                                                          3591    3601C   3615
                                                                          3634
LISTING         WS-Page-NUM                        1532 WORKING-STORAGE   2424*   3340*   3342
                                                                          3560    3597*   3599
LISTING         WS-PN-Literal-TXT                  1535 WORKING-STORAGE   3341*   3598*
LISTING         WS-PN-Page-NUM                     1536 WORKING-STORAGE   3342*   3343C   3599*
                                                                          3600C
LISTING         WS-Program-Path-TXT                1538 WORKING-STORAGE   2455*   2456C   3353
                                                                          3376    3610    3629
LISTING         WS-Reserved-Word-Table-TXT         2295 WORKING-STORAGE
LISTING         WS-Reserved-Word-TXT               2296 WORKING-STORAGE   2684
LISTING         WS-Reserved-Words-TXT              1540 WORKING-STORAGE   2295
LISTING         WS-RS-Duplicate-CHR                2304 WORKING-STORAGE   3264*   3279*   3294*

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                       Page: 100

GNUCOBOL 2.2 20JUL2017  Cross-Reference Listing                                       2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References     Page: 101
=============== ================================ ====== =============== ========================
                                                                          3305    3306*
LISTING         WS-RS-In-Copybook-BOOL             2307 WORKING-STORAGE   2726*   3475*
LISTING         WS-RS-In-Main-Module-BOOL          2306 WORKING-STORAGE   2721*   2759    3470*
                                                                          3480
LISTING         WS-RS-In-Which-Pgm-CHR             2305 WORKING-STORAGE
LISTING         WS-RS-Last-Token-Ended-Sent-CHR    2308 WORKING-STORAGE   2550*   2696
LISTING         WS-RS-Processing-PICTURE-CHR       2309 WORKING-STORAGE   2645    2659*   2868*
LISTING         WS-RS-Token-Ended-Sentence-CHR     2310 WORKING-STORAGE   2537    2549    2551*
                                                                          2584*   2613*   2626*
                                                                          2639*   2652*   2672*
LISTING         WS-RS-Verb-Has-Been-Found-CHR      2311 WORKING-STORAGE   2503*   2688*   2810*
LISTING         WS-Runtime-Switches                2303 WORKING-STORAGE
LISTING         WS-RW-IDX                          2299 WORKING-STORAGE   2685    2686
LISTING         WS-RW-Type-CD                      2300 WORKING-STORAGE   2686
LISTING         WS-RW-Word-TXT                     2301 WORKING-STORAGE   2298    2685
LISTING         WS-Saved-Section-TXT               2313 WORKING-STORAGE   2722    2723    2727
                                                                          2728*
LISTING         WS-SDL-Line-NUM                    2320 WORKING-STORAGE   3485*
LISTING         WS-SDL-Statement-TXT               2322 WORKING-STORAGE   3486*   3518*   3548
                                                                          3552    3554    3650
                                                                          3654*   3666    3670*
                                                                          3675    3679*   3683*
LISTING         WS-Src-Dashes-TXT                  2315 WORKING-STORAGE   3618    3637
LISTING         WS-Src-Detail-Line-TXT             2319 WORKING-STORAGE   3445*   3484*   3492*
                                                                          3496*   3501*   3505*
                                                                          3509*   3516*   3528*
                                                                          3532*   3536*   3646
                                                                          3651    3653*   3655
                                                                          3662    3667    3669*
                                                                          3671    3676    3678*
                                                                          3680    3682*   3684
                                                                          3689*
LISTING         WS-Src-Hold-TXT                    2324 WORKING-STORAGE   3650*   3654    3666*
                                                                          3670    3675*   3679
                                                                          3683
LISTING         WS-Src-Line-NUM                    2326 WORKING-STORAGE   3442*   3471    3483*
                                                                          3485
LISTING         WS-Src-Lines-NUM                   2328 WORKING-STORAGE   3546*   3549*   3553*
                                                                          3555*   3559    3562
                                                                          3576    3644    3660
LISTING         WS-Src-SUB                         2330 WORKING-STORAGE   2499*   2552    2553
                                                                          2572*   2576    2578
                                                                          2581*   2590*   2601*
                                                                          2607*   2611*   2612
                                                                          2614*   2620*   2624*
                                                                          2625    2627*   2633*
                                                                          2637*   2638    2640*
                                                                          2650*   2653*   2670*
                                                                          2675    2750*   2755*
                                                                          2757*
LISTING         WS-Suppress-FF-CHR                 1497 WORKING-STORAGE   2425*   3273*   3415
                                                                          3430
LISTING         WS-Tally-QTY                       2332 WORKING-STORAGE   2789*   2791*   2792

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                       Page: 101

GNUCOBOL 2.2 20JUL2017  Cross-Reference Listing                                       2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References     Page: 102
=============== ================================ ====== =============== ========================
                                                                          2796*   2797
LISTING         WS-Temp-10-Chars-TXT               2334 WORKING-STORAGE   2710*   2714    2715*
                                                                          2717    3465*
LISTING         WS-Temp-256-Chars-TXT              2344 WORKING-STORAGE   2474C   2711*   2718
                                                                          2730    2733    2738
                                                                          3466*   3468
LISTING         WS-Temp-32-Chars-1-TXT             2336 WORKING-STORAGE   2765*   2768    2775
LISTING         WS-Temp-32-Chars-2-TXT             2338 WORKING-STORAGE   2772*   2777*   2783
                                                                          2784*   2800
LISTING         WS-Temp-32-Chars-3-TXT             2340 WORKING-STORAGE   2773*   2778*   2786
                                                                          2787*   2800
LISTING         WS-Temp-65-Chars-TXT               2342 WORKING-STORAGE   3488*   3495    3500
                                                                          3504    3508    3520*
                                                                          3524    3527    3531
                                                                          3535
LISTING         WS-Today-DT                        2346 WORKING-STORAGE   2489*   2490
LISTING         WS-Token-Curr-TXT                  2348 WORKING-STORAGE   2509    2513*   2582*
                                                                          2591*   2602*   2610*
                                                                          2623*   2636*   2648*
                                                                          2655    2668*   2678
                                                                          2680*   2698*   2765
                                                                          2812    2818    2831
                                                                          2836    2857    2862
                                                                          2866    2900    2918
                                                                          3207    3228    3238
                                                                          3252
LISTING         WS-Token-Curr-Uc-TXT               2350 WORKING-STORAGE   2510*   2513    2516
                                                                          2535    2912    3206
                                                                          3227    3237    3251
LISTING         WS-Token-Prev-TXT                  2352 WORKING-STORAGE   2517*   2535*   2539*
                                                                          2598*   2813    2816
                                                                          2817*   2832    2837
                                                                          2841    2858    2863
                                                                          2872    2873*   2877
                                                                          2880*   2883*   2886*
                                                                          2889*   2892*   2895*
                                                                          2898*   2913    2919
                                                                          2923    2927*   2980
                                                                          2983*   2990    3001
                                                                          3004*   3013    3024
                                                                          3033    3061    3074
                                                                          3078*   3081*   3089*
                                                                          3097*   3104    3113
                                                                          3129    3132*   3135*
                                                                          3142    3151    3162
                                                                          3177    3180*   3187
LISTING         WS-Token-Search-TXT                2354 WORKING-STORAGE   2678*   2679    2685
LISTING         WS-Token-Type-CD                   2356 WORKING-STORAGE   2583*   2592*   2603*
                                                                          2656*   2660*   2681*
                                                                          2686*   2699*
LISTING         WS-TT-Token-Is-Argtype-BOOL        2357 WORKING-STORAGE   2807    2827    2853
LISTING         WS-TT-Token-Is-EOF-BOOL            2358 WORKING-STORAGE   2506    2560*
LISTING         WS-TT-Token-Is-Function-BOOL       2359 WORKING-STORAGE   2847

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                       Page: 102

GNUCOBOL 2.2 20JUL2017  Cross-Reference Listing                                       2017/07/22
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References     Page: 103
=============== ================================ ====== =============== ========================
LISTING         WS-TT-Token-Is-Identifier-BOOL     2360 WORKING-STORAGE   2693*   2840    2876
                                                                          2922    2930
LISTING         WS-TT-Token-Is-Keyword-BOOL        2361 WORKING-STORAGE   2511    2534    2811
                                                                          2830    2835    2856
                                                                          2861    2867    2917
LISTING         WS-TT-Token-Is-Lit-Alpha-BOOL      2362 WORKING-STORAGE   2616*   2642*
LISTING         WS-TT-Token-Is-Lit-Number-BOOL     2363 WORKING-STORAGE   2629*   2695    2769*
                                                                          2801*
LISTING         WS-TT-Token-Is-Reserved-Wd-BOOL    2365 WORKING-STORAGE   2512    2808*   2828*
                                                                          2854*   2871
LISTING         WS-TT-Token-Is-Verb-BOOL           2364 WORKING-STORAGE   2515    2687
LISTING         WS-Usernames-QTY                   2367 WORKING-STORAGE   2500*
LISTING         WS-Version-TXT                     2369 WORKING-STORAGE   2432*   3346    3369
                                                                          3603    3622
LISTING         WS-XDL-Def-Line-NUM                2376 WORKING-STORAGE   3300*   3317*
LISTING         WS-XDL-Prog-ID-TXT                 2372 WORKING-STORAGE   3297*   3309*   3313*
LISTING         WS-XDL-Ref-Flag-CHR                2382 WORKING-STORAGE   3329*
LISTING         WS-XDL-Ref-Line-NUM                2381 WORKING-STORAGE   3327*
LISTING         WS-XDL-Reference-TXT               2380 WORKING-STORAGE
LISTING         WS-XDL-Section-TXT                 2378 WORKING-STORAGE   3299*   3315*
LISTING         WS-XDL-Token-TXT                   2374 WORKING-STORAGE   3298*   3310*   3314*
LISTING         WS-Xref-Detail-Line-TXT            2371 WORKING-STORAGE   3260*   3267    3270*
                                                                          3280    3284*   3293
                                                                          3312    3332    3395
                                                                          3398    3401*
LISTING         WS-Xref-Lines-Per-Rec-NUM          2385 WORKING-STORAGE   2446*   2450*   3322

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2017, Gary L. Cutler, GPL                       Page: 103

6. STREAMIO
***********

Usage of this subroutine is completely documented in the program
comments.  The program COPY's a copybook named STREAMIOcb, the format of
which is described in the program comments.

Both STREAMIO.cbl and STREAMIOcb.cpy are included in the "samples"
directory of any pre-built distributions of GnuCOBOL that I have
created.

In addition to general GnuCOBOL concepts, this program provides a useful
demonstration of the following:

   * Coding a GnuCOBOL subroutine

   * Using the "REPLACING" clause on a CDF "COPY" statement

   * Using hexadecimal alphanumeric literals

   * Using the following statements:

        o "ACCEPT FROM ENVIRONMENT" statement

        o "INSPECT" statement

        o "STRING" statement

   * Using the following built-in subroutines:

        o "C$PARAMSIZE" built-in system subroutine

        o "CBL_CLOSE_FILE" built-in system subroutine

        o "CBL_DELETE_FILE" built-in system subroutine

        o "CBL_EXIT_PROC" built-in system subroutine

        o "CBL_OPEN_FILE" built-in system subroutine

        o "CBL_READ_FILE" built-in system subroutine

        o "CBL_WRITE_FILE" built-in system subroutine

   * Using the following intrinsic functions:

        o "RANDOM" intrinsic function

        o "TRIM" intrinsic function

First, here is the STREAMIOcb.cpy copybook:

           05 SCB-Handle-NUM                    PIC X(4) COMP-X.
           05 SCB-Mode-CD                       PIC X(1).
              88 SCB-MODE-Input-BOOL            VALUE 'I', 'i'.
              88 SCB-MODE-Output-BOOL           VALUE 'O', 'o'.
              88 SCB-MODE-Both-BOOL             VALUE 'B', 'b'.
           05 SCB-Function-CD                   PIC X(2).
              88 SCB-Func-CLOSE-BOOL            VALUE 'C ', 'c '.
              88 SCB-Func-DELETE-BOOL           VALUE 'D ', 'd '.
              88 SCB-Func-OPEN-BOOL             VALUE 'O ', 'o '.
              88 SCB-Func-READ-BOOL             VALUE 'R ', 'r '.
              88 SCB-Func-READ-Delim-BOOL       VALUE 'RD', 'rd',
                                                      'rD', 'Rd'.
              88 SCB-Func-WRITE-BOOL            VALUE 'W ', 'w '.
              88 SCB-Func-WRITE-Delim-BOOL      VALUE 'WD', 'wd',
                                                      'wD', 'Wd'.
           05 SCB-Delimiter-Mode-CD             PIC X(1).
              88 SCB-DELIM-Unix-BOOL            VALUE 'U', 'u'.
              88 SCB-DELIM-Windows-BOOL         VALUE 'W', 'w'.
           05 SCB-Offset-NUM                    PIC X(8) COMP-X.
           05 SCB-Error-Routine-PTR             USAGE PROGRAM-POINTER.
           05 SCB-Error-Routine-NUM REDEFINES SCB-Error-Routine-PTR
                                                USAGE BINARY-LONG.
           05 SCB-Return-CD                     USAGE BINARY-LONG.
           05 SCB-Filename-TXT                  PIC X(256).

The program source and cross-reference listing, produced using the
GnuCOBOL Interactive Compiler front-end (GCic.cbl, one of the sample
programs included here), begins on the next page.
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                         C:/Users/tda010/Documents/Programs/Samples/STREAMIO.cbl
Line   Statement                                                                         Page: 1
====== =========================================================================================
     1        >>SOURCE FORMAT IS FIXED
     2        IDENTIFICATION DIVISION.
     3        PROGRAM-ID. STREAMIO.
     4       *>****************************************************************
     5       *> Author: Gary L. Cutler                                       **
     6       *>                                                              **
     7       *> This routine centralizes all bytestream file I/O  functions  **
     8       *> into one routine.  The manner in which this routine is       **
     9       *> CALLed is as follows:                                        **
    10       *>                                                              **
    11       *>           CALL "STREAMIO" USING control-block [ , arg2 ]     **
    12       *>                                                              **
    13       *> where 'control-block' is defined by the "STREAMIOcb.cpy"     **
    14       *> copybook and 'arg2' will vary, depending upon the function   **
    15       *> specified in the control block.                              **
    16       *>                                                              **
    17       *> The STREAMIO routine has an advantage over the various       **
    18       *> "CBL_xxxxxx_FILE" routines in that:                          **
    19       *>                                                              **
    20       *> 1. It automates the establishment and on-going adjustment of **
    21       *>    the file-offset value in such a way as to simplify the    **
    22       *>    sequential processing of a bytestream file (you may still **
    23       *>    specify a file-offset manually on each read or write, if  **
    24       *>    you wish)                                                 **
    25       *>                                                              **
    26       *> 2. It auto-detects the size of the I/O buffer you supply to  **
    27       *>    STREAMIO, using that as the byte-count of all read and    **
    28       *>    write operations.                                         **
    29       *>                                                              **
    30       *> 3. Not only does it support the raw input and output of data **
    31       *>    that the CBL_READ_FILE and CBL_WRITE_FILE routines do,    **
    32       *>    but on input it is also capable of delivering just a      **
    33       *>    single newline-delimited or carriage-return/newline de-   **
    34       *>    limited record to the caller.                             **
    35       *>                                                              **
    36       *> 4. On output, STREAMIO can optionally append either a new-   **
    37       *>    line or carriage-return/newline sequence (your choice) to **
    38       *>    the end of every record it writes.                        **
    39       *>                                                              **
    40       *> 5. STREAMIO can automatically generate filenames for output  **
    41       *>    files if you wish, simplifying the process of creating    **
    42       *>    scratch or work files.                                    **
    43       *>                                                              **
    44       *> 6. The STREAMIO routine also allows you to (optionally) re-  **
    45       *>    gister a general error-handling routine to be given con-  **
    46       *>    trol should a fatal error be detected with STREAMIO.      **
    47       *>                                                              **
    48       *>    This routine can be "turned on" and "turned off" at will. **
    49       *>                                                              **

================================================================================================
GCic for OSX Copyright (C) 2009-2014, Gary L. Cutler, GPL                                Page: 1
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                         C:/Users/tda010/Documents/Programs/Samples/STREAMIO.cbl
Line   Statement                                                                         Page: 2
====== =========================================================================================
    50       *> The control block format is as follows.  This structure must **
    51       *> be defined under an 01-level data item of your creation and  **
    52       *> should be INITIALIZEd before any items within it are used.   **
    53       *>                                                              **
    54       *> 05 SCB-Handle-NUM                   PIC X(4) COMP-X.         **
    55       *> 05 SCB-Mode-CD                      PIC X(1).                **
    56       *>    88 SCB-Mode-Input-BOOL           VALUE 'I', 'i'.          **
    57       *>    88 SCB-Mode-Output-BOOL          VALUE 'O', 'o'.          **
    58       *>    88 SCB-Mode-Both-BOOL            VALUE 'B', 'b'.          **
    59       *> 05 SCB-Function-CD                  PIC X(2).                **
    60       *>    88 SCB-Func-CLOSE-BOOL           VALUE 'C ', 'c '.        **
    61       *>    88 SCB-Func-DELETE-BOOL          VALUE 'D ', 'd '.        **
    62       *>    88 SCB-Func-OPEN-BOOL            VALUE 'O ', 'o '.        **
    63       *>    88 SCB-Func-READ-BOOL            VALUE 'R ', 'r '.        **
    64       *>    88 SCB-Func-READ-Delim-BOOL      VALUE 'RD', 'rd',        **
    65       *>                                           'rD', 'Rd'.        **
    66       *>    88 SCB-Func-WRITE-BOOL           VALUE 'W ', 'w '.        **
    67       *>    88 SCB-Func-WRITE-Delim-BOOL     VALUE 'WD', 'wd',        **
    68       *>                                           'wD', 'Wd'.        **
    69       *> 05 SCB-Delimiter-Mode-CD            PIC X(1).                **
    70       *>    88 SCB-Delim-Unix-BOOL           VALUE 'U', 'u'.          **
    71       *>    88 SCB-Delim-Windows-BOOL        VALUE 'W', 'w'.          **
    72       *> 05 SCB-Offset-NUM                   PIC X(8) COMP-X.         **
    73       *> 05 SCB-Error-Routine-PTR            USAGE PROGRAM-POINTER.   **
    74       *> 05 SCB-Error-Routine-NUM REDEFINES SCB-Error-Routine-PTR     **
    75       *>                                     USAGE BINARY-LONG.       **
    76       *> 05 SCB-Return-CD                    USAGE BINARY-LONG.       **
    77       *> 05 SCB-Filename-TXT                 PIC X(256).              **
    78       *>                                                              **
    79       *> Such a structure is defined for your use using the copybook  **
    80       *> "STREAMIOcb.cpy" (you may also define your own, provided it  **
    81       *> conforms to the above layout).                               **
    82       *>--------------------------------------------------------------**
    83       *> SCB-Handle-NUM                                               **
    84       *>--------------------------------------------------------------**
    85       *>                                                              **
    86       *> Serves as a file handle to the file once it has been opened  **
    87       *> (via the "SCB-Func-OPEN-BOOL" function).                     **
    88       *>                                                              **
    89       *>--------------------------------------------------------------**
    90       *> SCB-Mode-CD                                                  **
    91       *>--------------------------------------------------------------**
    92       *>                                                              **
    93       *> Prior to calling "STREAMIO" for the first time for a file,   **
    94       *> the appropriate subordinate level-88 must be set to TRUE to  **
    95       *> select an I/O mode.  You may also simply move one of the     **
    96       *> string values listed on the level-88 items to "SCB-Mode-CD". **
    97       *>                                                              **
    98       *>--------------------------------------------------------------**

================================================================================================
GCic for OSX Copyright (C) 2009-2014, Gary L. Cutler, GPL                                Page: 2
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                         C:/Users/tda010/Documents/Programs/Samples/STREAMIO.cbl
Line   Statement                                                                         Page: 3
====== =========================================================================================
    99       *> SCB-Function-CD                                              **
   100       *>--------------------------------------------------------------**
   101       *>                                                              **
   102       *> The appropriate subordinate level-88 must be set to TRUE to  **
   103       *> select a function you'd like to execute against a file.  You **
   104       *> may also simply move one of the string values listed on the  **
   105       *> level-88 items to "SCB-Function-CD".                         **
   106       *>                                                              **
   107       *> Available functions are as follows:                          **
   108       *>                                                              **
   109       *> SCB-Func-OPEN-BOOL                                           **
   110       *>                                                              **
   111       *>      This must be the function specified the first time you  **
   112       *>      call STREAMIO for any given file.  It opens the file &  **
   113       *>      makes it available for use according to the             **
   114       *>      "SCB-Mode-CD" specification.                            **
   115       *>                                                              **
   116       *>      The filename being opened must be specified in the      **
   117       *>      "SCB-Filename-TXT" field.                               **
   118       *>                                                              **
   119       *>      The SCB-Offset-NUM field will be initialized to ZERO.   **
   120       *>                                                              **
   121       *>      If "arg2" is specified in conjunction with this funct-  **
   122       *>      ion, it will be ignored.                                **
   123       *>                                                              **
   124       *> SCB-Func-CLOSE-BOOL                                          **
   125       *>                                                              **
   126       *>      This function should be the one specified the LAST time **
   127       *>      you call STREAMIO against a specific file.  After this  **
   128       *>      function has been executed, you'll have to re-open the  **
   129       *>      file if you wish to use it with STREAMIO again.         **
   130       *>                                                              **
   131       *>      The SCB-Handle-NUM item will be reset to ZERO.          **
   132       *>                                                              **
   133       *>      If "arg2" is specified in conjunction with this funct-  **
   134       *>      ion, it will be ignored.                                **
   135       *>                                                              **
   136       *> SCB-Func-DELETE-BOOL                                         **
   137       *>                                                              **
   138       *>      This function will delete the file specified in the     **
   139       *>      control block (see SCB-Filename-TXT).                   **
   140       *>                                                              **
   141       *>      This function should not be performed against a file    **
   142       *>      that is open.                                           **
   143       *>                                                              **
   144       *>      If "arg2" is specified in conjunction with this funct-  **
   145       *>      ion, it will be ignored.                                **
   146       *>                                                              **
   147       *> SCB-Func-READ-BOOL                                           **

================================================================================================
GCic for OSX Copyright (C) 2009-2014, Gary L. Cutler, GPL                                Page: 3
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                         C:/Users/tda010/Documents/Programs/Samples/STREAMIO.cbl
Line   Statement                                                                         Page: 4
====== =========================================================================================
   148       *>                                                              **
   149       *>      This function invokes a standard CBL_READ_FILE against  **
   150       *>      the file specified in the control block (see            **
   151       *>      SCB-Filename-TXT).                                      **
   152       *>                                                              **
   153       *>      The buffer into which you wish to read data must be     **
   154       *>      supplied as "arg2".  The size of that buffer, in bytes, **
   155       *>      will define the "byte-count" value supplied to the      **
   156       *>      CBL_READ_FILE subroutine.  The buffer data item will be **
   157       *>      set to SPACES before the read takes place.              **
   158       *>                                                              **
   159       *>      If the file-offset value (SCB-Offset-NUM) is greater    **
   160       *>      than the size of the file, a "no more data" return code **
   161       *>      (01) will be passed back in SCB-Return-CD and the       **
   162       *>      buffer will have been set to SPACES.                    **
   163       *>                                                              **
   164       *>      At the conclusion of a successful SCB-Func-READ-BOOL,   **
   165       *>      the value of SCB-Offset-NUM will have been automati-    **
   166       *>      cally incremented by the byte-count size of "arg2".     **
   167       *>                                                              **
   168       *> SCB-Func-WRITE-BOOL                                          **
   169       *>                                                              **
   170       *>      This function invokes a standard CBL_WRITE_FILE against **
   171       *>      the file specified in the control block (see            **
   172       *>      SCB-Filename-TXT).                                      **
   173       *>                                                              **
   174       *>      The buffer from which data will be written to the file  **
   175       *>      must be supplied as "arg2".  The size of that buffer,   **
   176       *>      in bytes, will define the "byte-count" value supplied   **
   177       *>      CBL_WRITE_FILE subroutine.  The buffer data will be     **
   178       *>      written to the file-offset position defined by the      **
   179       *>      SCB-Offset-NUM value.  You may specify "arg2" either    **
   180       *>      as an actual alphanumeric data item or as an alpha-     **
   181       *>      numeric literal.                                        **
   182       *>                                                              **
   183       *>      If the file-offset value (SCB-Offset-NUM) is greater    **
   184       *>      than the size of the file, a "no more data" return code **
   185       *>      will be passed back in SCB-Return-CD and the buffer     **
   186       *>      will have been set to SPACES.                           **
   187       *>                                                              **
   188       *>      At the conclusion of a successful SCB-Func-WRITE-BOOL   **
   189       *>      operation, the value of SCB-Offset-NUM will have been   **
   190       *>      automatically incremented by the byte-count size of     **
   191       *>      "arg2".                                                 **
   192       *>                                                              **
   193       *> SCB-Func-READ-Delim-BOOL                                     **
   194       *>                                                              **
   195       *>      SCB-Func-READ-Delim-BOOL bahaves like the SCB-FUNC-     **
   196       *>      READ function, with the following behavioral dif-       **

================================================================================================
GCic for OSX Copyright (C) 2009-2014, Gary L. Cutler, GPL                                Page: 4
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                         C:/Users/tda010/Documents/Programs/Samples/STREAMIO.cbl
Line   Statement                                                                         Page: 5
====== =========================================================================================
   197       *>      ferences:                                               **
   198       *>                                                              **
   199       *>      1. When data is read from the file, only that data read **
   200       *>         up to BUT NOT INCLUDING an end-of-line delimiter     **
   201       *>         sequence (either a LF or CRLF) will be retained in   **
   202       *>         the buffer - the remainder of the buffer from the    **
   203       *>         end-of-line sequence onward will be reset to SPACES. **
   204       *>         The file-offset value (SCB-Offset-NUM) will be in-   **
   205       *>         cremented ONLY by the amount of data transferred up  **
   206       *>         to AND INCLUDING the end-of-line sequence.           **
   207       *>                                                              **
   208       *>      2. When data is read from the file and an end-of-line   **
   209       *>         delimiter sequence (either a LF or a CRLF) cannot be **
   210       *>         found within the buffer, the assumption is made that **
   211       *>         the record is too long to fit within the buffer.  In **
   212       *>         these instances, an SCB-Return-CD value of 02 will   **
   213       *>         be returned and the SCB-Offset-NUM value will be     **
   214       *>         incremented past the next end-of-line sequence in    **
   215       *>         the file (this will involve at least one additional  **
   216       *>         call to CBL_READ_FILE to locate that eol sequence,   **
   217       *>         but any additional such reads will be done internal- **
   218       *>         ly to STREAMIO and will be entirely transparent to   **
   219       *>         the caller of STREAMIO.                              **
   220       *>                                                              **
   221       *>      DO NOT USE the Streamio-READ-Delim function if the      **
   222       *>      possibility exists that linefeed (X"0A") or carriage-   **
   223       *>      return (X"0D") characters could exist as actual data    **
   224       *>      characters in the file.                                 **
   225       *>                                                              **
   226       *> SCB-Func-WRITE-Delim-BOOL                                    **
   227       *>                                                              **
   228       *>      SCB-Func-WRITE-Delim-BOOL acts like the Streamio-       **
   229       *>      FUNC-WRITE function, with the following difference:     **
   230       *>                                                              **
   231       *>      After the specified data is written to the file, an     **
   232       *>      end-of-line sequence will also be written to the file.  **
   233       *>      The file-offset value (SCB-Value) will be incremented   **
   234       *>      by the byte-count size of the data PLUS the size of the **
   235       *>      end-of-line sequence.  One of two possible end-of-line  **
   236       *>      sequences must be specified using the value of SCB-     **
   237       *>      Delimter-Mode.                                          **
   238       *>                                                              **
   239       *>--------------------------------------------------------------**
   240       *> SCB-Delimiter-Mode-CD                                        **
   241       *>--------------------------------------------------------------**
   242       *>                                                              **
   243       *> This data item is needed only when issuing the Streamio-     **
   244       *> FUNC-WRITE-Delim function.  In those circumstances, this     **
   245       *> item defines what end-of-line delimiter sequence is to be    **

================================================================================================
GCic for OSX Copyright (C) 2009-2014, Gary L. Cutler, GPL                                Page: 5
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                         C:/Users/tda010/Documents/Programs/Samples/STREAMIO.cbl
Line   Statement                                                                         Page: 6
====== =========================================================================================
   246       *> written:                                                     **
   247       *>                                                              **
   248       *> If SCB-Delim-Unix-BOOL is true, a linefeed character will    **
   249       *> be written.                                                  **
   250       *>                                                              **
   251       *> If SCB-Delim-Windows-BOOL is true, a carriage-return and     **
   252       *> linefeed sequence will be written.                           **
   253       *>                                                              **
   254       *>--------------------------------------------------------------**
   255       *> SCB-Offset-NUM                                               **
   256       *>--------------------------------------------------------------**
   257       *>                                                              **
   258       *> This data item specifies the next relative byte number with- **
   259       *> in the file where the next read or write will start.         **
   260       *>                                                              **
   261       *> SCB-Offset-NUM is automatically set to 0 (the first byte)    **
   262       *> when the file is opened, and is automatically incremented as **
   263       *> the file is read or written via STREAMIO.                    **
   264       *>                                                              **
   265       *> You may also manually set this value as desired before any   **
   266       *> call to STREAMIO.                                            **
   267       *>                                                              **
   268       *>--------------------------------------------------------------**
   269       *> SCB-Error-Routine-PTR                                        **
   270       *>--------------------------------------------------------------**
   271       *>                                                              **
   272       *> To specify a general error-handling routine for handling     **
   273       *> STREAMIO failures, Create the routine and define an entry-   **
   274       *> name for it via the ENTRY statement.  Then use the following **
   275       *> to set that routine up as the error handler:                 **
   276       *>                                                              **
   277       *>    SET SCB-Error-Routine-PTR TO ENTRY "entry-name"           **
   278       *>                                                              **
   279       *> To "turn off" the error-routine:                             **
   280       *>                                                              **
   281       *>    SET SCB-Error-Routine-PTR TO NULL                         **
   282       *>                                                              **
   283       *> If a fatal error occurs (any error not marked with a ">" in  **
   284       *> the SCB-Return-CD discussion), the error routine you spe-    **
   285       *> cified (if any) will be set up as an exit routine via the    **
   286       *> CBL_EXIT_PROC subroutine; the STREAMIO routine will then is- **
   287       *> sue a STOP RUN to intentionally trigger your error routine.  **
   288       *> You will not be able to recover your program once your error **
   289       *> routine triggers.  If you wish to be able to recover from    **
   290       *> fatal STREAMIO errors, you should NOT use the SCB-Error-     **
   291       *> Routine feature but instead you should explicitly test the   **
   292       *> SCB-Return-CD value after every call to STREAMIO.            **
   293       *>                                                              **
   294       *> A default error routine is defined by the "STREAMIOError.cpy"**

================================================================================================
GCic for OSX Copyright (C) 2009-2014, Gary L. Cutler, GPL                                Page: 6
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                         C:/Users/tda010/Documents/Programs/Samples/STREAMIO.cbl
Line   Statement                                                                         Page: 7
====== =========================================================================================
   295       *> copybook.                                                    **
   296       *>                                                              **
   297       *>--------------------------------------------------------------**
   298       *> SCB-Return-CD                                                **
   299       *>--------------------------------------------------------------**
   300       *>                                                              **
   301       *> The following are the possible SCB-Return-CD values.  The    **
   302       *> ones marked with a ">" will NOT trigger an error-routine, if **
   303       *> one is currently registered via SCB-Error-Routine-PTR.       **
   304       *>                                                              **
   305       *>   12 I/O error writing to file                               **
   306       *>   11 File does not exist                                     **
   307       *>   10 File already OPEN or already CLOSEd                     **
   308       *> > 02 READ-Delim was truncated                                **
   309       *> > 01 No more data is available from the current              **
   310       *>      SCB-Offset-NUM                                          **
   311       *> > 00 OK - the operation was successful                       **
   312       *>   -1 Invalid SCB-Function-CD                                 **
   313       *>   -2 Invalid SCB-Mode-CD                                     **
   314       *>   -3 CBL_xxxxx_FILE routine rejected operation               **
   315       *>   -4 Invalid delimiter mode specified (Not U/W)              **
   316       *>                                                              **
   317       *>--------------------------------------------------------------**
   318       *> SCB-Filename-TXT                                             **
   319       *>--------------------------------------------------------------**
   320       *>                                                              **
   321       *> This is the name of the file you wish to access.             **
   322       *>                                                              **
   323       *> If you are planning on reading the file, the file MUST exist **
   324       *> at the time the SCB-Func-OPEN-BOOL is executed.              **
   325       *>                                                              **
   326       *> If you are planning on writing to the file, the file need    **
   327       *> exist when the SCB-Func-OPEN-BOOL is issued.                 **
   328       *>                                                              **
   329       *> In general, the contents of SCB-Filename-TXT should re-      **
   330       *> flect the complete path to the file as well as the name of   **
   331       *> the file itself, unless the file is contained in whatever    **
   332       *> directory is current at the time the SCB-Func-OPEN-BOOL is   **
   333       *> executed.                                                    **
   334       *>                                                              **
   335       *> The following special values may be used for                 **
   336       *> SCB-Filename-TXT:                                            **
   337       *>                                                              **
   338       *> SPACES If the filename is SPACES, a filename will be created **
   339       *>        automatically for you in whatever directory is de-    **
   340       *>        fined by the TEMP environment variable.  If there IS  **
   341       *>        no TEMP variable defined, the "/tmp" folder will be   **
   342       *>        assumed.  The filename will be STREAMIO-nnnnnnnn.dat  **
   343       *>        where "nnnnnnnn" is a random number.                  **

================================================================================================
GCic for OSX Copyright (C) 2009-2014, Gary L. Cutler, GPL                                Page: 7
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                         C:/Users/tda010/Documents/Programs/Samples/STREAMIO.cbl
Line   Statement                                                                         Page: 8
====== =========================================================================================
   344       *>                                                              **
   345       *> .      If you specify only a dot (period) as the filename,   **
   346       *>        the behavior will be the same as with a value of      **
   347       *>        SPACES except there will be no ".dat" at the end of   **
   348       *>        the generated filename.                               **
   349       *>                                                              **
   350       *> .ext   If you specify a filename extension prefixed with a   **
   351       *>        dot (period), the behavior will be the same as if a   **
   352       *>        value of SPACES were specified, except that the given **
   353       *>        extension will be used instead of ".dat".  Note that  **
   354       *>        if you are using a Unix/Cygwin implementation of      **
   355       *>        OpenCOBOL and you'd like to specify a hidden file in  **
   356       *>        the current directory as the SCB-Filename-TXT, you    **
   357       *>        MUST code the filename as "./.xxxxx" to avoid having  **
   358       *>        it treated as this special name.                      **
   359       *>                                                              **
   360       *>****************************************************************
   361        ENVIRONMENT DIVISION.
   362        CONFIGURATION SECTION.
   363        REPOSITORY.
   364            FUNCTION ALL INTRINSIC.
   365        DATA DIVISION.
   366        WORKING-STORAGE SECTION.
   367        01  WS-Access-Mode-CD                     PIC X(1) COMP-X.
   368        01  WS-Arg-Length-NUM                     PIC X(4) COMP-X.
   369        01  WS-Buffer-TXT                         PIC X(256).
   370        01  WS-Delim-Buffer-TXT                   PIC X(2).
   371        01  WS-Env-Temp-TXT                       PIC X(256).
   372        01  WS-Slash-CHR                          PIC X(1).
   373        01  WS-Tally-NUM                          USAGE BINARY-LONG.
   374        01  WS-8-Digit-NUM                        PIC 9(8).
   375        01  WS-256-Byte-TXT                       PIC X(256).
   376        LINKAGE SECTION.
   377        01  L-StreamIO-Control-Block-TXT.
   378            COPY STREAMIOcb
   379                REPLACING LEADING ==SCB-== BY ==L-SCB-==.
        05 L-SCB-Handle-NUM PIC X(4) COMP-X.
        05 L-SCB-Mode-CD PIC X(1).
        88 L-SCB-MODE-Input-BOOL VALUE 'I' 'i'.
        88 L-SCB-MODE-Output-BOOL VALUE 'O' 'o'.
        88 L-SCB-MODE-Both-BOOL VALUE 'B' 'b'.
        05 L-SCB-Function-CD PIC X(2).
        88 L-SCB-Func-CLOSE-BOOL VALUE 'C ' 'c '.
        88 L-SCB-Func-DELETE-BOOL VALUE 'D ' 'd '.
        88 L-SCB-Func-OPEN-BOOL VALUE 'O ' 'o '.
        88 L-SCB-Func-READ-BOOL VALUE 'R ' 'r '.
        88 L-SCB-Func-READ-Delim-BOOL VALUE 'RD' 'rd'
        'rD' 'Rd'.
        88 L-SCB-Func-WRITE-BOOL VALUE 'W ' 'w '.

================================================================================================
GCic for OSX Copyright (C) 2009-2014, Gary L. Cutler, GPL                                Page: 8
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                         C:/Users/tda010/Documents/Programs/Samples/STREAMIO.cbl
Line   Statement                                                                         Page: 9
====== =========================================================================================
        88 L-SCB-Func-WRITE-Delim-BOOL VALUE 'WD' 'wd'
        'wD' 'Wd'.
        05 L-SCB-Delimiter-Mode-CD PIC X(1).
        88 L-SCB-DELIM-Unix-BOOL VALUE 'U' 'u'.
        88 L-SCB-DELIM-Windows-BOOL VALUE 'W' 'w'.
        05 L-SCB-Offset-NUM PIC X(8) COMP-X.
        05 L-SCB-Error-Routine-PTR USAGE PROGRAM-POINTER.
        05 L-SCB-Error-Routine-NUM REDEFINES L-SCB-Error-Routine-PTR
        USAGE BINARY-LONG.
        05 L-SCB-Return-CD USAGE BINARY-LONG.
        05 L-SCB-Filename-TXT PIC X(256).
   380        01  L-Arg2-TXT                            PIC X ANY LENGTH.
   381        PROCEDURE DIVISION USING L-StreamIO-Control-Block-TXT,
   382                                 L-Arg2-TXT.
   383        000-Main SECTION.
   384            MOVE 00 TO L-SCB-Return-CD
   385            EVALUATE TRUE
   386                WHEN L-SCB-Func-CLOSE-BOOL
   387                    PERFORM 030-Validate-Handle-NonZero
   388                    PERFORM 200-CLOSE
   389                WHEN L-SCB-Func-DELETE-BOOL
   390                    CALL "CBL_DELETE_FILE" USING L-SCB-Filename-TXT
   391                WHEN L-SCB-Func-OPEN-BOOL
   392                    PERFORM 020-Validate-Handle-Zero
   393                    PERFORM 100-OPEN
   394                WHEN L-SCB-Func-READ-BOOL
   395                    PERFORM 030-Validate-Handle-NonZero
   396                    PERFORM 400-READ
   397                WHEN L-SCB-Func-READ-Delim-BOOL
   398                    PERFORM 030-Validate-Handle-NonZero
   399                    PERFORM 500-READ-Delim
   400                WHEN L-SCB-Func-WRITE-BOOL
   401                    PERFORM 030-Validate-Handle-NonZero
   402                    PERFORM 300-WRITE
   403                WHEN L-SCB-Func-WRITE-Delim-BOOL
   404                    EVALUATE TRUE
   405                        WHEN L-SCB-Delim-Unix-BOOL
   406                            PERFORM 030-Validate-Handle-NonZero
   407                            PERFORM 300-WRITE
   408                            MOVE 1 TO WS-Arg-Length-NUM
   409                            MOVE X"0A" TO WS-Delim-Buffer-TXT
   410                        WHEN L-SCB-Delim-Windows-BOOL
   411                            PERFORM 030-Validate-Handle-NonZero
   412                            PERFORM 300-WRITE
   413                            MOVE 2 TO WS-Arg-Length-NUM
   414                            MOVE X"0D0A" TO WS-Delim-Buffer-TXT
   415                       WHEN OTHER
   416                            MOVE -4 TO L-SCB-Return-CD
   417                            PERFORM 099-ERROR-Return

================================================================================================
GCic for OSX Copyright (C) 2009-2014, Gary L. Cutler, GPL                                Page: 9
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                         C:/Users/tda010/Documents/Programs/Samples/STREAMIO.cbl
Line   Statement                                                                        Page: 10
====== =========================================================================================
   418                    END-EVALUATE
   419                    CALL "CBL_WRITE_FILE" USING L-SCB-Handle-NUM
   420                                                L-SCB-Offset-NUM
   421                                                WS-Arg-Length-NUM
   422                                                0
   423                                                WS-Delim-Buffer-TXT
   424                    PERFORM 040-Check-WRITE-SCB-Return-CD
   425                    ADD WS-Arg-Length-NUM TO L-SCB-Offset-NUM
   426                WHEN OTHER
   427                    MOVE -1 TO L-SCB-Return-CD
   428                    PERFORM 099-ERROR-Return
   429            END-EVALUATE
   430            GOBACK
   431            .
   432        020-Validate-Handle-Zero SECTION.
   433            IF L-SCB-Handle-NUM NOT = ZERO
   434                MOVE 10 TO L-SCB-Return-CD
   435                PERFORM 099-ERROR-Return
   436            END-IF
   437            .
   438        030-Validate-Handle-NonZero SECTION.
   439            IF L-SCB-Handle-NUM = ZERO
   440                MOVE 10 TO L-SCB-Return-CD
   441                PERFORM 099-ERROR-Return
   442            END-IF
   443            .
   444        040-Check-WRITE-SCB-Return-CD SECTION.
   445            IF RETURN-CODE < 0
   446                MOVE -3 TO L-SCB-Return-CD
   447                PERFORM 099-ERROR-Return
   448            END-IF
   449            IF RETURN-CODE = 30
   450                MOVE 12 TO L-SCB-Return-CD
   451                PERFORM 099-ERROR-Return
   452            END-IF
   453            MOVE 00 TO L-SCB-Return-CD
   454            .
   455        050-Check-READ-SCB-Return-CD SECTION.
   456            IF RETURN-CODE < 0
   457                MOVE -3 TO L-SCB-Return-CD
   458                PERFORM 099-ERROR-Return
   459            END-IF
   460            IF RETURN-CODE = 10
   461                MOVE 01 TO L-SCB-Return-CD
   462                GOBACK
   463            END-IF
   464            MOVE 00 TO L-SCB-Return-CD
   465            .
   466        060-Identify-TEMP SECTION.

================================================================================================
GCic for Windows/MinGW Copyright (C) 2009-2014, Gary L. Cutler, GPL                     Page: 10
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                         C:/Users/tda010/Documents/Programs/Samples/STREAMIO.cbl
Line   Statement                                                                        Page: 11
====== =========================================================================================
   467            ACCEPT WS-Env-Temp-TXT FROM ENVIRONMENT "TEMP"
   468            EVALUATE TRUE
   469                WHEN WS-Env-Temp-TXT (1:1) = "/"
   470                    MOVE "/"    TO WS-Slash-CHR
   471                WHEN WS-Env-Temp-TXT (2:1) = ":"
   472                    MOVE "\"    TO WS-Slash-CHR
   473                WHEN OTHER
   474                    MOVE "/tmp" TO WS-Env-Temp-TXT
   475                    MOVE "/"    TO WS-Slash-CHR
   476            END-EVALUATE
   477            .
   478        099-ERROR-Return SECTION.
   479            IF L-SCB-Error-Routine-NUM NOT = 0
   480                CALL "CBL_EXIT_PROC" USING 0, L-SCB-Error-Routine-PTR
   481                STOP RUN
   482            END-IF
   483            GOBACK
   484            .
   485        100-OPEN SECTION.
   486            IF  (L-SCB-Mode-Input-BOOL OR L-SCB-Mode-Both-BOOL)
   487            AND (L-SCB-Filename-TXT = SPACES OR LOW-VALUES)
   488                MOVE 11 TO L-SCB-Return-CD
   489                PERFORM 099-ERROR-Return
   490            END-IF
   491            EVALUATE TRUE
   492                WHEN L-SCB-Filename-TXT = SPACES OR LOW-VALUES
   493                    PERFORM 060-Identify-TEMP
   494                    MOVE SPACES TO L-SCB-Filename-TXT
   495                    COMPUTE
   496                        WS-8-Digit-NUM =
   497                        RANDOM(SECONDS-PAST-MIDNIGHT) * 100000000
   498                    END-COMPUTE
   499                    STRING
   500                        TRIM(WS-Env-Temp-TXT,TRAILING)
   501                        WS-Slash-CHR
   502                        "STREAMIO-"
   503                        WS-8-Digit-NUM
   504                        ".dat"
   505                        DELIMITED BY SIZE
   506                        INTO L-SCB-Filename-TXT
   507                WHEN L-SCB-Filename-TXT(1:1) = "."
   508                    PERFORM 060-Identify-TEMP
   509                    IF L-SCB-Filename-TXT(2:1) = SPACE
   510                        MOVE SPACES TO WS-256-Byte-TXT
   511                    ELSE
   512                        MOVE L-SCB-Filename-TXT TO WS-256-Byte-TXT
   513                    END-IF
   514                    MOVE SPACES TO L-SCB-Filename-TXT
   515                    COMPUTE WS-8-Digit-NUM =

================================================================================================
GCic for Windows/MinGW Copyright (C) 2009-2014, Gary L. Cutler, GPL                     Page: 11
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                         C:/Users/tda010/Documents/Programs/Samples/STREAMIO.cbl
Line   Statement                                                                        Page: 12
====== =========================================================================================
   516                        RANDOM(SECONDS-PAST-MIDNIGHT) * 100000000
   517                    STRING
   518                        TRIM(WS-Env-Temp-TXT,TRAILING)
   519                        WS-Slash-CHR
   520                        "STREAMIO-"
   521                        WS-8-Digit-NUM
   522                        TRIM(WS-256-Byte-TXT,TRAILING)
   523                        DELIMITED BY SIZE
   524                        INTO L-SCB-Filename-TXT
   525            END-EVALUATE
   526            EVALUATE TRUE
   527                WHEN L-SCB-Mode-Input-BOOL
   528                    MOVE 1 TO WS-Access-Mode-CD
   529                WHEN L-SCB-Mode-Output-BOOL
   530                    MOVE 2 TO WS-Access-Mode-CD
   531                WHEN L-SCB-Mode-Both-BOOL
   532                    MOVE 3 TO WS-Access-Mode-CD
   533                WHEN OTHER
   534                    MOVE -2 TO L-SCB-Return-CD
   535                    PERFORM 099-ERROR-Return
   536            END-EVALUATE
   537            CALL "CBL_OPEN_FILE" USING TRIM(L-SCB-Filename-TXT,TRAILING)
   538                                       WS-Access-Mode-CD
   539                                       0
   540                                       0
   541                                       L-SCB-Handle-NUM
   542            IF RETURN-CODE = 35
   543                MOVE 11 TO L-SCB-Return-CD
   544                PERFORM 099-ERROR-Return
   545            END-IF
   546            IF RETURN-CODE < 0
   547                MOVE -2 TO L-SCB-Return-CD
   548                PERFORM 099-ERROR-Return
   549            END-IF
   550            MOVE 00 TO L-SCB-Return-CD
   551            MOVE 0 TO L-SCB-Offset-NUM
   552            .
   553        200-CLOSE SECTION.
   554            CALL "CBL_CLOSE_FILE" USING L-SCB-Handle-NUM
   555            IF RETURN-CODE < 0
   556                MOVE -2 TO L-SCB-Return-CD
   557                PERFORM 099-ERROR-Return
   558            END-IF
   559            MOVE 00 TO L-SCB-Return-CD
   560            MOVE 0 TO L-SCB-Handle-NUM
   561            .
   562        300-WRITE SECTION.
   563            CALL "C$PARAMSIZE" USING 2
   564            MOVE RETURN-CODE TO WS-Arg-Length-NUM

================================================================================================
GCic for Windows/MinGW Copyright (C) 2009-2014, Gary L. Cutler, GPL                     Page: 12
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                         C:/Users/tda010/Documents/Programs/Samples/STREAMIO.cbl
Line   Statement                                                                        Page: 13
====== =========================================================================================
   565            CALL "CBL_WRITE_FILE" USING L-SCB-Handle-NUM
   566                                        L-SCB-Offset-NUM
   567                                        WS-Arg-Length-NUM
   568                                        0
   569                                        L-Arg2-TXT
   570            PERFORM 040-Check-WRITE-SCB-Return-CD
   571            ADD WS-Arg-Length-NUM TO L-SCB-Offset-NUM
   572            .
   573        400-READ SECTION.
   574            CALL "C$PARAMSIZE" USING 2
   575            MOVE RETURN-CODE TO WS-Arg-Length-NUM
   576            MOVE SPACES TO L-Arg2-TXT(1:WS-Arg-Length-NUM)
   577            CALL "CBL_READ_FILE" USING L-SCB-Handle-NUM
   578                                       L-SCB-Offset-NUM
   579                                       WS-Arg-Length-NUM
   580                                       0
   581                                       L-Arg2-TXT
   582            PERFORM 050-Check-READ-SCB-Return-CD
   583            ADD WS-Arg-Length-NUM TO L-SCB-Offset-NUM
   584            .
   585        500-READ-Delim SECTION.
   586            CALL "C$PARAMSIZE" USING 2
   587            MOVE RETURN-CODE TO WS-Arg-Length-NUM
   588            MOVE SPACES TO L-Arg2-TXT(1:WS-Arg-Length-NUM)
   589            CALL "CBL_READ_FILE" USING L-SCB-Handle-NUM
   590                                       L-SCB-Offset-NUM
   591                                       WS-Arg-Length-NUM
   592                                       0
   593                                       L-Arg2-TXT
   594            PERFORM 050-Check-READ-SCB-Return-CD
   595            MOVE 0 TO WS-Tally-NUM
   596            INSPECT L-Arg2-TXT(1:WS-Arg-Length-NUM)
   597                TALLYING WS-Tally-NUM FOR ALL X"0A"
   598            IF WS-Tally-NUM = 0 *> No LF found - return truncated data and position past n
       ext LF (if any)
   599                IF L-Arg2-TXT(WS-Arg-Length-NUM:1) = X"0D"
   600                    MOVE SPACE TO L-Arg2-TXT(WS-Arg-Length-NUM:1)
   601                END-IF
   602                ADD WS-Arg-Length-NUM TO L-SCB-Offset-NUM
   603                MOVE 02 TO L-SCB-Return-CD
   604                MOVE 256 TO WS-Arg-Length-NUM
   605                PERFORM UNTIL 0 = 1
   606                    MOVE SPACES TO WS-Buffer-TXT
   607                    CALL "CBL_READ_FILE" USING L-SCB-Handle-NUM
   608                                               L-SCB-Offset-NUM
   609                                               WS-Arg-Length-NUM
   610                                               0
   611                                               WS-Buffer-TXT
   612                    IF RETURN-CODE < 0

================================================================================================
GCic for Windows/MinGW Copyright (C) 2009-2014, Gary L. Cutler, GPL                     Page: 13
GNU COBOL 2.1 23NOV2013 Source Listing                                                2014/03/27
                                         C:/Users/tda010/Documents/Programs/Samples/STREAMIO.cbl
Line   Statement                                                                        Page: 14
====== =========================================================================================
   613                        MOVE -3 TO L-SCB-Return-CD
   614                        PERFORM 099-ERROR-Return
   615                    END-IF
   616                    IF RETURN-CODE = 10
   617                        GOBACK
   618                    END-IF
   619                    MOVE 0 TO WS-Tally-NUM
   620                    INSPECT WS-Buffer-TXT
   621                        TALLYING WS-Tally-NUM FOR ALL X"0A"
   622                    IF WS-Tally-NUM = 0
   623                        ADD 256 TO L-SCB-Offset-NUM
   624                    ELSE
   625                        MOVE 0 TO WS-Tally-NUM
   626                        INSPECT WS-Buffer-TXT
   627                            TALLYING WS-Tally-NUM
   628                            FOR CHARACTERS BEFORE INITIAL X"0A"
   629                        ADD WS-Tally-NUM, 1 TO L-SCB-Offset-NUM
   630                        GOBACK
   631                    END-IF
   632                END-PERFORM
   633            ELSE         *> There is (at least) one LF in the buffer
   634                MOVE 0 TO WS-Tally-NUM
   635                INSPECT L-Arg2-TXT(1:WS-Arg-Length-NUM)
   636                    TALLYING WS-Tally-NUM
   637                    FOR CHARACTERS BEFORE INITIAL X"0A"
   638                ADD WS-Tally-NUM, 1 TO L-SCB-Offset-NUM
   639                IF WS-Tally-NUM > 1
   640                    IF L-Arg2-TXT(WS-Tally-NUM:1) = X"0D"
   641                        COMPUTE WS-Arg-Length-NUM =
   642                                  WS-Arg-Length-NUM
   643                                - WS-Tally-NUM
   644                                + 1
   645                    ELSE
   646                        COMPUTE WS-Arg-Length-NUM =
   647                                  WS-Arg-Length-NUM
   648                                - WS-Tally-NUM
   649                        ADD 1 TO WS-Tally-NUM
   650                    END-IF
   651                    MOVE SPACES
   652                      TO L-Arg2-TXT(WS-Tally-NUM:WS-Arg-Length-NUM)
   653                ELSE
   654                    MOVE SPACES
   655                      TO L-Arg2-TXT(1:WS-Arg-Length-NUM)
   656                END-IF
   657            END-IF
   658            .

================================================================================================
GCic for Windows/MinGW Copyright (C) 2009-2014, Gary L. Cutler, GPL                     Page: 14
GNU COBOL 2.1 23NOV2013 Cross-Reference Listing                                       2014/03/27
                                         C:/Users/tda010/Documents/Programs/Samples/STREAMIO.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References      Page: 15
=============== ================================ ====== =============== ========================
STREAMIO        000-Main                            383 PROCEDURE
STREAMIO        020-Validate-Handle-Zero            432 PROCEDURE          392
STREAMIO        030-Validate-Handle-NonZero         438 PROCEDURE          387     395     398
                                                                           401     406     411
STREAMIO        040-Check-WRITE-SCB-Return-CD       444 PROCEDURE          424     570
STREAMIO        050-Check-READ-SCB-Return-CD        455 PROCEDURE          582     594
STREAMIO        060-Identify-TEMP                   466 PROCEDURE          493     508
STREAMIO        099-ERROR-Return                    478 PROCEDURE          417     428     435
                                                                           441     447     451
                                                                           458     489     535
                                                                           544     548     557
                                                                           614
STREAMIO        100-OPEN                            485 PROCEDURE          393
STREAMIO        200-CLOSE                           553 PROCEDURE          388
STREAMIO        300-WRITE                           562 PROCEDURE          402     407     412
STREAMIO        400-READ                            573 PROCEDURE          396
STREAMIO        500-READ-Delim                      585 PROCEDURE          399
STREAMIO        L-Arg2-TXT                          380 LINKAGE            382     569C    576*
                                                                           581C    588*    593C
                                                                           599     600*    640
                                                                           652*    655*
STREAMIO        L-SCB-DELIM-Unix-BOOL               379 [STREAMIOcb   ]    405
STREAMIO        L-SCB-DELIM-Windows-BOOL            379 [STREAMIOcb   ]    410
STREAMIO        L-SCB-Delimiter-Mode-CD             379 [STREAMIOcb   ]
STREAMIO        L-SCB-Error-Routine-NUM             379 [STREAMIOcb   ]    479
STREAMIO        L-SCB-Error-Routine-PTR             379 [STREAMIOcb   ]    379     480C
STREAMIO        L-SCB-Filename-TXT                  379 [STREAMIOcb   ]    390C    487     492
                                                                           494*    506*    507
                                                                           509     512     514*
                                                                           524*    537C
STREAMIO        L-SCB-Func-CLOSE-BOOL               379 [STREAMIOcb   ]    386
STREAMIO        L-SCB-Func-DELETE-BOOL              379 [STREAMIOcb   ]    389
STREAMIO        L-SCB-Func-OPEN-BOOL                379 [STREAMIOcb   ]    391
STREAMIO        L-SCB-Func-READ-BOOL                379 [STREAMIOcb   ]    394
STREAMIO        L-SCB-Func-READ-Delim-BOOL          379 [STREAMIOcb   ]    397
STREAMIO        L-SCB-Func-WRITE-BOOL               379 [STREAMIOcb   ]    400
STREAMIO        L-SCB-Func-WRITE-Delim-BOOL         379 [STREAMIOcb   ]    403
STREAMIO        L-SCB-Function-CD                   379 [STREAMIOcb   ]
STREAMIO        L-SCB-Handle-NUM                    379 [STREAMIOcb   ]    419C    433     439
                                                                           541C    554C    560*
                                                                           565C    577C    589C
                                                                           607C
STREAMIO        L-SCB-MODE-Both-BOOL                379 [STREAMIOcb   ]    486     531
STREAMIO        L-SCB-Mode-CD                       379 [STREAMIOcb   ]
STREAMIO        L-SCB-MODE-Input-BOOL               379 [STREAMIOcb   ]    486     527
STREAMIO        L-SCB-MODE-Output-BOOL              379 [STREAMIOcb   ]    529
STREAMIO        L-SCB-Offset-NUM                    379 [STREAMIOcb   ]    420C    425*    551*
                                                                           566C    571*    578C
                                                                           583*    590C    602*

================================================================================================
GCic for Windows/MinGW Copyright (C) 2009-2014, Gary L. Cutler, GPL                     Page: 15
GNU COBOL 2.1 23NOV2013 Cross-Reference Listing                                       2014/03/27
                                         C:/Users/tda010/Documents/Programs/Samples/STREAMIO.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References      Page: 16
=============== ================================ ====== =============== ========================
                                                                           608C    623*    629*
                                                                           638*
STREAMIO        L-SCB-Return-CD                     379 [STREAMIOcb   ]    384*    416*    427*
                                                                           434*    440*    446*
                                                                           450*    453*    457*
                                                                           461*    464*    488*
                                                                           534*    543*    547*
                                                                           550*    556*    559*
                                                                           603*    613*
STREAMIO        L-StreamIO-Control-Block-TXT        377 LINKAGE            381
STREAMIO        RETURN-CODE                             PROCEDURE          445     449     456
                                                                           460     542     546
                                                                           555     564     575
                                                                           587     612     616
STREAMIO        WS-256-Byte-TXT                     375 WORKING-STORAGE    510*    512*    522
STREAMIO        WS-8-Digit-NUM                      374 WORKING-STORAGE    496*    503     515*
                                                                           521
STREAMIO        WS-Access-Mode-CD                   367 WORKING-STORAGE    528*    530*    532*
                                                                           538C
STREAMIO        WS-Arg-Length-NUM                   368 WORKING-STORAGE    408*    413*    421C
                                                                           425     564*    567C
                                                                           571     575*    576
                                                                           579C    583     587*
                                                                           588     591C    596
                                                                           599     600     602
                                                                           604*    609C    635
                                                                           641*    642     646*
                                                                           647     652     655
STREAMIO        WS-Buffer-TXT                       369 WORKING-STORAGE    606*    611C
STREAMIO        WS-Delim-Buffer-TXT                 370 WORKING-STORAGE    409*    414*    423C
STREAMIO        WS-Env-Temp-TXT                     371 WORKING-STORAGE    467*    469     471
                                                                           474*    500     518
STREAMIO        WS-Slash-CHR                        372 WORKING-STORAGE    470*    472*    475*
                                                                           501     519
STREAMIO        WS-Tally-NUM                        373 WORKING-STORAGE    595*    597*    598
                                                                           619*    621*    622
                                                                           625*    627*    629
                                                                           634*    636*    638
                                                                           639     640     643
                                                                           648     649*    652

================================================================================================
GCic for Windows/MinGW Copyright (C) 2009-2014, Gary L. Cutler, GPL                     Page: 16

7. GNU Free Documentation License
*********************************

                     Version 1.3, 3 November 2008

     Copyright (C) 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.
     <http://fsf.org/>

     Everyone is permitted to copy and distribute verbatim copies
     of this license document, but changing it is not allowed.

  0. PREAMBLE

     The purpose of this License is to make a manual, textbook, or other
     functional and useful document "free" in the sense of freedom: to
     assure everyone the effective freedom to copy and redistribute it,
     with or without modifying it, either commercially or
     noncommercially.  Secondarily, this License preserves for the
     author and publisher a way to get credit for their work, while not
     being considered responsible for modifications made by others.

     This License is a kind of "copyleft", which means that derivative
     works of the document must themselves be free in the same sense.
     It complements the GNU General Public License, which is a copyleft
     license designed for free software.

     We have designed this License in order to use it for manuals for
     free software, because free software needs free documentation: a
     free program should come with manuals providing the same freedoms
     that the software does.  But this License is not limited to
     software manuals; it can be used for any textual work, regardless
     of subject matter or whether it is published as a printed book.  We
     recommend this License principally for works whose purpose is
     instruction or reference.

  1. APPLICABILITY AND DEFINITIONS

     This License applies to any manual or other work, in any medium,
     that contains a notice placed by the copyright holder saying it can
     be distributed under the terms of this License.  Such a notice
     grants a world-wide, royalty-free license, unlimited in duration,
     to use that work under the conditions stated herein.  The
     "Document", below, refers to any such manual or work.  Any member
     of the public is a licensee, and is addressed as "you".  You accept
     the license if you copy, modify or distribute the work in a way
     requiring permission under copyright law.

     A "Modified Version" of the Document means any work containing the
     Document or a portion of it, either copied verbatim, or with
     modifications and/or translated into another language.

     A "Secondary Section" is a named appendix or a front-matter section
     of the Document that deals exclusively with the relationship of the
     publishers or authors of the Document to the Document's overall
     subject (or to related matters) and contains nothing that could
     fall directly within that overall subject.  (Thus, if the Document
     is in part a textbook of mathematics, a Secondary Section may not
     explain any mathematics.)  The relationship could be a matter of
     historical connection with the subject or with related matters, or
     of legal, commercial, philosophical, ethical or political position
     regarding them.

     The "Invariant Sections" are certain Secondary Sections whose
     titles are designated, as being those of Invariant Sections, in the
     notice that says that the Document is released under this License.
     If a section does not fit the above definition of Secondary then it
     is not allowed to be designated as Invariant.  The Document may
     contain zero Invariant Sections.  If the Document does not identify
     any Invariant Sections then there are none.

     The "Cover Texts" are certain short passages of text that are
     listed, as Front-Cover Texts or Back-Cover Texts, in the notice
     that says that the Document is released under this License.  A
     Front-Cover Text may be at most 5 words, and a Back-Cover Text may
     be at most 25 words.

     A "Transparent" copy of the Document means a machine-readable copy,
     represented in a format whose specification is available to the
     general public, that is suitable for revising the document
     straightforwardly with generic text editors or (for images composed
     of pixels) generic paint programs or (for drawings) some widely
     available drawing editor, and that is suitable for input to text
     formatters or for automatic translation to a variety of formats
     suitable for input to text formatters.  A copy made in an otherwise
     Transparent file format whose markup, or absence of markup, has
     been arranged to thwart or discourage subsequent modification by
     readers is not Transparent.  An image format is not Transparent if
     used for any substantial amount of text.  A copy that is not
     "Transparent" is called "Opaque".

     Examples of suitable formats for Transparent copies include plain
     ASCII without markup, Texinfo input format, LaTeX input format,
     SGML or XML using a publicly available DTD, and standard-conforming
     simple HTML, PostScript or PDF designed for human modification.
     Examples of transparent image formats include PNG, XCF and JPG.
     Opaque formats include proprietary formats that can be read and
     edited only by proprietary word processors, SGML or XML for which
     the DTD and/or processing tools are not generally available, and
     the machine-generated HTML, PostScript or PDF produced by some word
     processors for output purposes only.

     The "Title Page" means, for a printed book, the title page itself,
     plus such following pages as are needed to hold, legibly, the
     material this License requires to appear in the title page.  For
     works in formats which do not have any title page as such, "Title
     Page" means the text near the most prominent appearance of the
     work's title, preceding the beginning of the body of the text.

     The "publisher" means any person or entity that distributes copies
     of the Document to the public.

     A section "Entitled XYZ" means a named subunit of the Document
     whose title either is precisely XYZ or contains XYZ in parentheses
     following text that translates XYZ in another language.  (Here XYZ
     stands for a specific section name mentioned below, such as
     "Acknowledgements", "Dedications", "Endorsements", or "History".)
     To "Preserve the Title" of such a section when you modify the
     Document means that it remains a section "Entitled XYZ" according
     to this definition.

     The Document may include Warranty Disclaimers next to the notice
     which states that this License applies to the Document.  These
     Warranty Disclaimers are considered to be included by reference in
     this License, but only as regards disclaiming warranties: any other
     implication that these Warranty Disclaimers may have is void and
     has no effect on the meaning of this License.

  2. VERBATIM COPYING

     You may copy and distribute the Document in any medium, either
     commercially or noncommercially, provided that this License, the
     copyright notices, and the license notice saying this License
     applies to the Document are reproduced in all copies, and that you
     add no other conditions whatsoever to those of this License.  You
     may not use technical measures to obstruct or control the reading
     or further copying of the copies you make or distribute.  However,
     you may accept compensation in exchange for copies.  If you
     distribute a large enough number of copies you must also follow the
     conditions in section 3.

     You may also lend copies, under the same conditions stated above,
     and you may publicly display copies.

  3. COPYING IN QUANTITY

     If you publish printed copies (or copies in media that commonly
     have printed covers) of the Document, numbering more than 100, and
     the Document's license notice requires Cover Texts, you must
     enclose the copies in covers that carry, clearly and legibly, all
     these Cover Texts: Front-Cover Texts on the front cover, and
     Back-Cover Texts on the back cover.  Both covers must also clearly
     and legibly identify you as the publisher of these copies.  The
     front cover must present the full title with all words of the title
     equally prominent and visible.  You may add other material on the
     covers in addition.  Copying with changes limited to the covers, as
     long as they preserve the title of the Document and satisfy these
     conditions, can be treated as verbatim copying in other respects.

     If the required texts for either cover are too voluminous to fit
     legibly, you should put the first ones listed (as many as fit
     reasonably) on the actual cover, and continue the rest onto
     adjacent pages.

     If you publish or distribute Opaque copies of the Document
     numbering more than 100, you must either include a machine-readable
     Transparent copy along with each Opaque copy, or state in or with
     each Opaque copy a computer-network location from which the general
     network-using public has access to download using public-standard
     network protocols a complete Transparent copy of the Document, free
     of added material.  If you use the latter option, you must take
     reasonably prudent steps, when you begin distribution of Opaque
     copies in quantity, to ensure that this Transparent copy will
     remain thus accessible at the stated location until at least one
     year after the last time you distribute an Opaque copy (directly or
     through your agents or retailers) of that edition to the public.

     It is requested, but not required, that you contact the authors of
     the Document well before redistributing any large number of copies,
     to give them a chance to provide you with an updated version of the
     Document.

  4. MODIFICATIONS

     You may copy and distribute a Modified Version of the Document
     under the conditions of sections 2 and 3 above, provided that you
     release the Modified Version under precisely this License, with the
     Modified Version filling the role of the Document, thus licensing
     distribution and modification of the Modified Version to whoever
     possesses a copy of it.  In addition, you must do these things in
     the Modified Version:

       A. Use in the Title Page (and on the covers, if any) a title
          distinct from that of the Document, and from those of previous
          versions (which should, if there were any, be listed in the
          History section of the Document).  You may use the same title
          as a previous version if the original publisher of that
          version gives permission.

       B. List on the Title Page, as authors, one or more persons or
          entities responsible for authorship of the modifications in
          the Modified Version, together with at least five of the
          principal authors of the Document (all of its principal
          authors, if it has fewer than five), unless they release you
          from this requirement.

       C. State on the Title page the name of the publisher of the
          Modified Version, as the publisher.

       D. Preserve all the copyright notices of the Document.

       E. Add an appropriate copyright notice for your modifications
          adjacent to the other copyright notices.

       F. Include, immediately after the copyright notices, a license
          notice giving the public permission to use the Modified
          Version under the terms of this License, in the form shown in
          the Addendum below.

       G. Preserve in that license notice the full lists of Invariant
          Sections and required Cover Texts given in the Document's
          license notice.

       H. Include an unaltered copy of this License.

       I. Preserve the section Entitled "History", Preserve its Title,
          and add to it an item stating at least the title, year, new
          authors, and publisher of the Modified Version as given on the
          Title Page.  If there is no section Entitled "History" in the
          Document, create one stating the title, year, authors, and
          publisher of the Document as given on its Title Page, then add
          an item describing the Modified Version as stated in the
          previous sentence.

       J. Preserve the network location, if any, given in the Document
          for public access to a Transparent copy of the Document, and
          likewise the network locations given in the Document for
          previous versions it was based on.  These may be placed in the
          "History" section.  You may omit a network location for a work
          that was published at least four years before the Document
          itself, or if the original publisher of the version it refers
          to gives permission.

       K. For any section Entitled "Acknowledgements" or "Dedications",
          Preserve the Title of the section, and preserve in the section
          all the substance and tone of each of the contributor
          acknowledgements and/or dedications given therein.

       L. Preserve all the Invariant Sections of the Document, unaltered
          in their text and in their titles.  Section numbers or the
          equivalent are not considered part of the section titles.

       M. Delete any section Entitled "Endorsements".  Such a section
          may not be included in the Modified Version.

       N. Do not retitle any existing section to be Entitled
          "Endorsements" or to conflict in title with any Invariant
          Section.

       O. Preserve any Warranty Disclaimers.

     If the Modified Version includes new front-matter sections or
     appendices that qualify as Secondary Sections and contain no
     material copied from the Document, you may at your option designate
     some or all of these sections as invariant.  To do this, add their
     titles to the list of Invariant Sections in the Modified Version's
     license notice.  These titles must be distinct from any other
     section titles.

     You may add a section Entitled "Endorsements", provided it contains
     nothing but endorsements of your Modified Version by various
     parties--for example, statements of peer review or that the text
     has been approved by an organization as the authoritative
     definition of a standard.

     You may add a passage of up to five words as a Front-Cover Text,
     and a passage of up to 25 words as a Back-Cover Text, to the end of
     the list of Cover Texts in the Modified Version.  Only one passage
     of Front-Cover Text and one of Back-Cover Text may be added by (or
     through arrangements made by) any one entity.  If the Document
     already includes a cover text for the same cover, previously added
     by you or by arrangement made by the same entity you are acting on
     behalf of, you may not add another; but you may replace the old
     one, on explicit permission from the previous publisher that added
     the old one.

     The author(s) and publisher(s) of the Document do not by this
     License give permission to use their names for publicity for or to
     assert or imply endorsement of any Modified Version.

  5. COMBINING DOCUMENTS

     You may combine the Document with other documents released under
     this License, under the terms defined in section 4 above for
     modified versions, provided that you include in the combination all
     of the Invariant Sections of all of the original documents,
     unmodified, and list them all as Invariant Sections of your
     combined work in its license notice, and that you preserve all
     their Warranty Disclaimers.

     The combined work need only contain one copy of this License, and
     multiple identical Invariant Sections may be replaced with a single
     copy.  If there are multiple Invariant Sections with the same name
     but different contents, make the title of each such section unique
     by adding at the end of it, in parentheses, the name of the
     original author or publisher of that section if known, or else a
     unique number.  Make the same adjustment to the section titles in
     the list of Invariant Sections in the license notice of the
     combined work.

     In the combination, you must combine any sections Entitled
     "History" in the various original documents, forming one section
     Entitled "History"; likewise combine any sections Entitled
     "Acknowledgements", and any sections Entitled "Dedications".  You
     must delete all sections Entitled "Endorsements."

  6. COLLECTIONS OF DOCUMENTS

     You may make a collection consisting of the Document and other
     documents released under this License, and replace the individual
     copies of this License in the various documents with a single copy
     that is included in the collection, provided that you follow the
     rules of this License for verbatim copying of each of the documents
     in all other respects.

     You may extract a single document from such a collection, and
     distribute it individually under this License, provided you insert
     a copy of this License into the extracted document, and follow this
     License in all other respects regarding verbatim copying of that
     document.

  7. AGGREGATION WITH INDEPENDENT WORKS

     A compilation of the Document or its derivatives with other
     separate and independent documents or works, in or on a volume of a
     storage or distribution medium, is called an "aggregate" if the
     copyright resulting from the compilation is not used to limit the
     legal rights of the compilation's users beyond what the individual
     works permit.  When the Document is included in an aggregate, this
     License does not apply to the other works in the aggregate which
     are not themselves derivative works of the Document.

     If the Cover Text requirement of section 3 is applicable to these
     copies of the Document, then if the Document is less than one half
     of the entire aggregate, the Document's Cover Texts may be placed
     on covers that bracket the Document within the aggregate, or the
     electronic equivalent of covers if the Document is in electronic
     form.  Otherwise they must appear on printed covers that bracket
     the whole aggregate.

  8. TRANSLATION

     Translation is considered a kind of modification, so you may
     distribute translations of the Document under the terms of section
     4.  Replacing Invariant Sections with translations requires special
     permission from their copyright holders, but you may include
     translations of some or all Invariant Sections in addition to the
     original versions of these Invariant Sections.  You may include a
     translation of this License, and all the license notices in the
     Document, and any Warranty Disclaimers, provided that you also
     include the original English version of this License and the
     original versions of those notices and disclaimers.  In case of a
     disagreement between the translation and the original version of
     this License or a notice or disclaimer, the original version will
     prevail.

     If a section in the Document is Entitled "Acknowledgements",
     "Dedications", or "History", the requirement (section 4) to
     Preserve its Title (section 1) will typically require changing the
     actual title.

  9. TERMINATION

     You may not copy, modify, sublicense, or distribute the Document
     except as expressly provided under this License.  Any attempt
     otherwise to copy, modify, sublicense, or distribute it is void,
     and will automatically terminate your rights under this License.

     However, if you cease all violation of this License, then your
     license from a particular copyright holder is reinstated (a)
     provisionally, unless and until the copyright holder explicitly and
     finally terminates your license, and (b) permanently, if the
     copyright holder fails to notify you of the violation by some
     reasonable means prior to 60 days after the cessation.

     Moreover, your license from a particular copyright holder is
     reinstated permanently if the copyright holder notifies you of the
     violation by some reasonable means, this is the first time you have
     received notice of violation of this License (for any work) from
     that copyright holder, and you cure the violation prior to 30 days
     after your receipt of the notice.

     Termination of your rights under this section does not terminate
     the licenses of parties who have received copies or rights from you
     under this License.  If your rights have been terminated and not
     permanently reinstated, receipt of a copy of some or all of the
     same material does not give you any rights to use it.

  10. FUTURE REVISIONS OF THIS LICENSE

     The Free Software Foundation may publish new, revised versions of
     the GNU Free Documentation License from time to time.  Such new
     versions will be similar in spirit to the present version, but may
     differ in detail to address new problems or concerns.  See
     <http://www.gnu.org/copyleft/>.

     Each version of the License is given a distinguishing version
     number.  If the Document specifies that a particular numbered
     version of this License "or any later version" applies to it, you
     have the option of following the terms and conditions either of
     that specified version or of any later version that has been
     published (not as a draft) by the Free Software Foundation.  If the
     Document does not specify a version number of this License, you may
     choose any version ever published (not as a draft) by the Free
     Software Foundation.  If the Document specifies that a proxy can
     decide which future versions of this License can be used, that
     proxy's public statement of acceptance of a version permanently
     authorizes you to choose that version for the Document.

  11. RELICENSING

     "Massive Multiauthor Collaboration Site" (or "MMC Site") means any
     World Wide Web server that publishes copyrightable works and also
     provides prominent facilities for anybody to edit those works.  A
     public wiki that anybody can edit is an example of such a server.
     A "Massive Multiauthor Collaboration" (or "MMC") contained in the
     site means any set of copyrightable works thus published on the MMC
     site.

     "CC-BY-SA" means the Creative Commons Attribution-Share Alike 3.0
     license published by Creative Commons Corporation, a not-for-profit
     corporation with a principal place of business in San Francisco,
     California, as well as future copyleft versions of that license
     published by that same organization.

     "Incorporate" means to publish or republish a Document, in whole or
     in part, as part of another Document.

     An MMC is "eligible for relicensing" if it is licensed under this
     License, and if all works that were first published under this
     License somewhere other than this MMC, and subsequently
     incorporated in whole or in part into the MMC, (1) had no cover
     texts or invariant sections, and (2) were thus incorporated prior
     to November 1, 2008.

     The operator of an MMC Site may republish an MMC contained in the
     site under CC-BY-SA on the same site at any time before August 1,
     2009, provided the MMC is eligible for relicensing.

ADDENDUM: How to use this License for your documents
====================================================

To use this License in a document you have written, include a copy of
the License in the document and put the following copyright and license
notices just after the title page:

       Copyright (C)  YEAR  YOUR NAME.
       Permission is granted to copy, distribute and/or modify this document
       under the terms of the GNU Free Documentation License, Version 1.3
       or any later version published by the Free Software Foundation;
       with no Invariant Sections, no Front-Cover Texts, and no Back-Cover
       Texts.  A copy of the license is included in the section entitled ``GNU
       Free Documentation License''.

If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts,
replace the "with...Texts." line with this:

         with the Invariant Sections being LIST THEIR TITLES, with
         the Front-Cover Texts being LIST, and with the Back-Cover Texts
         being LIST.

If you have Invariant Sections without Cover Texts, or some other
combination of the three, merge those two alternatives to suit the
situation.

If your document contains nontrivial examples of program code, we
recommend releasing these examples in parallel under your choice of free
software license, such as the GNU General Public License, to permit
their use in free software.