GnuCOBOL Sample Programs 3.1 RC-1 [July2020]

Table of Contents


1. FileStat-Msgs

The FileStat-Msgs.cpy copybook contains an EVALUATE statement to translate the two-digit file status codes that may be generated by file I/O statements.

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

COBDUMP is a useful little utility subroutine to produce a formatted hexadecimal and character dump of the data area passed to it.

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:

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

Colors is a handy little GnuCOBOL utility program that will produce a screen showing all possible combinations of:

The program source and cross-reference listing, produced using the cobxref, begins on the next page.

ACS Cobol Xref v2.02.02          Dictionary File for COLORS    07/12/2019  16:57:00:16                                 Page    1

     1          >>SOURCE FREE
     2   IDENTIFICATION DIVISION.
     3   PROGRAM-ID. colors.
     4   DATA DIVISION.
     5   WORKING-STORAGE SECTION.
     6   SCREEN SECTION.
     7   01 S-COLORTST-SCR BACKGROUND-COLOR 0 FOREGROUND-COLOR 7 BLANK SCREEN.
     8   05 LINE 01.
     9   10 COL 1 VALUE ' LOWLIGHT  -------- HIGHLIGHT  LOWLIGHT  -------- HIGHLIGHT'.
    10   05 LINE + 1.
    11   10 COL 1 VALUE ' --------  --------  --------  --------  --------  --------'.
    12   05 LINE + 1.
    13   10 COL 1 VALUE ' --------  --------  --------   REVERSE   REVERSE   REVERSE'.
    14   05 LINE + 1.
    15   10 COL 1 VALUE ' 01234567  01234567  01234567  01234567  01234567  01234567'.
    16   05 LINE + 1.
    17   10 COL 1 VALUE '0         0         0         0         0         0        '.
    18   05 LINE + 1.
    19   10 COL 1 VALUE '1         1         1         1         1         1        '.
    20   05 LINE + 1.
    21   10 COL 1 VALUE '2         2         2         2         2         2        '.
    22   05 LINE + 1.
    23   10 COL 1 VALUE '3    1    3    2    3    3    3    4    3    5    3    6   '.
    24   05 LINE + 1.
    25   10 COL 1 VALUE '4         4         4         4         4         4        '.
    26   05 LINE + 1.
    27   10 COL 1 VALUE '5         5         5         5         5         5        '.
    28   05 LINE + 1.
    29   10 COL 1 VALUE '6         6         6         6         6         6        '.
    30   05 LINE + 1.
    31   10 COL 1 VALUE '7         7         7         7         7         7        '.
    32   05 LINE + 1.
    33   10 COL 1 VALUE ' LOWLIGHT  -------- HIGHLIGHT  LOWLIGHT  -------- HIGHLIGHT'.
    34   05 LINE + 1.
    35   10 COL 1 VALUE '    BLINK     BLINK     BLINK     BLINK     BLINK     BLINK'.
    36   05 LINE + 1.
    37   10 COL 1 VALUE ' --------  --------  --------   REVERSE   REVERSE   REVERSE'.
    38   05 LINE + 1.
    39   10 COL 1 VALUE ' 01234567  01234567  01234567  01234567  01234567  01234567'.
    40   05 LINE + 1.
    41   10 COL 1 VALUE '0         0         0         0         0         0        '.
    42   05 LINE + 1.
    43   10 COL 1 VALUE '1         1         1         1         1         1        '.
    44   05 LINE + 1.
    45   10 COL 1 VALUE '2         2         2         2         2         2        '.
    46   05 LINE + 1.
    47   10 COL 1 VALUE '3    7    3    8    3    9    3   10    3   11    3   12   '.
    48   05 LINE + 1.
    49   10 COL 1 VALUE '4         4         4         4         4         4        '.
    50   05 LINE + 1.
    51   10 COL 1 VALUE '5         5         5         5         5         5        '.
    52   05 LINE + 1.
    53   10 COL 1 VALUE '6         6         6         6         6         6        '.
    54   05 LINE + 1.
ACS Cobol Xref v2.02.02          Dictionary File for COLORS    07/12/2019  16:57:00:16                                 Page    2

    55   10 COL 1 VALUE '7         7         7         7         7         7        '.
    56   *> #1
    57   05 LINE 05.
    58   10 COL 2   BACKGROUND-COLOR 0 FOREGROUND-COLOR 0 LOWLIGHT VALUE 'X'.
    59   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 1 LOWLIGHT VALUE 'X'.
    60   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 2 LOWLIGHT VALUE 'X'.
    61   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 3 LOWLIGHT VALUE 'X'.
    62   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 4 LOWLIGHT VALUE 'X'.
    63   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 5 LOWLIGHT VALUE 'X'.
    64   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 6 LOWLIGHT VALUE 'X'.
    65   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 7 LOWLIGHT VALUE 'X'.
    66   05 LINE + 1.
    67   10 COL 2   BACKGROUND-COLOR 1 FOREGROUND-COLOR 0 LOWLIGHT VALUE 'X'.
    68   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 1 LOWLIGHT VALUE 'X'.
    69   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 2 LOWLIGHT VALUE 'X'.
    70   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 3 LOWLIGHT VALUE 'X'.
    71   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 4 LOWLIGHT VALUE 'X'.
    72   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 5 LOWLIGHT VALUE 'X'.
    73   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 6 LOWLIGHT VALUE 'X'.
    74   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 7 LOWLIGHT VALUE 'X'.
    75   05 LINE + 1.
    76   10 COL 2   BACKGROUND-COLOR 2 FOREGROUND-COLOR 0 LOWLIGHT VALUE 'X'.
    77   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 1 LOWLIGHT VALUE 'X'.
    78   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 2 LOWLIGHT VALUE 'X'.
    79   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 3 LOWLIGHT VALUE 'X'.
    80   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 4 LOWLIGHT VALUE 'X'.
    81   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 5 LOWLIGHT VALUE 'X'.
    82   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 6 LOWLIGHT VALUE 'X'.
    83   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 7 LOWLIGHT VALUE 'X'.
    84   05 LINE + 1.
    85   10 COL 2   BACKGROUND-COLOR 3 FOREGROUND-COLOR 0 LOWLIGHT VALUE 'X'.
    86   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 1 LOWLIGHT VALUE 'X'.
    87   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 2 LOWLIGHT VALUE 'X'.
    88   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 3 LOWLIGHT VALUE 'X'.
    89   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 4 LOWLIGHT VALUE 'X'.
    90   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 5 LOWLIGHT VALUE 'X'.
    91   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 6 LOWLIGHT VALUE 'X'.
    92   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 7 LOWLIGHT VALUE 'X'.
    93   05 LINE + 1.
    94   10 COL 2   BACKGROUND-COLOR 4 FOREGROUND-COLOR 0 LOWLIGHT VALUE 'X'.
    95   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 1 LOWLIGHT VALUE 'X'.
    96   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 2 LOWLIGHT VALUE 'X'.
    97   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 3 LOWLIGHT VALUE 'X'.
    98   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 4 LOWLIGHT VALUE 'X'.
    99   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 5 LOWLIGHT VALUE 'X'.
   100   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 6 LOWLIGHT VALUE 'X'.
   101   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 7 LOWLIGHT VALUE 'X'.
   102   05 LINE + 1.
   103   10 COL 2   BACKGROUND-COLOR 5 FOREGROUND-COLOR 0 LOWLIGHT VALUE 'X'.
   104   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 1 LOWLIGHT VALUE 'X'.
   105   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 2 LOWLIGHT VALUE 'X'.
   106   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 3 LOWLIGHT VALUE 'X'.
   107   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 4 LOWLIGHT VALUE 'X'.
   108   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 5 LOWLIGHT VALUE 'X'.
ACS Cobol Xref v2.02.02          Dictionary File for COLORS    07/12/2019  16:57:00:17                                 Page    3

   109   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 6 LOWLIGHT VALUE 'X'.
   110   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 7 LOWLIGHT VALUE 'X'.
   111   05 LINE + 1.
   112   10 COL 2   BACKGROUND-COLOR 6 FOREGROUND-COLOR 0 LOWLIGHT VALUE 'X'.
   113   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 1 LOWLIGHT VALUE 'X'.
   114   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 2 LOWLIGHT VALUE 'X'.
   115   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 3 LOWLIGHT VALUE 'X'.
   116   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 4 LOWLIGHT VALUE 'X'.
   117   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 5 LOWLIGHT VALUE 'X'.
   118   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 6 LOWLIGHT VALUE 'X'.
   119   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 7 LOWLIGHT VALUE 'X'.
   120   05 LINE + 1.
   121   10 COL 2   BACKGROUND-COLOR 7 FOREGROUND-COLOR 0 LOWLIGHT VALUE 'X'.
   122   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 1 LOWLIGHT VALUE 'X'.
   123   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 2 LOWLIGHT VALUE 'X'.
   124   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 3 LOWLIGHT VALUE 'X'.
   125   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 4 LOWLIGHT VALUE 'X'.
   126   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 5 LOWLIGHT VALUE 'X'.
   127   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 6 LOWLIGHT VALUE 'X'.
   128   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 7 LOWLIGHT VALUE 'X'.
   129   *> #2
   130   05 LINE 05.
   131   10 COL 12  BACKGROUND-COLOR 0 FOREGROUND-COLOR 0 VALUE 'X'.
   132   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 1 VALUE 'X'.
   133   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 2 VALUE 'X'.
   134   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 3 VALUE 'X'.
   135   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 4 VALUE 'X'.
   136   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 5 VALUE 'X'.
   137   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 6 VALUE 'X'.
   138   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 7 VALUE 'X'.
   139   05 LINE + 1.
   140   10 COL 12  BACKGROUND-COLOR 1 FOREGROUND-COLOR 0 VALUE 'X'.
   141   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 1 VALUE 'X'.
   142   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 2 VALUE 'X'.
   143   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 3 VALUE 'X'.
   144   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 4 VALUE 'X'.
   145   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 5 VALUE 'X'.
   146   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 6 VALUE 'X'.
   147   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 7 VALUE 'X'.
   148   05 LINE + 1.
   149   10 COL 12  BACKGROUND-COLOR 2 FOREGROUND-COLOR 0 VALUE 'X'.
   150   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 1 VALUE 'X'.
   151   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 2 VALUE 'X'.
   152   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 3 VALUE 'X'.
   153   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 4 VALUE 'X'.
   154   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 5 VALUE 'X'.
   155   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 6 VALUE 'X'.
   156   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 7 VALUE 'X'.
   157   05 LINE + 1.
   158   10 COL 12  BACKGROUND-COLOR 3 FOREGROUND-COLOR 0 VALUE 'X'.
   159   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 1 VALUE 'X'.
   160   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 2 VALUE 'X'.
   161   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 3 VALUE 'X'.
   162   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 4 VALUE 'X'.
ACS Cobol Xref v2.02.02          Dictionary File for COLORS    07/12/2019  16:57:00:17                                 Page    4

   163   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 5 VALUE 'X'.
   164   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 6 VALUE 'X'.
   165   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 7 VALUE 'X'.
   166   05 LINE + 1.
   167   10 COL 12  BACKGROUND-COLOR 4 FOREGROUND-COLOR 0 VALUE 'X'.
   168   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 1 VALUE 'X'.
   169   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 2 VALUE 'X'.
   170   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 3 VALUE 'X'.
   171   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 4 VALUE 'X'.
   172   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 5 VALUE 'X'.
   173   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 6 VALUE 'X'.
   174   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 7 VALUE 'X'.
   175   05 LINE + 1.
   176   10 COL 12  BACKGROUND-COLOR 5 FOREGROUND-COLOR 0 VALUE 'X'.
   177   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 1 VALUE 'X'.
   178   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 2 VALUE 'X'.
   179   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 3 VALUE 'X'.
   180   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 4 VALUE 'X'.
   181   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 5 VALUE 'X'.
   182   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 6 VALUE 'X'.
   183   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 7 VALUE 'X'.
   184   05 LINE + 1.
   185   10 COL 12  BACKGROUND-COLOR 6 FOREGROUND-COLOR 0 VALUE 'X'.
   186   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 1 VALUE 'X'.
   187   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 2 VALUE 'X'.
   188   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 3 VALUE 'X'.
   189   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 4 VALUE 'X'.
   190   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 5 VALUE 'X'.
   191   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 6 VALUE 'X'.
   192   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 7 VALUE 'X'.
   193   05 LINE + 1.
   194   10 COL 12  BACKGROUND-COLOR 7 FOREGROUND-COLOR 0 VALUE 'X'.
   195   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 1 VALUE 'X'.
   196   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 2 VALUE 'X'.
   197   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 3 VALUE 'X'.
   198   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 4 VALUE 'X'.
   199   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 5 VALUE 'X'.
   200   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 6 VALUE 'X'.
   201   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 7 VALUE 'X'.
   202   *> #3
   203   05 LINE 05.
   204   10 COL 22  BACKGROUND-COLOR 0 FOREGROUND-COLOR 0 HIGHLIGHT VALUE 'X'.
   205   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 1 HIGHLIGHT VALUE 'X'.
   206   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 2 HIGHLIGHT VALUE 'X'.
   207   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 3 HIGHLIGHT VALUE 'X'.
   208   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 4 HIGHLIGHT VALUE 'X'.
   209   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 5 HIGHLIGHT VALUE 'X'.
   210   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 6 HIGHLIGHT VALUE 'X'.
   211   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 7 HIGHLIGHT VALUE 'X'.
   212   05 LINE + 1.
   213   10 COL 22  BACKGROUND-COLOR 1 FOREGROUND-COLOR 0 HIGHLIGHT VALUE 'X'.
   214   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 1 HIGHLIGHT VALUE 'X'.
   215   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 2 HIGHLIGHT VALUE 'X'.
   216   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 3 HIGHLIGHT VALUE 'X'.
ACS Cobol Xref v2.02.02          Dictionary File for COLORS    07/12/2019  16:57:00:17                                 Page    5

   217   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 4 HIGHLIGHT VALUE 'X'.
   218   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 5 HIGHLIGHT VALUE 'X'.
   219   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 6 HIGHLIGHT VALUE 'X'.
   220   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 7 HIGHLIGHT VALUE 'X'.
   221   05 LINE + 1.
   222   10 COL 22  BACKGROUND-COLOR 2 FOREGROUND-COLOR 0 HIGHLIGHT VALUE 'X'.
   223   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 1 HIGHLIGHT VALUE 'X'.
   224   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 2 HIGHLIGHT VALUE 'X'.
   225   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 3 HIGHLIGHT VALUE 'X'.
   226   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 4 HIGHLIGHT VALUE 'X'.
   227   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 5 HIGHLIGHT VALUE 'X'.
   228   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 6 HIGHLIGHT VALUE 'X'.
   229   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 7 HIGHLIGHT VALUE 'X'.
   230   05 LINE + 1.
   231   10 COL 22  BACKGROUND-COLOR 3 FOREGROUND-COLOR 0 HIGHLIGHT VALUE 'X'.
   232   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 1 HIGHLIGHT VALUE 'X'.
   233   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 2 HIGHLIGHT VALUE 'X'.
   234   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 3 HIGHLIGHT VALUE 'X'.
   235   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 4 HIGHLIGHT VALUE 'X'.
   236   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 5 HIGHLIGHT VALUE 'X'.
   237   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 6 HIGHLIGHT VALUE 'X'.
   238   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 7 HIGHLIGHT VALUE 'X'.
   239   05 LINE + 1.
   240   10 COL 22  BACKGROUND-COLOR 4 FOREGROUND-COLOR 0 HIGHLIGHT VALUE 'X'.
   241   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 1 HIGHLIGHT VALUE 'X'.
   242   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 2 HIGHLIGHT VALUE 'X'.
   243   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 3 HIGHLIGHT VALUE 'X'.
   244   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 4 HIGHLIGHT VALUE 'X'.
   245   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 5 HIGHLIGHT VALUE 'X'.
   246   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 6 HIGHLIGHT VALUE 'X'.
   247   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 7 HIGHLIGHT VALUE 'X'.
   248   05 LINE + 1.
   249   10 COL 22  BACKGROUND-COLOR 5 FOREGROUND-COLOR 0 HIGHLIGHT VALUE 'X'.
   250   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 1 HIGHLIGHT VALUE 'X'.
   251   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 2 HIGHLIGHT VALUE 'X'.
   252   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 3 HIGHLIGHT VALUE 'X'.
   253   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 4 HIGHLIGHT VALUE 'X'.
   254   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 5 HIGHLIGHT VALUE 'X'.
   255   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 6 HIGHLIGHT VALUE 'X'.
   256   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 7 HIGHLIGHT VALUE 'X'.
   257   05 LINE + 1.
   258   10 COL 22  BACKGROUND-COLOR 6 FOREGROUND-COLOR 0 HIGHLIGHT VALUE 'X'.
   259   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 1 HIGHLIGHT VALUE 'X'.
   260   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 2 HIGHLIGHT VALUE 'X'.
   261   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 3 HIGHLIGHT VALUE 'X'.
   262   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 4 HIGHLIGHT VALUE 'X'.
   263   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 5 HIGHLIGHT VALUE 'X'.
   264   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 6 HIGHLIGHT VALUE 'X'.
   265   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 7 HIGHLIGHT VALUE 'X'.
   266   05 LINE + 1.
   267   10 COL 22  BACKGROUND-COLOR 7 FOREGROUND-COLOR 0 HIGHLIGHT VALUE 'X'.
   268   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 1 HIGHLIGHT VALUE 'X'.
   269   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 2 HIGHLIGHT VALUE 'X'.
   270   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 3 HIGHLIGHT VALUE 'X'.
ACS Cobol Xref v2.02.02          Dictionary File for COLORS    07/12/2019  16:57:00:18                                 Page    6

   271   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 4 HIGHLIGHT VALUE 'X'.
   272   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 5 HIGHLIGHT VALUE 'X'.
   273   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 6 HIGHLIGHT VALUE 'X'.
   274   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 7 HIGHLIGHT VALUE 'X'.
   275   *> #4
   276   05 LINE 05.
   277   10 COL 32  BACKGROUND-COLOR 0 FOREGROUND-COLOR 0 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   278   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 1 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   279   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 2 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   280   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 3 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   281   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 4 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   282   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 5 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   283   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 6 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   284   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 7 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   285   05 LINE + 1.
   286   10 COL 32  BACKGROUND-COLOR 1 FOREGROUND-COLOR 0 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   287   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 1 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   288   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 2 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   289   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 3 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   290   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 4 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   291   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 5 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   292   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 6 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   293   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 7 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   294   05 LINE + 1.
   295   10 COL 32  BACKGROUND-COLOR 2 FOREGROUND-COLOR 0 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   296   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 1 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   297   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 2 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   298   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 3 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   299   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 4 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   300   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 5 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   301   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 6 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   302   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 7 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   303   05 LINE + 1.
   304   10 COL 32  BACKGROUND-COLOR 3 FOREGROUND-COLOR 0 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   305   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 1 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   306   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 2 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   307   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 3 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   308   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 4 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   309   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 5 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   310   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 6 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   311   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 7 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   312   05 LINE + 1.
   313   10 COL 32  BACKGROUND-COLOR 4 FOREGROUND-COLOR 0 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   314   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 1 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   315   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 2 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   316   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 3 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   317   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 4 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   318   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 5 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   319   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 6 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   320   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 7 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   321   05 LINE + 1.
   322   10 COL 32 BACKGROUND-COLOR 5 FOREGROUND-COLOR 0 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   323   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 1 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   324   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 2 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
ACS Cobol Xref v2.02.02          Dictionary File for COLORS    07/12/2019  16:57:00:18                                 Page    7

   325   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 3 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   326   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 4 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   327   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 5 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   328   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 6 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   329   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 7 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   330   05 LINE + 1.
   331   10 COL 32  BACKGROUND-COLOR 6 FOREGROUND-COLOR 0 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   332   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 1 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   333   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 2 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   334   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 3 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   335   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 4 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   336   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 5 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   337   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 6 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   338   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 7 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   339   05 LINE + 1.
   340   10 COL 32  BACKGROUND-COLOR 7 FOREGROUND-COLOR 0 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   341   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 1 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   342   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 2 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   343   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 3 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   344   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 4 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   345   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 5 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   346   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 6 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   347   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 7 LOWLIGHT REVERSE-VIDEO VALUE 'X'.
   348   *> #5
   349   05 LINE 05.
   350   10 COL 42  BACKGROUND-COLOR 0 FOREGROUND-COLOR 0 REVERSE-VIDEO VALUE 'X'.
   351   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 1 REVERSE-VIDEO VALUE 'X'.
   352   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 2 REVERSE-VIDEO VALUE 'X'.
   353   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 3 REVERSE-VIDEO VALUE 'X'.
   354   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 4 REVERSE-VIDEO VALUE 'X'.
   355   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 5 REVERSE-VIDEO VALUE 'X'.
   356   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 6 REVERSE-VIDEO VALUE 'X'.
   357   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 7 REVERSE-VIDEO VALUE 'X'.
   358   05 LINE + 1.
   359   10 COL 42  BACKGROUND-COLOR 1 FOREGROUND-COLOR 0 REVERSE-VIDEO VALUE 'X'.
   360   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 1 REVERSE-VIDEO VALUE 'X'.
   361   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 2 REVERSE-VIDEO VALUE 'X'.
   362   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 3 REVERSE-VIDEO VALUE 'X'.
   363   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 4 REVERSE-VIDEO VALUE 'X'.
   364   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 5 REVERSE-VIDEO VALUE 'X'.
   365   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 6 REVERSE-VIDEO VALUE 'X'.
   366   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 7 REVERSE-VIDEO VALUE 'X'.
   367   05 LINE + 1.
   368   10 COL 42  BACKGROUND-COLOR 2 FOREGROUND-COLOR 0 REVERSE-VIDEO VALUE 'X'.
   369   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 1 REVERSE-VIDEO VALUE 'X'.
   370   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 2 REVERSE-VIDEO VALUE 'X'.
   371   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 3 REVERSE-VIDEO VALUE 'X'.
   372   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 4 REVERSE-VIDEO VALUE 'X'.
   373   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 5 REVERSE-VIDEO VALUE 'X'.
   374   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 6 REVERSE-VIDEO VALUE 'X'.
   375   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 7 REVERSE-VIDEO VALUE 'X'.
   376   05 LINE + 1.
   377   10 COL 42  BACKGROUND-COLOR 3 FOREGROUND-COLOR 0 REVERSE-VIDEO VALUE 'X'.
   378   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 1 REVERSE-VIDEO VALUE 'X'.
ACS Cobol Xref v2.02.02          Dictionary File for COLORS    07/12/2019  16:57:00:18                                 Page    8

   379   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 2 REVERSE-VIDEO VALUE 'X'.
   380   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 3 REVERSE-VIDEO VALUE 'X'.
   381   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 4 REVERSE-VIDEO VALUE 'X'.
   382   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 5 REVERSE-VIDEO VALUE 'X'.
   383   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 6 REVERSE-VIDEO VALUE 'X'.
   384   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 7 REVERSE-VIDEO VALUE 'X'.
   385   05 LINE + 1.
   386   10 COL 42  BACKGROUND-COLOR 4 FOREGROUND-COLOR 0 REVERSE-VIDEO VALUE 'X'.
   387   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 1 REVERSE-VIDEO VALUE 'X'.
   388   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 2 REVERSE-VIDEO VALUE 'X'.
   389   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 3 REVERSE-VIDEO VALUE 'X'.
   390   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 4 REVERSE-VIDEO VALUE 'X'.
   391   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 5 REVERSE-VIDEO VALUE 'X'.
   392   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 6 REVERSE-VIDEO VALUE 'X'.
   393   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 7 REVERSE-VIDEO VALUE 'X'.
   394   05 LINE + 1.
   395   10 COL 42  BACKGROUND-COLOR 5 FOREGROUND-COLOR 0 REVERSE-VIDEO VALUE 'X'.
   396   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 1 REVERSE-VIDEO VALUE 'X'.
   397   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 2 REVERSE-VIDEO VALUE 'X'.
   398   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 3 REVERSE-VIDEO VALUE 'X'.
   399   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 4 REVERSE-VIDEO VALUE 'X'.
   400   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 5 REVERSE-VIDEO VALUE 'X'.
   401   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 6 REVERSE-VIDEO VALUE 'X'.
   402   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 7 REVERSE-VIDEO VALUE 'X'.
   403   05 LINE + 1.
   404   10 COL 42  BACKGROUND-COLOR 6 FOREGROUND-COLOR 0 REVERSE-VIDEO VALUE 'X'.
   405   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 1 REVERSE-VIDEO VALUE 'X'.
   406   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 2 REVERSE-VIDEO VALUE 'X'.
   407   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 3 REVERSE-VIDEO VALUE 'X'.
   408   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 4 REVERSE-VIDEO VALUE 'X'.
   409   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 5 REVERSE-VIDEO VALUE 'X'.
   410   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 6 REVERSE-VIDEO VALUE 'X'.
   411   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 7 REVERSE-VIDEO VALUE 'X'.
   412   05 LINE + 1.
   413   10 COL 42  BACKGROUND-COLOR 7 FOREGROUND-COLOR 0 REVERSE-VIDEO VALUE 'X'.
   414   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 1 REVERSE-VIDEO VALUE 'X'.
   415   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 2 REVERSE-VIDEO VALUE 'X'.
   416   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 3 REVERSE-VIDEO VALUE 'X'.
   417   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 4 REVERSE-VIDEO VALUE 'X'.
   418   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 5 REVERSE-VIDEO VALUE 'X'.
   419   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 6 REVERSE-VIDEO VALUE 'X'.
   420   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 7 REVERSE-VIDEO VALUE 'X'.
   421   *> #6
   422   05 LINE 05.
   423   10 COL 52  BACKGROUND-COLOR 0 FOREGROUND-COLOR 0 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   424   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 1 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   425   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 2 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   426   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 3 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   427   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 4 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   428   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 5 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   429   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 6 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   430   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 7 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   431   05 LINE + 1.
   432   10 COL 52  BACKGROUND-COLOR 1 FOREGROUND-COLOR 0 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
ACS Cobol Xref v2.02.02          Dictionary File for COLORS    07/12/2019  16:57:00:19                                 Page    9

   433   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 1 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   434   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 2 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   435   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 3 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   436   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 4 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   437   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 5 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   438   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 6 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   439   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 7 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   440   05 LINE + 1.
   441   10 COL 52  BACKGROUND-COLOR 2 FOREGROUND-COLOR 0 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   442   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 1 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   443   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 2 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   444   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 3 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   445   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 4 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   446   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 5 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   447   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 6 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   448   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 7 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   449   05 LINE + 1.
   450   10 COL 52  BACKGROUND-COLOR 3 FOREGROUND-COLOR 0 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   451   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 1 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   452   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 2 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   453   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 3 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   454   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 4 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   455   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 5 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   456   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 6 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   457   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 7 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   458   05 LINE + 1.
   459   10 COL 52  BACKGROUND-COLOR 4 FOREGROUND-COLOR 0 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   460   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 1 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   461   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 2 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   462   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 3 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   463   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 4 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   464   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 5 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   465   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 6 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   466   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 7 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   467   05 LINE + 1.
   468   10 COL 52  BACKGROUND-COLOR 5 FOREGROUND-COLOR 0 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   469   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 1 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   470   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 2 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   471   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 3 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   472   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 4 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   473   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 5 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   474   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 6 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   475   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 7 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   476   05 LINE + 1.
   477   10 COL 52  BACKGROUND-COLOR 6 FOREGROUND-COLOR 0 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   478   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 1 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   479   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 2 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   480   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 3 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   481   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 4 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   482   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 5 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   483   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 6 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   484   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 7 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   485   05 LINE + 1.
   486   10 COL 52  BACKGROUND-COLOR 7 FOREGROUND-COLOR 0 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
ACS Cobol Xref v2.02.02          Dictionary File for COLORS    07/12/2019  16:57:00:19                                 Page   10

   487   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 1 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   488   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 2 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   489   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 3 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   490   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 4 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   491   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 5 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   492   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 6 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   493   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 7 HIGHLIGHT REVERSE-VIDEO VALUE 'X'.
   494   *> #7
   495   05 LINE 17.
   496   10 COL 02  BACKGROUND-COLOR 0 FOREGROUND-COLOR 0 LOWLIGHT BLINK VALUE 'X'.
   497   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 1 LOWLIGHT BLINK VALUE 'X'.
   498   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 2 LOWLIGHT BLINK VALUE 'X'.
   499   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 3 LOWLIGHT BLINK VALUE 'X'.
   500   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 4 LOWLIGHT BLINK VALUE 'X'.
   501   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 5 LOWLIGHT BLINK VALUE 'X'.
   502   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 6 LOWLIGHT BLINK VALUE 'X'.
   503   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 7 LOWLIGHT BLINK VALUE 'X'.
   504   05 LINE + 1.
   505   10 COL 02  BACKGROUND-COLOR 1 FOREGROUND-COLOR 0 LOWLIGHT BLINK VALUE 'X'.
   506   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 1 LOWLIGHT BLINK VALUE 'X'.
   507   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 2 LOWLIGHT BLINK VALUE 'X'.
   508   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 3 LOWLIGHT BLINK VALUE 'X'.
   509   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 4 LOWLIGHT BLINK VALUE 'X'.
   510   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 5 LOWLIGHT BLINK VALUE 'X'.
   511   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 6 LOWLIGHT BLINK VALUE 'X'.
   512   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 7 LOWLIGHT BLINK VALUE 'X'.
   513   05 LINE + 1.
   514   10 COL 02  BACKGROUND-COLOR 2 FOREGROUND-COLOR 0 LOWLIGHT BLINK VALUE 'X'.
   515   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 1 LOWLIGHT BLINK VALUE 'X'.
   516   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 2 LOWLIGHT BLINK VALUE 'X'.
   517   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 3 LOWLIGHT BLINK VALUE 'X'.
   518   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 4 LOWLIGHT BLINK VALUE 'X'.
   519   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 5 LOWLIGHT BLINK VALUE 'X'.
   520   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 6 LOWLIGHT BLINK VALUE 'X'.
   521   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 7 LOWLIGHT BLINK VALUE 'X'.
   522   05 LINE + 1.
   523   10 COL 02  BACKGROUND-COLOR 3 FOREGROUND-COLOR 0 LOWLIGHT BLINK VALUE 'X'.
   524   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 1 LOWLIGHT BLINK VALUE 'X'.
   525   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 2 LOWLIGHT BLINK VALUE 'X'.
   526   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 3 LOWLIGHT BLINK VALUE 'X'.
   527   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 4 LOWLIGHT BLINK VALUE 'X'.
   528   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 5 LOWLIGHT BLINK VALUE 'X'.
   529   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 6 LOWLIGHT BLINK VALUE 'X'.
   530   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 7 LOWLIGHT BLINK VALUE 'X'.
   531   05 LINE + 1.
   532   10 COL 02  BACKGROUND-COLOR 4 FOREGROUND-COLOR 0 LOWLIGHT BLINK VALUE 'X'.
   533   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 1 LOWLIGHT BLINK VALUE 'X'.
   534   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 2 LOWLIGHT BLINK VALUE 'X'.
   535   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 3 LOWLIGHT BLINK VALUE 'X'.
   536   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 4 LOWLIGHT BLINK VALUE 'X'.
   537   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 5 LOWLIGHT BLINK VALUE 'X'.
   538   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 6 LOWLIGHT BLINK VALUE 'X'.
   539   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 7 LOWLIGHT BLINK VALUE 'X'.
   540   05 LINE + 1.
ACS Cobol Xref v2.02.02          Dictionary File for COLORS    07/12/2019  16:57:00:19                                 Page   11

   541   10 COL 02  BACKGROUND-COLOR 5 FOREGROUND-COLOR 0 LOWLIGHT BLINK VALUE 'X'.
   542   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 1 LOWLIGHT BLINK VALUE 'X'.
   543   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 2 LOWLIGHT BLINK VALUE 'X'.
   544   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 3 LOWLIGHT BLINK VALUE 'X'.
   545   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 4 LOWLIGHT BLINK VALUE 'X'.
   546   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 5 LOWLIGHT BLINK VALUE 'X'.
   547   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 6 LOWLIGHT BLINK VALUE 'X'.
   548   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 7 LOWLIGHT BLINK VALUE 'X'.
   549   05 LINE + 1.
   550   10 COL 02  BACKGROUND-COLOR 6 FOREGROUND-COLOR 0 LOWLIGHT BLINK VALUE 'X'.
   551   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 1 LOWLIGHT BLINK VALUE 'X'.
   552   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 2 LOWLIGHT BLINK VALUE 'X'.
   553   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 3 LOWLIGHT BLINK VALUE 'X'.
   554   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 4 LOWLIGHT BLINK VALUE 'X'.
   555   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 5 LOWLIGHT BLINK VALUE 'X'.
   556   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 6 LOWLIGHT BLINK VALUE 'X'.
   557   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 7 LOWLIGHT BLINK VALUE 'X'.
   558   05 LINE + 1.
   559   10 COL 02  BACKGROUND-COLOR 7 FOREGROUND-COLOR 0 LOWLIGHT BLINK VALUE 'X'.
   560   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 1 LOWLIGHT BLINK VALUE 'X'.
   561   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 2 LOWLIGHT BLINK VALUE 'X'.
   562   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 3 LOWLIGHT BLINK VALUE 'X'.
   563   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 4 LOWLIGHT BLINK VALUE 'X'.
   564   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 5 LOWLIGHT BLINK VALUE 'X'.
   565   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 6 LOWLIGHT BLINK VALUE 'X'.
   566   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 7 LOWLIGHT BLINK VALUE 'X'.
   567   *> #8
   568   05 LINE 17.
   569   10 COL 12  BACKGROUND-COLOR 0 FOREGROUND-COLOR 0 BLINK VALUE 'X'.
   570   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 1 BLINK VALUE 'X'.
   571   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 2 BLINK VALUE 'X'.
   572   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 3 BLINK VALUE 'X'.
   573   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 4 BLINK VALUE 'X'.
   574   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 5 BLINK VALUE 'X'.
   575   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 6 BLINK VALUE 'X'.
   576   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 7 BLINK VALUE 'X'.
   577   05 LINE + 1.
   578   10 COL 12  BACKGROUND-COLOR 1 FOREGROUND-COLOR 0 BLINK VALUE 'X'.
   579   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 1 BLINK VALUE 'X'.
   580   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 2 BLINK VALUE 'X'.
   581   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 3 BLINK VALUE 'X'.
   582   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 4 BLINK VALUE 'X'.
   583   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 5 BLINK VALUE 'X'.
   584   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 6 BLINK VALUE 'X'.
   585   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 7 BLINK VALUE 'X'.
   586   05 LINE + 1.
   587   10 COL 12  BACKGROUND-COLOR 2 FOREGROUND-COLOR 0 BLINK VALUE 'X'.
   588   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 1 BLINK VALUE 'X'.
   589   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 2 BLINK VALUE 'X'.
   590   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 3 BLINK VALUE 'X'.
   591   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 4 BLINK VALUE 'X'.
   592   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 5 BLINK VALUE 'X'.
   593   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 6 BLINK VALUE 'X'.
   594   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 7 BLINK VALUE 'X'.
ACS Cobol Xref v2.02.02          Dictionary File for COLORS    07/12/2019  16:57:00:19                                 Page   12

   595   05 LINE + 1.
   596   10 COL 12  BACKGROUND-COLOR 3 FOREGROUND-COLOR 0 BLINK VALUE 'X'.
   597   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 1 BLINK VALUE 'X'.
   598   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 2 BLINK VALUE 'X'.
   599   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 3 BLINK VALUE 'X'.
   600   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 4 BLINK VALUE 'X'.
   601   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 5 BLINK VALUE 'X'.
   602   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 6 BLINK VALUE 'X'.
   603   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 7 BLINK VALUE 'X'.
   604   05 LINE + 1.
   605   10 COL 12  BACKGROUND-COLOR 4 FOREGROUND-COLOR 0 BLINK VALUE 'X'.
   606   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 1 BLINK VALUE 'X'.
   607   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 2 BLINK VALUE 'X'.
   608   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 3 BLINK VALUE 'X'.
   609   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 4 BLINK VALUE 'X'.
   610   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 5 BLINK VALUE 'X'.
   611   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 6 BLINK VALUE 'X'.
   612   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 7 BLINK VALUE 'X'.
   613   05 LINE + 1.
   614   10 COL 12  BACKGROUND-COLOR 5 FOREGROUND-COLOR 0 BLINK VALUE 'X'.
   615   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 1 BLINK VALUE 'X'.
   616   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 2 BLINK VALUE 'X'.
   617   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 3 BLINK VALUE 'X'.
   618   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 4 BLINK VALUE 'X'.
   619   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 5 BLINK VALUE 'X'.
   620   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 6 BLINK VALUE 'X'.
   621   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 7 BLINK VALUE 'X'.
   622   05 LINE + 1.
   623   10 COL 12  BACKGROUND-COLOR 6 FOREGROUND-COLOR 0 BLINK VALUE 'X'.
   624   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 1 BLINK VALUE 'X'.
   625   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 2 BLINK VALUE 'X'.
   626   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 3 BLINK VALUE 'X'.
   627   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 4 BLINK VALUE 'X'.
   628   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 5 BLINK VALUE 'X'.
   629   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 6 BLINK VALUE 'X'.
   630   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 7 BLINK VALUE 'X'.
   631   05 LINE + 1.
   632   10 COL 12  BACKGROUND-COLOR 7 FOREGROUND-COLOR 0 BLINK VALUE 'X'.
   633   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 1 BLINK VALUE 'X'.
   634   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 2 BLINK VALUE 'X'.
   635   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 3 BLINK VALUE 'X'.
   636   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 4 BLINK VALUE 'X'.
   637   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 5 BLINK VALUE 'X'.
   638   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 6 BLINK VALUE 'X'.
   639   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 7 BLINK VALUE 'X'.
   640   *> #9
   641   05 LINE 17.
   642   10 COL 22  BACKGROUND-COLOR 0 FOREGROUND-COLOR 0 HIGHLIGHT BLINK VALUE 'X'.
   643   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 1 HIGHLIGHT BLINK VALUE 'X'.
   644   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 2 HIGHLIGHT BLINK VALUE 'X'.
   645   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 3 HIGHLIGHT BLINK VALUE 'X'.
   646   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 4 HIGHLIGHT BLINK VALUE 'X'.
   647   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 5 HIGHLIGHT BLINK VALUE 'X'.
   648   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 6 HIGHLIGHT BLINK VALUE 'X'.
ACS Cobol Xref v2.02.02          Dictionary File for COLORS    07/12/2019  16:57:00:20                                 Page   13

   649   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 7 HIGHLIGHT BLINK VALUE 'X'.
   650   05 LINE + 1.
   651   10 COL 22  BACKGROUND-COLOR 1 FOREGROUND-COLOR 0 HIGHLIGHT BLINK VALUE 'X'.
   652   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 1 HIGHLIGHT BLINK VALUE 'X'.
   653   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 2 HIGHLIGHT BLINK VALUE 'X'.
   654   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 3 HIGHLIGHT BLINK VALUE 'X'.
   655   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 4 HIGHLIGHT BLINK VALUE 'X'.
   656   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 5 HIGHLIGHT BLINK VALUE 'X'.
   657   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 6 HIGHLIGHT BLINK VALUE 'X'.
   658   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 7 HIGHLIGHT BLINK VALUE 'X'.
   659   05 LINE + 1.
   660   10 COL 22  BACKGROUND-COLOR 2 FOREGROUND-COLOR 0 HIGHLIGHT BLINK VALUE 'X'.
   661   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 1 HIGHLIGHT BLINK VALUE 'X'.
   662   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 2 HIGHLIGHT BLINK VALUE 'X'.
   663   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 3 HIGHLIGHT BLINK VALUE 'X'.
   664   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 4 HIGHLIGHT BLINK VALUE 'X'.
   665   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 5 HIGHLIGHT BLINK VALUE 'X'.
   666   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 6 HIGHLIGHT BLINK VALUE 'X'.
   667   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 7 HIGHLIGHT BLINK VALUE 'X'.
   668   05 LINE + 1.
   669   10 COL 22  BACKGROUND-COLOR 3 FOREGROUND-COLOR 0 HIGHLIGHT BLINK VALUE 'X'.
   670   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 1 HIGHLIGHT BLINK VALUE 'X'.
   671   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 2 HIGHLIGHT BLINK VALUE 'X'.
   672   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 3 HIGHLIGHT BLINK VALUE 'X'.
   673   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 4 HIGHLIGHT BLINK VALUE 'X'.
   674   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 5 HIGHLIGHT BLINK VALUE 'X'.
   675   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 6 HIGHLIGHT BLINK VALUE 'X'.
   676   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 7 HIGHLIGHT BLINK VALUE 'X'.
   677   05 LINE + 1.
   678   10 COL 22  BACKGROUND-COLOR 4 FOREGROUND-COLOR 0 HIGHLIGHT BLINK VALUE 'X'.
   679   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 1 HIGHLIGHT BLINK VALUE 'X'.
   680   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 2 HIGHLIGHT BLINK VALUE 'X'.
   681   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 3 HIGHLIGHT BLINK VALUE 'X'.
   682   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 4 HIGHLIGHT BLINK VALUE 'X'.
   683   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 5 HIGHLIGHT BLINK VALUE 'X'.
   684   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 6 HIGHLIGHT BLINK VALUE 'X'.
   685   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 7 HIGHLIGHT BLINK VALUE 'X'.
   686   05 LINE + 1.
   687   10 COL 22  BACKGROUND-COLOR 5 FOREGROUND-COLOR 0 HIGHLIGHT BLINK VALUE 'X'.
   688   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 1 HIGHLIGHT BLINK VALUE 'X'.
   689   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 2 HIGHLIGHT BLINK VALUE 'X'.
   690   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 3 HIGHLIGHT BLINK VALUE 'X'.
   691   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 4 HIGHLIGHT BLINK VALUE 'X'.
   692   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 5 HIGHLIGHT BLINK VALUE 'X'.
   693   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 6 HIGHLIGHT BLINK VALUE 'X'.
   694   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 7 HIGHLIGHT BLINK VALUE 'X'.
   695   05 LINE + 1.
   696   10 COL 22  BACKGROUND-COLOR 6 FOREGROUND-COLOR 0 HIGHLIGHT BLINK VALUE 'X'.
   697   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 1 HIGHLIGHT BLINK VALUE 'X'.
   698   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 2 HIGHLIGHT BLINK VALUE 'X'.
   699   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 3 HIGHLIGHT BLINK VALUE 'X'.
   700   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 4 HIGHLIGHT BLINK VALUE 'X'.
   701   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 5 HIGHLIGHT BLINK VALUE 'X'.
   702   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 6 HIGHLIGHT BLINK VALUE 'X'.
ACS Cobol Xref v2.02.02          Dictionary File for COLORS    07/12/2019  16:57:00:20                                 Page   14

   703   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 7 HIGHLIGHT BLINK VALUE 'X'.
   704   05 LINE + 1.
   705   10 COL 22  BACKGROUND-COLOR 7 FOREGROUND-COLOR 0 HIGHLIGHT BLINK VALUE 'X'.
   706   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 1 HIGHLIGHT BLINK VALUE 'X'.
   707   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 2 HIGHLIGHT BLINK VALUE 'X'.
   708   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 3 HIGHLIGHT BLINK VALUE 'X'.
   709   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 4 HIGHLIGHT BLINK VALUE 'X'.
   710   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 5 HIGHLIGHT BLINK VALUE 'X'.
   711   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 6 HIGHLIGHT BLINK VALUE 'X'.
   712   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 7 HIGHLIGHT BLINK VALUE 'X'.
   713   *> #10
   714   05 LINE 17.
   715   10 COL 32  BACKGROUND-COLOR 0 FOREGROUND-COLOR 0 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   716   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 1 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   717   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 2 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   718   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 3 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   719   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 4 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   720   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 5 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   721   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 6 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   722   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 7 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   723   05 LINE + 1.
   724   10 COL 32  BACKGROUND-COLOR 1 FOREGROUND-COLOR 0 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   725   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 1 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   726   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 2 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   727   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 3 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   728   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 4 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   729   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 5 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   730   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 6 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   731   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 7 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   732   05 LINE + 1.
   733   10 COL 32  BACKGROUND-COLOR 2 FOREGROUND-COLOR 0 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   734   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 1 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   735   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 2 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   736   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 3 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   737   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 4 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   738   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 5 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   739   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 6 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   740   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 7 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   741   05 LINE + 1.
   742   10 COL 32  BACKGROUND-COLOR 3 FOREGROUND-COLOR 0 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   743   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 1 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   744   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 2 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   745   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 3 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   746   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 4 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   747   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 5 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   748   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 6 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   749   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 7 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   750   05 LINE + 1.
   751   10 COL 32  BACKGROUND-COLOR 4 FOREGROUND-COLOR 0 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   752   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 1 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   753   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 2 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   754   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 3 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   755   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 4 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   756   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 5 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
ACS Cobol Xref v2.02.02          Dictionary File for COLORS    07/12/2019  16:57:00:20                                 Page   15

   757   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 6 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   758   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 7 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   759   05 LINE + 1.
   760   10 COL 32  BACKGROUND-COLOR 5 FOREGROUND-COLOR 0 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   761   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 1 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   762   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 2 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   763   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 3 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   764   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 4 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   765   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 5 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   766   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 6 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   767   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 7 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   768   05 LINE + 1.
   769   10 COL 32  BACKGROUND-COLOR 6 FOREGROUND-COLOR 0 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   770   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 1 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   771   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 2 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   772   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 3 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   773   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 4 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   774   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 5 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   775   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 6 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   776   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 7 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   777   05 LINE + 1.
   778   10 COL 32  BACKGROUND-COLOR 7 FOREGROUND-COLOR 0 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   779   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 1 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   780   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 2 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   781   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 3 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   782   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 4 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   783   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 5 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   784   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 6 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   785   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 7 LOWLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   786   *> #11
   787   05 LINE 17.
   788   10 COL 42  BACKGROUND-COLOR 0 FOREGROUND-COLOR 0 BLINK REVERSE-VIDEO VALUE 'X'.
   789   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 1 BLINK REVERSE-VIDEO VALUE 'X'.
   790   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 2 BLINK REVERSE-VIDEO VALUE 'X'.
   791   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 3 BLINK REVERSE-VIDEO VALUE 'X'.
   792   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 4 BLINK REVERSE-VIDEO VALUE 'X'.
   793   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 5 BLINK REVERSE-VIDEO VALUE 'X'.
   794   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 6 BLINK REVERSE-VIDEO VALUE 'X'.
   795   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 7 BLINK REVERSE-VIDEO VALUE 'X'.
   796   05 LINE + 1.
   797   10 COL 42  BACKGROUND-COLOR 1 FOREGROUND-COLOR 0 BLINK REVERSE-VIDEO VALUE 'X'.
   798   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 1 BLINK REVERSE-VIDEO VALUE 'X'.
   799   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 2 BLINK REVERSE-VIDEO VALUE 'X'.
   800   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 3 BLINK REVERSE-VIDEO VALUE 'X'.
   801   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 4 BLINK REVERSE-VIDEO VALUE 'X'.
   802   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 5 BLINK REVERSE-VIDEO VALUE 'X'.
   803   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 6 BLINK REVERSE-VIDEO VALUE 'X'.
   804   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 7 BLINK REVERSE-VIDEO VALUE 'X'.
   805   05 LINE + 1.
   806   10 COL 42  BACKGROUND-COLOR 2 FOREGROUND-COLOR 0 BLINK REVERSE-VIDEO VALUE 'X'.
   807   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 1 BLINK REVERSE-VIDEO VALUE 'X'.
   808   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 2 BLINK REVERSE-VIDEO VALUE 'X'.
   809   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 3 BLINK REVERSE-VIDEO VALUE 'X'.
   810   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 4 BLINK REVERSE-VIDEO VALUE 'X'.
ACS Cobol Xref v2.02.02          Dictionary File for COLORS    07/12/2019  16:57:00:21                                 Page   16

   811   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 5 BLINK REVERSE-VIDEO VALUE 'X'.
   812   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 6 BLINK REVERSE-VIDEO VALUE 'X'.
   813   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 7 BLINK REVERSE-VIDEO VALUE 'X'.
   814   05 LINE + 1.
   815   10 COL 42  BACKGROUND-COLOR 3 FOREGROUND-COLOR 0 BLINK REVERSE-VIDEO VALUE 'X'.
   816   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 1 BLINK REVERSE-VIDEO VALUE 'X'.
   817   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 2 BLINK REVERSE-VIDEO VALUE 'X'.
   818   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 3 BLINK REVERSE-VIDEO VALUE 'X'.
   819   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 4 BLINK REVERSE-VIDEO VALUE 'X'.
   820   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 5 BLINK REVERSE-VIDEO VALUE 'X'.
   821   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 6 BLINK REVERSE-VIDEO VALUE 'X'.
   822   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 7 BLINK REVERSE-VIDEO VALUE 'X'.
   823   05 LINE + 1.
   824   10 COL 42  BACKGROUND-COLOR 4 FOREGROUND-COLOR 0 BLINK REVERSE-VIDEO VALUE 'X'.
   825   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 1 BLINK REVERSE-VIDEO VALUE 'X'.
   826   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 2 BLINK REVERSE-VIDEO VALUE 'X'.
   827   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 3 BLINK REVERSE-VIDEO VALUE 'X'.
   828   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 4 BLINK REVERSE-VIDEO VALUE 'X'.
   829   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 5 BLINK REVERSE-VIDEO VALUE 'X'.
   830   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 6 BLINK REVERSE-VIDEO VALUE 'X'.
   831   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 7 BLINK REVERSE-VIDEO VALUE 'X'.
   832   05 LINE + 1.
   833   10 COL 42  BACKGROUND-COLOR 5 FOREGROUND-COLOR 0 BLINK REVERSE-VIDEO VALUE 'X'.
   834   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 1 BLINK REVERSE-VIDEO VALUE 'X'.
   835   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 2 BLINK REVERSE-VIDEO VALUE 'X'.
   836   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 3 BLINK REVERSE-VIDEO VALUE 'X'.
   837   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 4 BLINK REVERSE-VIDEO VALUE 'X'.
   838   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 5 BLINK REVERSE-VIDEO VALUE 'X'.
   839   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 6 BLINK REVERSE-VIDEO VALUE 'X'.
   840   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 7 BLINK REVERSE-VIDEO VALUE 'X'.
   841   05 LINE + 1.
   842   10 COL 42  BACKGROUND-COLOR 6 FOREGROUND-COLOR 0 BLINK REVERSE-VIDEO VALUE 'X'.
   843   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 1 BLINK REVERSE-VIDEO VALUE 'X'.
   844   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 2 BLINK REVERSE-VIDEO VALUE 'X'.
   845   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 3 BLINK REVERSE-VIDEO VALUE 'X'.
   846   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 4 BLINK REVERSE-VIDEO VALUE 'X'.
   847   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 5 BLINK REVERSE-VIDEO VALUE 'X'.
   848   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 6 BLINK REVERSE-VIDEO VALUE 'X'.
   849   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 7 BLINK REVERSE-VIDEO VALUE 'X'.
   850   05 LINE + 1.
   851   10 COL 42  BACKGROUND-COLOR 7 FOREGROUND-COLOR 0 BLINK REVERSE-VIDEO VALUE 'X'.
   852   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 1 BLINK REVERSE-VIDEO VALUE 'X'.
   853   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 2 BLINK REVERSE-VIDEO VALUE 'X'.
   854   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 3 BLINK REVERSE-VIDEO VALUE 'X'.
   855   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 4 BLINK REVERSE-VIDEO VALUE 'X'.
   856   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 5 BLINK REVERSE-VIDEO VALUE 'X'.
   857   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 6 BLINK REVERSE-VIDEO VALUE 'X'.
   858   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 7 BLINK REVERSE-VIDEO VALUE 'X'.
   859   *> #12
   860   05 LINE 17.
   861   10 COL 52  BACKGROUND-COLOR 0 FOREGROUND-COLOR 0 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   862   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 1 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   863   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 2 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   864   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 3 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
ACS Cobol Xref v2.02.02          Dictionary File for COLORS    07/12/2019  16:57:00:21                                 Page   17

   865   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 4 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   866   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 5 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   867   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 6 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   868   10 COL + 1 BACKGROUND-COLOR 0 FOREGROUND-COLOR 7 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   869   05 LINE + 1.
   870   10 COL 52  BACKGROUND-COLOR 1 FOREGROUND-COLOR 0 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   871   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 1 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   872   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 2 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   873   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 3 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   874   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 4 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   875   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 5 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   876   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 6 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   877   10 COL + 1 BACKGROUND-COLOR 1 FOREGROUND-COLOR 7 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   878   05 LINE + 1.
   879   10 COL 52  BACKGROUND-COLOR 2 FOREGROUND-COLOR 0 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   880   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 1 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   881   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 2 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   882   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 3 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   883   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 4 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   884   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 5 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   885   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 6 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   886   10 COL + 1 BACKGROUND-COLOR 2 FOREGROUND-COLOR 7 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   887   05 LINE + 1.
   888   10 COL 52  BACKGROUND-COLOR 3 FOREGROUND-COLOR 0 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   889   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 1 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   890   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 2 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   891   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 3 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   892   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 4 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   893   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 5 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   894   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 6 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   895   10 COL + 1 BACKGROUND-COLOR 3 FOREGROUND-COLOR 7 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   896   05 LINE + 1.
   897   10 COL 52  BACKGROUND-COLOR 4 FOREGROUND-COLOR 0 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   898   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 1 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   899   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 2 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   900   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 3 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   901   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 4 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   902   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 5 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   903   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 6 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   904   10 COL + 1 BACKGROUND-COLOR 4 FOREGROUND-COLOR 7 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   905   05 LINE + 1.
   906   10 COL 52  BACKGROUND-COLOR 5 FOREGROUND-COLOR 0 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   907   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 1 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   908   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 2 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   909   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 3 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   910   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 4 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   911   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 5 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   912   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 6 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   913   10 COL + 1 BACKGROUND-COLOR 5 FOREGROUND-COLOR 7 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   914   05 LINE + 1.
   915   10 COL 52  BACKGROUND-COLOR 6 FOREGROUND-COLOR 0 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   916   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 1 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   917   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 2 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   918   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 3 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
ACS Cobol Xref v2.02.02          Dictionary File for COLORS    07/12/2019  16:57:00:21                                 Page   18

   919   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 4 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   920   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 5 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   921   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 6 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   922   10 COL + 1 BACKGROUND-COLOR 6 FOREGROUND-COLOR 7 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   923   05 LINE + 1.
   924   10 COL 52  BACKGROUND-COLOR 7 FOREGROUND-COLOR 0 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   925   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 1 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   926   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 2 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   927   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 3 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   928   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 4 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   929   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 5 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   930   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 6 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   931   10 COL + 1 BACKGROUND-COLOR 7 FOREGROUND-COLOR 7 HIGHLIGHT BLINK REVERSE-VIDEO VALUE 'X'.
   932   PROCEDURE DIVISION.
   933   000-Main SECTION.
   934    DISPLAY S-COLORTST-SCR.
   935    STOP RUN.
   936        *>>>Info: Total Copy Depth Used = 01
ACS Cobol Xref v2.02.02          Dictionary File for COLORS    07/12/2019  16:57:00:22                                 Page   19
Symbols of Module: COLORS (COLORS)
----------------------------------

Data Section (SCREEN)           Defn     Locations
-------------------------------+---------------------------------------------------------------

S-COLORTST-SCR                  000007S  000934
ACS Cobol Xref v2.02.02          Dictionary File for COLORS    07/12/2019  16:57:00:22                                 Page   20
Symbols of Module: COLORS (COLORS)
----------------------------------
Procedure                       Defn     Locations
-------------------------------+---------------------------------------------------------------

None
ACS Cobol Xref v2.02.02          Dictionary File for COLORS    07/12/2019  16:57:00:22                                 Page   21
Symbols of Module: COLORS (COLORS)
----------------------------------
Unreferenced Working Storage Symbols

None
ACS Cobol Xref v2.02.02          Dictionary File for COLORS    07/12/2019  16:57:00:22                                 Page   22
Symbols of Module: COLORS (COLORS)
----------------------------------
Unreferenced Procedures

None


4. DAY-FROM-DATE

DAY-FROM-DATE is a user-defined function that accepts a single numeric USAGE DISPLAY argument – either a 7-digit Julian date in the form yyyyddd or an 8-digit Gregorian date in the form yyyymmdd. This argument may be supplied either as a PIC 9(n) USAGE DISPLAY data item (n=7 or 8) or as a 7- or 8-digit numeric literal.

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:

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

This is MUCH more than a mere demonstration program – it’s also a very practical utility! The "GCic" (GnuCOBOL Interactive Compiler) is a TUI (Textual User Interface) program that may be used as a full-screen interface to the "cobc" compiler. In addition, GCic can produce neat, concise and useful cross-reference listings of GnuCOBOL programs, showing not only where user-defined names and built-in registers and intrinsic functions are referenced, but also where user-defined data items ARE MODIFIED by program code!

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:

The program source and cross-reference listing, produced using this program, begins on the next page.

GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /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-2018, Gary L. Cutler, GPL                         Page: 1
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /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-2018, Gary L. Cutler, GPL                         Page: 2
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /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-2018, Gary L. Cutler, GPL                         Page: 3
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /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       *> VC1217 Update compiler version to v3.0 24DEC2017.           **
   155       *>        and copyright to 2018 (in 3 places).                 **
   156       *>***************************************************************
   157       *>
   158        ENVIRONMENT DIVISION.
   159        CONFIGURATION SECTION.
   160        REPOSITORY.
   161            FUNCTION ALL INTRINSIC.
   162        INPUT-OUTPUT SECTION.
   163        FILE-CONTROL.
   164 GC1010     SELECT F-Cobc-Output-FILE   ASSIGN TO WS-Listing-Filename-TXT
   165                                        ORGANIZATION IS LINE SEQUENTIAL.
   166
   167            SELECT F-Source-Code-FILE   ASSIGN TO WS-File-Name-TXT
   168                                        ORGANIZATION IS LINE SEQUENTIAL
   169                                        FILE STATUS IS WS-FSM-Status-CD.


































================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                         Page: 4
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                         Page: 5
====== =========================================================================================

   171        DATA DIVISION.
   172        FILE SECTION.
   173        FD  F-Cobc-Output-FILE.
   174        01  F-Cobc-Output-REC                     PIC X(256).
   175
   176        FD  F-Source-Code-FILE.
   177 GC0313 01  F-Source-Code-REC                     PIC X(256).
   178
   179        WORKING-STORAGE SECTION.
   180        >>source free
   181        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.

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                         Page: 5
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                         Page: 6
====== =========================================================================================
        78 COB-SCR-F33 VALUE 1033.
        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_Up value 2001.
        78 COB-SCR-PAGE-DOWN VALUE 2002.
        78 Cob-Scr-Page_Down value 2002.
        78 COB-SCR-KEY-UP VALUE 2003.
        78 COB-SCR-KEY_UP VALUE 2003.
        78 COB-SCR-KEY-DOWN VALUE 2004.
        78 COB-SCR-KEY_DOWN VALUE 2004.
        78 COB-SCR-ESC VALUE 2005.
        78 COB-SCR-PRINT VALUE 2006.
        78 COB-SCR-TAB VALUE 2007.
        78 COB-SCR-BACK-TAB VALUE 2008.
        78 COB-SCR-KEY-LEFT VALUE 2009.
        78 COB-SCR-KEY-RIGHT VALUE 2010.
        78 COB-SCR-INSERT VALUE 2011.
        78 COB-SCR-DELETE VALUE 2012.
        78 COB-SCR-BACKSPACE VALUE 2013.
        78 COB-SCR-KEY-HOME VALUE 2014.
        78 COB-SCR-KEY-END VALUE 2015.
        78 COB-SCR-NO-FIELD VALUE 8000.
        78 COB-SCR-TIME-OUT VALUE 8001.

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                         Page: 6
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                         Page: 7
====== =========================================================================================
        78 COB-SCR-FATAL VALUE 9000.
        78 COB-SCR-MAX-FIELD VALUE 9001.
   182        >>source fixed
   183 GC0712 01  WS-Compilation-Switches-TXT.
   184 GC0712     05 WS-CS-Args-TXT VALUE SPACES.
   185 GC0712        10 WS-CS-Arg-H1-TXT                PIC X(76).
   186 GC0712        10 WS-CS-Arg-H2-TXT                PIC X(76).
   187 GC0712     05 WS-CS-Filenames-TXT.
   188 GC0712        10 VALUE 'BS2000'                  PIC X(9).
   189 GC0712        10 VALUE 'COBOL85'                 PIC X(9).
   190 GC0712        10 VALUE 'COBOL2002'               PIC X(9).
   191 GC0712        10 VALUE 'DEFAULT'                 PIC X(9).
   192 GC0712        10 VALUE 'IBM'                     PIC X(9).
   193 GC0712        10 VALUE 'MF'                      PIC X(9).
   194 GC0712        10 VALUE 'MVS'                     PIC X(9).
   195 GC0712     05 WS-CS-Filenames-Table-TXT REDEFINES WS-CS-Filenames-TXT.
   196 GC0712        10 WS-CS-Filename-TXT              OCCURS 7 TIMES
   197 GC0712                                           PIC X(9).
   198 GC0712 >>IF F12 < 1
   199 GC0712     05 WS-CS-Config-NUM     VALUE 4       PIC 9(1).
   200 GC0712 >>ELIF F12 > 7
   201 GC0712     05 WS-CS-Config-NUM     VALUE 4       PIC 9(1).
   202 GC0712 >>ELSE
   203 GC0712     05 WS-CS-Config-NUM     VALUE F12     PIC 9(1).
   204 GC0712 >>END-IF
   205 GC0712     05 WS-CS-Extra-TXT VALUE SPACES.
   206 GC0712        10 WS-CS-Extra-H1-TXT              PIC X(76).
   207 GC0712        10 WS-CS-Extra-H2-TXT              PIC X(76).
   208 GC0712     05 WS-CS-Switch-Defaults-TXT.
   209 GC0712        10 VALUE F1                        PIC 9(1). *> WS-CS-DEBUG-CHR
   210 GC0712        10 VALUE F4                        PIC 9(1). *> WS-CS-EXECUTE-CHR
   211 GC0712        10 VALUE F8                        PIC 9(1). *> WS-CS-FREE-CHR
   212 GC0712        10 VALUE F3                        PIC 9(1). *> WS-CS-LIBRARY-CHR
   213 GC0712        10 VALUE F5                        PIC 9(1). *> WS-CS-LISTING-CHR
   214 GC0712        10 VALUE F6                        PIC 9(1). *> WS-CS-NOFUNC-CHR
   215 GC0712        10 VALUE F9                        PIC 9(1). *> WS-CS-NOTRUNC-CHR
   216 GC0712        10 VALUE F2                        PIC 9(1). *> WS-CS-TRACEALL-CHR
   217 GC0712        10 VALUE F7                        PIC 9(1). *> WS-CS-WARNALL-CHR
   218 GC0712     05 WS-CS-All-Switches-TXT REDEFINES
   219 GC0712                               WS-CS-Switch-Defaults-TXT.
   220 GC0712        10 WS-CS-DEBUG-CHR                 PIC X(1).
   221 GC0712        10 WS-CS-EXECUTE-CHR               PIC X(1).
   222 GC0712        10 WS-CS-FREE-CHR                  PIC X(1).
   223 GC0712        10 WS-CS-LIBRARY-CHR               PIC X(1).
   224 GC0712        10 WS-CS-LISTING-CHR               PIC X(1).
   225 GC0712        10 WS-CS-NOFUNC-CHR                PIC X(1).
   226 GC0712        10 WS-CS-NOTRUNC-CHR               PIC X(1).
   227 GC0712        10 WS-CS-TRACEALL-CHR              PIC X(1).
   228 GC0712        10 WS-CS-WARNALL-CHR               PIC X(1).
   229
   230 GC0909 01  WS-Cmd-TXT                            PIC X(512).
   231
   232 GC0712 01  WS-Cmd-Args-TXT                       PIC X(256).

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                         Page: 7
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                         Page: 8
====== =========================================================================================
   233
   234 GC0712 01  WS-Cmd-End-Quote-CHR                  PIC X(1).
   235
   236 GC0712 01  WS-Cmd-SUB                            USAGE BINARY-LONG.
   237
   238        01  WS-Cobc-Cmd-TXT                       PIC X(256).
   239
   240        01  WS-Config-Fn-TXT                      PIC X(12).
   241
   242 GC1113 01  WS-Delete-Fn-TXT                      PIC X(256).
   243
   244        01  WS-File-Name-TXT.
   245            05 WS-FN-CHR                          OCCURS 256 TIMES
   246                                                  PIC X(1).
   247
   248        01  WS-File-Status-Message-TXT.
   249            05 VALUE 'Status Code: '              PIC X(13).
   250            05 WS-FSM-Status-CD                   PIC 9(2).
   251            05 VALUE ', Meaning: '                PIC X(11).
   252            05 WS-FSM-Msg-TXT                     PIC X(25).
   253
   254 GC0909 01  WS-Horizontal-Line-TXT                PIC X(80).
   255 GC0909
   256        01  WS-I-SUB                              USAGE BINARY-LONG.
   257
   258        01  WS-J-SUB                              USAGE BINARY-LONG.
   259
   260 GC1213 01  WS-Listing-CD VALUE F5                PIC 9(1).
   261
   262 GC0712 01  WS-Listing-Filename-TXT               PIC X(256).
   263
   264 GC1213 01  WS-Listing-TXT VALUE SPACES           PIC X(27).
   265
   266        01  WS-OC-Compile-DT                      PIC XXXX/XX/XXBXX/XX.
   267
   268 GC0712 >>IF OS = 'CYGWIN'
   269 GC0712 01  WS-OS-Dir-CHR         VALUE '/'       PIC X(1).
   270 GC0712 78  WS-OS-Exe-Ext-CONST   VALUE '.exe'.
   271 GC0712 78  WS-OS-Lib-Ext-CONST   VALUE '.dll'.
   272 GC0712 78  WS-OS-Lib-Type-CONST  VALUE 'DLL)'.
   273 GC0712 01  WS-OS-Type-CD         VALUE 2         PIC 9(1).
   274 GC0712 >>ELIF OS = 'MINGW'
   275 GC0712 01  WS-OS-Dir-CHR         VALUE '\'       PIC X(1).
   276 GC0712 78  WS-OS-Exe-Ext-CONST   VALUE '.exe'.
   277 GC0712 78  WS-OS-Lib-Ext-CONST   VALUE '.dll'.
   278 GC0712 78  WS-OS-Lib-Type-CONST  VALUE 'DLL)'.
   279 GC0712 01  WS-OS-Type-CD         VALUE 5         PIC 9(1).
   280 GC0712 >>ELIF OS = 'OSX'
   281 GC0712 01  WS-OS-Dir-CHR         VALUE '/'       PIC X(1).
   282 GC0712 78  WS-OS-Exe-Ext-CONST   VALUE ' '.
   283 GC0712 78  WS-OS-Lib-Ext-CONST   VALUE '.dylib'.
   284 GC0712 78  WS-OS-Lib-Type-CONST  VALUE 'DYLIB)'.
   285 GC0712 01  WS-OS-Type-CD         VALUE 4         PIC 9(1).

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                         Page: 8
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                         Page: 9
====== =========================================================================================
   286 GC0712 >>ELIF OS = 'UNIX'
   287 GC0712 01  WS-OS-Dir-CHR         VALUE '/'       PIC X(1).
   288 GC0712 78  WS-OS-Exe-Ext-CONST   VALUE ' '.
   289 GC0712 78  WS-OS-Lib-Ext-CONST   VALUE '.so'.
   290 GC0712 78  WS-OS-Lib-Type-CONST  VALUE 'SO)'.
   291 GC0712 01  WS-OS-Type-CD         VALUE 3         PIC 9(1).
   292 GC0712 >>ELIF OS = 'WINDOWS'
   293 GC0712 01  WS-OS-Dir-CHR         VALUE '\'       PIC X(1).
   294 GC0712 78  WS-OS-Exe-Ext-CONST   VALUE '.exe'.
   295 GC0712 78  WS-OS-Lib-Ext-CONST   VALUE '.dll'.
   296 GC0712 78  WS-OS-Lib-Type-CONST  VALUE 'DLL)'.
   297 GC0712 01  WS-OS-Type-CD         VALUE 1         PIC 9(1).
   298 GC0712 >>END-IF
   299 GC0909     88 WS-OS-Windows-BOOL VALUE 1, 5.
   300 GC0909     88 WS-OS-Cygwin-BOOL  VALUE 2.
   301 GC0712     88 WS-OS-UNIX-BOOL    VALUE 3, 4.
   302 GC0712     88 WS-OS-OSX-BOOL     VALUE 4.
   303
   304        01  WS-OS-Type-FILLER-TXT.
   305            05 VALUE 'Windows'                    PIC X(14).
   306            05 VALUE 'Windows/Cygwin'             PIC X(14).
   307            05 VALUE 'UNIX/Linux'                 PIC X(14).
   308            05 VALUE 'OSX'                        PIC X(14).
   309            05 VALUE 'Windows/MinGW'              PIC X(14).
   310        01  WS-OS-Types-TXT REDEFINES WS-OS-Type-FILLER-TXT.
   311            05 WS-OS-Type-TXT                     OCCURS 5 TIMES
   312                                                  PIC X(14).
   313
   314        01  WS-Output-Msg-TXT                     PIC X(80).
   315
   316        01  WS-Path-Delimiter-CHR                 PIC X(1).
   317
   318        01  WS-Prog-Extension-TXT                 PIC X(256).
   319
   320        01  WS-Prog-Folder-TXT                    PIC X(256).
   321
   322 GC0712 01  WS-Prog-File-Name-TXT.
   323 GC0712     05 WS-PFN-CHR                         OCCURS 256 TIMES
   324 GC0712                                           PIC X(1).
   325
   326 GC0712 01  WS-Pgm-Nm-TXT                         PIC X(31).
   327
   328        01  WS-Runtime-Switches-TXT.
   329            05 WS-RS-Compile-OK-CHR               PIC X(1).
   330               88 WS-RS-Compile-OK-BOOL           VALUE 'Y'.
   331 GC0909        88 WS-RS-Compile-OK-Warn-BOOL      VALUE 'W'.
   332               88 WS-RS-Compile-Failed-BOOL       VALUE 'N'.
   333 GC0609     05 WS-RS-Complete-CHR                 PIC X(1).
   334 GC0609        88 WS-RS-Complete-BOOL             VALUE 'Y'.
   335 GC0609        88 WS-RS-Not-Complete-BOOL         VALUE 'N'.
   336 GC0712     05 WS-RS-Quote-CHR                    PIC X(1).
   337 GC0712        88 WS-RS-Double-Quote-Used-BOOL    VALUE 'Y' FALSE 'N'.
   338 GC0809     05 WS-RS-IDENT-DIV-CHR                PIC X(1).

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                         Page: 9
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 10
====== =========================================================================================
   339 GC0809        88 WS-RS-1st-Prog-Complete-BOOL    VALUE 'Y'.
   340 GC0809        88 WS-RS-More-To-1st-Prog-BOOL     VALUE 'N'.
   341            05 WS-RS-No-Switch-Chgs-CHR           PIC X(1).
   342               88 WS-RS-No-Switch-Changes-BOOL    VALUE 'Y'.
   343               88 WS-RS-Switch-Changes-BOOL       VALUE 'N'.
   344 GC0709     05 WS-RS-Output-File-Busy-CHR         PIC X(1).
   345 GC0709        88 WS-RS-Output-File-Busy-BOOL     VALUE 'Y'.
   346 GC0709        88 WS-RS-Output-File-Avail-BOOL    VALUE 'N'.
   347 GC0809     05 WS-RS-Source-Record-Type-CHR       PIC X(1).
   348 GC0809        88 WS-RS-Source-Rec-Linkage-BOOL   VALUE 'L'.
   349 GC0809        88 WS-RS-Source-Rec-Ident-BOOL     VALUE 'I'.
   350 GC0712        88 WS-RS-Source-Rec-Ignored-BOOL   VALUE ' '.
   351            05 WS-RS-Switch-Error-CHR             PIC X(1).
   352               88 WS-RS-Switch-Is-Bad-BOOL        VALUE 'Y'.
   353               88 WS-RS-Switch-Is-Good-BOOL       VALUE 'N'.
   354
   355        01  WS-Tally-QTY                          USAGE BINARY-LONG.





































================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 10
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 11
====== =========================================================================================

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

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

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

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

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

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 15
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 16
====== =========================================================================================
   621 GC0712       05 LINE 11 COL 39 VALUE 'No COMP/BINARY Truncation '.
   622       *>
   623       *> MIDDLE RIGHT SECTION Text
   624       *>
   625           03 BACKGROUND-COLOR COB-COLOR-BLACK
   626              FOREGROUND-COLOR COB-COLOR-GREEN HIGHLIGHT.
   627 GC0712       05 LINE 08 COL 69 VALUE 'Current'.
   628 GC0712       05 LINE 09 COL 69 VALUE 'Config:'.
   629       *>
   630       *> MIDDLE RIGHT SECTION CONFIG FILE
   631       *>
   632           03 BACKGROUND-COLOR COB-COLOR-BLACK
   633              FOREGROUND-COLOR COB-COLOR-WHITE HIGHLIGHT.
   634 GC0712       05 LINE 10 COL 69 PIC X(10)
   635 GC0712          FROM WS-CS-Filename-TXT (WS-CS-Config-NUM).
   636       *>
   637       *> FREE-FORM OPTIONS FIELDS
   638       *>
   639           03 BACKGROUND-COLOR COB-COLOR-BLACK
   640              FOREGROUND-COLOR COB-COLOR-WHITE HIGHLIGHT.
   641 GC0712       05 LINE 16 COL 03 PIC X(76) USING WS-CS-Extra-H1-TXT.
   642 GC0712       05 LINE 17 COL 03 PIC X(76) USING WS-CS-Extra-H2-TXT.
   643 GC0712       05 LINE 21 COL 03 PIC X(76) USING WS-CS-Arg-H1-TXT.
   644 GC0712       05 LINE 22 COL 03 PIC X(76) USING WS-CS-Arg-H2-TXT.






























================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 16
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 17
====== =========================================================================================

   646        PROCEDURE DIVISION.
   647       *>***************************************************************
   648       *> Legend to procedure names:                                  **
   649       *>                                                             **
   650       *> 00x-xxx   All MAIN driver procedures                        **
   651       *> 0xx-xxx   All GLOBAL UTILITY procedures                     **
   652       *> 1xx-xxx   All INITIALIZATION procedures                     **
   653       *> 2xx-xxx   All CORE PROCESSING procedures                    **
   654       *> 9xx-xxx   All TERMINATION procedures                        **
   655       *>***************************************************************
   656        DECLARATIVES.
   657        000-File-Error SECTION.
   658            USE AFTER STANDARD ERROR PROCEDURE ON F-Source-Code-FILE.
   659            COPY FileStat-Msgs
   660                REPLACING STATUS BY WS-FSM-Status-CD
   661                          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.
   662            MOVE SPACES TO WS-Output-Msg-TXT
   663            IF WS-FSM-Status-CD = 35
   664                DISPLAY
   665                    'File not found: "'

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






















================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 18
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 19
====== =========================================================================================

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

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

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 20
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 21
====== =========================================================================================
   804 GC0909     MOVE ALL LD-Horiz-Line TO WS-Horizontal-Line-TXT.
   805 GC0410     MOVE CONCATENATE(' GCic for '
   806 GC0410                      TRIM(WS-OS-Type-TXT(WS-OS-Type-CD),Trailing)
   807 GC1213                      ' Copyright (C) 2009-2018, Gary L. '
   808 GC0410                      'Cutler, GPL')
   809 GC0410       TO WS-Output-Msg-TXT.
   810 GC0909















































================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 21
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 22
====== =========================================================================================

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

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















================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 23
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 24
====== =========================================================================================

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

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

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























================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 26
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 27
====== =========================================================================================

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























================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 27
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 28
====== =========================================================================================

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

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





================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 29
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 30
====== =========================================================================================

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


















================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 30
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 31
====== =========================================================================================

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





================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 31
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 32
====== =========================================================================================

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








































================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 32
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 33
====== =========================================================================================

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










================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 33
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 34
====== =========================================================================================

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 53
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 54
====== =========================================================================================
  2375        01  WS-Xref-Detail-Line-TXT.
  2376            05 WS-XDL-Prog-ID-TXT                 PIC X(15).
  2377            05 FILLER                             PIC X(1).
  2378            05 WS-XDL-Token-TXT                   PIC X(32).
  2379            05 FILLER                             PIC X(1).
  2380            05 WS-XDL-Def-Line-NUM                PIC ZZZZZ9.
  2381            05 FILLER                             PIC X(1).
  2382            05 WS-XDL-Section-TXT                 PIC X(15).
  2383            05 FILLER                             PIC X(1).
  2384            05 WS-XDL-Reference-TXT               OCCURS 8 TIMES.
  2385               10 WS-XDL-Ref-Line-NUM             PIC ZZZZZ9.
  2386               10 WS-XDL-Ref-Flag-CHR             PIC X(1).
  2387               10 FILLER                          PIC X(1).
  2388
  2389 GC1213 01  WS-Xref-Lines-Per-Rec-NUM             PIC 9(1).
  2390
  2391        LINKAGE SECTION.
  2392 GC0712 01  L-Listing-Fn-TXT                      PIC X(256).
  2393
  2394        01  L-Src-Fn-TXT                          PIC X(256).
  2395
  2396 GC0712 01  L-OS-Type-CD                          PIC 9(1).
  2397
  2398 GC1213 01  L-LPP-NUM                             USAGE BINARY-LONG.
  2399
  2400 GC1213 01  L-LPP-Port-NUM                        USAGE BINARY-LONG.
  2401
  2402 GC1213 01  L-Listing-CD                          PIC 9(1).


























================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 54
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 55
====== =========================================================================================

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


































================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 55
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 56
====== =========================================================================================

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

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 56
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 57
====== =========================================================================================
  2474 GC1010            '.i'
  2475 GC1010            DELIMITED SIZE
  2476 GC1010            INTO WS-Expanded-Src-Fn-TXT
  2477 GC1010     CALL 'CBL_CHECK_FILE_EXIST' USING WS-Expanded-Src-Fn-TXT
  2478 GC1010                                       WS-Temp-256-Chars-TXT
  2479 GC1010     IF RETURN-CODE NOT = 0
  2480 GC1010         GOBACK
  2481 GC1010     END-IF
  2482            IF WS-Lines-Per-Page-Env-TXT NOT = SPACES
  2483                MOVE NUMVAL(WS-Lines-Per-Page-Env-TXT)
  2484                  TO WS-Lines-Per-Page-NUM
  2485            ELSE
  2486 GC1213         IF L-LISTING-CD = 1 *> LANDSCAPE
  2487 GC1213             MOVE L-LPP-NUM TO WS-Lines-Per-Page-NUM
  2488 GC1213         ELSE                *> PORTRAIT
  2489 GC1213             MOVE L-LPP-Port-NUM TO WS-Lines-Per-Page-NUM
  2490 GC1213         END-IF
  2491            END-IF
  2492 GC1213     SUBTRACT 3 FROM WS-Lines-Per-Page-NUM *> FOR PAGE FOOTER
  2493            ACCEPT WS-Today-DT FROM DATE YYYYMMDD
  2494 GC1213     MOVE WS-Today-DT TO WS-Formatted-DT
  2495            MOVE '????????????...' TO WS-Curr-Prog-ID-TXT
  2496            MOVE SPACES            TO WS-Curr-Verb-TXT
  2497                                      WS-Held-Reference-TXT
  2498            .





























================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 57
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 58
====== =========================================================================================

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



================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 58
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 59
====== =========================================================================================

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

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

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

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 61
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 62
====== =========================================================================================
  2709            .





















































================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 62
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 63
====== =========================================================================================

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








================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 63
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 64
====== =========================================================================================

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











































================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 64
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 65
====== =========================================================================================

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










================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 65
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 66
====== =========================================================================================

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


































================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 66
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 67
====== =========================================================================================

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




























================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 67
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 68
====== =========================================================================================

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

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 68
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 69
====== =========================================================================================
  2908                EXIT SECTION
  2909            END-IF
  2910            .



















































================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 69
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 70
====== =========================================================================================

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

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 70
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 71
====== =========================================================================================
  2964            WHEN 'PERFORM'
  2965                PERFORM 351-PERFORM
  2966            WHEN 'SET'
  2967                PERFORM 351-SET
  2968            WHEN 'STRING'
  2969                PERFORM 351-STRING
  2970            WHEN 'SUBTRACT'
  2971                PERFORM 351-SUBTRACT
  2972 GC1213     WHEN 'TERMINATE'
  2973 GC1213         PERFORM 351-GENERATE
  2974            WHEN 'TRANSFORM'
  2975                PERFORM 351-TRANSFORM
  2976            WHEN 'UNSTRING'
  2977                PERFORM 351-UNSTRING
  2978            WHEN OTHER
  2979                PERFORM 361-Release-Ref
  2980            END-EVALUATE
  2981            .




































================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 71
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 72
====== =========================================================================================

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

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 72
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 73
====== =========================================================================================
  3035
  3036        351-DIVIDE SECTION.
  3037            EVALUATE WS-Token-Prev-TXT
  3038            WHEN 'INTO'
  3039                PERFORM 363-Set-Upd
  3040                MOVE F-Sort-Work-REC TO WS-Held-Reference-TXT
  3041            WHEN 'GIVING'
  3042                IF WS-Held-Reference-TXT NOT = SPACES
  3043                    MOVE WS-Held-Reference-TXT To F-Sort-Work-REC
  3044                    MOVE SPACES         To WS-Held-Reference-TXT
  3045                                           F-SW-Ref-Flag-CHR
  3046                    RELEASE F-Sort-Work-REC
  3047                END-IF
  3048                PERFORM 362-Release-Upd
  3049            WHEN 'REMAINDER'
  3050                PERFORM 362-Release-Upd
  3051            WHEN OTHER
  3052                PERFORM 361-Release-Ref
  3053            END-EVALUATE
  3054            .
  3055
  3056        351-FREE SECTION.
  3057            PERFORM 362-Release-Upd
  3058            .
  3059
  3060 GC1213 351-GENERATE SECTION.
  3061 GC1213     PERFORM 362-Release-Upd
  3062 GC1213     .
  3063
  3064        351-INITIALIZE SECTION.
  3065            EVALUATE WS-Token-Prev-TXT
  3066            WHEN 'INITIALIZE'
  3067                PERFORM 362-Release-Upd
  3068            WHEN 'REPLACING'
  3069                PERFORM 361-Release-Ref
  3070            END-EVALUATE
  3071            .
  3072
  3073 GC1213 351-INITIATE SECTION.
  3074 GC1213     PERFORM 362-Release-Upd
  3075 GC1213     .
  3076
  3077        351-INSPECT SECTION.
  3078            EVALUATE WS-Token-Prev-TXT
  3079            WHEN 'INSPECT'
  3080                PERFORM 364-Set-Ref
  3081                MOVE SPACES TO WS-Held-Reference-TXT
  3082                MOVE SPACES TO WS-Token-Prev-TXT
  3083            WHEN 'TALLYING'
  3084                PERFORM 362-Release-Upd
  3085                MOVE SPACES TO WS-Token-Prev-TXT
  3086            WHEN 'REPLACING'
  3087                IF WS-Held-Reference-TXT NOT = SPACES

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 73
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 74
====== =========================================================================================
  3088                    MOVE WS-Held-Reference-TXT TO F-Sort-Work-REC
  3089                    MOVE SPACES         TO WS-Held-Reference-TXT
  3090                    MOVE '*'            TO F-SW-Ref-Flag-CHR
  3091                    RELEASE F-Sort-Work-REC
  3092                END-IF
  3093                MOVE SPACES TO WS-Token-Prev-TXT
  3094            WHEN 'CONVERTING'
  3095                IF WS-Held-Reference-TXT NOT = SPACES
  3096                    MOVE WS-Held-Reference-TXT TO F-Sort-Work-REC
  3097                    MOVE SPACES         TO WS-Held-Reference-TXT
  3098                    MOVE '*'            TO F-SW-Ref-Flag-CHR
  3099                    RELEASE F-Sort-Work-REC
  3100                END-IF
  3101                MOVE SPACES TO WS-Token-Prev-TXT
  3102            WHEN OTHER
  3103                PERFORM 361-Release-Ref
  3104            END-EVALUATE
  3105           .
  3106
  3107        351-MOVE SECTION.
  3108            EVALUATE WS-Token-Prev-TXT
  3109            WHEN 'TO'
  3110                PERFORM 362-Release-Upd
  3111            WHEN OTHER
  3112                PERFORM 361-Release-Ref
  3113            END-EVALUATE
  3114            .
  3115
  3116        351-MULTIPLY SECTION.
  3117            EVALUATE WS-Token-Prev-TXT
  3118            WHEN 'BY'
  3119                PERFORM 363-Set-Upd
  3120                MOVE F-Sort-Work-REC TO WS-Held-Reference-TXT
  3121            WHEN 'GIVING'
  3122                MOVE WS-Held-Reference-TXT TO F-Sort-Work-REC
  3123                MOVE SPACES         TO WS-Held-Reference-TXT
  3124                                       F-SW-Ref-Flag-CHR
  3125                RELEASE F-Sort-Work-REC
  3126                PERFORM 362-Release-Upd
  3127            WHEN OTHER
  3128                PERFORM 361-Release-Ref
  3129            END-EVALUATE
  3130            .
  3131
  3132        351-PERFORM SECTION.
  3133            EVALUATE WS-Token-Prev-TXT
  3134            WHEN 'VARYING'
  3135                PERFORM 362-Release-Upd
  3136                MOVE SPACES TO WS-Token-Prev-TXT
  3137            WHEN 'AFTER'
  3138                PERFORM 362-Release-Upd
  3139                MOVE SPACES TO WS-Token-Prev-TXT
  3140            WHEN OTHER

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 74
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 75
====== =========================================================================================
  3141                PERFORM 361-Release-Ref
  3142            END-EVALUATE
  3143            .
  3144
  3145        351-SET SECTION.
  3146            EVALUATE WS-Token-Prev-TXT
  3147            WHEN 'SET'
  3148                PERFORM 362-Release-Upd
  3149            WHEN OTHER
  3150                PERFORM 361-Release-Ref
  3151            END-EVALUATE
  3152            .
  3153
  3154        351-STRING SECTION.
  3155            EVALUATE WS-Token-Prev-TXT
  3156            WHEN 'INTO'
  3157                PERFORM 362-Release-Upd
  3158            WHEN 'POINTER'
  3159                PERFORM 362-Release-Upd
  3160            WHEN OTHER
  3161                PERFORM 361-Release-Ref
  3162            END-EVALUATE
  3163            .
  3164
  3165        351-SUBTRACT SECTION.
  3166            EVALUATE WS-Token-Prev-TXT
  3167            WHEN 'GIVING'
  3168                PERFORM 362-Release-Upd
  3169            WHEN 'FROM'
  3170                PERFORM 362-Release-Upd
  3171            WHEN OTHER
  3172                PERFORM 361-Release-Ref
  3173            END-EVALUATE
  3174            .
  3175
  3176 GC1213 351-TERMINATE SECTION.
  3177 GC1213     PERFORM 362-Release-Upd
  3178 GC1213     .
  3179
  3180        351-TRANSFORM SECTION.
  3181            EVALUATE WS-Token-Prev-TXT
  3182            WHEN 'TRANSFORM'
  3183                PERFORM 362-Release-Upd
  3184                MOVE SPACES TO WS-Token-Prev-TXT
  3185            WHEN OTHER
  3186                PERFORM 361-Release-Ref
  3187            END-EVALUATE
  3188            .
  3189
  3190        351-UNSTRING SECTION.
  3191            EVALUATE WS-Token-Prev-TXT
  3192            WHEN 'INTO'
  3193                PERFORM 362-Release-Upd

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 75
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 76
====== =========================================================================================
  3194            WHEN 'DELIMITER'
  3195                PERFORM 362-Release-Upd
  3196            WHEN 'COUNT'
  3197                PERFORM 362-Release-Upd
  3198            WHEN 'POINTER'
  3199                PERFORM 362-Release-Upd
  3200            WHEN 'TALLYING'
  3201                PERFORM 362-Release-Upd
  3202            WHEN OTHER
  3203                PERFORM 361-Release-Ref
  3204            END-EVALUATE
  3205            .
  3206
  3207        360-Release-Def SECTION.
  3208            MOVE SPACES                 TO F-Sort-Work-REC
  3209            MOVE WS-Curr-Prog-ID-TXT    TO F-SW-Prog-ID-TXT
  3210            MOVE WS-Token-Curr-Uc-TXT   TO F-SW-Token-Uc-TXT
  3211            MOVE WS-Token-Curr-TXT      TO F-SW-Token-TXT
  3212            MOVE WS-Curr-Section-TXT    TO F-SW-Section-TXT
  3213            MOVE WS-Curr-Line-NUM       TO F-SW-Def-Line-NUM
  3214            MOVE 0                      TO F-SW-Ref-Line-NUM
  3215            RELEASE F-Sort-Work-REC
  3216            .
  3217
  3218        361-Release-Ref SECTION.
  3219            PERFORM 364-Set-Ref
  3220            RELEASE F-Sort-Work-REC
  3221            .
  3222
  3223        362-Release-Upd SECTION.
  3224            PERFORM 363-Set-Upd
  3225            RELEASE F-Sort-Work-REC
  3226            .
  3227
  3228        363-Set-Upd SECTION.
  3229            MOVE SPACES                 TO F-Sort-Work-REC
  3230            MOVE WS-Curr-Prog-ID-TXT    TO F-SW-Prog-ID-TXT
  3231            MOVE WS-Token-Curr-Uc-TXT   TO F-SW-Token-Uc-TXT
  3232            MOVE WS-Token-Curr-TXT      TO F-SW-Token-TXT
  3233            MOVE WS-Curr-Section-TXT    TO F-SW-Section-TXT
  3234            MOVE WS-Curr-Line-NUM       TO F-SW-Ref-Line-NUM
  3235            MOVE '*'                    TO F-SW-Ref-Flag-CHR
  3236            .
  3237
  3238        364-Set-Ref SECTION.
  3239            MOVE SPACES                 TO F-Sort-Work-REC
  3240            MOVE WS-Curr-Prog-ID-TXT    TO F-SW-Prog-ID-TXT
  3241            MOVE WS-Token-Curr-Uc-TXT   TO F-SW-Token-Uc-TXT
  3242            MOVE WS-Token-Curr-TXT      TO F-SW-Token-TXT
  3243            MOVE WS-Curr-Section-TXT    TO F-SW-Section-TXT
  3244            MOVE WS-Curr-Line-NUM       TO F-SW-Ref-Line-NUM
  3245            .
  3246

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 76
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 77
====== =========================================================================================
  3247 GC1213 365-Release-Arg SECTION.
  3248 GC1213     PERFORM 366-Set-Arg
  3249 GC1213     RELEASE F-Sort-Work-REC
  3250 GC1213     .
  3251
  3252 GC1213 366-Set-Arg SECTION.
  3253 GC1213     MOVE SPACES                 TO F-Sort-Work-REC
  3254 GC1213     MOVE WS-Curr-Prog-ID-TXT    TO F-SW-Prog-ID-TXT
  3255 GC1213     MOVE WS-Token-Curr-Uc-TXT   TO F-SW-Token-Uc-TXT
  3256 GC1213     MOVE WS-Token-Curr-TXT      TO F-SW-Token-TXT
  3257 GC1213     MOVE WS-Curr-Section-TXT    TO F-SW-Section-TXT
  3258 GC1213     MOVE WS-Curr-Line-NUM       TO F-SW-Ref-Line-NUM
  3259 GC1213     MOVE 'C'                    TO F-SW-Ref-Flag-CHR
  3260 GC1213     .
  3261







































================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 77
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 78
====== =========================================================================================

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

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 78
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 79
====== =========================================================================================
  3315 GC0710         END-IF
  3316                IF WS-Xref-Detail-Line-TXT = SPACES
  3317                    MOVE F-SW-Prog-ID-TXT TO WS-XDL-Prog-ID-TXT
  3318                    MOVE F-SW-Token-TXT TO WS-XDL-Token-TXT
  3319                    MOVE F-SW-Section-TXT TO WS-XDL-Section-TXT
  3320                    IF F-SW-Def-Line-NUM NOT = SPACES
  3321                        MOVE F-SW-Def-Line-NUM TO WS-XDL-Def-Line-NUM
  3322                    END-IF
  3323                END-IF
  3324                IF F-SW-Reference-TXT > '000000'
  3325                    ADD 1 TO WS-I-SUB
  3326                    IF WS-I-SUB > WS-Xref-Lines-Per-Rec-NUM
  3327                        PERFORM 410-Generate-Report-Line
  3328                        MOVE 1 TO WS-I-SUB
  3329                    END-IF
  3330                    MOVE F-SW-Ref-Line-NUM
  3331                      TO WS-XDL-Ref-Line-NUM (WS-I-SUB)
  3332                    MOVE F-SW-Ref-Flag-CHR
  3333                      TO WS-XDL-Ref-Flag-CHR (WS-I-SUB)
  3334                END-IF
  3335            END-PERFORM
  3336            IF WS-Xref-Detail-Line-TXT NOT = SPACES
  3337                PERFORM 410-Generate-Report-Line
  3338            END-IF
  3339            .





























================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 79
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 80
====== =========================================================================================

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

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



================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 81
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 82
====== =========================================================================================

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































================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 82
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 83
====== =========================================================================================

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





































================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 83
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 84
====== =========================================================================================

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

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 84
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 85
====== =========================================================================================
  3535 GC0712                 WHEN WS-Temp-65-Chars-TXT = "skip2"
  3536 GC0712                     MOVE SPACES TO WS-Src-Detail-Line-TXT
  3537 GC0712                     PERFORM 530-Generate-Source-Line 2 TIMES
  3538 GC0712                     EXIT SECTION
  3539 GC0712                 WHEN WS-Temp-65-Chars-TXT = "skip3"
  3540 GC0712                     MOVE SPACES TO WS-Src-Detail-Line-TXT
  3541 GC0712                     PERFORM 530-Generate-Source-Line 3 TIMES
  3542 GC0712                     EXIT SECTION
  3543 GC0712             END-EVALUATE
  3544                    PERFORM 530-Generate-Source-Line
  3545                END-IF
  3546            END-IF
  3547            .









































================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 85
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 86
====== =========================================================================================

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

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

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 87
GNUCOBOL 3.0 24DEC2017  Source Listing                                                2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
Line   Statement                                                                        Page: 88
====== =========================================================================================
  3652 GC1213             SUBTRACT 1 FROM WS-Lines-Left-NUM
  3653 GC1213         WHEN 2
  3654 GC1213             MOVE WS-SDL-Statement-TXT TO WS-Src-Hold-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 1-128 of stmnt
  3657 GC1213             MOVE SPACES TO WS-Src-Detail-Line-TXT
  3658 GC1213             MOVE WS-Src-Hold-TXT(129:128) TO WS-SDL-Statement-TXT
  3659 GC1213             MOVE WS-Src-Detail-Line-TXT TO F-Listing-135-REC
  3660 GC1213             WRITE F-Listing-135-REC BEFORE 1 *> Prints chars 129-256 of stmnt
  3661 GC1213             SUBTRACT 2 FROM WS-Lines-Left-NUM
  3662 GC1213         END-EVALUATE
  3663 GC1213     ELSE                *> PORTRAIT
  3664 GC1213         EVALUATE WS-Src-Lines-NUM
  3665 GC1213         WHEN 1 *> Print only chars 1-89 of stmnt
  3666 GC1213             WRITE F-Listing-96-REC FROM WS-Src-Detail-Line-TXT
  3667 GC1213                 BEFORE 1
  3668 GC1213             SUBTRACT 1 FROM WS-Lines-Left-NUM
  3669 GC1213         WHEN 2 *> Print only chars 1-89 and 90-178 of text
  3670 GC1213             MOVE WS-SDL-Statement-TXT TO WS-Src-Hold-TXT
  3671 GC1213             WRITE F-Listing-96-REC FROM WS-Src-Detail-Line-TXT
  3672 GC1213                 BEFORE 1
  3673 GC1213             MOVE SPACES TO WS-Src-Detail-Line-TXT
  3674 GC1213             MOVE WS-Src-Hold-TXT(90:89) TO WS-SDL-Statement-TXT
  3675 GC1213             WRITE F-Listing-96-REC FROM WS-Src-Detail-Line-TXT
  3676 GC1213                 BEFORE 1
  3677 GC1213             SUBTRACT 2 FROM WS-Lines-Left-NUM
  3678 GC1213         WHEN 3 *> Print chars 1-89, 90-178 and 179-256 of stmnt
  3679 GC1213             MOVE WS-SDL-Statement-TXT TO WS-Src-Hold-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(90:89) TO WS-SDL-Statement-TXT
  3684 GC1213             WRITE F-Listing-96-REC FROM WS-Src-Detail-Line-TXT
  3685 GC1213                 BEFORE 1
  3686 GC1213             MOVE SPACES TO WS-Src-Detail-Line-TXT
  3687 GC1213             MOVE WS-Src-Hold-TXT(179:78) TO WS-SDL-Statement-TXT
  3688 GC1213             WRITE F-Listing-96-REC FROM WS-Src-Detail-Line-TXT
  3689 GC1213                 BEFORE 1
  3690 GC1213             SUBTRACT 3 FROM WS-Lines-Left-NUM
  3691 GC1213         END-EVALUATE
  3692 GC1213     END-IF
  3693            MOVE SPACES TO WS-Src-Detail-Line-TXT
  3694            .
  3695
  3696        END PROGRAM LISTING.









================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 88
GNUCOBOL 3.0 24DEC2017  Cross-Reference Listing                                       2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References      Page: 89
=============== ================================ ====== =============== ========================
CHECKSRC        000-Main                           1318 PROCEDURE
CHECKSRC        L-A1-CHR                           1308 LINKAGE           1320    1332    1335
                                                                          1342
CHECKSRC        L-A2-IDENT-DIVISION-BOOL           1313 LINKAGE           1364*
CHECKSRC        L-A2-LINKAGE-SECTION-BOOL          1312 LINKAGE           1358*
CHECKSRC        L-A2-Nothing-Special-BOOL          1314 LINKAGE           1319*
CHECKSRC        L-Argument-1-TXT                   1307 LINKAGE           1316
CHECKSRC        L-Argument-2-CHR                   1311 LINKAGE           1317
CHECKSRC        WS-Compressed-Src-TXT              1294 WORKING-STORAGE   1329*   1352    1356
                                                                          1362
CHECKSRC        WS-CS-CHR                          1295 WORKING-STORAGE   1336*   1342*   1351
                                                                          1355    1361
CHECKSRC        WS-I-SUB                           1303 WORKING-STORAGE   1330*   1331    1332
                                                                          1335    1342    1348*
                                                                          1349    1351    1352
                                                                          1355    1355    1356
                                                                          1361    1361    1362
CHECKSRC        WS-J-SUB                           1305 WORKING-STORAGE   1328*   1334*   1336
                                                                          1341*   1342
CHECKSRC        WS-RS-Found-SPACE-CHR              1299 WORKING-STORAGE
CHECKSRC        WS-RS-Not-Skipping-SPACE-BOOL      1301 WORKING-STORAGE   1327*   1333    1340*
CHECKSRC        WS-RS-Skipping-SPACE-BOOL          1300 WORKING-STORAGE   1337*
CHECKSRC        WS-Runtime-Switches-TXT            1298 WORKING-STORAGE































================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 89
GNUCOBOL 3.0 24DEC2017  Cross-Reference Listing                                       2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References      Page: 90
=============== ================================ ====== =============== ========================
GCic            000-File-Error                      657 PROCEDURE
GCic            000-Main                            678 PROCEDURE
GCic            100-Initialization                  702 PROCEDURE          679
GCic            200-Let-User-Set-Switches           816 PROCEDURE          682
GCic            210-Run-Compiler                    907 PROCEDURE          683
GCic            220-Make-Listing                   1043 PROCEDURE          687
GCic            230-Run-Program                    1074 PROCEDURE          691
GCic            240-Find-LINKAGE-SECTION           1176 PROCEDURE          750
GCic            250-Autoload-Listing               1215 PROCEDURE          693    1034    1068
GCic            900-Terminate                      1261 PROCEDURE          695     744     887
                                                                          1035    1169
GCic            COB-COLOR-BLACK                     181 [screenio     ]    442     447     537
                                                                           547     557     562
                                                                           572     579     594
                                                                           609     625     632
                                                                           639
GCic            COB-COLOR-BLUE                      181 [screenio     ]    525
GCic            COB-COLOR-CYAN                      181 [screenio     ]    538
GCic            COB-COLOR-GREEN                     181 [screenio     ]    448     563     610
                                                                           626
GCic            COB-COLOR-MAGENTA                   181 [screenio     ]
GCic            COB-COLOR-RED                       181 [screenio     ]    531     595
GCic            COB-COLOR-WHITE                     181 [screenio     ]    443     526     532
                                                                           548     558     573
                                                                           580     633     640
GCic            COB-COLOR-YELLOW                    181 [screenio     ]
GCic            COB-SCR-BACK-TAB                    181 [screenio     ]
GCic            COB-SCR-BACKSPACE                   181 [screenio     ]
GCic            COB-SCR-DELETE                      181 [screenio     ]
GCic            COB-SCR-ESC                         181 [screenio     ]    886
GCic            COB-SCR-F1                          181 [screenio     ]    833
GCic            COB-SCR-F10                         181 [screenio     ]
GCic            COB-SCR-F11                         181 [screenio     ]
GCic            COB-SCR-F12                         181 [screenio     ]    889
GCic            COB-SCR-F13                         181 [screenio     ]
GCic            COB-SCR-F14                         181 [screenio     ]
GCic            COB-SCR-F15                         181 [screenio     ]
GCic            COB-SCR-F16                         181 [screenio     ]
GCic            COB-SCR-F17                         181 [screenio     ]
GCic            COB-SCR-F18                         181 [screenio     ]
GCic            COB-SCR-F19                         181 [screenio     ]
GCic            COB-SCR-F2                          181 [screenio     ]    839
GCic            COB-SCR-F20                         181 [screenio     ]
GCic            COB-SCR-F21                         181 [screenio     ]
GCic            COB-SCR-F22                         181 [screenio     ]
GCic            COB-SCR-F23                         181 [screenio     ]
GCic            COB-SCR-F24                         181 [screenio     ]
GCic            COB-SCR-F25                         181 [screenio     ]
GCic            COB-SCR-F26                         181 [screenio     ]
GCic            COB-SCR-F27                         181 [screenio     ]
GCic            COB-SCR-F28                         181 [screenio     ]
GCic            COB-SCR-F29                         181 [screenio     ]
GCic            COB-SCR-F3                          181 [screenio     ]    845

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 90
GNUCOBOL 3.0 24DEC2017  Cross-Reference Listing                                       2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References      Page: 91
=============== ================================ ====== =============== ========================
GCic            COB-SCR-F30                         181 [screenio     ]
GCic            COB-SCR-F31                         181 [screenio     ]
GCic            COB-SCR-F32                         181 [screenio     ]
GCic            COB-SCR-F33                         181 [screenio     ]
GCic            COB-SCR-F34                         181 [screenio     ]
GCic            COB-SCR-F35                         181 [screenio     ]
GCic            COB-SCR-F36                         181 [screenio     ]
GCic            COB-SCR-F37                         181 [screenio     ]
GCic            COB-SCR-F38                         181 [screenio     ]
GCic            COB-SCR-F39                         181 [screenio     ]
GCic            COB-SCR-F4                          181 [screenio     ]    851
GCic            COB-SCR-F40                         181 [screenio     ]
GCic            COB-SCR-F41                         181 [screenio     ]
GCic            COB-SCR-F42                         181 [screenio     ]
GCic            COB-SCR-F43                         181 [screenio     ]
GCic            COB-SCR-F44                         181 [screenio     ]
GCic            COB-SCR-F45                         181 [screenio     ]
GCic            COB-SCR-F46                         181 [screenio     ]
GCic            COB-SCR-F47                         181 [screenio     ]
GCic            COB-SCR-F48                         181 [screenio     ]
GCic            COB-SCR-F49                         181 [screenio     ]
GCic            COB-SCR-F5                          181 [screenio     ]    857
GCic            COB-SCR-F50                         181 [screenio     ]
GCic            COB-SCR-F51                         181 [screenio     ]
GCic            COB-SCR-F52                         181 [screenio     ]
GCic            COB-SCR-F53                         181 [screenio     ]
GCic            COB-SCR-F54                         181 [screenio     ]
GCic            COB-SCR-F55                         181 [screenio     ]
GCic            COB-SCR-F56                         181 [screenio     ]
GCic            COB-SCR-F57                         181 [screenio     ]
GCic            COB-SCR-F58                         181 [screenio     ]
GCic            COB-SCR-F59                         181 [screenio     ]
GCic            COB-SCR-F6                          181 [screenio     ]    862
GCic            COB-SCR-F60                         181 [screenio     ]
GCic            COB-SCR-F61                         181 [screenio     ]
GCic            COB-SCR-F62                         181 [screenio     ]
GCic            COB-SCR-F63                         181 [screenio     ]
GCic            COB-SCR-F64                         181 [screenio     ]
GCic            COB-SCR-F7                          181 [screenio     ]    868
GCic            COB-SCR-F8                          181 [screenio     ]    874
GCic            COB-SCR-F9                          181 [screenio     ]    880
GCic            COB-SCR-FATAL                       181 [screenio     ]
GCic            COB-SCR-INSERT                      181 [screenio     ]
GCic            COB-SCR-KEY-DOWN                    181 [screenio     ]
GCic            COB-SCR-KEY-END                     181 [screenio     ]
GCic            COB-SCR-KEY-HOME                    181 [screenio     ]
GCic            COB-SCR-KEY-LEFT                    181 [screenio     ]
GCic            COB-SCR-KEY-RIGHT                   181 [screenio     ]
GCic            COB-SCR-KEY-UP                      181 [screenio     ]
GCic            COB-SCR-KEY_DOWN                    181 [screenio     ]
GCic            COB-SCR-KEY_UP                      181 [screenio     ]
GCic            COB-SCR-MAX-FIELD                   181 [screenio     ]
GCic            COB-SCR-NO-FIELD                    181 [screenio     ]

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 91
GNUCOBOL 3.0 24DEC2017  Cross-Reference Listing                                       2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References      Page: 92
=============== ================================ ====== =============== ========================
GCic            COB-SCR-OK                          181 [screenio     ]
GCic            COB-SCR-PAGE-DOWN                   181 [screenio     ]
GCic            COB-SCR-PAGE-UP                     181 [screenio     ]
GCic            Cob-Scr-Page_Down                   181 [screenio     ]
GCic            Cob-Scr-Page_Up                     181 [screenio     ]
GCic            COB-SCR-PRINT                       181 [screenio     ]
GCic            COB-SCR-TAB                         181 [screenio     ]
GCic            COB-SCR-TIME-OUT                    181 [screenio     ]
GCic            F-Cobc-Output-FILE                  173 FILE               164    1011    1029
GCic            F-Cobc-Output-REC                   174 FILE              1012    1017*   1018
                                                                          1026*   1027
GCic            F-Source-Code-FILE                  176 FILE               167     658    1177
                                                                          1181    1182    1195
                                                                          1196    1203
GCic            F-Source-Code-REC                   177 FILE              1186C   1200C
GCic            F1                                      WORKING-STORAGE    209
GCic            F12                                     WORKING-STORAGE    203
GCic            F2                                      WORKING-STORAGE    216
GCic            F3                                      WORKING-STORAGE    212
GCic            F4                                      WORKING-STORAGE    210
GCic            F5                                      WORKING-STORAGE    213     260
GCic            F6                                      WORKING-STORAGE    214
GCic            F7                                      WORKING-STORAGE    217
GCic            F8                                      WORKING-STORAGE    211
GCic            F9                                      WORKING-STORAGE    215
GCic            LD-Horiz-Line                       436 SCREEN             804
GCic            LD-LL-Corner                        431 SCREEN             459     489     505
                                                                           519
GCic            LD-Lower-T                          435 SCREEN             491
GCic            LD-LR-Corner                        433 SCREEN             461     493     507
                                                                           521
GCic            LD-UL-Corner                        430 SCREEN             449     463     495
                                                                           509
GCic            LD-Upper-T                          434 SCREEN             465
GCic            LD-UR-Corner                        432 SCREEN             451     467     497
                                                                           511
GCic            LD-Vert-Line                        437 SCREEN             453     454     456
                                                                           457     469     470
                                                                           471     473     474
                                                                           475     477     478
                                                                           479     481     482
                                                                           483     485     486
                                                                           487     499     500
                                                                           502     503     513
                                                                           514     516     517
GCic            LPP                                     PROCEDURE         1054C
GCic            LPPP                                    PROCEDURE         1055C
GCic            RETURN-CODE                             PROCEDURE         1013    1046*   1060*
                                                                          1062
GCic            S-Blank-SCR                         440 SCREEN             686    1237    1266
GCic            S-Switches-SCR                      442 SCREEN             830*    911    1001
                                                                          1030    1045    1066
                                                                          1077    1263

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 92
GNUCOBOL 3.0 24DEC2017  Cross-Reference Listing                                       2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References      Page: 93
=============== ================================ ====== =============== ========================
GCic            SELCHAR                                 PROCEDURE          722     825     828
                                                                           835     841     847
                                                                           853     864     870
                                                                           876     882    1205
GCic            WS-Cmd-Args-TXT                     232 WORKING-STORAGE    726*    728     729
                                                                           732     737
GCic            WS-Cmd-End-Quote-CHR                234 WORKING-STORAGE    730*    733
GCic            WS-Cmd-SUB                          236 WORKING-STORAGE    727*    728     729
                                                                           731*    735*    740*
GCic            WS-Cmd-TXT                          230 WORKING-STORAGE    908*   1003*   1008*
                                                                          1010C   1079*   1086*
                                                                          1096*   1099*   1106*
                                                                          1110*   1116*   1121*
                                                                          1126*   1134*   1142*
                                                                          1148*   1154*   1159*
                                                                          1166C   1218*   1222*
                                                                          1223C   1225*   1229*
                                                                          1230C   1240*   1243*
                                                                          1246C   1248C   1250C
                                                                          1252C   1254C
GCic            WS-Cobc-Cmd-TXT                     238 WORKING-STORAGE    909*    918*    922*
                                                                           926*    930*    935*
                                                                           940*    945*    950*
                                                                           955*    960*    964*
                                                                           977*    985*    989*
                                                                          1004
GCic            WS-Compilation-Switches-TXT         183 WORKING-STORAGE
GCic            WS-Config-Fn-TXT                    240 WORKING-STORAGE    914*    920
GCic            WS-CS-All-Switches-TXT              218 WORKING-STORAGE
GCic            WS-CS-Arg-H1-TXT                    185 WORKING-STORAGE    643*
GCic            WS-CS-Arg-H2-TXT                    186 WORKING-STORAGE    644*
GCic            WS-CS-Args-TXT                      184 WORKING-STORAGE   1157    1158
GCic            WS-CS-Config-NUM                    203 WORKING-STORAGE    635     890*    891
                                                                           892*    913
GCic            WS-CS-DEBUG-CHR                     220 WORKING-STORAGE    596     834     835*
                                                                           837*    933
GCic            WS-CS-EXECUTE-CHR                   221 WORKING-STORAGE    599     689     852
                                                                           853*    855*
GCic            WS-CS-Extra-H1-TXT                  206 WORKING-STORAGE    641*
GCic            WS-CS-Extra-H2-TXT                  207 WORKING-STORAGE    642*
GCic            WS-CS-Extra-TXT                     205 WORKING-STORAGE    981     983
GCic            WS-CS-Filename-TXT                  196 WORKING-STORAGE    635     913
GCic            WS-CS-Filenames-Table-TXT           195 WORKING-STORAGE
GCic            WS-CS-Filenames-TXT                 187 WORKING-STORAGE    195
GCic            WS-CS-FREE-CHR                      222 WORKING-STORAGE    604     875     876*
                                                                           878*    958
GCic            WS-CS-LIBRARY-CHR                   223 WORKING-STORAGE    598     846     847*
                                                                           849*    924    1084
                                                                          1139    1178*   1205*
GCic            WS-CS-LISTING-CHR                   224 WORKING-STORAGE    600     685     822*
                                                                           825*    828*    971
                                                                           973*    975
GCic            WS-CS-NOFUNC-CHR                    225 WORKING-STORAGE    602     863     864*

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 93
GNUCOBOL 3.0 24DEC2017  Cross-Reference Listing                                       2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References      Page: 94
=============== ================================ ====== =============== ========================
                                                                           866*    948
GCic            WS-CS-NOTRUNC-CHR                   226 WORKING-STORAGE    605     881     882*
                                                                           884*    938
GCic            WS-CS-Switch-Defaults-TXT           208 WORKING-STORAGE    219
GCic            WS-CS-TRACEALL-CHR                  227 WORKING-STORAGE    597     840     841*
                                                                           843*    943
GCic            WS-CS-WARNALL-CHR                   228 WORKING-STORAGE    603     869     870*
                                                                           872*    953
GCic            WS-Delete-Fn-TXT                    242 WORKING-STORAGE
GCic            WS-File-Name-TXT                    244 WORKING-STORAGE    167     666     671
                                                                           734*    739*    742
                                                                           755     758     765
                                                                           768     779    1052C
GCic            WS-File-Status-Message-TXT          248 WORKING-STORAGE
GCic            WS-FN-CHR                           245 WORKING-STORAGE    760     767*    771*
GCic            WS-FSM-Msg-TXT                      252 WORKING-STORAGE    661*    661*    661*
                                                                           661*    661*    661*
                                                                           661*    661*    661*
                                                                           661*    661*    661*
                                                                           661*    661*    661*
                                                                           661*    661*    661*
                                                                           661*    661*    661*
                                                                           661*    661*    661*
                                                                           661*    661*    661*
                                                                           661*    661*    661*
GCic            WS-FSM-Status-CD                    250 WORKING-STORAGE    169     661     663
GCic            WS-Horizontal-Line-TXT              254 WORKING-STORAGE    450     460     464
                                                                           466     490     492
                                                                           496     506     510
                                                                           520     804*
GCic            WS-I-SUB                            256 WORKING-STORAGE    758*    759     760
                                                                           761     763     767
                                                                           771     786*    787
                                                                           788     789     791
                                                                           795     799     912*
                                                                           923*    927*    931*
                                                                           936*    941*    946*
                                                                           951*    956*    961*
                                                                           965*    978*    986*
                                                                           990*   1080*   1087*
                                                                          1097*   1100*   1107*
                                                                          1111*   1117*   1122*
                                                                          1127*   1135*   1143*
                                                                          1149*   1155*   1160*
GCic            WS-J-SUB                            258 WORKING-STORAGE   1102*   1103    1104
                                                                          1109
GCic            WS-Listing-CD                       260 WORKING-STORAGE    819     858*    859
                                                                           860*   1056C
GCic            WS-Listing-Filename-TXT             262 WORKING-STORAGE    164     995*    996C
                                                                          1005    1023    1051C
                                                                          1221    1228
GCic            WS-Listing-TXT                      264 WORKING-STORAGE    616     821*    824*
                                                                           827*

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 94
GNUCOBOL 3.0 24DEC2017  Cross-Reference Listing                                       2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References      Page: 95
=============== ================================ ====== =============== ========================
GCic            WS-OC-Compile-DT                    266 WORKING-STORAGE    528     712*
GCic            WS-OS-Cygwin-BOOL                   300 WORKING-STORAGE    755     779    1094
                                                                          1124    1217
GCic            WS-OS-Dir-CHR                       287 WORKING-STORAGE    756*    760     771
                                                                           780*   1120
GCic            WS-OS-Exe-Ext-CONST                 288 WORKING-STORAGE   1140    1141
GCic            WS-OS-Lib-Ext-CONST                 289 WORKING-STORAGE   1146    1147
GCic            WS-OS-Lib-Type-CONST                290 WORKING-STORAGE    614
GCic            WS-OS-OSX-BOOL                      302 WORKING-STORAGE   1224
GCic            WS-OS-Type-CD                       291 WORKING-STORAGE    806    1053C
GCic            WS-OS-Type-FILLER-TXT               304 WORKING-STORAGE    310
GCic            WS-OS-Type-TXT                      311 WORKING-STORAGE    806
GCic            WS-OS-Types-TXT                     310 WORKING-STORAGE
GCic            WS-OS-UNIX-BOOL                     301 WORKING-STORAGE   1124
GCic            WS-OS-Windows-BOOL                  299 WORKING-STORAGE   1217    1238
GCic            WS-Output-Msg-TXT                   314 WORKING-STORAGE    533     662*    809*
                                                                           896*    910*   1000*
                                                                          1015*   1016    1024*
                                                                          1032*   1044*   1050*
                                                                          1059*   1064*   1076*
                                                                          1167*   1168*   1262
GCic            WS-Path-Delimiter-CHR               316 WORKING-STORAGE
GCic            WS-PFN-CHR                          323 WORKING-STORAGE    788     795*    799*
GCic            WS-Pgm-Nm-TXT                       326 WORKING-STORAGE    792*    797*    994
                                                                          1133    1239    1242
GCic            WS-Prog-Extension-TXT               318 WORKING-STORAGE    793*    798*
GCic            WS-Prog-File-Name-TXT               322 WORKING-STORAGE    574     765*    770*
                                                                           786     792     796
                                                                           988
GCic            WS-Prog-Folder-TXT                  320 WORKING-STORAGE    575     764*    769*
                                                                           773     774*    777C
                                                                          1093    1094    1098
                                                                          1103    1104    1109
                                                                          1115
GCic            WS-RS-1st-Prog-Complete-BOOL        339 WORKING-STORAGE   1180    1189*
GCic            WS-RS-Compile-Failed-BOOL           332 WORKING-STORAGE   1021*   1033
GCic            WS-RS-Compile-OK-BOOL               330 WORKING-STORAGE    684    1014*
GCic            WS-RS-Compile-OK-CHR                329 WORKING-STORAGE
GCic            WS-RS-Compile-OK-Warn-BOOL          331 WORKING-STORAGE    684
GCic            WS-RS-Complete-BOOL                 334 WORKING-STORAGE    681    1019*
GCic            WS-RS-Complete-CHR                  333 WORKING-STORAGE
GCic            WS-RS-Double-Quote-Used-BOOL        337 WORKING-STORAGE   1092*   1118*   1152
GCic            WS-RS-IDENT-DIV-CHR                 338 WORKING-STORAGE
GCic            WS-RS-More-To-1st-Prog-BOOL         340 WORKING-STORAGE   1179*
GCic            WS-RS-No-Switch-Changes-BOOL        342 WORKING-STORAGE    818     899*
GCic            WS-RS-No-Switch-Chgs-CHR            341 WORKING-STORAGE
GCic            WS-RS-Not-Complete-BOOL             335 WORKING-STORAGE    680*
GCic            WS-RS-Output-File-Avail-BOOL        346 WORKING-STORAGE    690    1002*
GCic            WS-RS-Output-File-Busy-BOOL         345 WORKING-STORAGE
GCic            WS-RS-Output-File-Busy-CHR          344 WORKING-STORAGE
GCic            WS-RS-Quote-CHR                     336 WORKING-STORAGE
GCic            WS-RS-Source-Rec-Ident-BOOL         349 WORKING-STORAGE   1188    1194
GCic            WS-RS-Source-Rec-Ignored-BOOL       350 WORKING-STORAGE   1192*

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 95
GNUCOBOL 3.0 24DEC2017  Cross-Reference Listing                                       2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References      Page: 96
=============== ================================ ====== =============== ========================
GCic            WS-RS-Source-Rec-Linkage-BOOL       348 WORKING-STORAGE   1193    1204
GCic            WS-RS-Source-Record-Type-CHR        347 WORKING-STORAGE   1187C   1201C
GCic            WS-RS-Switch-Changes-BOOL           343 WORKING-STORAGE    817*
GCic            WS-RS-Switch-Error-CHR              351 WORKING-STORAGE
GCic            WS-RS-Switch-Is-Bad-BOOL            352 WORKING-STORAGE
GCic            WS-RS-Switch-Is-Good-BOOL           353 WORKING-STORAGE
GCic            WS-Runtime-Switches-TXT             328 WORKING-STORAGE
GCic            WS-Tally-QTY                        355 WORKING-STORAGE    968*    970*    972














































================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 96
GNUCOBOL 3.0 24DEC2017  Cross-Reference Listing                                       2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References      Page: 97
=============== ================================ ====== =============== ========================
LISTING         000-Main                           2410 PROCEDURE
LISTING         100-Initialization                 2427 PROCEDURE         2411
LISTING         300-Tokenize-Source                2500 PROCEDURE         2418
LISTING         310-Get-Token                      2551 PROCEDURE         2509
LISTING         311-Control-Record                 2711 PROCEDURE         2570
LISTING         312-Expanded-Src-Record            2757 PROCEDURE         2572
LISTING         313-Check-For-Numeric-Token        2768 PROCEDURE         2698
LISTING         320-IDENTIFICATION-DIVISION        2810 PROCEDURE         2530
LISTING         330-ENVIRONMENT-DIVISION           2830 PROCEDURE         2532
LISTING         340-DATA-DIVISION                  2856 PROCEDURE         2534
LISTING         350-PROCEDURE-DIVISION             2912 PROCEDURE         2536
LISTING         351-ACCEPT                         2983 PROCEDURE         2939
LISTING         351-ADD                            2993 PROCEDURE         2941
LISTING         351-ALLOCATE                       3004 PROCEDURE         2943
LISTING         351-CALL                           3016 PROCEDURE         2945
LISTING         351-COMPUTE                        3027 PROCEDURE         2947
LISTING         351-DIVIDE                         3036 PROCEDURE         2949
LISTING         351-FREE                           3056 PROCEDURE         2951
LISTING         351-GENERATE                       3060 PROCEDURE         2953    2957    2973
LISTING         351-INITIALIZE                     3064 PROCEDURE         2955
LISTING         351-INITIATE                       3073 PROCEDURE
LISTING         351-INSPECT                        3077 PROCEDURE         2959
LISTING         351-MOVE                           3107 PROCEDURE         2961
LISTING         351-MULTIPLY                       3116 PROCEDURE         2963
LISTING         351-PERFORM                        3132 PROCEDURE         2965
LISTING         351-SET                            3145 PROCEDURE         2967
LISTING         351-STRING                         3154 PROCEDURE         2969
LISTING         351-SUBTRACT                       3165 PROCEDURE         2971
LISTING         351-TERMINATE                      3176 PROCEDURE
LISTING         351-TRANSFORM                      3180 PROCEDURE         2975
LISTING         351-UNSTRING                       3190 PROCEDURE         2977
LISTING         360-Release-Def                    3207 PROCEDURE         2846    2883    2886
                                                                          2889    2892    2895
                                                                          2930
LISTING         361-Release-Ref                    3218 PROCEDURE         2848    2852    2905
                                                                          2979    2989    3000
                                                                          3012    3032    3052
                                                                          3069    3103    3112
                                                                          3128    3141    3150
                                                                          3161    3172    3186
                                                                          3203
LISTING         362-Release-Upd                    3223 PROCEDURE         2898    2901    2986
                                                                          2996    2998    3007
                                                                          3010    3019    3021
                                                                          3030    3048    3050
                                                                          3057    3061    3067
                                                                          3074    3084    3110
                                                                          3126    3135    3138
                                                                          3148    3157    3159
                                                                          3168    3170    3177
                                                                          3183    3193    3195
                                                                          3197    3199    3201
LISTING         363-Set-Upd                        3228 PROCEDURE         3039    3119    3224

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 97
GNUCOBOL 3.0 24DEC2017  Cross-Reference Listing                                       2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References      Page: 98
=============== ================================ ====== =============== ========================
LISTING         364-Set-Ref                        3238 PROCEDURE         3080    3219
LISTING         365-Release-Arg                    3247 PROCEDURE         3023
LISTING         366-Set-Arg                        3252 PROCEDURE         3248
LISTING         400-Produce-Xref-Listing           3263 PROCEDURE         2419
LISTING         410-Generate-Report-Line           3341 PROCEDURE         3272    3275    3285
                                                                          3289    3299    3311
                                                                          3327    3337
LISTING         420-Generate-Xref-Footer           3409 PROCEDURE         3278    3343
LISTING         500-Produce-Source-Listing         3443 PROCEDURE         2413
LISTING         510-Control-Record                 3466 PROCEDURE         3456
LISTING         520-Expanded-Src-Record            3483 PROCEDURE         3458
LISTING         530-Generate-Source-Line           3549 PROCEDURE         3450    3497    3501
                                                                          3506    3510    3514
                                                                          3517    3533    3537
                                                                          3541    3544
LISTING         F-ES-1-7-TXT                       1430 FILE              2568    3454
LISTING         F-ES-1-CHR                         1427 FILE              2569    3455
LISTING         F-ES-2-256-TXT-256                 1428 FILE              2712    3467
LISTING         F-ES-8-256-TXT                     1431 FILE
LISTING         F-Expanded-Src-FILE                1425 FILE              1416    2501    2548
                                                                          2558    3445    3448
                                                                          3463    3476
LISTING         F-Expanded-Src-REC                 1426 FILE              2502*   2556    2580
                                                                          2582    2612    2616
                                                                          2625    2629    2638
                                                                          2642    2650    2668
                                                                          2753*   2758    3519
                                                                          3521
LISTING         F-Expanded-Src2-REC                1429 FILE
LISTING         F-Listing-135-REC                  1435 FILE              3351*   3353*   3355*
                                                                          3356    3358*   3359
                                                                          3362*   3364*   3365
                                                                          3366*   3367*   3368
                                                                          3369    3370    3371
                                                                          3399    3411    3413*
                                                                          3414    3416*   3418*
                                                                          3420    3422    3423
                                                                          3567    3569    3571*
                                                                          3572    3574*   3576*
                                                                          3577    3578    3608*
                                                                          3610*   3612*   3613
                                                                          3615*   3616    3618*
                                                                          3620*   3621    3623*
                                                                          3624    3650*   3655*
                                                                          3656    3659*   3660
LISTING         F-Listing-96-REC                   1434 FILE              3374*   3376*   3378*
                                                                          3379    3381*   3382
                                                                          3385*   3387*   3388
                                                                          3389*   3390*   3391
                                                                          3392    3393    3394
                                                                          3402    3426    3428*
                                                                          3429    3431*   3433*
                                                                          3435    3437    3438

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 98
GNUCOBOL 3.0 24DEC2017  Cross-Reference Listing                                       2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References      Page: 99
=============== ================================ ====== =============== ========================
                                                                          3584    3586    3587
                                                                          3589    3591*   3592
                                                                          3594*   3596*   3597
                                                                          3598    3627*   3629*
                                                                          3631*   3632    3634*
                                                                          3635    3637*   3639*
                                                                          3640    3642*   3643
                                                                          3651    3666    3671
                                                                          3675    3680    3684
                                                                          3688
LISTING         F-Listing-FILE                     1433 FILE              1418    2412    2420
LISTING         F-Listing-REC                      1436 FILE
LISTING         F-Original-Src-FILE                1438 FILE              1420    3444    3462
                                                                          3486
LISTING         F-Original-Src-REC                 1439 FILE              3490
LISTING         F-OS-1-128-TXT                     1440 FILE
LISTING         F-OS-129-256-TXT                   1445 FILE
LISTING         F-OS-7-CHR                         1442 FILE              3495
LISTING         F-OS-8-72-TXT                      1443 FILE              3491    3523
LISTING         F-Sort-Work-FILE                   1447 FILE              1422    2414    3270
LISTING         F-Sort-Work-REC                    1448 FILE              2523*   2525    2560*
                                                                          2562    3040    3043*
                                                                          3046    3088*   3091
                                                                          3096*   3099    3120
                                                                          3122*   3125    3208*
                                                                          3215    3220    3225
                                                                          3229*   3239*   3249
                                                                          3253*
LISTING         F-SW-Def-Line-NUM                  1453 FILE              3213*   3296    3304
                                                                          3308    3320    3321
LISTING         F-SW-Prog-ID-TXT                   1449 FILE              2415    3209*   3230*
                                                                          3240*   3254*   3281
                                                                          3287    3292    3301
                                                                          3313    3317
LISTING         F-SW-Ref-Flag-CHR                  1456 FILE              3045*   3090*   3098*
                                                                          3124*   3235*   3259*
                                                                          3332
LISTING         F-SW-Ref-Line-NUM                  1455 FILE              2417    3214*   3234*
                                                                          3244*   3258*   3330
LISTING         F-SW-Reference-TXT                 1454 FILE              3324
LISTING         F-SW-Section-TXT                   1452 FILE              3212*   3233*   3243*
                                                                          3257*   3303    3319
LISTING         F-SW-Token-TXT                     1451 FILE              3211*   3232*   3242*
                                                                          3256*   3318
LISTING         F-SW-Token-Uc-TXT                  1450 FILE              2416    3210*   3231*
                                                                          3241*   3255*   3282
                                                                          3293    3295    3307
LISTING         L-Listing-CD                       2402 LINKAGE           2409    2449    2486
                                                                          3349    3398    3410
                                                                          3551    3565    3606
                                                                          3647
LISTING         L-Listing-Fn-TXT                   2392 LINKAGE           1418    2404
LISTING         L-LPP-NUM                          2398 LINKAGE           2407    2487

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                        Page: 99
GNUCOBOL 3.0 24DEC2017  Cross-Reference Listing                                       2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References     Page: 100
=============== ================================ ====== =============== ========================
LISTING         L-LPP-Port-NUM                     2400 LINKAGE           2408    2489
LISTING         L-OS-Type-CD                       2396 LINKAGE           2406    2432
LISTING         L-Src-Fn-TXT                       2394 LINKAGE           1420    2405    2437
                                                                          2437*   2438    2439
                                                                          2443    2446    2459
                                                                          2461    2463    2468
LISTING         RETURN-CODE                             PROCEDURE         2479
LISTING         WS-CD-In-DATA-DIV-BOOL             1473 WORKING-STORAGE   2533
LISTING         WS-CD-In-ENV-DIV-BOOL              1472 WORKING-STORAGE   2531
LISTING         WS-CD-In-IDENT-DIV-BOOL            1471 WORKING-STORAGE   2529
LISTING         WS-CD-In-PROC-DIV-BOOL             1474 WORKING-STORAGE   2535
LISTING         WS-Copyright-TXT                   1459 WORKING-STORAGE   2430*   2435*   3415
                                                                          3430    3573    3593
LISTING         WS-CPI-13-15-TXT                   1480 WORKING-STORAGE   2824*
LISTING         WS-CPI-16-CHR                      1481 WORKING-STORAGE   2823
LISTING         WS-CS-1-CHR                        1484 WORKING-STORAGE   2746*
LISTING         WS-CS-11-14-TXT                    1487 WORKING-STORAGE   2748    2749*
LISTING         WS-CS-15-CHR                       1488 WORKING-STORAGE   2751*
LISTING         WS-CS-2-14-TXT                     1485 WORKING-STORAGE   2747*
LISTING         WS-Curr-Char-Is-Punct-BOOL         1462 WORKING-STORAGE   2591    2599    2604
LISTING         WS-Curr-Char-Is-Quote-BOOL         1466 WORKING-STORAGE   2610
LISTING         WS-Curr-Char-Is-X-BOOL             1467 WORKING-STORAGE   2623
LISTING         WS-Curr-Char-Is-Z-BOOL             1468 WORKING-STORAGE   2636
LISTING         WS-Curr-CHR                        1461 WORKING-STORAGE   2581*   2584    2586
                                                                          2592    2600    2606
                                                                          2613
LISTING         WS-Curr-Division-TXT               1470 WORKING-STORAGE   2506*   2542    2593
                                                                          2601    2701    2817*
                                                                          2836*   2862*   2918*
                                                                          2923*
LISTING         WS-Curr-Line-NUM                   1476 WORKING-STORAGE   2505*   2565*   2724*
                                                                          2764*   3213    3234
                                                                          3244    3258    3485*
LISTING         WS-Curr-Prog-ID-TXT                1478 WORKING-STORAGE   2495*   2822*   3209
                                                                          3230    3240    3254
LISTING         WS-Curr-Section-TXT                1483 WORKING-STORAGE   2727*   2732    2841*
                                                                          2867*   2913    2914*
                                                                          3212    3233    3243
                                                                          3257
LISTING         WS-Curr-Verb-TXT                   1490 WORKING-STORAGE   2496*   2520*   2544*
                                                                          2928    2937
LISTING         WS-Delim-TXT                       1492 WORKING-STORAGE   2653*   2655    2673*
                                                                          2675    2678
LISTING         WS-Dummy-TXT                       1494 WORKING-STORAGE   2471*   2716*   2745*
                                                                          2778*   2783*   2784
                                                                          3471*
LISTING         WS-Expanded-Src-Fn-TXT             1496 WORKING-STORAGE   1416    2476*   2477C
LISTING         WS-Filename-TXT                    1498 WORKING-STORAGE   2470*   2473    2744*
                                                                          2747
LISTING         WS-Flags-TXT                       1500 WORKING-STORAGE
LISTING         WS-Formatted-DT                    1503 WORKING-STORAGE   2494*   3354    3377
                                                                          3611    3630
LISTING         WS-GI-Prog-ID-TXT                  1506 WORKING-STORAGE   3281    3287    3292*

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                       Page: 100
GNUCOBOL 3.0 24DEC2017  Cross-Reference Listing                                       2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References     Page: 101
=============== ================================ ====== =============== ========================
LISTING         WS-GI-Token-TXT                    1507 WORKING-STORAGE   3282    3293*   3295
                                                                          3307
LISTING         WS-Group-Indicators-TXT            1505 WORKING-STORAGE   3265*
LISTING         WS-Held-Reference-TXT              1509 WORKING-STORAGE   2497*   2522    2523
                                                                          2524*   2559    2560
                                                                          2561*   3040*   3042
                                                                          3043    3044*   3081*
                                                                          3087    3088    3089*
                                                                          3095    3096    3097*
                                                                          3120*   3122    3123*
LISTING         WS-I-SUB                           1511 WORKING-STORAGE   2438*   2439    2440
                                                                          2442    2445*   2446
                                                                          2461*   2463    2464
                                                                          2465    2468    2721*
                                                                          2724    2735*   2737
                                                                          2738    2739    2742
                                                                          3266*   3300*   3312*
                                                                          3325*   3326    3328*
                                                                          3331    3333    3406*
LISTING         WS-J-SUB                           1513 WORKING-STORAGE   2462*   2466*   2468
                                                                          2736*   2740*   2742
LISTING         WS-Lines-Left-NUM                  1515 WORKING-STORAGE   3267*   3276    3290
                                                                          3342    3396*   3407
                                                                          3451    3498    3502
                                                                          3529*   3563    3645*
                                                                          3652    3661    3668
                                                                          3677    3690
LISTING         WS-Lines-Per-Page-Env-TXT          1519 WORKING-STORAGE   2451*   2455*   2482
                                                                          2483
LISTING         WS-Lines-Per-Page-NUM              1517 WORKING-STORAGE   2484*   2487*   2489*
                                                                          2492    3396    3645
LISTING         WS-Main-Module-Name-TXT            1521 WORKING-STORAGE   2443*   2447*   2723
                                                                          3473
LISTING         WS-Next-Char-Is-Quote-BOOL         1524 WORKING-STORAGE   2623    2636
LISTING         WS-Next-CHR                        1523 WORKING-STORAGE   2583*   2626    2639
LISTING         WS-OS-Type-FILLER-TXT              1526 WORKING-STORAGE   1532
LISTING         WS-OS-Type-TXT                     1533 WORKING-STORAGE   2432
LISTING         WS-OS-Types-TXT                    1532 WORKING-STORAGE
LISTING         WS-Page-No-TXT                     1538 WORKING-STORAGE   3348C   3363    3386
                                                                          3417    3432    3575
                                                                          3595    3605C   3619
                                                                          3638
LISTING         WS-Page-NUM                        1536 WORKING-STORAGE   2428*   3344*   3346
                                                                          3564    3601*   3603
LISTING         WS-PN-Literal-TXT                  1539 WORKING-STORAGE   3345*   3602*
LISTING         WS-PN-Page-NUM                     1540 WORKING-STORAGE   3346*   3347C   3603*
                                                                          3604C
LISTING         WS-Program-Path-TXT                1542 WORKING-STORAGE   2459*   2460C   3357
                                                                          3380    3614    3633
LISTING         WS-Reserved-Word-Table-TXT         2299 WORKING-STORAGE
LISTING         WS-Reserved-Word-TXT               2300 WORKING-STORAGE   2688
LISTING         WS-Reserved-Words-TXT              1544 WORKING-STORAGE   2299
LISTING         WS-RS-Duplicate-CHR                2308 WORKING-STORAGE   3268*   3283*   3298*

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                       Page: 101
GNUCOBOL 3.0 24DEC2017  Cross-Reference Listing                                       2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References     Page: 102
=============== ================================ ====== =============== ========================
                                                                          3309    3310*
LISTING         WS-RS-In-Copybook-BOOL             2311 WORKING-STORAGE   2730*   3479*
LISTING         WS-RS-In-Main-Module-BOOL          2310 WORKING-STORAGE   2725*   2763    3474*
                                                                          3484
LISTING         WS-RS-In-Which-Pgm-CHR             2309 WORKING-STORAGE
LISTING         WS-RS-Last-Token-Ended-Sent-CHR    2312 WORKING-STORAGE   2554*   2700
LISTING         WS-RS-Processing-PICTURE-CHR       2313 WORKING-STORAGE   2649    2663*   2872*
LISTING         WS-RS-Token-Ended-Sentence-CHR     2314 WORKING-STORAGE   2541    2553    2555*
                                                                          2588*   2617*   2630*
                                                                          2643*   2656*   2676*
LISTING         WS-RS-Verb-Has-Been-Found-CHR      2315 WORKING-STORAGE   2507*   2692*   2814*
LISTING         WS-Runtime-Switches                2307 WORKING-STORAGE
LISTING         WS-RW-IDX                          2303 WORKING-STORAGE   2689    2690
LISTING         WS-RW-Type-CD                      2304 WORKING-STORAGE   2690
LISTING         WS-RW-Word-TXT                     2305 WORKING-STORAGE   2302    2689
LISTING         WS-Saved-Section-TXT               2317 WORKING-STORAGE   2726    2727    2731
                                                                          2732*
LISTING         WS-SDL-Line-NUM                    2324 WORKING-STORAGE   3489*
LISTING         WS-SDL-Statement-TXT               2326 WORKING-STORAGE   3490*   3522*   3552
                                                                          3556    3558    3654
                                                                          3658*   3670    3674*
                                                                          3679    3683*   3687*
LISTING         WS-Src-Dashes-TXT                  2319 WORKING-STORAGE   3622    3641
LISTING         WS-Src-Detail-Line-TXT             2323 WORKING-STORAGE   3449*   3488*   3496*
                                                                          3500*   3505*   3509*
                                                                          3513*   3520*   3532*
                                                                          3536*   3540*   3650
                                                                          3655    3657*   3659
                                                                          3666    3671    3673*
                                                                          3675    3680    3682*
                                                                          3684    3686*   3688
                                                                          3693*
LISTING         WS-Src-Hold-TXT                    2328 WORKING-STORAGE   3654*   3658    3670*
                                                                          3674    3679*   3683
                                                                          3687
LISTING         WS-Src-Line-NUM                    2330 WORKING-STORAGE   3446*   3475    3487*
                                                                          3489
LISTING         WS-Src-Lines-NUM                   2332 WORKING-STORAGE   3550*   3553*   3557*
                                                                          3559*   3563    3566
                                                                          3580    3648    3664
LISTING         WS-Src-SUB                         2334 WORKING-STORAGE   2503*   2556    2557
                                                                          2576*   2580    2582
                                                                          2585*   2594*   2605*
                                                                          2611*   2615*   2616
                                                                          2618*   2624*   2628*
                                                                          2629    2631*   2637*
                                                                          2641*   2642    2644*
                                                                          2654*   2657*   2674*
                                                                          2679    2754*   2759*
                                                                          2761*
LISTING         WS-Suppress-FF-CHR                 1501 WORKING-STORAGE   2429*   3277*   3419
                                                                          3434
LISTING         WS-Tally-QTY                       2336 WORKING-STORAGE   2793*   2795*   2796

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                       Page: 102
GNUCOBOL 3.0 24DEC2017  Cross-Reference Listing                                       2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References     Page: 103
=============== ================================ ====== =============== ========================
                                                                          2800*   2801
LISTING         WS-Temp-10-Chars-TXT               2338 WORKING-STORAGE   2714*   2718    2719*
                                                                          2721    3469*
LISTING         WS-Temp-256-Chars-TXT              2348 WORKING-STORAGE   2478C   2715*   2722
                                                                          2734    2737    2742
                                                                          3470*   3472
LISTING         WS-Temp-32-Chars-1-TXT             2340 WORKING-STORAGE   2769*   2772    2779
LISTING         WS-Temp-32-Chars-2-TXT             2342 WORKING-STORAGE   2776*   2781*   2787
                                                                          2788*   2804
LISTING         WS-Temp-32-Chars-3-TXT             2344 WORKING-STORAGE   2777*   2782*   2790
                                                                          2791*   2804
LISTING         WS-Temp-65-Chars-TXT               2346 WORKING-STORAGE   3492*   3499    3504
                                                                          3508    3512    3524*
                                                                          3528    3531    3535
                                                                          3539
LISTING         WS-Today-DT                        2350 WORKING-STORAGE   2493*   2494
LISTING         WS-Token-Curr-TXT                  2352 WORKING-STORAGE   2513    2517*   2586*
                                                                          2595*   2606*   2614*
                                                                          2627*   2640*   2652*
                                                                          2659    2672*   2682
                                                                          2684*   2702*   2769
                                                                          2816    2822    2835
                                                                          2840    2861    2866
                                                                          2870    2904    2922
                                                                          3211    3232    3242
                                                                          3256
LISTING         WS-Token-Curr-Uc-TXT               2354 WORKING-STORAGE   2514*   2517    2520
                                                                          2539    2916    3210
                                                                          3231    3241    3255
LISTING         WS-Token-Prev-TXT                  2356 WORKING-STORAGE   2521*   2539*   2543*
                                                                          2602*   2817    2820
                                                                          2821*   2836    2841
                                                                          2845    2862    2867
                                                                          2876    2877*   2881
                                                                          2884*   2887*   2890*
                                                                          2893*   2896*   2899*
                                                                          2902*   2917    2923
                                                                          2927    2931*   2984
                                                                          2987*   2994    3005
                                                                          3008*   3017    3028
                                                                          3037    3065    3078
                                                                          3082*   3085*   3093*
                                                                          3101*   3108    3117
                                                                          3133    3136*   3139*
                                                                          3146    3155    3166
                                                                          3181    3184*   3191
LISTING         WS-Token-Search-TXT                2358 WORKING-STORAGE   2682*   2683    2689
LISTING         WS-Token-Type-CD                   2360 WORKING-STORAGE   2587*   2596*   2607*
                                                                          2660*   2664*   2685*
                                                                          2690*   2703*
LISTING         WS-TT-Token-Is-Argtype-BOOL        2361 WORKING-STORAGE   2811    2831    2857
LISTING         WS-TT-Token-Is-EOF-BOOL            2362 WORKING-STORAGE   2510    2564*
LISTING         WS-TT-Token-Is-Function-BOOL       2363 WORKING-STORAGE   2851

================================================================================================
GCic for UNIX/Linux Copyright (C) 2009-2018, Gary L. Cutler, GPL                       Page: 103
GNUCOBOL 3.0 24DEC2017  Cross-Reference Listing                                       2017/12/24
                                                  /home/vince/cobolsrc/Cobol-Tools/ocic/GCic.cbl
PROGRAM-ID      Identifier/Register/Function     Defn   Where Defined   References     Page: 104
=============== ================================ ====== =============== ========================
LISTING         WS-TT-Token-Is-Identifier-BOOL     2364 WORKING-STORAGE   2697*   2844    2880
                                                                          2926    2934
LISTING         WS-TT-Token-Is-Keyword-BOOL        2365 WORKING-STORAGE   2515    2538    2815
                                                                          2834    2839    2860
                                                                          2865    2871    2921
LISTING         WS-TT-Token-Is-Lit-Alpha-BOOL      2366 WORKING-STORAGE   2620*   2646*
LISTING         WS-TT-Token-Is-Lit-Number-BOOL     2367 WORKING-STORAGE   2633*   2699    2773*
                                                                          2805*
LISTING         WS-TT-Token-Is-Reserved-Wd-BOOL    2369 WORKING-STORAGE   2516    2812*   2832*
                                                                          2858*   2875
LISTING         WS-TT-Token-Is-Verb-BOOL           2368 WORKING-STORAGE   2519    2691
LISTING         WS-Usernames-QTY                   2371 WORKING-STORAGE   2504*
LISTING         WS-Version-TXT                     2373 WORKING-STORAGE   2436*   3350    3373
                                                                          3607    3626
LISTING         WS-XDL-Def-Line-NUM                2380 WORKING-STORAGE   3304*   3321*
LISTING         WS-XDL-Prog-ID-TXT                 2376 WORKING-STORAGE   3301*   3313*   3317*
LISTING         WS-XDL-Ref-Flag-CHR                2386 WORKING-STORAGE   3333*
LISTING         WS-XDL-Ref-Line-NUM                2385 WORKING-STORAGE   3331*
LISTING         WS-XDL-Reference-TXT               2384 WORKING-STORAGE
LISTING         WS-XDL-Section-TXT                 2382 WORKING-STORAGE   3303*   3319*
LISTING         WS-XDL-Token-TXT                   2378 WORKING-STORAGE   3302*   3314*   3318*
LISTING         WS-Xref-Detail-Line-TXT            2375 WORKING-STORAGE   3264*   3271    3274*
                                                                          3284    3288*   3297
                                                                          3316    3336    3399
                                                                          3402    3405*
LISTING         WS-Xref-Lines-Per-Rec-NUM          2389 WORKING-STORAGE   2450*   2454*   3326




























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


6. STREAMIO

STREAMIO is a utility I created to assist with handling stream I/O functions. I’ve used it to construct a number of useful little command-line utilities.

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:

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 © 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc.
https://fsf.org/

Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
  1. 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.

  2. 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.

  3. 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.

  4. 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.

  5. 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:

    1. 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.
    2. 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.
    3. State on the Title page the name of the publisher of the Modified Version, as the publisher.
    4. Preserve all the copyright notices of the Document.
    5. Add an appropriate copyright notice for your modifications adjacent to the other copyright notices.
    6. 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.
    7. Preserve in that license notice the full lists of Invariant Sections and required Cover Texts given in the Document’s license notice.
    8. Include an unaltered copy of this License.
    9. 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.
    10. 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.
    11. 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.
    12. 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.
    13. Delete any section Entitled “Endorsements”. Such a section may not be included in the Modified Version.
    14. Do not retitle any existing section to be Entitled “Endorsements” or to conflict in title with any Invariant Section.
    15. 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.

  6. 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.”

  7. 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.

  8. 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.

  9. 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.

  10. 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.

  11. 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 https://www.gnu.org/licenses/.

    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.

  12. 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.