Guest User

Untitled

a guest
Mar 5th, 2018
150
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
COBOL 142.86 KB | None | 0 0
  1. 000100 IDENTIFICATION DIVISION.                                          00010000
  2.  
  3. 000200 PROGRAM-ID.             UT0650.                                   00020000
  4.  
  5. 000300*AUTHOR.                 DAVE LENNARD.                             00030000
  6.  
  7. 000400*DATE-WRITTEN.           OCTOBER 1974.                             00040000
  8.  
  9. 000500*                                                                  00050000
  10.  
  11. 000600* VERSION UT06-A01 FOR COMP.LANG.COBOL TUE-21-OCT-2003.            00060000
  12.  
  13. 000700                                                                   00070000
  14.  
  15. 000800 ENVIRONMENT DIVISION.                                             00080000
  16.  
  17. 000900                                                                   00090000
  18.  
  19. 001000 CONFIGURATION SECTION.                                            00100000
  20.  
  21. 001100                                                                   00110000
  22.  
  23. 001200 SOURCE-COMPUTER.        ICL-1904.                                 00120000
  24.  
  25. 001300 OBJECT-COMPUTER.        ICL-19O4.                                 00130000
  26.  
  27. 001400*                        MEMORY 10000 WORDS.                       00140000
  28.  
  29. 001500 SPECIAL-NAMES.                                                    00150000
  30.  
  31. 001600*    DATE IS EXEC-DATE.                                            00160000
  32.  
  33. 001700     BIT-01 ON IS COMPILE-AGAIN.                                   00170000
  34.  
  35. 001800     BIT-02 ON IS PRINT-PROGRAM.                                   00180000
  36.  
  37. 001900     BIT-03 ON IS HALT-AFTER-COMPILE.                              00190000
  38.  
  39. 002000                                                                   00200000
  40.  
  41. 002100 INPUT-OUTPUT SECTION.                                             00210000
  42.  
  43. 002200                                                                   00220000
  44.  
  45. 002300 FILE-CONTROL.                                                     00230000
  46.  
  47. 002400     SELECT  IN-DA           ASSIGN EDS 1 ACCESS SEQUENTIAL.       00240000
  48.  
  49. 002500     SELECT  OUT-DA          ASSIGN EDS 2 ACCESS SEQUENTIAL.       00250000
  50.  
  51. 002600     SELECT  IN-MT           ASSIGN TAPES 1 RESERVE 1.             00260000
  52.  
  53. 002700     SELECT  OUT-MT-2048     ASSIGN TAPES 2 RESERVE 1.             00270000
  54.  
  55. 002800     SELECT  OUT-MT-512      ASSIGN TAPES 2 RESERVE 1.             00280000
  56.  
  57. 002900     SELECT  OUT-MT-128      ASSIGN TAPES 2 RESERVE 1.             00290000
  58.  
  59. 003000     SELECT  OUT-MT-64       ASSIGN TAPES 2 RESERVE 1.             00300000
  60.  
  61. 003100     SELECT  CARD-FILE       ASSIGN CARD-READER 1 RESERVE 1.       00310000
  62.  
  63. 003200                                                                   00320000
  64.  
  65. 003300 I-O-CONTROL.                                                      00330000
  66.  
  67. 003400     SAME RECORD AREA FOR IN-DA OUT-DA IN-MT                       00340000
  68.  
  69. 003500         OUT-MT-2048 OUT-MT-512 OUT-MT-128 OUT-MT-64.              00350000
  70.  
  71. 003600     SAME AREA FOR IN-DA IN-MT.                                    00360000
  72.  
  73. 003700     SAME AREA FOR OUT-DA                                          00370000
  74.  
  75. 003800         OUT-MT-2048 OUT-MT-512 OUT-MT-128 OUT-MT-64.              00380000
  76.  
  77. 003900     APPLY REPLY-WORD TO TRANSFER-REPLY ON IN-DA.                  00390000
  78.  
  79. 004000     APPLY REPLY-WORD TO TRANSFER-REPLY ON OUT-DA.                 00400000
  80.  
  81. 004100                                                                   00410000
  82.  
  83. 004200 DATA DIVISION.                                                    00420000
  84.  
  85. 004300                                                                   00430000
  86.  
  87. 004400 FILE SECTION.                                                     00440000
  88.  
  89. 004500                                                                   00450000
  90.  
  91. 004600 FD IN-MT                                                          00460000
  92.  
  93. 004700     BLOCK CONTAINS 2400 CHARACTERS                                00470000
  94.  
  95. 004800     LABEL RECORDS STANDARD WITH GENERATION-NO                     00480000
  96.  
  97. 004900     VALUE OF ID IS IN-NAME                                        00490000
  98.  
  99. 005000     GENERATION-NO IS IN-GEN.                                      00500000
  100.  
  101. 005100                                                                   00510000
  102.  
  103. 005200 01  IN-RECORD.                                                    00520000
  104.  
  105. 005300* NOTE THE SIZES OF THESE AREAS ARE ALSO DEFINED IN TABLE-SIZES    00530000
  106.  
  107. 005400     03  RECORD-AREA.                                              00540000
  108.  
  109. 005500         05  CHAR                PIC X OCCURS 800.                 00550000
  110.  
  111. 005600     03  WORK-AREA.                                                00560000
  112.  
  113. 005700         05  FILLER              PIC X OCCURS 400.                 00570000
  114.  
  115. 005800     03  LITERAL-AREA.                                             00580000
  116.  
  117. 005900         05  FILLER              PIC X OCCURS 400.                 00590000
  118.  
  119. 006000     03  SCRATCH-PAD.                                              00600000
  120.  
  121. 006100         05  SCR-WORD            PIC S9(6) COMP SYNC RIGHT.        00610000
  122.  
  123. 006200         05  FILLER              PIC X(36).                        00620000
  124.  
  125. 006300     03  CARD-AREA               PIC X(80).                        00630000
  126.  
  127. 006400     03  A510-AREA.                                                00640000
  128.  
  129. 006500         05  A510-LINES-PAGE     PIC S9(6) COMP SYNC RIGHT.        00650000
  130.  
  131. 006600         05  A510-TOT-LINES      PIC S9(6) COMP SYNC RIGHT.        00660000
  132.  
  133. 006700         05  A510-LINES-THIS     PIC S9(6) COMP SYNC RIGHT.        00670000
  134.  
  135. 006800         05  A510-PAGE           PIC S9(6) COMP SYNC RIGHT.        00680000
  136.  
  137. 006900         05  A510-HEADS          PIC S9(6) COMP SYNC RIGHT.        00690000
  138.  
  139. 007000         05  A510-REPLY          PIC S9(6) COMP SYNC RIGHT.        00700000
  140.  
  141. 007100         05  A510-CONTROL        PIC XXXX.                         00710000
  142.  
  143. 007200     03  PRINT-AREA.                                               00720000
  144.  
  145. 007300         05  FILLER              PIC X OCCURS 160.                 00730000
  146.  
  147. 007400     03  A510-HD1-CONTROL        PIC X(4).                         00740000
  148.  
  149. 007500     03  HEAD-1.                                                   00750000
  150.  
  151. 007600         05  FILLER              PIC X(50).                        00760000
  152.  
  153. 007700         05  HEAD-1-COM          PIC X(60).                        00770000
  154.  
  155. 007800         05  FILLER              PIC X(50).                        00780000
  156.  
  157. 007900     03  A510-HD2-CONTROL        PIC X(4).                         00790000
  158.  
  159. 008000     03  HEAD-2.                                                   00800000
  160.  
  161. 008100         05  FILLER              PIC X OCCURS 160.                 00810000
  162.  
  163. 008200     03  A510-HD3-CONTROL        PIC X(4).                         00820000
  164.  
  165. 008300     03  HEAD-3.                                                   00830000
  166.  
  167. 008400         05  FILLER              PIC X OCCURS 160.                 00840000
  168.  
  169. 008500                                                                   00850000
  170.  
  171. 008600 01  FILLER.                                                       00860000
  172.  
  173. 008700     03  RECORD-WORD-COUNT       PIC S9(6) COMP SYNC RIGHT.        00870000
  174.  
  175. 008800                                                                   00880000
  176.  
  177. 008900 01  FILLER.                                                       00890000
  178.  
  179. 009000     03  BINARY-WORD             PIC S9(6) COMP SYNC RIGHT         00900000
  180.  
  181. 009100                                 OCCURS 400.                       00910000
  182.  
  183. 009200                                                                   00920000
  184.  
  185. 009300 01  M5DA-RECORD.                                                  00930000
  186.  
  187. 009400     03  FILLER                  PIC XXXX OCCURS 14.               00940000
  188.  
  189. 009500     03  M5DA-INDEX-BITS         PIC XXXX.                         00950000
  190.  
  191. 009600                                                                   00960000
  192.  
  193. 009700 FD  IN-DA                                                         00970000
  194.  
  195. 009800     BLOCK CONTAINS 2048 CHARACTERS                                00980000
  196.  
  197. 009900     LABEL RECORDS STANDARD WITH GENERATION-NO                     00990000
  198.  
  199. 010000     VALUE OF ID IS IN-NAME                                        01000000
  200.  
  201. 010100     GENERATION-NO IS IN-GEN.                                      01010000
  202.  
  203. 010200                                                                   01020000
  204.  
  205. 010300 01  FILLER.                                                       01030000
  206.  
  207. 010400     03  FILLER                  PIC X OCCURS 800.                 01040000
  208.  
  209. 010500                                                                   01050000
  210.  
  211. 010600 FD  OUT-DA                                                        01060000
  212.  
  213. 010700     BLOCK CONTAINS 2048 CHARACTERS                                01070000
  214.  
  215. 010800     LABEL RECORDS STANDARD WITH GENERATION-NO                     01080000
  216.  
  217. 010900     VALUE OF ID IS OUT-NAME                                       01090000
  218.  
  219. 011000     GENERATION-NO IS OUT-GEN.                                     01100000
  220.  
  221. 011100                                                                   01110000
  222.  
  223. 011200 01  OUT-DA-REC.                                                   01120000
  224.  
  225. 011300     03  FILLER                  PIC X OCCURS 800.                 01130000
  226.  
  227. 011400                                                                   01140000
  228.  
  229. 011500 FD  OUT-MT-2048                                                   01150000
  230.  
  231. 011600     BLOCK CONTAINS 2048 CHARACTERS                                01160000
  232.  
  233. 011700     LABEL RECORDS STANDARD WITH GENERATION-NO                     01170000
  234.  
  235. 011800     VALUE OF ID IS OUT-NAME                                       01180000
  236.  
  237. 011900     ACTIVE-TIME IS 07                                             01190000
  238.  
  239. 012000     GENERATION-NO IS OUT-GEN.                                     01200000
  240.  
  241. 012100                                                                   01210000
  242.  
  243. 012200 01  OUT-MT-2048-REC.                                              01220000
  244.  
  245. 012300     03  FILLER                  PIC X OCCURS 800.                 01230000
  246.  
  247. 012400                                                                   01240000
  248.  
  249. 012500 FD  OUT-MT-512                                                    01250000
  250.  
  251. 012600     BLOCK CONTAINS 512 CHARACTERS                                 01260000
  252.  
  253. 012700     LABEL RECORDS STANDARD WITH GENERATION-NO                     01270000
  254.  
  255. 012800     VALUE OF ID IS OUT-NAME                                       01280000
  256.  
  257. 012900     ACTIVE-TIME IS 07                                             01290000
  258.  
  259. 013000     GENERATION-NO IS OUT-GEN.                                     01300000
  260.  
  261. 013100                                                                   01310000
  262.  
  263. 013200 01  OUT-MT-512-REC.                                               01320000
  264.  
  265. 013300     03  FILLER                  PIC X OCCURS 512.                 01330000
  266.  
  267. 013400                                                                   01340000
  268.  
  269. 013500 FD  OUT-MT-128                                                    01350000
  270.  
  271. 013600     BLOCK CONTAINS 128 CHARACTERS                                 01360000
  272.  
  273. 013700     LABEL RECORDS STANDARD WITH GENERATION-NO                     01370000
  274.  
  275. 013800     VALUE OF ID IS OUT-NAME                                       01380000
  276.  
  277. 013900     ACTIVE-TIME IS 07                                             01390000
  278.  
  279. 014000     GENERATION-NO IS OUT-GEN.                                     01400000
  280.  
  281. 014100                                                                   01410000
  282.  
  283. 014200 01  OUT-MT-128-REC.                                               01420000
  284.  
  285. 014300     03  FILLER                  PIC X OCCURS 128.                 01430000
  286.  
  287. 014400                                                                   01440000
  288.  
  289. 014500 FD  OUT-MT-64                                                     01450000
  290.  
  291. 014600     BLOCK CONTAINS 64 CHARACTERS                                  01460000
  292.  
  293. 014700     LABEL RECORDS STANDARD WITH GENERATION-NO                     01470000
  294.  
  295. 014800     VALUE OF ID IS OUT-NAME                                       01480000
  296.  
  297. 014900     ACTIVE-TIME IS 07                                             01490000
  298.  
  299. 015000     GENERATION-NO IS OUT-GEN.                                     01500000
  300.  
  301. 015100                                                                   01510000
  302.  
  303. 015200 01  OUT-MT-64-REC.                                                01520000
  304.  
  305. 015300     03  FILLER                  PIC X OCCURS 64.                  01530000
  306.  
  307. 015400                                                                   01540000
  308.  
  309. 015500 FD  CARD-FILE.                                                    01550000
  310.  
  311. 015600                                                                   01560000
  312.  
  313. 015700 01  CARD-RECORD.                                                  01570000
  314.  
  315. 015800     03  CARD-CHAR               PIC X OCCURS 80.                  01580000
  316.  
  317. 015900                                                                   01590000
  318.  
  319. 016000 WORKING-STORAGE SECTION.                                          01600000
  320.  
  321. 016100                                                                   01610000
  322.  
  323. 016200 01  PRINT-LINE.                                                   01620000
  324.  
  325. 016300     03  FILLER                  PIC X(8).                         01630000
  326.  
  327. 016400     03  LIST-CARD.                                                01640000
  328.  
  329. 016500         05  LIST-CHAR           PIC X OCCURS 80.                  01650000
  330.  
  331. 016600     03  FILLER                  PIC X(4).                         01660000
  332.  
  333. 016700     03  LIST-COMMENT            PIC X(20).                        01670000
  334.  
  335. 016800     03  LIST-NAME               PIC X(16).                        01680000
  336.  
  337. 016900     03  LIST-DATE               PIC X(80).                        01690000
  338.  
  339. 017000     03  FILLER                  PIC X(24).                        01700000
  340.  
  341. 017100                                                                   01710000
  342.  
  343. 017200 01  FILLER                  REDEFINES PRINT-LINE.                 01720000
  344.  
  345. 017300     03  FILLER                  PIC X(8).                         01730000
  346.  
  347. 017400     03  LIST-CELL               PIC Z(6).                         01740000
  348.  
  349. 017500     03  FILLER                  PIC XXXX.                         01750000
  350.  
  351. 017600     03  LIST-LABEL.                                               01760000
  352.  
  353. 017700         05  FILLER              PIC XXXX.                         01770000
  354.  
  355. 017800         05  LIST-TYPE           PIC X(12).                        01780000
  356.  
  357. 017900     03  LIST-LOC1               PIC Z(6).                         01790000
  358.  
  359. 018000     03  LIST-LOC2               PIC Z(6).                         01800000
  360.  
  361. 018100     03  LIST-NUM                PIC Z(6).                         01810000
  362.  
  363. 018200     03  LIST-EXIT               PIC Z(6).                         01820000
  364.  
  365. 018300                                                                   01830000
  366.  
  367. 018400 01  HOUSEKEEPING.                                                 01840000
  368.  
  369. 018500     03  REPLY-WORD              PIC S9(6) COMP SYNC RIGHT.        01850000
  370.  
  371. 018600                                                                   01860000
  372.  
  373. 018700 01  WORK-FIELDS.                                                  01870000
  374.  
  375. 018800     03  WORK-2-BITS             PIC 11 SYNC RIGHT.                01880000
  376.  
  377. 018900     03  WORK-CHAR               PIC X.                            01890000
  378.  
  379. 019000     03  NUM-FIELD-X.                                              01900000
  380.  
  381. 019100         05  NUM-CHAR            PIC X OCCURS 6.                   01910000
  382.  
  383. 019200     03  NUM-FIELD           REDEFINES NUM-FIELD-X   PIC 9(6).     01920000
  384.  
  385. 019300                                                                   01930000
  386.  
  387. 019400 01  WORD-AREA.                                                    01940000
  388.  
  389. 019500     03  WORD-CHAR               PIC X   OCCURS 80.                01950000
  390.  
  391. 019600                                                                   01960000
  392.  
  393. 019700 01  FILLER                  REDEFINES WORD-AREA.                  01970000
  394.  
  395. 019800     03  WORD-16-CHAR.                                             01980000
  396.  
  397. 019900         05  WORD-2-CHAR         PIC XX.                           01990000
  398.  
  399. 020000         05  FILLER              PIC X(14).                        02000000
  400.  
  401. 020100     03  FILLER                  PIC X(64).                        02010000
  402.  
  403. 020200                                                                   02020000
  404.  
  405. 020300 01  FLAGS   COMP.                                                 02030000
  406.  
  407. 020400     03  END-WORDS-FLAG          PIC S9(6) SYNC RIGHT VALUE ZERO.  02040000
  408.  
  409. 020500     03  END-CARDS-FLAG          PIC S9(6) SYNC RIGHT VALUE ZERO.  02050000
  410.  
  411. 020600     03  END-FILE-FLAG           PIC S9(6) SYNC RIGHT VALUE ZERO.  02060000
  412.  
  413. 020700     03  OUT-MT-FLAG             PIC S9(6) SYNC RIGHT VALUE ZERO.  02070000
  414.  
  415. 020800     03  END-CHAR-FLAG           PIC S9(6) SYNC RIGHT VALUE ZERO.  02080000
  416.  
  417. 020900     03  ERROR-FLAG              PIC S9(6) SYNC RIGHT VALUE ZERO.  02090000
  418.  
  419. 021000     03  QUOTE-FLAG              PIC S9(6) SYNC RIGHT VALUE ZERO.  02100000
  420.  
  421. 021100     03  LABEL-FLAG              PIC S9(6) SYNC RIGHT VALUE ZERO.  02110000
  422.  
  423. 021200     03  COMPILE-FLAG            PIC S9(6) SYNC RIGHT VALUE ZERO.  02120000
  424.  
  425. 021300     03  FULL-STOP-FLAG          PIC S9(6) SYNC RIGHT VALUE ZERO.  02130000
  426.  
  427. 021400     03  LOC-FLAG                PIC S9(6) SYNC RIGHT VALUE ZERO.  02140000
  428.  
  429. 021500     03  AND-FLAG                PIC S9(6) SYNC RIGHT VALUE ZERO.  02150000
  430.  
  431. 021600     03  OR-FLAG                 PIC S9(6) SYNC RIGHT VALUE ZERO.  02160000
  432.  
  433. 021700     03  NOT-FLAG                PIC S9(6) SYNC RIGHT VALUE ZERO.  02170000
  434.  
  435. 021800     03  LOC-QUOTE-FLAG          PIC S9(6) SYNC RIGHT VALUE ZERO.  02180000
  436.  
  437. 021900     03  CHAR-AREA-FLAG          PIC S9(6) SYNC RIGHT VALUE ZERO.  02190000
  438.  
  439. 022000                                                                   02200000
  440.  
  441. 022100 01  POINTERS COMP.                                                02210000
  442.  
  443. 022200     03  CELL-POINT              PIC S9(6) SYNC RIGHT VALUE ZERO.  02220000
  444.  
  445. 022300     03  WORD-CHAR-POINT         PIC S9(6) SYNC RIGHT VALUE ZERO.  02230000
  446.  
  447. 022400     03  DATA-CHAR-POINT         PIC S9(6) SYNC RIGHT VALUE ZERO.  02240000
  448.  
  449. 022500     03  LITERAL-CHAR-POINT      PIC S9(6) SYNC RIGHT VALUE ZERO.  02250000
  450.  
  451. 022600     03  FIRST-CHAR-POINT        PIC S9(6) SYNC RIGHT VALUE ZERO.  02260000
  452.  
  453. 022700     03  CARD-CHAR-POINT         PIC S9(6) SYNC RIGHT VALUE ZERO.  02270000
  454.  
  455. 022800     03  NEED-EXIT-POINT         PIC S9(6) SYNC RIGHT VALUE ZERO.  02280000
  456.  
  457. 022900     03  NUM-POINT               PIC S9(6) SYNC RIGHT VALUE ZERO.  02290000
  458.  
  459. 023000     03  LOC-POINT               PIC S9(6) SYNC RIGHT VALUE ZERO.  02300000
  460.  
  461. 023100     03  AUG-POINT               PIC S9(6) SYNC RIGHT VALUE ZERO.  02310000
  462.  
  463. 023200     03  POYNT                   PIC S9(6) SYNC RIGHT VALUE ZERO.  02320000
  464.  
  465. 023300     03  FILE-POINT              PIC S9(6) SYNC RIGHT VALUE ZERO.  02330000
  466.  
  467. 023400     03  IN-FILE-POINT           PIC S9(6) SYNC RIGHT VALUE ZERO.  02340000
  468.  
  469. 023500     03  OUT-FILE-POINT          PIC S9(6) SYNC RIGHT VALUE ZERO.  02350000
  470.  
  471. 023600                                                                   02360000
  472.  
  473. 023700 01  TOTALS COMP.                                                  02370000
  474.  
  475. 023800     03  RECS-IN                 PIC S9(6) SYNC RIGHT VALUE ZERO.  02380000
  476.  
  477. 023900     03  RECS-OUT                PIC S9(6) SYNC RIGHT VALUE ZERO.  02390000
  478.  
  479. 024000                                                                   02400000
  480.  
  481. 024100 01  COMPILE-TOTALS COMP.                                          02410000
  482.  
  483. 024200     03  TOTAL-CELLS             PIC S9(6) SYNC RIGHT VALUE ZERO.  02420000
  484.  
  485. 024300                                                                   02430000
  486.  
  487. 024400 01  NUMERIC-WORK-AREAS.                                           02440000
  488.  
  489. 024500     03  LOC-LENGTH              PIC S9(6) COMP SYNC RIGHT.        02450000
  490.  
  491. 024600     03  NUMBER-X4.                                                02460000
  492.  
  493. 024700         05  NUMBER              PIC S9(6) COMP SYNC RIGHT.        02470000
  494.  
  495. 024800                                                                   02480000
  496.  
  497. 024900 01  TABLE-SIZES COMP.                                             02490000
  498.  
  499. 025000     03  RECORD-CHARS            PIC S9(6) SYNC RIGHT VALUE 800.   02500000
  500.  
  501. 025100     03  WORK-CHARS              PIC S9(6) SYNC RIGHT VALUE 400.   02510000
  502.  
  503. 025200     03  LITERAL-CHARS           PIC S9(6) SYNC RIGHT VALUE 400.   02520000
  504.  
  505. 025300     03  NO-OF-CELLS             PIC S9(6) SYNC RIGHT VALUE 200.   02530000
  506.  
  507. 025400                                                                   02540000
  508.  
  509. 025500 01  AREA-START-LOCATIONS    COMP.                                 02550000
  510.  
  511. 025600     03  WORK-AREA-START         PIC S9(6) SYNC RIGHT VALUE 800.   02560000
  512.  
  513. 025700     03  LITERAL-AREA-START      PIC S9(6) SYNC RIGHT VALUE 1200.  02570000
  514.  
  515. 025800     03  LITERAL-AREA-END        PIC S9(6) SYNC RIGHT VALUE 1600.  02580000
  516.  
  517. 025900     03  CARD-AREA-START         PIC S9(6) SYNC RIGHT VALUE 1640.  02590000
  518.  
  519. 026000     03  A510-AREA-START         PIC S9(6) SYNC RIGHT VALUE 1720.  02600000
  520.  
  521. 026100     03  PRINT-AREA-START        PIC S9(6) SYNC RIGHT VALUE 1748.  02610000
  522.  
  523. 026200     03  H-HEAD-AREA-START       PIC S9(6) SYNC RIGHT VALUE 1912.  02620000
  524.  
  525. 026300     03  I-HEAD-AREA-START       PIC S9(6) SYNC RIGHT VALUE 2076.  02630000
  526.  
  527. 026400     03  J-HEAD-AREA-START       PIC S9(6) SYNC RIGHT VALUE 2240.  02640000
  528.  
  529. 026500                                                                   02650000
  530.  
  531. 026600 01  ONE-WORD-MOVE COMP.                                           02660000
  532.  
  533. 026700     03  ONE-LOC                 PIC S9(6) SYNC RIGHT.             02670000
  534.  
  535. 026800     03  ONE-SCR-LOC             PIC S9(6) SYNC RIGHT VALUE 1601.  02680000
  536.  
  537. 026900     03  ONE-LENGTH              PIC S9(6) SYNC RIGHT VALUE 4.     02690000
  538.  
  539. 027000                                                                   02700000
  540.  
  541. 027100 01  INSTRUCTION-POINTERS.                                         02710000
  542.  
  543. 027200     03  FILLER              PIC S9(6) COMP SYNC RIGHT VALUE 1.    02720000
  544.  
  545. 027300     03  FILLER              PIC S9(6) COMP SYNC RIGHT VALUE 2.    02730000
  546.  
  547. 027400     03  FILLER              PIC S9(6) COMP SYNC RIGHT VALUE 3.    02740000
  548.  
  549. 027500     03  FILLER              PIC S9(6) COMP SYNC RIGHT VALUE 4.    02750000
  550.  
  551. 027600     03  FILLER              PIC S9(6) COMP SYNC RIGHT VALUE 5.    02760000
  552.  
  553. 027700     03  FILLER              PIC S9(6) COMP SYNC RIGHT VALUE 6.    02770000
  554.  
  555. 027800     03  FILLER              PIC S9(6) COMP SYNC RIGHT VALUE 7.    02780000
  556.  
  557. 027900     03  FILLER              PIC S9(6) COMP SYNC RIGHT VALUE 8.    02790000
  558.  
  559. 028000     03  FILLER              PIC S9(6) COMP SYNC RIGHT VALUE 9.    02800000
  560.  
  561. 028100     03  FILLER              PIC S9(6) COMP SYNC RIGHT VALUE 10.   02810000
  562.  
  563. 028200     03  FILLER              PIC S9(6) COMP SYNC RIGHT VALUE 11.   02820000
  564.  
  565. 028300     03  FILLER              PIC S9(6) COMP SYNC RIGHT VALUE 12.   02830000
  566.  
  567. 028400     03  FILLER              PIC S9(6) COMP SYNC RIGHT VALUE 13.   02840000
  568.  
  569. 028500     03  FILLER              PIC S9(6) COMP SYNC RIGHT VALUE 14.   02850000
  570.  
  571. 028600     03  FILLER              PIC S9(6) COMP SYNC RIGHT VALUE 15.   02860000
  572.  
  573. 028700     03  FILLER              PIC S9(6) COMP SYNC RIGHT VALUE 16.   02870000
  574.  
  575. 028800     03  FILLER              PIC S9(6) COMP SYNC RIGHT VALUE 17.   02880000
  576.  
  577. 028900     03  FILLER              PIC S9(6) COMP SYNC RIGHT VALUE 18.   02890000
  578.  
  579. 029000     03  FILLER              PIC S9(6) COMP SYNC RIGHT VALUE 19.   02900000
  580.  
  581. 029100     03  FILLER              PIC S9(6) COMP SYNC RIGHT VALUE 20.   02910000
  582.  
  583. 029200     03  FILLER              PIC S9(6) COMP SYNC RIGHT VALUE 21.   02920000
  584.  
  585. 029300     03  FILLER              PIC S9(6) COMP SYNC RIGHT VALUE 22.   02930000
  586.  
  587. 029400     03  FILLER              PIC S9(6) COMP SYNC RIGHT VALUE 23.   02940000
  588.  
  589. 029500                                                                   02950000
  590.  
  591. 029600 01  FILLER                  REDEFINES INSTRUCTION-POINTERS.       02960000
  592.  
  593. 029700* NOTE: KEEP INSTRUCTIONS IN THE SAME ORDER EVERYWHERE             02970000
  594.  
  595. 029800     03  TYPE-ADD                PIC S9(6) COMP SYNC RIGHT.        02980000
  596.  
  597. 029900     03  TYPE-AUGMENT            PIC S9(6) COMP SYNC RIGHT.        02990000
  598.  
  599. 030000     03  TYPE-CALL               PIC S9(6) COMP SYNC RIGHT.        03000000
  600.  
  601. 030100     03  TYPE-DIVIDE             PIC S9(6) COMP SYNC RIGHT.        03010000
  602.  
  603. 030200     03  TYPE-EXIT               PIC S9(6) COMP SYNC RIGHT.        03020000
  604.  
  605. 030300     03  TYPE-GO                 PIC S9(6) COMP SYNC RIGHT.        03030000
  606.  
  607. 030400     03  TYPE-IF-EQUAL-CHARS     PIC S9(6) COMP SYNC RIGHT.        03040000
  608.  
  609. 030500     03  TYPE-IF-NOT-EQUAL-CHARS PIC S9(6) COMP SYNC RIGHT.        03050000
  610.  
  611. 030600     03  TYPE-IF-GREAT-CHARS     PIC S9(6) COMP SYNC RIGHT.        03060000
  612.  
  613. 030700     03  TYPE-IF-NOT-GREAT-CHARS PIC S9(6) COMP SYNC RIGHT.        03070000
  614.  
  615. 030800     03  TYPE-IF-LESS-CHARS      PIC S9(6) COMP SYNC RIGHT.        03080000
  616.  
  617. 030900     03  TYPE-IF-NOT-LESS-CHARS  PIC S9(6) COMP SYNC RIGHT.        03090000
  618.  
  619. 031000     03  TYPE-LABEL              PIC S9(6) COMP SYNC RIGHT.        03100000
  620.  
  621. 031100     03  TYPE-MOVE-1B-D          PIC S9(6) COMP SYNC RIGHT.        03110000
  622.  
  623. 031200     03  TYPE-MOVE-CHARS         PIC S9(6) COMP SYNC RIGHT.        03120000
  624.  
  625. 031300     03  TYPE-MOVE-D-1B          PIC S9(6) COMP SYNC RIGHT.        03130000
  626.  
  627. 031400     03  TYPE-MULTIPLY           PIC S9(6) COMP SYNC RIGHT.        03140000
  628.  
  629. 031500     03  TYPE-PERFORM            PIC S9(6) COMP SYNC RIGHT.        03150000
  630.  
  631. 031600     03  TYPE-PRINT              PIC S9(6) COMP SYNC RIGHT.        03160000
  632.  
  633. 031700     03  TYPE-READ               PIC S9(6) COMP SYNC RIGHT.        03170000
  634.  
  635. 031800     03  TYPE-STOP               PIC S9(6) COMP SYNC RIGHT.        03180000
  636.  
  637. 031900     03  TYPE-SUBTRACT           PIC S9(6) COMP SYNC RIGHT.        03190000
  638.  
  639. 032000     03  TYPE-WRITE              PIC S9(6) COMP SYNC RIGHT.        03200000
  640.  
  641. 032100                                                                   03210000
  642.  
  643. 032200 01  INSTRUCTION-NAMES.                                            03220000
  644.  
  645. 032300     03  FILLER                  PIC X(8) VALUE "ADD".             03230000
  646.  
  647. 032400     03  FILLER                  PIC X(8) VALUE "AUGMENT".         03240000
  648.  
  649. 032500     03  FILLER                  PIC X(8) VALUE "CALL".            03250000
  650.  
  651. 032600     03  FILLER                  PIC X(8) VALUE "DIVIDE".          03260000
  652.  
  653. 032700     03  FILLER                  PIC X(8) VALUE "EXIT".            03270000
  654.  
  655. 032800     03  FILLER                  PIC X(8) VALUE "GO TO".           03280000
  656.  
  657. 032900     03  FILLER                  PIC X(8) VALUE "IF =".            03290000
  658.  
  659. 033000     03  FILLER                  PIC X(8) VALUE "IF NOT =".        03300000
  660.  
  661. 033100     03  FILLER                  PIC X(8) VALUE "IF >".            03310000
  662.  
  663. 033200     03  FILLER                  PIC X(8) VALUE "IF NOT >".        03320000
  664.  
  665. 033300     03  FILLER                  PIC X(8) VALUE "IF <".            03330000
  666.  
  667. 033400     03  FILLER                  PIC X(8) VALUE "IF NOT <".        03340000
  668.  
  669. 033500     03  FILLER                  PIC X(8) VALUE "LABEL".           03350000
  670.  
  671. 033600     03  FILLER                  PIC X(8) VALUE "MOVE B-D".        03360000
  672.  
  673. 033700     03  FILLER                  PIC X(8) VALUE "MOVE TO".         03370000
  674.  
  675. 033800     03  FILLER                  PIC X(8) VALUE "MOVE D-B".        03380000
  676.  
  677. 033900     03  FILLER                  PIC X(8) VALUE "MULTIPLY".        03390000
  678.  
  679. 034000     03  FILLER                  PIC X(8) VALUE "PERFORM".         03400000
  680.  
  681. 034100     03  FILLER                  PIC X(8) VALUE "PRINT".           03410000
  682.  
  683. 034200     03  FILLER                  PIC X(8) VALUE "READ".            03420000
  684.  
  685. 034300     03  FILLER                  PIC X(8) VALUE "STOP".            03430000
  686.  
  687. 034400     03  FILLER                  PIC X(8) VALUE "SUBTRACT".        03440000
  688.  
  689. 034500     03  FILLER                  PIC X(8) VALUE "WRITE".           03450000
  690.  
  691. 034600                                                                   03460000
  692.  
  693. 034700 01  FILLER                  REDEFINES INSTRUCTION-NAMES.          03470000
  694.  
  695. 034800     03  INSTRUCTION-NAME        PIC X(8) OCCURS 23.               03480000
  696.  
  697. 034900                                                                   03490000
  698.  
  699. 035000 01  SUBROUTINE-TYPES COMP.                                        03500000
  700.  
  701. 035100     03  SUBR-M5DAEXPAND         PIC S9(6) SYNC RIGHT VALUE 1.     03510000
  702.  
  703. 035200* NOTE: ANY DESIRED SOUBROUTINES CAN BE INCLUDED HERE              03520000
  704.  
  705. 035300* ALSO INCLUDE CODE TO TEST FOR AND RUN THE SUBROUTINE             03530000
  706.  
  707. 035400                                                                   03540000
  708.  
  709. 035500 01  CARD-PRINTER-STATUS.                                          03550000
  710.  
  711. 035600     03  CARD-PRINTER-FLAG       PIC S9(6) SYNC RIGHT VALUE 0.     03560000
  712.  
  713. 035700                                                                   03570000
  714.  
  715. 035800 01  FILE-OPEN-MODES COMP.                                         03580000
  716.  
  717. 035900     03  OPEN-INPUT              PIC S9(6) SYNC RIGHT VALUE 1.     03590000
  718.  
  719. 036000     03  OPEN-OUTPUT             PIC S9(6) SYNC RIGHT VALUE 2.     03600000
  720.  
  721. 036100                                                                   03610000
  722.  
  723. 036200 01  FILE-TYPES COMP.                                              03620000
  724.  
  725. 036300     03  INPUT-DA                PIC S9(6) SYNC RIGHT VALUE 1.     03630000
  726.  
  727. 036400     03  OUTPUT-DA               PIC S9(6) SYNC RIGHT VALUE 2.     03640000
  728.  
  729. 036500     03  FILE-TYPE-DA            PIC S9(6) SYNC RIGHT VALUE 3.     03650000
  730.  
  731. 036600     03  INPUT-MT                PIC S9(6) SYNC RIGHT VALUE 4.     03660000
  732.  
  733. 036700     03  OUTPUT-MT-2048          PIC S9(6) SYNC RIGHT VALUE 5.     03670000
  734.  
  735. 036800     03  OUTPUT-MT-1024          PIC S9(6) SYNC RIGHT VALUE 6.     03680000
  736.  
  737. 036900     03  OUTPUT-MT-512           PIC S9(6) SYNC RIGHT VALUE 7.     03690000
  738.  
  739. 037000     03  OUTPUT-MT-128           PIC S9(6) SYNC RIGHT VALUE 8.     03700000
  740.  
  741. 037100     03  OUTPUT-MT-64            PIC S9(6) SYNC RIGHT VALUE 9.     03710000
  742.  
  743. 037200                                                                   03720000
  744.  
  745. 037300 01  FILE-TABLE-SIZE         PIC S9(6) COMP SYNC RIGHT VALUE 15.   03730000
  746.  
  747. 037400                                                                   03740000
  748.  
  749. 037500 01  FILE-DATA-TABLE.                                              03750000
  750.  
  751. 037600     03  FILE-DATA           OCCURS 15.                            03760000
  752.  
  753. 037700         05  FTAB-NAME           PIC X(12).                        03770000
  754.  
  755. 037800         05  FTAB-GEN            PIC S9(6) COMP SYNC RIGHT.        03780000
  756.  
  757. 037900         05  FTAB-BLOCK          PIC S9(6) COMP SYNC RIGHT.        03790000
  758.  
  759. 038000         05  FTAB-FILE-NO        PIC S9(6) COMP SYNC RIGHT.        03800000
  760.  
  761. 038100         05  FTAB-TYPE           PIC S9(6) COMP SYNC RIGHT.        03810000
  762.  
  763. 038200         05  FTAB-MODE           PIC S9(6) COMP SYNC RIGHT.        03820000
  764.  
  765. 038300                                                                   03830000
  766.  
  767. 038400 01  FILE-STATUS-TABLE.                                            03840000
  768.  
  769. 038500     03  FILE-STATUS-FLAG    PIC S9(6) COMP SYNC RIGHT OCCURS 15.  03850000
  770.  
  771. 038600                                                                   03860000
  772.  
  773. 038700 01  WORK-FILE-DATA.                                               03870000
  774.  
  775. 038800     03  WORK-NAME               PIC X(12).                        03880000
  776.  
  777. 038900     03  WORK-GEN                PIC S9(6) COMP SYNC RIGHT.        03890000
  778.  
  779. 039000     03  WORK-BLOCK              PIC S9(6) COMP SYNC RIGHT.        03900000
  780.  
  781. 039100     03  WORK-FILE-NO            PIC S9(6) COMP SYNC RIGHT.        03910000
  782.  
  783. 039200     03  WORK-TYPE               PIC S9(6) COMP SYNC RIGHT.        03920000
  784.  
  785. 039300     03  WORK-MODE               PIC S9(6) COMP SYNC RIGHT.        03930000
  786.  
  787. 039400                                                                   03940000
  788.  
  789. 039500 01  FILE-WORKING.                                                 03950000
  790.  
  791. 039600     03  WORK-MEDIUM             PIC XX.                           03960000
  792.  
  793. 039700     03  FILLER                  PIC XX.                           03970000
  794.  
  795. 039800     03  MODE-REQUIRED           PIC S9(6) COMP SYNC RIGHT.        03980000
  796.  
  797. 039900 01  IN-FILE-DATA.                                                 03990000
  798.  
  799. 040000     03  IN-NAME                 PIC X(12).                        04000000
  800.  
  801. 040100     03  IN-GEN                  PIC S9(6) COMP SYNC RIGHT.        04010000
  802.  
  803. 040200     03  IN-BLOCK                PIC S9(6) COMP SYNC RIGHT.        04020000
  804.  
  805. 040300     03  IN-FILE-NO              PIC S9(6) COMP SYNC RIGHT.        04030000
  806.  
  807. 040400     03  IN-TYPE                 PIC S9(6) COMP SYNC RIGHT.        04040000
  808.  
  809. 040500     03  IN-MODE                 PIC S9(6) COMP SYNC RIGHT.        04050000
  810.  
  811. 040600                                                                   04060000
  812.  
  813. 040700 01  OUT-FILE-DATA.                                                04070000
  814.  
  815. 040800     03  OUT-NAME                PIC X(12).                        04080000
  816.  
  817. 040900     03  OUT-GEN                 PIC S9(6) COMP SYNC RIGHT.        04090000
  818.  
  819. 041000     03  OUT-BLOCK               PIC S9(6) COMP SYNC RIGHT.        04100000
  820.  
  821. 041100     03  OUT-FILE-NO             PIC S9(6) COMP SYNC RIGHT.        04110000
  822.  
  823. 041200     03  OUT-TYPE                PIC S9(6) COMP SYNC RIGHT.        04120000
  824.  
  825. 041300     03  OUT-MODE                PIC S9(6) COMP SYNC RIGHT.        04130000
  826.  
  827. 041400                                                                   04140000
  828.  
  829. 041500 01  CELL.                                                         04150000
  830.  
  831. 041600* NOTE: AN INSTRUCTION AND PARAMETERS ARE STORED HERE WHILE BEING  04160000
  832.  
  833. 041700* GENERATED OR EXECUTED                                            04170000
  834.  
  835. 041800     03  CELL-TYPE               PIC S9(6) COMP SYNC RIGHT.        04180000
  836.  
  837. 041900     03  CELL-LABEL.                                               04190000
  838.  
  839. 042000         05  CELL-LOC1           PIC S9(6) COMP SYNC RIGHT.        04200000
  840.  
  841. 042100         05  CELL-LOC2           PIC S9(6) COMP SYNC RIGHT.        04210000
  842.  
  843. 042200         05  CELL-NUM            PIC S9(6) COMP SYNC RIGHT.        04220000
  844.  
  845. 042300         05  CELL-EXIT           PIC S9(6) COMP SYNC RIGHT.        04230000
  846.  
  847. 042400     03  FILLER REDEFINES CELL-LABEL.                              04240000
  848.  
  849. 042500         05  CELL-WORD   PIC S9(6) COMP SYNC RIGHT OCCURS 4.       04250000
  850.  
  851. 042600                                                                   04260000
  852.  
  853. 042700 01  AUG-STORE.                                                    04270000
  854.  
  855. 042800     03  AUG-WORD        PIC S9(6) COMP SYNC RIGHT OCCURS 4.       04280000
  856.  
  857. 042900                                                                   04290000
  858.  
  859. 043000 01  CELL-TABLE.                                                   04300000
  860.  
  861. 043100     03  CELL-STORE          OCCURS 200.                           04310000
  862.  
  863. 043200         05  CELL-STORE-TYPE     PIC S9(6) COMP SYNC RIGHT.        04320000
  864.  
  865. 043300         05  CELL-STORE-LABEL.                                     04330000
  866.  
  867. 043400             07  CELL-STORE-LOC1 PIC S9(6) COMP SYNC RIGHT.        04340000
  868.  
  869. 043500             07  CELL-STORE-LOC2 PIC S9(6) COMP SYNC RIGHT.        04350000
  870.  
  871. 043600             07  CELL-STORE-NUM  PIC S9(6) COMP SYNC RIGHT.        04360000
  872.  
  873. 043700             07  CELL-STORE-EXIT PIC S9(6) COMP SYNC RIGHT.        04370000
  874.  
  875. 043800     03  FILLER                  PIC XXXX VALUE ZERO.              04380000
  876.  
  877. 043900                                                                   04390000
  878.  
  879. 044000 PROCEDURE DIVISION.                                               04400000
  880.  
  881. 044100                                                                   04410000
  882.  
  883. 044200 COMPILE SECTION.                                                  04420000
  884.  
  885. 044300                                                                   04430000
  886.  
  887. 044400 TEST-IF-COMPILED.                                                 04440000
  888.  
  889. 044500     PERFORM OPEN-CARD-PRINTER.                                    04450000
  890.  
  891. 044600     IF PRINT-PROGRAM                                              04460000
  892.  
  893. 044700         MOVE 100 TO A510-LINES-THIS                               04470000
  894.  
  895. 044800         GO TO PRINT-CELLS.                                        04480000
  896.  
  897. 044900     IF COMPILE-AGAIN                                              04490000
  898.  
  899. 045000         GO TO PRINT-HEADINGS.                                     04500000
  900.  
  901. 045100     IF COMPILE-FLAG = 1                                           04510000
  902.  
  903. 045200         GO TO RUN-GENERATED-PROGRAM.                              04520000
  904.  
  905. 045300                                                                   04530000
  906.  
  907. 045400 PRINT-HEADINGS.                                                   04540000
  908.  
  909. 045500     MOVE "#UT06/4A  PROGRAM GENERATOR"                            04550000
  910.  
  911. 045600             TO PRINT-LINE.                                        04560000
  912.  
  913. 045700     ACCEPT LIST-DATE FROM EXEC-DATE.                              04570000
  914.  
  915. 045800     MOVE ZERO TO FLAGS POINTERS IN-RECORD                         04580000
  916.  
  917. 045900          FILE-DATA-TABLE FILE-STATUS-TABLE                        04590000
  918.  
  919. 046000          CELL-TABLE CELL.                                         04600000
  920.  
  921. 046100     MOVE SPACES TO LITERAL-AREA.                                  04610000
  922.  
  923. 046200     MOVE 100 TO CARD-CHAR-POINT.                                  04620000
  924.  
  925. 046300     ADD 1 LITERAL-AREA-START GIVING LITERAL-CHAR-POINT.           04630000
  926.  
  927. 046400     MOVE PRINT-LINE TO HEAD-1.                                    04640000
  928.  
  929. 046500     MOVE SPACES TO HEAD-2 HEAD-3.                                 04650000
  930.  
  931. 046600     MOVE SPACES TO PRINT-LINE.                                    04660000
  932.  
  933. 046700     MOVE 56 TO A510-LINES-PAGE.                                   04670000
  934.  
  935. 046800     MOVE 100 TO A510-LINES-THIS.                                  04680000
  936.  
  937. 046900     MOVE 3 TO A510-HEADS.                                         04690000
  938.  
  939. 047000     MOVE "HEAD" TO A510-HD1-CONTROL.                              04700000
  940.  
  941. 047100     MOVE "SP 2" TO A510-HD2-CONTROL.                              04710000
  942.  
  943. 047200     MOVE "SP 1" TO A510-HD3-CONTROL.                              04720000
  944.  
  945. 047300     MOVE "SP 1" TO A510-CONTROL.                                  04730000
  946.  
  947. 047400     MOVE "LISTING OF SOURCE CARDS:" TO LIST-CARD.                 04740000
  948.  
  949. 047500     PERFORM PRINT 2 TIMES.                                        04750000
  950.  
  951. 047600     MOVE 1 TO CELL-POINT.                                         04760000
  952.  
  953. 047700                                                                   04770000
  954.  
  955. 047800 NEXT-WORD.                                                        04780000
  956.  
  957. 047900     PERFORM READAWORD.                                            04790000
  958.  
  959. 048000                                                                   04800000
  960.  
  961. 048100 CHECK-WORD.                                                       04810000
  962.  
  963. 048200     MOVE ZERO TO CELL.                                            04820000
  964.  
  965. 048300     IF END-WORDS-FLAG = 1                                         04830000
  966.  
  967. 048400         PERFORM CREATE-RETURN-CELL                                04840000
  968.  
  969. 048500         SUBTRACT 1 FROM CELL-POINT GIVING TOTAL-CELLS             04850000
  970.  
  971. 048600         GO TO CHECK-LABELS.                                       04860000
  972.  
  973. 048700     IF QUOTE-FLAG = 1                                             04870000
  974.  
  975. 048800         PERFORM PRINT-ERROR                                       04880000
  976.  
  977. 048900         GO TO NEXT-WORD.                                          04890000
  978.  
  979. 049000     IF WORD-2-CHAR = "AD"   GO TO COMPILE-ADD.                    04900000
  980.  
  981. 049100     IF WORD-2-CHAR = "AU"   GO TO COMPILE-AUGMENT.                04910000
  982.  
  983. 049200     IF WORD-2-CHAR = "CA"   GO TO COMPILE-CALL.                   04920000
  984.  
  985. 049300     IF WORD-2-CHAR = "DI"   GO TO COMPILE-DIVIDE.                 04930000
  986.  
  987. 049400     IF WORD-2-CHAR = "EL"   GO TO COMPILE-ELSE.                   04940000
  988.  
  989. 049500     IF WORD-2-CHAR = "GO"   GO TO COMPILE-GO.                     04950000
  990.  
  991. 049600     IF WORD-2-CHAR = "IF"   GO TO COMPILE-IF.                     04960000
  992.  
  993. 049700     IF WORD-2-CHAR = "IN"   GO TO COMPILE-IN.                     04970000
  994.  
  995. 049800     IF WORD-2-CHAR = "MO"   GO TO COMPILE-MOVE.                   04980000
  996.  
  997. 049900     IF WORD-2-CHAR = "MU"   GO TO COMPILE-MULTIPLY.               04990000
  998.  
  999. 050000     IF WORD-2-CHAR = "OU"   GO TO COMPILE-OUT.                    05000000
  1000.  
  1001. 050100     IF WORD-2-CHAR = "PE"   GO TO COMPILE-PERFORM.                05010000
  1002.  
  1003. 050200     IF WORD-2-CHAR = "PR"   GO TO COMPILE-PRINT.                  05020000
  1004.  
  1005. 050300     IF WORD-2-CHAR = "RE"   GO TO COMPILE-READ.                   05030000
  1006.  
  1007. 050400     IF WORD-2-CHAR = "ST"   GO TO COMPILE-STOP.                   05040000
  1008.  
  1009. 050500     IF WORD-2-CHAR = "SU"   GO TO COMPILE-SUBTRACT.               05050000
  1010.  
  1011. 050600     IF WORD-2-CHAR = "WR"   GO TO COMPILE-WRITE.                  05060000
  1012.  
  1013. 050700     IF WORD-2-CHAR = "**"                                         05070000
  1014.  
  1015. 050800         MOVE 1 TO END-WORDS-FLAG                                  05080000
  1016.  
  1017. 050900         GO TO CHECK-WORD.                                         05090000
  1018.  
  1019. 051000                                                                   05100000
  1020.  
  1021. 051100 COMPILE-LABEL.                                                    05110000
  1022.  
  1023. 051200     IF WORD-CHAR (1) NOT NUMERIC                                  05120000
  1024.  
  1025. 051300          GO TO PRINT-ERROR.                                       05130000
  1026.  
  1027. 051400     PERFORM CREATE-RETURN-CELL.                                   05140000
  1028.  
  1029. 051500     MOVE 1 TO LABEL-FLAG.                                         05150000
  1030.  
  1031. 051600     MOVE TYPE-LABEL TO CELL-TYPE.                                 05160000
  1032.  
  1033. 051700     MOVE WORD-16-CHAR TO CELL-LABEL.                              05170000
  1034.  
  1035. 051800     PERFORM STORE-CELL.                                           05180000
  1036.  
  1037. 051900     GO TO NEXT-WORD.                                              05190000
  1038.  
  1039. 052000                                                                   05200000
  1040.  
  1041. 052100 COMPILE-ADD.                                                      05210000
  1042.  
  1043. 052200     MOVE TYPE-ADD TO CELL-TYPE.                                   05220000
  1044.  
  1045. 052300     GO TO COMPILE-ARITHMETIC.                                     05230000
  1046.  
  1047. 052400                                                                   05240000
  1048.  
  1049. 052500 COMPILE-ARITHMETIC.                                               05250000
  1050.  
  1051. 052600     PERFORM READAWORD.                                            05260000
  1052.  
  1053. 052700     PERFORM CONVERT-LOCATION.                                     05270000
  1054.  
  1055. 052800     PERFORM LOC-TO-BINARY THRU LTB-EXIT.                          05280000
  1056.  
  1057. 052900     MOVE LOC-POINT TO CELL-LOC1.                                  05290000
  1058.  
  1059. 053000     MOVE LOC-LENGTH TO CELL-NUM.                                  05300000
  1060.  
  1061. 053100     PERFORM READAWORD.                                            05310000
  1062.  
  1063. 053200     IF WORD-2-CHAR = "TO" OR "FR" OR "BY" OR "IN"                 05320000
  1064.  
  1065. 053300         PERFORM READAWORD.                                        05330000
  1066.  
  1067. 053400     PERFORM CONVERT-LOCATION.                                     05340000
  1068.  
  1069. 053500     PERFORM LOC-TO-BINARY THRU LTB-EXIT.                          05350000
  1070.  
  1071. 053600     MOVE LOC-POINT TO CELL-LOC2.                                  05360000
  1072.  
  1073. 053700     MOVE LOC-LENGTH TO CELL-EXIT.                                 05370000
  1074.  
  1075. 053800     IF CELL-NUM = -4 AND CELL-EXIT = -4                           05380000
  1076.  
  1077. 053900         PERFORM STORE-CELL                                        05390000
  1078.  
  1079. 054000         GO TO NEXT-WORD.                                          05400000
  1080.  
  1081. 054100                                                                   05410000
  1082.  
  1083. 054200* IT LOOKS AS IF ARITHMETIC ONLY ON 1 WORD FIELDS IS ALLOWABLE     05420000
  1084.  
  1085. 054300* WITH UT06/4A. I HAVE LOTS OF PENCILLED AMENDMENTS THAT ALLOW     05430000
  1086.  
  1087. 054400* OTHER SIZE FIELDS                                                05440000
  1088.  
  1089. 054500                                                                   05450000
  1090.  
  1091. 054600     PERFORM PRINT-ERROR.                                          05460000
  1092.  
  1093. 054700     GO TO NEXT-WORD.                                              05470000
  1094.  
  1095. 054800                                                                   05480000
  1096.  
  1097. 054900 COMPILE-AUGMENT.                                                  05490000
  1098.  
  1099. 055000* THIS IS A TEMPORARY INSTRUCTION THAT ALLOWS MODIFICATION OF      05500000
  1100.  
  1101. 055100* THE NEXT INSTRUCTION'S PARAMETERS                                05510000
  1102.  
  1103. 055200                                                                   05520000
  1104.  
  1105. 055300     MOVE TYPE-AUGMENT TO CELL-TYPE.                               05530000
  1106.  
  1107. 055400     ADD 1 TO CELL-POINT.                                          05540000
  1108.  
  1109. 055500                                                                   05550000
  1110.  
  1111. 055600 CAU-1.                                                            05560000
  1112.  
  1113. 055700     PERFORM READAWORD.                                            05570000
  1114.  
  1115. 055800     IF WORD-CHAR (1) NOT = "L"                                    05580000
  1116.  
  1117. 055900         SUBTRACT 1 FROM CELL-POINT                                05590000
  1118.  
  1119. 056000         PERFORM STORE-CELL                                        05600000
  1120.  
  1121. 056100         GO TO CHECK-WORD.                                         05610000
  1122.  
  1123. 056200     PERFORM CONVERT-WORD-TO-BINARY.                               05620000
  1124.  
  1125. 056300     IF NUMBER < 1 OR > 4                                          05630000
  1126.  
  1127. 056400         GO TO PRINT-ERROR.                                        05640000
  1128.  
  1129. 056500     MOVE NUMBER TO AUG-POINT.                                     05650000
  1130.  
  1131. 056600     PERFORM READAWORD.                                            05660000
  1132.  
  1133. 056700     IF WORD-16-CHAR = "WITH"                                      05670000
  1134.  
  1135. 056800         PERFORM READAWORD.                                        05680000
  1136.  
  1137. 056900     PERFORM CONVERT-LOCATION.                                     05690000
  1138.  
  1139. 057000     IF LOC-LENGTH NOT = 4                                         05700000
  1140.  
  1141. 057100         GO TO PRINT-ERROR.                                        05710000
  1142.  
  1143. 057200     MOVE LOC-POINT TO CELL-WORD (AUG-POINT).                      05720000
  1144.  
  1145. 057300     GO TO CAU-1.                                                  05730000
  1146.  
  1147. 057400                                                                   05740000
  1148.  
  1149. 057500 COMPILE-CALL.                                                     05750000
  1150.  
  1151. 057600     MOVE TYPE-CALL TO CELL-TYPE.                                  05760000
  1152.  
  1153. 057700     PERFORM READAWORD.                                            05770000
  1154.  
  1155. 057800     IF WORD-16-CHAR = "M5DAEXPAND"                                05780000
  1156.  
  1157. 057900         MOVE SUBR-M5DAEXPAND TO CELL-LOC2                         05790000
  1158.  
  1159. 058000         PERFORM STORE-CELL                                        05800000
  1160.  
  1161. 058100         GO TO NEXT-WORD.                                          05810000
  1162.  
  1163. 058200     GO TO PRINT-ERROR.                                            05820000
  1164.  
  1165. 058300                                                                   05830000
  1166.  
  1167. 058400 COMPILE-DIVIDE.                                                   05840000
  1168.  
  1169. 058500     MOVE TYPE-DIVIDE TO CELL-TYPE.                                05850000
  1170.  
  1171. 058600     GO TO COMPILE-ARITHMETIC.                                     05860000
  1172.  
  1173. 058700                                                                   05870000
  1174.  
  1175. 058800 COMPILE-GO.                                                       05880000
  1176.  
  1177. 058900     MOVE TYPE-GO TO CELL-TYPE.                                    05890000
  1178.  
  1179. 059000     PERFORM READAWORD.                                            05900000
  1180.  
  1181. 059100     IF WORD-2-CHAR = "TO" PERFORM READAWORD.                      05910000
  1182.  
  1183. 059200     MOVE WORD-16-CHAR TO CELL-LABEL.                              05920000
  1184.  
  1185. 059300     PERFORM STORE-CELL.                                           05930000
  1186.  
  1187. 059400     GO TO NEXT-WORD.                                              05940000
  1188.  
  1189. 059500                                                                   05950000
  1190.  
  1191. 059600 COMPILE-ELSE.                                                     05960000
  1192.  
  1193. 059700     MOVE TYPE-GO TO CELL-TYPE.                                    05970000
  1194.  
  1195. 059800     ADD CELL-POINT 1 GIVING POYNT.                                05980000
  1196.  
  1197. 059900     PERFORM SET-EXIT.                                             05990000
  1198.  
  1199. 060000     PERFORM REQUEST-EXIT.                                         06000000
  1200.  
  1201. 060100     PERFORM STORE-CELL.                                           06010000
  1202.  
  1203. 060200     GO TO NEXT-WORD.                                              06020000
  1204.  
  1205. 060300                                                                   06030000
  1206.  
  1207. 060400 COMPILE-IF.                                                       06040000
  1208.  
  1209. 060500     IF NEED-EXIT-POINT NOT ZERO                                   06050000
  1210.  
  1211. 060600         GO TO PRINT-ERROR.                                        06060000
  1212.  
  1213. 060700     MOVE ZERO TO AND-FLAG OR-FLAG.                                06070000
  1214.  
  1215. 060800                                                                   06080000
  1216.  
  1217. 060900 CI-CONDITION.                                                     06090000
  1218.  
  1219. 061000     MOVE ZERO TO NOT-FLAG.                                        06100000
  1220.  
  1221. 061100     PERFORM READAWORD.                                            06110000
  1222.  
  1223. 061200     MOVE 1 TO LOC-FLAG.                                           06120000
  1224.  
  1225. 061300     PERFORM CONVERT-LOCATION.                                     06130000
  1226.  
  1227. 061400     IF LOC-FLAG = 2 AND CELL-LOC1 NOT ZERO                        06140000
  1228.  
  1229. 061500         MOVE CELL-LOC1 TO LOC-POINT                               06150000
  1230.  
  1231. 061600         MOVE CELL-NUM TO LOC-LENGTH                               06160000
  1232.  
  1233. 061700         GO TO CI-RELATION.                                        06170000
  1234.  
  1235. 061800     IF LOC-FLAG = 2                                               06180000
  1236.  
  1237. 061900         GO TO PRINT-ERROR.                                        06190000
  1238.  
  1239. 062000     PERFORM READAWORD.                                            06200000
  1240.  
  1241. 062100                                                                   06210000
  1242.  
  1243. 062200 CI-RELATION.                                                      06220000
  1244.  
  1245. 062300     IF QUOTE-FLAG NOT ZERO                                        06230000
  1246.  
  1247. 062400         GO TO CI-NOT-RELATION.                                    06240000
  1248.  
  1249. 062500     IF WORD-2-CHAR = "IS" PERFORM READAWORD.                      06250000
  1250.  
  1251. 062600     IF WORD-2-CHAR = "NO"                                         06260000
  1252.  
  1253. 062700         MOVE 1 TO NOT-FLAG                                        06270000
  1254.  
  1255. 062800         PERFORM READAWORD.                                        06280000
  1256.  
  1257. 062900     IF WORD-CHAR (1) = "=" OR "E"                                 06290000
  1258.  
  1259. 063000         MOVE TYPE-IF-EQUAL-CHARS TO CELL-TYPE                     06300000
  1260.  
  1261. 063100         GO TO CI-1.                                               06310000
  1262.  
  1263. 063200     IF WORD-2-CHAR = "GO"                                         06320000
  1264.  
  1265. 063300         GO TO CI-NOT-RELATION.                                    06330000
  1266.  
  1267. 063400     IF WORD-CHAR (1) = ">" OR "G"                                 06340000
  1268.  
  1269. 063500         MOVE TYPE-IF-GREAT-CHARS TO CELL-TYPE                     06350000
  1270.  
  1271. 063600         GO TO CI-1.                                               06360000
  1272.  
  1273. 063700     IF WORD-CHAR (1) = "<" OR "L"                                 06370000
  1274.  
  1275. 063800         MOVE TYPE-IF-LESS-CHARS TO CELL-TYPE                      06380000
  1276.  
  1277. 063900         GO TO CI-1.                                               06390000
  1278.  
  1279. 064000                                                                   06400000
  1280.  
  1281. 064100 CI-NOT-RELATION.                                                  06410000
  1282.  
  1283. 064200     IF CELL-TYPE = ZERO                                           06420000
  1284.  
  1285. 064300         GO TO PRINT-ERROR.                                        06430000
  1286.  
  1287. 064400     MOVE OR-FLAG TO NOT-FLAG.                                     06440000
  1288.  
  1289. 064500     GO TO CI-2.                                                   06450000
  1290.  
  1291. 064600                                                                   06460000
  1292.  
  1293. 064700 CI-1.                                                             06470000
  1294.  
  1295. 064800     MOVE LOC-POINT TO CELL-LOC1.                                  06480000
  1296.  
  1297. 064900     MOVE LOC-LENGTH TO CELL-NUM.                                  06490000
  1298.  
  1299. 065000     PERFORM READAWORD.                                            06500000
  1300.  
  1301. 065100     IF WORD-CHAR (1) = "T" AND QUOTE-FLAG ZERO                    06510000
  1302.  
  1303. 065200         PERFORM READAWORD.                                        06520000
  1304.  
  1305. 065300     PERFORM CONVERT-LOCATION.                                     06530000
  1306.  
  1307. 065400     PERFORM READAWORD.                                            06540000
  1308.  
  1309. 065500                                                                   06550000
  1310.  
  1311. 065600 CI-2.                                                             06560000
  1312.  
  1313. 065700     MOVE LOC-POINT TO CELL-LOC2                                   06570000
  1314.  
  1315. 065800     IF LOC-QUOTE-FLAG NOT ZERO                                    06580000
  1316.  
  1317. 065900         MOVE LOC-LENGTH TO CELL-NUM.                              06590000
  1318.  
  1319. 066000     IF WORD-2-CHAR = "OR" GO TO CI-OR.                            06600000
  1320.  
  1321. 066100     IF WORD-2-CHAR = "AN" GO TO CI-AND.                           06610000
  1322.  
  1323. 066200     GO TO CI-ACTION.                                              06620000
  1324.  
  1325. 066300                                                                   06630000
  1326.  
  1327. 066400 CI-OR.                                                            06640000
  1328.  
  1329. 066500     IF AND-FLAG NOT ZERO GO TO PRINT-ERROR.                       06650000
  1330.  
  1331. 066600     MOVE 1 TO OR-FLAG.                                            06660000
  1332.  
  1333. 066700     IF NOT-FLAG = ZERO                                            06670000
  1334.  
  1335. 066800         MOVE 1 TO NOT-FLAG                                        06680000
  1336.  
  1337. 066900     ELSE                                                          06690000
  1338.  
  1339. 067000         MOVE ZERO TO NOT-FLAG.                                    06700000
  1340.  
  1341. 067100     GO TO CI-STORE.                                               06710000
  1342.  
  1343. 067200                                                                   06720000
  1344.  
  1345. 067300 CI-AND.                                                           06730000
  1346.  
  1347. 067400     IF OR-FLAG NOT ZERO                                           06740000
  1348.  
  1349. 067500         GO TO PRINT-ERROR.                                        06750000
  1350.  
  1351. 067600     MOVE 1 TO AND-FLAG.                                           06760000
  1352.  
  1353. 067700                                                                   06770000
  1354.  
  1355. 067800 CI-STORE.                                                         06780000
  1356.  
  1357. 067900     ADD NOT-FLAG TO CELL-TYPE.                                    06790000
  1358.  
  1359. 068000     PERFORM REQUEST-EXIT.                                         06800000
  1360.  
  1361. 068100     PERFORM STORE-CELL.                                           06810000
  1362.  
  1363. 068200     GO TO CI-CONDITION.                                           06820000
  1364.  
  1365. 068300                                                                   06830000
  1366.  
  1367. 068400 CI-ACTION.                                                        06840000
  1368.  
  1369. 068500     IF OR-FLAG ZERO                                               06850000
  1370.  
  1371. 068600         GO TO CI-3.                                               06860000
  1372.  
  1373. 068700     IF NOT-FLAG ZERO                                              06870000
  1374.  
  1375. 068800         MOVE 1 TO NOT-FLAG                                        06880000
  1376.  
  1377. 068900     ELSE                                                          06890000
  1378.  
  1379. 069000         MOVE ZERO TO NOT-FLAG.                                    06900000
  1380.  
  1381. 069100                                                                   06910000
  1382.  
  1383. 069200 CI-3.                                                             06920000
  1384.  
  1385. 069300     ADD NOT-FLAG TO CELL-TYPE.                                    06930000
  1386.  
  1387. 069400     PERFORM REQUEST-EXIT.                                         06940000
  1388.  
  1389. 069500     PERFORM STORE-CELL.                                           06950000
  1390.  
  1391. 069600     IF OR-FLAG NOT ZERO                                           06960000
  1392.  
  1393. 069700         ADD 1 CELL-POINT GIVING POYNT                             06970000
  1394.  
  1395. 069800         PERFORM SET-EXIT                                          06980000
  1396.  
  1397. 069900         MOVE ZERO TO CELL                                         06990000
  1398.  
  1399. 070000         MOVE TYPE-GO TO CELL-TYPE                                 07000000
  1400.  
  1401. 070100         PERFORM REQUEST-EXIT                                      07010000
  1402.  
  1403. 070200         PERFORM STORE-CELL.                                       07020000
  1404.  
  1405. 070300     GO TO CHECK-WORD.                                             07030000
  1406.  
  1407. 070400                                                                   07040000
  1408.  
  1409. 070500 COMPILE-IN.                                                       07050000
  1410.  
  1411. 070600     MOVE OPEN-INPUT TO WORK-MODE.                                 07060000
  1412.  
  1413. 070700                                                                   07070000
  1414.  
  1415. 070800 COMPILE-FILE.                                                     07080000
  1416.  
  1417. 070900     MOVE "MT" TO WORK-MEDIUM.                                     07090000
  1418.  
  1419. 071000     MOVE "UT06-OUTPUT " TO WORK-NAME.                             07100000
  1420.  
  1421. 071100     MOVE ZERO TO WORK-GEN.                                        07110000
  1422.  
  1423. 071200     MOVE 2048 TO WORK-BLOCK.                                      07120000
  1424.  
  1425. 071300                                                                   07130000
  1426.  
  1427. 071400 CF-READ-WORD.                                                     07140000
  1428.  
  1429. 071500     PERFORM READAWORD.                                            07150000
  1430.  
  1431. 071600                                                                   07160000
  1432.  
  1433. 071700 CF-TEST-WORD.                                                     07170000
  1434.  
  1435. 071800     IF QUOTE-FLAG NOT ZERO                                        07180000
  1436.  
  1437. 071900         MOVE WORD-AREA TO WORK-NAME                               07190000
  1438.  
  1439. 072000         GO TO CF-READ-WORD.                                       07200000
  1440.  
  1441. 072100     IF WORD-2-CHAR = "MT" OR "DA" OR "ED"                         07210000
  1442.  
  1443. 072200         MOVE WORD-2-CHAR TO WORK-MEDIUM                           07220000
  1444.  
  1445. 072300         PERFORM CONVERT-WORD-TO-BINARY                            07230000
  1446.  
  1447. 072400         MOVE NUMBER TO WORK-FILE-NO                               07240000
  1448.  
  1449. 072500         GO TO CF-READ-WORD.                                       07250000
  1450.  
  1451. 072600     IF WORD-2-CHAR = "GE"                                         07260000
  1452.  
  1453. 072700         PERFORM READAWORD                                         07270000
  1454.  
  1455. 072800         PERFORM CONVERT-WORD-TO-BINARY                            07280000
  1456.  
  1457. 072900         MOVE NUMBER TO WORK-GEN                                   07290000
  1458.  
  1459. 073000         GO TO CF-READ-WORD.                                       07300000
  1460.  
  1461. 073100     IF WORD-2-CHAR = "BL"                                         07310000
  1462.  
  1463. 073200         PERFORM READAWORD                                         07320000
  1464.  
  1465. 073300         PERFORM CONVERT-WORD-TO-BINARY                            07330000
  1466.  
  1467. 073400         MOVE NUMBER TO WORK-BLOCK                                 07340000
  1468.  
  1469. 073500         GO TO CF-READ-WORD.                                       07350000
  1470.  
  1471. 073600     IF WORD-2-CHAR = "MT"                                         07360000
  1472.  
  1473. 073700         GO TO CF-MT.                                              07370000
  1474.  
  1475. 073800     IF WORK-MODE = OPEN-INPUT                                     07380000
  1476.  
  1477. 073900         MOVE INPUT-DA TO WORK-TYPE                                07390000
  1478.  
  1479. 074000     ELSE                                                          07400000
  1480.  
  1481. 074100         MOVE OUTPUT-DA TO WORK-TYPE.                              07410000
  1482.  
  1483. 074200     GO TO CF-END.                                                 07420000
  1484.  
  1485. 074300                                                                   07430000
  1486.  
  1487. 074400 CF-MT.                                                            07440000
  1488.  
  1489. 074500     IF WORK-MODE = OPEN-INPUT                                     07450000
  1490.  
  1491. 074600         MOVE INPUT-MT TO WORK-TYPE                                07460000
  1492.  
  1493. 074700         GO TO CF-END.                                             07470000
  1494.  
  1495. 074800     IF WORK-BLOCK > 512                                           07480000
  1496.  
  1497. 074900         MOVE 2048 TO WORK-BLOCK                                   07490000
  1498.  
  1499. 075000         MOVE OUTPUT-MT-2048 TO WORK-TYPE                          07500000
  1500.  
  1501. 075100         GO TO CF-END.                                             07510000
  1502.  
  1503. 075200     IF WORK-BLOCK > 124                                           07520000
  1504.  
  1505. 075300         MOVE 512 TO WORK-BLOCK                                    07530000
  1506.  
  1507. 075400         MOVE OUTPUT-MT-512 TO WORK-TYPE                           07540000
  1508.  
  1509. 075500         GO TO CF-END.                                             07550000
  1510.  
  1511. 075600     IF WORK-BLOCK > 64                                            07560000
  1512.  
  1513. 075700         MOVE 128 TO WORK-BLOCK                                    07570000
  1514.  
  1515. 075800         MOVE OUTPUT-MT-128 TO WORK-TYPE                           07580000
  1516.  
  1517. 075900         GO TO CF-END.                                             07590000
  1518.  
  1519. 076000     MOVE 64 TO WORK-BLOCK.                                        07600000
  1520.  
  1521. 076100     MOVE OUTPUT-MT-64 TO WORK-TYPE.                               07610000
  1522.  
  1523. 076200                                                                   07620000
  1524.  
  1525. 076300 CF-END.                                                           07630000
  1526.  
  1527. 076400     ADD 1 TO FILE-POINT.                                          07640000
  1528.  
  1529. 076500     IF FILE-POINT > FILE-TABLE-SIZE                               07650000
  1530.  
  1531. 076600         STOP "ABANDON, TOO MANY FILES".                           07660000
  1532.  
  1533. 076700     MOVE WORK-FILE-DATA TO FILE-DATA (FILE-POINT).                07670000
  1534.  
  1535. 076800     GO TO CHECK-WORD.                                             07680000
  1536.  
  1537. 076900                                                                   07690000
  1538.  
  1539. 077000 COMPILE-MOVE.                                                     07700000
  1540.  
  1541. 077100     PERFORM READAWORD.                                            07710000
  1542.  
  1543. 077200     PERFORM CONVERT-LOCATION.                                     07720000
  1544.  
  1545. 077300     MOVE LOC-POINT TO CELL-LOC1.                                  07730000
  1546.  
  1547. 077400     MOVE LOC-LENGTH TO CELL-NUM.                                  07740000
  1548.  
  1549. 077500     PERFORM READAWORD.                                            07750000
  1550.  
  1551. 077600     IF WORD-2-CHAR = "TO" PERFORM READAWORD.                      07760000
  1552.  
  1553. 077700     PERFORM CONVERT-LOCATION.                                     07770000
  1554.  
  1555. 077800     MOVE LOC-POINT TO CELL-LOC2.                                  07780000
  1556.  
  1557. 077900     MOVE LOC-LENGTH TO CELL-EXIT.                                 07790000
  1558.  
  1559. 078000     IF CELL-NUM > 0 AND LOC-LENGTH > 0                            07800000
  1560.  
  1561. 078100         MOVE TYPE-MOVE-CHARS TO CELL-TYPE                         07810000
  1562.  
  1563. 078200         GO TO COMPILE-MOVE-END.                                   07820000
  1564.  
  1565. 078300     IF CELL-NUM = -4 AND LOC-LENGTH > 0 AND LOC-LENGTH < 7        07830000
  1566.  
  1567. 078400         MOVE TYPE-MOVE-1B-D TO CELL-TYPE                          07840000
  1568.  
  1569. 078500         GO TO COMPILE-MOVE-END.                                   07850000
  1570.  
  1571. 078600     IF CELL-NUM > 0 AND CELL-NUM < 7 AND LOC-LENGTH = -4          07860000
  1572.  
  1573. 078700         MOVE TYPE-MOVE-D-1B TO CELL-TYPE                          07870000
  1574.  
  1575. 078800         GO TO COMPILE-MOVE-END.                                   07880000
  1576.  
  1577. 078900     IF CELL-NUM = -4 AND LOC-LENGTH = -4                          07890000
  1578.  
  1579. 079000         MOVE TYPE-MOVE-CHARS TO CELL-TYPE                         07900000
  1580.  
  1581. 079100         MOVE 4 TO CELL-NUM.                                       07910000
  1582.  
  1583. 079200     PERFORM PRINT-ERROR.                                          07920000
  1584.  
  1585. 079300     GO TO NEXT-WORD.                                              07930000
  1586.  
  1587. 079400                                                                   07940000
  1588.  
  1589. 079500 COMPILE-MOVE-END.                                                 07950000
  1590.  
  1591. 079600     PERFORM STORE-CELL.                                           07960000
  1592.  
  1593. 079700     GO TO NEXT-WORD.                                              07970000
  1594.  
  1595. 079800                                                                   07980000
  1596.  
  1597. 079900 COMPILE-MULTIPLY.                                                 07990000
  1598.  
  1599. 080000     MOVE TYPE-MULTIPLY TO CELL-TYPE.                              08000000
  1600.  
  1601. 080100     GO TO COMPILE-ARITHMETIC.                                     08010000
  1602.  
  1603. 080200                                                                   08020000
  1604.  
  1605. 080300 COMPILE-OUT.                                                      08030000
  1606.  
  1607. 080400     MOVE OPEN-OUTPUT TO WORK-MODE.                                08040000
  1608.  
  1609. 080500     MOVE 1 TO OUT-MT-FLAG.                                        08050000
  1610.  
  1611. 080600     GO TO COMPILE-FILE.                                           08060000
  1612.  
  1613. 080700                                                                   08070000
  1614.  
  1615. 080800 COMPILE-PERFORM.                                                  08080000
  1616.  
  1617. 080900     MOVE TYPE-PERFORM TO CELL-TYPE.                               08090000
  1618.  
  1619. 081000     PERFORM READAWORD.                                            08100000
  1620.  
  1621. 081100     MOVE WORD-16-CHAR TO CELL-LABEL.                              08110000
  1622.  
  1623. 081200     PERFORM STORE-CELL.                                           08120000
  1624.  
  1625. 081300     GO TO NEXT-WORD.                                              08130000
  1626.  
  1627. 081400                                                                   08140000
  1628.  
  1629. 081500 COMPILE-PRINT.                                                    08150000
  1630.  
  1631. 081600     MOVE TYPE-PRINT TO CELL-TYPE.                                 08160000
  1632.  
  1633. 081700     PERFORM STORE-CELL.                                           08170000
  1634.  
  1635. 081800     GO TO NEXT-WORD.                                              08180000
  1636.  
  1637. 081900                                                                   08190000
  1638.  
  1639. 082000 COMPILE-READ.                                                     08200000
  1640.  
  1641. 082100     MOVE TYPE-READ TO CELL-TYPE.                                  08210000
  1642.  
  1643. 082200     ADD 2 TO CELL-POINT.                                          08220000
  1644.  
  1645. 082300     PERFORM READAWORD.                                            08230000
  1646.  
  1647. 082400     IF WORD-16-CHAR = "CARD"                                      08240000
  1648.  
  1649. 082500         MOVE 1 TO CELL-LOC2                                       08250000
  1650.  
  1651. 082600         PERFORM READAWORD.                                        08260000
  1652.  
  1653. 082700     IF WORD-CHAR (1) = "F"                                        08270000
  1654.  
  1655. 082800         PERFORM CONVERT-WORD-TO-BINARY                            08280000
  1656.  
  1657. 082900         MOVE NUMBER TO CELL-LOC1                                  08290000
  1658.  
  1659. 083000         PERFORM READAWORD.                                        08300000
  1660.  
  1661. 083100     IF WORD-2-CHAR = "AT" PERFORM READAWORD.                      08310000
  1662.  
  1663. 083200     SUBTRACT 2 FROM CELL-POINT.                                   08320000
  1664.  
  1665. 083300     IF WORD-2-CHAR = "EN"                                         08330000
  1666.  
  1667. 083400         PERFORM REQUEST-EXIT                                      08340000
  1668.  
  1669. 083500         PERFORM STORE-CELL                                        08350000
  1670.  
  1671. 083600         GO TO NEXT-WORD.                                          08360000
  1672.  
  1673. 083700     ADD 2 CELL-POINT GIVING CELL-EXIT.                            08370000
  1674.  
  1675. 083800     PERFORM STORE-CELL.                                           08380000
  1676.  
  1677. 083900     MOVE ZERO TO CELL.                                            08390000
  1678.  
  1679. 084000     MOVE TYPE-STOP TO CELL-TYPE.                                  08400000
  1680.  
  1681. 084100     PERFORM STORE-CELL.                                           08410000
  1682.  
  1683. 084200     GO TO CHECK-WORD.                                             08420000
  1684.  
  1685. 084300                                                                   08430000
  1686.  
  1687. 084400 COMPILE-STOP.                                                     08440000
  1688.  
  1689. 084500     MOVE TYPE-STOP TO CELL-TYPE.                                  08450000
  1690.  
  1691. 084600     PERFORM STORE-CELL.                                           08460000
  1692.  
  1693. 084700     GO TO NEXT-WORD.                                              08470000
  1694.  
  1695. 084800                                                                   08480000
  1696.  
  1697. 084900 COMPILE-SUBTRACT.                                                 08490000
  1698.  
  1699. 085000     MOVE TYPE-SUBTRACT TO CELL-TYPE.                              08500000
  1700.  
  1701. 085100     GO TO COMPILE-ARITHMETIC.                                     08510000
  1702.  
  1703. 085200                                                                   08520000
  1704.  
  1705. 085300 COMPILE-WRITE.                                                    08530000
  1706.  
  1707. 085400     MOVE 1 TO OUT-MT-FLAG.                                        08540000
  1708.  
  1709. 085500     MOVE TYPE-WRITE TO CELL-TYPE.                                 08550000
  1710.  
  1711. 085600     ADD 1 TO CELL-POINT.                                          08560000
  1712.  
  1713. 085700     PERFORM READAWORD.                                            08570000
  1714.  
  1715. 085800     IF WORD-CHAR (1) = "F"                                        08580000
  1716.  
  1717. 085900         PERFORM CONVERT-WORD-TO-BINARY                            08590000
  1718.  
  1719. 086000         MOVE NUMBER TO CELL-LOC1                                  08600000
  1720.  
  1721. 086100         PERFORM READAWORD.                                        08610000
  1722.  
  1723. 086200     SUBTRACT 1 FROM CELL-POINT.                                   08620000
  1724.  
  1725. 086300     PERFORM STORE-CELL.                                           08630000
  1726.  
  1727. 086400     GO TO CHECK-WORD.                                             08640000
  1728.  
  1729. 086500                                                                   08650000
  1730.  
  1731. 086600 READAWORD SECTION.                                                08660000
  1732.  
  1733. 086700                                                                   08670000
  1734.  
  1735. 086800 READ-WORD.                                                        08680000
  1736.  
  1737. 086900     IF FULL-STOP-FLAG NOT ZERO                                    08690000
  1738.  
  1739. 087000     AND NEED-EXIT-POINT NOT ZERO                                  08700000
  1740.  
  1741. 087100         MOVE CELL-POINT TO POYNT                                  08710000
  1742.  
  1743. 087200         PERFORM SET-EXIT.                                         08720000
  1744.  
  1745. 087300     MOVE ZERO TO FULL-STOP-FLAG.                                  08730000
  1746.  
  1747. 087400     MOVE ZERO TO WORD-CHAR-POINT QUOTE-FLAG.                      08740000
  1748.  
  1749. 087500     MOVE SPACES TO WORD-AREA.                                     08750000
  1750.  
  1751. 087600                                                                   08760000
  1752.  
  1753. 087700 RW-1.                                                             08770000
  1754.  
  1755. 087800     IF END-CARDS-FLAG ZERO                                        08780000
  1756.  
  1757. 087900         PERFORM READ-CHAR.                                        08790000
  1758.  
  1759. 088000     IF END-CARDS-FLAG NOT ZERO                                    08800000
  1760.  
  1761. 088100         MOVE 1 TO END-WORDS-FLAG FIRST-CHAR-POINT                 08810000
  1762.  
  1763. 088200         GO TO RW-EXIT.                                            08820000
  1764.  
  1765. 088300     IF QUOTE-FLAG = 1                                             08830000
  1766.  
  1767. 088400         GO TO RW-2.                                               08840000
  1768.  
  1769. 088500     IF END-CHAR-FLAG = 1                                          08850000
  1770.  
  1771. 088600         GO TO RW-1.                                               08860000
  1772.  
  1773. 088700     MOVE CARD-CHAR-POINT TO FIRST-CHAR-POINT.                     08870000
  1774.  
  1775. 088800     IF WORK-CHAR = QUOTE                                          08880000
  1776.  
  1777. 088900         MOVE 1 TO QUOTE-FLAG                                      08890000
  1778.  
  1779. 089000         GO TO RW-1.                                               08900000
  1780.  
  1781. 089100                                                                   08910000
  1782.  
  1783. 089200 RW-2.                                                             08920000
  1784.  
  1785. 089300     IF WORD-CHAR-POINT > 79                                       08930000
  1786.  
  1787. 089400         PERFORM PRINT-ERROR                                       08940000
  1788.  
  1789. 089500         GO TO RW-3.                                               08950000
  1790.  
  1791. 089600     ADD 1 TO WORD-CHAR-POINT.                                     08960000
  1792.  
  1793. 089700     MOVE WORK-CHAR TO WORD-CHAR (WORD-CHAR-POINT).                08970000
  1794.  
  1795. 089800     IF CARD-CHAR-POINT = 80                                       08980000
  1796.  
  1797. 089900         GO TO RW-EXIT.                                            08990000
  1798.  
  1799. 090000                                                                   09000000
  1800.  
  1801. 090100 RW-3.                                                             09010000
  1802.  
  1803. 090200     PERFORM READ-CHAR.                                            09020000
  1804.  
  1805. 090300     IF END-CARDS-FLAG = 1                                         09030000
  1806.  
  1807. 090400         GO TO RW-EXIT.                                            09040000
  1808.  
  1809. 090500     IF QUOTE-FLAG = ZERO AND END-CHAR-FLAG = 1                    09050000
  1810.  
  1811. 090600         GO TO RW-EXIT.                                            09060000
  1812.  
  1813. 090700     IF WORK-CHAR NOT = QUOTE                                      09070000
  1814.  
  1815. 090800         GO TO RW-2.                                               09080000
  1816.  
  1817. 090900                                                                   09090000
  1818.  
  1819. 091000 RW-EXIT.                                                          09100000
  1820.  
  1821. 091100     IF WORD-CHAR (WORD-CHAR-POINT) = "." AND QUOTE-FLAG ZERO      09110000
  1822.  
  1823. 091200         MOVE 1 TO FULL-STOP-FLAG                                  09120000
  1824.  
  1825. 091300         MOVE SPACE TO WORD-CHAR (WORD-CHAR-POINT)                 09130000
  1826.  
  1827. 091400         SUBTRACT 1 FROM WORD-CHAR-POINT.                          09140000
  1828.  
  1829. 091500     IF WORD-CHAR-POINT < 1 AND END-WORDS-FLAG ZERO                09150000
  1830.  
  1831. 091600         GO TO READ-WORD.                                          09160000
  1832.  
  1833. 091700                                                                   09170000
  1834.  
  1835. 091800 SUBROUTINES SECTION.                                              09180000
  1836.  
  1837. 091900                                                                   09190000
  1838.  
  1839. 092000 READ-CHAR.                                                        09200000
  1840.  
  1841. 092100     ADD 1 TO CARD-CHAR-POINT.                                     09210000
  1842.  
  1843. 092200     IF CARD-CHAR-POINT > 80                                       09220000
  1844.  
  1845. 092300         PERFORM READ-CARD                                         09230000
  1846.  
  1847. 092400         MOVE 1 TO CARD-CHAR-POINT.                                09240000
  1848.  
  1849. 092500     MOVE CARD-CHAR (CARD-CHAR-POINT) TO WORK-CHAR.                09250000
  1850.  
  1851. 092600     IF WORK-CHAR = SPACE OR ","                                   09260000
  1852.  
  1853. 092700         MOVE 1 TO END-CHAR-FLAG                                   09270000
  1854.  
  1855. 092800     ELSE                                                          09280000
  1856.  
  1857. 092900         MOVE ZERO TO END-CHAR-FLAG.                               09290000
  1858.  
  1859. 093000                                                                   09300000
  1860.  
  1861. 093100 READ-CARD.                                                        09310000
  1862.  
  1863. 093200     IF LIST-CARD NOT = SPACES                                     09320000
  1864.  
  1865. 093300         PERFORM PRINT.                                            09330000
  1866.  
  1867. 093400     READ CARD-FILE                                                09340000
  1868.  
  1869. 093500         AT END                                                    09350000
  1870.  
  1871. 093600             MOVE 1 TO END-CARDS-FLAG                              09360000
  1872.  
  1873. 093700             MOVE "****" TO CARD-RECORD.                           09370000
  1874.  
  1875. 093800     MOVE CARD-RECORD TO LIST-CARD.                                09380000
  1876.  
  1877. 093900     PERFORM PRINT.                                                09390000
  1878.  
  1879. 094000                                                                   09400000
  1880.  
  1881. 094100 REQUEST-EXIT.                                                     09410000
  1882.  
  1883. 094200     IF NEED-EXIT-POINT ZERO                                       09420000
  1884.  
  1885. 094300         MOVE CELL-POINT TO NEED-EXIT-POINT.                       09430000
  1886.  
  1887. 094400     MOVE -200 TO CELL-EXIT.                                       09440000
  1888.  
  1889. 094500                                                                   09450000
  1890.  
  1891. 094600 SET-EXIT.                                                         09460000
  1892.  
  1893. 094700     IF CELL-STORE-EXIT (NEED-EXIT-POINT) = -200                   09470000
  1894.  
  1895. 094800         MOVE POYNT TO CELL-STORE-EXIT (NEED-EXIT-POINT).          09480000
  1896.  
  1897. 094900     ADD 1 TO NEED-EXIT-POINT.                                     09490000
  1898.  
  1899. 095000     IF NEED-EXIT-POINT < CELL-POINT                               09500000
  1900.  
  1901. 095100         GO TO SET-EXIT.                                           09510000
  1902.  
  1903. 095200     MOVE ZERO TO NEED-EXIT-POINT.                                 09520000
  1904.  
  1905. 095300                                                                   09530000
  1906.  
  1907. 095400 CREATE-RETURN-CELL.                                               09540000
  1908.  
  1909. 095500     IF LABEL-FLAG NOT ZERO                                        09550000
  1910.  
  1911. 095600          MOVE TYPE-EXIT TO CELL-TYPE                              09560000
  1912.  
  1913. 095700          PERFORM STORE-CELL.                                      09570000
  1914.  
  1915. 095800                                                                   09580000
  1916.  
  1917. 095900 STORE-CELL.                                                       09590000
  1918.  
  1919. 096000     MOVE CELL TO CELL-STORE (CELL-POINT).                         09600000
  1920.  
  1921. 096100     ADD 1 TO CELL-POINT.                                          09610000
  1922.  
  1923. 096200     IF CELL-POINT > NO-OF-CELLS                                   09620000
  1924.  
  1925. 096300         STOP "ABANDON, TOO MANY INSTRUCTIONS".                    09630000
  1926.  
  1927. 096400                                                                   09640000
  1928.  
  1929. 096500 PRINT-ERROR.                                                      09650000
  1930.  
  1931. 096600     MOVE 1 TO ERROR-FLAG.                                         09660000
  1932.  
  1933. 096700     MOVE "+" TO LIST-CHAR (FIRST-CHAR-POINT).                     09670000
  1934.  
  1935. 096800     MOVE "ERROR; WORD IGNORED" TO LIST-COMMENT.                   09680000
  1936.  
  1937. 096900                                                                   09690000
  1938.  
  1939. 097000 PRINT-ERROR-EXIT.                                                 09700000
  1940.  
  1941. 097100     GO TO NEXT-WORD.                                              09710000
  1942.  
  1943. 097200                                                                   09720000
  1944.  
  1945. 097300 PRINT.                                                            09730000
  1946.  
  1947. 097400     MOVE PRINT-LINE TO PRINT-AREA.                                09740000
  1948.  
  1949. 097500     CALL A510 USING A510-AREA.                                    09750000
  1950.  
  1951. 097600     MOVE "SP 1" TO A510-CONTROL.                                  09760000
  1952.  
  1953. 097700     MOVE SPACES TO PRINT-LINE.                                    09770000
  1954.  
  1955. 097800                                                                   09780000
  1956.  
  1957. 097900 CONVERT-LOCATION SECTION.                                         09790000
  1958.  
  1959. 098000                                                                   09800000
  1960.  
  1961. 098100 READ-LOCATION.                                                    09810000
  1962.  
  1963. 098200     MOVE ZERO TO CHAR-AREA-FLAG.                                  09820000
  1964.  
  1965. 098300     IF LOC-FLAG = 2                                               09830000
  1966.  
  1967. 098400         MOVE ZERO TO LOC-FLAG.                                    09840000
  1968.  
  1969. 098500     MOVE 1 TO LOC-POINT POYNT.                                    09850000
  1970.  
  1971. 098600     MOVE ZERO TO LOC-LENGTH.                                      09860000
  1972.  
  1973. 098700     IF QUOTE-FLAG = 1                                             09870000
  1974.  
  1975. 098800         GO TO STORE-LITERAL.                                      09880000
  1976.  
  1977. 098900     IF WORD-CHAR (1) = "W"                                        09890000
  1978.  
  1979. 099000         ADD WORK-AREA-START TO LOC-POINT                          09900000
  1980.  
  1981. 099100         GO TO IGNORE-ALPHA.                                       09910000
  1982.  
  1983. 099200     IF WORD-CHAR (1) = "R"                                        09920000
  1984.  
  1985. 099300         GO TO IGNORE-ALPHA.                                       09930000
  1986.  
  1987. 099400     IF WORD-CHAR (1) NUMERIC                                      09940000
  1988.  
  1989. 099500         GO TO CREATE-BINARY-LITERAL.                              09950000
  1990.  
  1991. 099600     IF WORD-CHAR (1) = "A"                                        09960000
  1992.  
  1993. 099700         ADD A510-AREA-START TO LOC-POINT                          09970000
  1994.  
  1995. 099800         GO TO IGNORE-ALPHA.                                       09980000
  1996.  
  1997. 099900     MOVE 1 TO CHAR-AREA-FLAG.                                     09990000
  1998.  
  1999. 100000     MOVE ZERO TO LOC-POINT.                                       10000000
  2000.  
  2001. 100100     IF WORD-CHAR (1) = "C"                                        10010000
  2002.  
  2003. 100200         ADD CARD-AREA-START TO LOC-POINT                          10020000
  2004.  
  2005. 100300         GO TO IGNORE-ALPHA.                                       10030000
  2006.  
  2007. 100400     IF WORD-CHAR (1) = "P"                                        10040000
  2008.  
  2009. 100500         ADD PRINT-AREA-START TO LOC-POINT                         10050000
  2010.  
  2011. 100600         GO TO IGNORE-ALPHA.                                       10060000
  2012.  
  2013. 100700     IF WORD-CHAR (1) = "H"                                        10070000
  2014.  
  2015. 100800         ADD H-HEAD-AREA-START TO LOC-POINT                        10080000
  2016.  
  2017. 100900         GO TO IGNORE-ALPHA.                                       10090000
  2018.  
  2019. 101000     IF WORD-CHAR (1) = "I"                                        10100000
  2020.  
  2021. 101100         ADD I-HEAD-AREA-START TO LOC-POINT                        10110000
  2022.  
  2023. 101200         GO TO IGNORE-ALPHA.                                       10120000
  2024.  
  2025. 101300     IF WORD-CHAR (1) = "J"                                        10130000
  2026.  
  2027. 101400         ADD J-HEAD-AREA-START TO LOC-POINT                        10140000
  2028.  
  2029. 101500         GO TO IGNORE-ALPHA.                                       10150000
  2030.  
  2031. 101600                                                                   10160000
  2032.  
  2033. 101700 NOT-A-LOCATION.                                                   10170000
  2034.  
  2035. 101800     IF LOC-FLAG = 1                                               10180000
  2036.  
  2037. 101900         MOVE 2 TO LOC-FLAG                                        10190000
  2038.  
  2039. 102000         GO TO RL-EXIT.                                            10200000
  2040.  
  2041. 102100     PERFORM PRINT-ERROR.                                          10210000
  2042.  
  2043. 102200     GO TO NEXT-WORD.                                              10220000
  2044.  
  2045. 102300                                                                   10230000
  2046.  
  2047. 102400 IGNORE-ALPHA.                                                     10240000
  2048.  
  2049. 102500     IF POYNT > WORD-CHAR-POINT                                    10250000
  2050.  
  2051. 102600         GO TO RL-EXIT.                                            10260000
  2052.  
  2053. 102700     IF WORD-CHAR (POYNT) ALPHABETIC                               10270000
  2054.  
  2055. 102800     OR WORD-CHAR (POYNT) = "+"                                    10280000
  2056.  
  2057. 102900     OR WORD-CHAR (POYNT) = "-"                                    10290000
  2058.  
  2059. 103000         ADD 1 TO POYNT                                            10300000
  2060.  
  2061. 103100         GO TO IGNORE-ALPHA.                                       10310000
  2062.  
  2063. 103200     IF WORD-CHAR (POYNT) = SPACE                                  10320000
  2064.  
  2065. 103300         GO TO RL-EXIT.                                            10330000
  2066.  
  2067. 103400     IF CHAR-AREA-FLAG = 1                                         10340000
  2068.  
  2069. 103500         PERFORM CONVERT-NUMBER                                    10350000
  2070.  
  2071. 103600         ADD NUMBER TO LOC-POINT.                                  10360000
  2072.  
  2073. 103700     IF WORD-CHAR (POYNT) NUMERIC                                  10370000
  2074.  
  2075. 103800         PERFORM CONVERT-NUMBER                                    10380000
  2076.  
  2077. 103900         MULTIPLY 4 BY NUMBER                                      10390000
  2078.  
  2079. 104000         ADD NUMBER TO LOC-POINT.                                  10400000
  2080.  
  2081. 104100     IF WORD-CHAR (POYNT) = "."                                    10410000
  2082.  
  2083. 104200     AND WORD-CHAR(WORD-CHAR-POINT) NOT = "B"                      10420000
  2084.  
  2085. 104300         ADD 1 TO POYNT                                            10430000
  2086.  
  2087. 104400         PERFORM CONVERT-NUMBER                                    10440000
  2088.  
  2089. 104500         ADD NUMBER TO LOC-POINT.                                  10450000
  2090.  
  2091. 104600     IF WORD-CHAR (POYNT) = "/"                                    10460000
  2092.  
  2093. 104700         ADD 1 TO POYNT                                            10470000
  2094.  
  2095. 104800         PERFORM CONVERT-NUMBER                                    10480000
  2096.  
  2097. 104900         MOVE NUMBER TO LOC-LENGTH.                                10490000
  2098.  
  2099. 105000     IF WORD-CHAR (POYNT) = "B"                                    10500000
  2100.  
  2101. 105100         DIVIDE 4 INTO LOC-POINT                                   10510000
  2102.  
  2103. 105200         ADD 1 TO LOC-POINT                                        10520000
  2104.  
  2105. 105300         GO TO RL-EXIT.                                            10530000
  2106.  
  2107. 105400     IF WORD-CHAR (POYNT) NOT = SPACE                              10540000
  2108.  
  2109. 105500         MOVE 2 TO LOC-FLAG                                        10550000
  2110.  
  2111. 105600         GO TO NOT-A-LOCATION.                                     10560000
  2112.  
  2113. 105700     GO TO RL-EXIT.                                                10570000
  2114.  
  2115. 105800                                                                   10580000
  2116.  
  2117. 105900 CREATE-BINARY-LITERAL.                                            10590000
  2118.  
  2119. 106000* THIS CODE APPEARS TO ALIGN A BINARY LITERAL ON A WORD BOUNDARY   10600000
  2120.  
  2121. 106100     MOVE LITERAL-CHAR-POINT TO WORK-2-BITS.                       10610000
  2122.  
  2123. 106200     IF WORK-2-BITS NOT = 1                                        10620000
  2124.  
  2125. 106300         ADD 1 TO LITERAL-CHAR-POINT                               10630000
  2126.  
  2127. 106400         GO TO CREATE-BINARY-LITERAL.                              10640000
  2128.  
  2129. 106500* AND IS PROBABLY NOT NEEDED                                       10650000
  2130.  
  2131. 106600                                                                   10660000
  2132.  
  2133. 106700     PERFORM CONVERT-WORD-TO-BINARY.                               10670000
  2134.  
  2135. 106800     MOVE NUMBER-X4 TO WORD-AREA.                                  10680000
  2136.  
  2137. 106900     MOVE 4 TO WORD-CHAR-POINT.                                    10690000
  2138.  
  2139. 107000                                                                   10700000
  2140.  
  2141. 107100 STORE-LITERAL.                                                    10710000
  2142.  
  2143. 107200     MOVE ZERO TO LOC-LENGTH.                                      10720000
  2144.  
  2145. 107300     MOVE LITERAL-CHAR-POINT TO LOC-POINT.                         10730000
  2146.  
  2147. 107400     MOVE 1 TO POYNT.                                              10740000
  2148.  
  2149. 107500                                                                   10750000
  2150.  
  2151. 107600 SL-1.                                                             10760000
  2152.  
  2153. 107700     IF LITERAL-CHAR-POINT > LITERAL-AREA-END                      10770000
  2154.  
  2155. 107800         STOP "ABANDON, LITERAL TABLE OVERFLOW".                   10780000
  2156.  
  2157. 107900     IF POYNT > WORD-CHAR-POINT                                    10790000
  2158.  
  2159. 108000         GO TO RL-EXIT.                                            10800000
  2160.  
  2161. 108100     MOVE WORD-CHAR (POYNT) TO CHAR (LITERAL-CHAR-POINT).          10810000
  2162.  
  2163. 108200     ADD 1 TO LITERAL-CHAR-POINT.                                  10820000
  2164.  
  2165. 108300     ADD 1 TO POYNT.                                               10830000
  2166.  
  2167. 108400     ADD 1 TO LOC-LENGTH.                                          10840000
  2168.  
  2169. 108500     GO TO SL-1.                                                   10850000
  2170.  
  2171. 108600                                                                   10860000
  2172.  
  2173. 108700 RL-EXIT.                                                          10870000
  2174.  
  2175. 108800     IF LOC-FLAG = 1                                               10880000
  2176.  
  2177. 108900         MOVE ZERO TO LOC-FLAG.                                    10890000
  2178.  
  2179. 109000     IF LOC-FLAG NOT = 2                                           10900000
  2180.  
  2181. 109100         MOVE QUOTE-FLAG TO LOC-QUOTE-FLAG.                        10910000
  2182.  
  2183. 109200     IF LOC-LENGTH = ZERO                                          10920000
  2184.  
  2185. 109300         MOVE 4 TO LOC-LENGTH.                                     10930000
  2186.  
  2187. 109400     IF WORD-CHAR (WORD-CHAR-POINT) = "B" AND QUOTE-FLAG = ZERO    10940000
  2188.  
  2189. 109500         MULTIPLY -1 BY LOC-LENGTH.                                10950000
  2190.  
  2191. 109600                                                                   10960000
  2192.  
  2193. 109700 NUMERIC-CONVERSION SECTION.                                       10970000
  2194.  
  2195. 109800                                                                   10980000
  2196.  
  2197. 109900 CONVERT-WORD-TO-BINARY.                                           10990000
  2198.  
  2199. 110000     MOVE WORD-AREA TO NUM-FIELD-X.                                11000000
  2200.  
  2201. 110100     MOVE NUM-FIELD TO NUMBER.                                     11010000
  2202.  
  2203. 110200                                                                   11020000
  2204.  
  2205. 110300 LOC-TO-BINARY.                                                    11030000
  2206.  
  2207. 110400     IF LOC-LENGTH NOT = 4                                         11040000
  2208.  
  2209. 110500         GO TO LTB-EXIT.                                           11050000
  2210.  
  2211. 110600     MOVE LOC-POINT TO WORK-2-BITS.                                11060000
  2212.  
  2213. 110700     IF WORK-2-BITS = 1                                            11070000
  2214.  
  2215. 110800         DIVIDE 4 INTO LOC-POINT                                   11080000
  2216.  
  2217. 110900         ADD 1 TO LOC-POINT                                        11090000
  2218.  
  2219. 111000         MOVE -4 TO LOC-LENGTH.                                    11100000
  2220.  
  2221. 111100                                                                   11110000
  2222.  
  2223. 111200 LTB-EXIT.                                                         11120000
  2224.  
  2225. 111300     EXIT.                                                         11130000
  2226.  
  2227. 111400                                                                   11140000
  2228.  
  2229. 111500 CONVERT-NUMBER SECTION.                                           11150000
  2230.  
  2231. 111600                                                                   11160000
  2232.  
  2233. 111700 CONVERT-NUM.                                                      11170000
  2234.  
  2235. 111800     MOVE SPACES TO NUM-FIELD-X.                                   11180000
  2236.  
  2237. 111900     MOVE 1 TO NUM-POINT.                                          11190000
  2238.  
  2239. 112000                                                                   11200000
  2240.  
  2241. 112100 CN-1.                                                             11210000
  2242.  
  2243. 112200     IF WORD-CHAR (POYNT) NOT NUMERIC                              11220000
  2244.  
  2245. 112300         GO TO CN-EXIT.                                            11230000
  2246.  
  2247. 112400     MOVE WORD-CHAR (POYNT) TO NUM-CHAR (NUM-POINT).               11240000
  2248.  
  2249. 112500     ADD 1 TO NUM-POINT.                                           11250000
  2250.  
  2251. 112600     IF NUM-POINT > 6                                              11260000
  2252.  
  2253. 112700         PERFORM PRINT-ERROR                                       11270000
  2254.  
  2255. 112800         GO TO NEXT-WORD.                                          11280000
  2256.  
  2257. 112900     ADD 1 TO POYNT.                                               11290000
  2258.  
  2259. 113000     IF POYNT > 80                                                 11300000
  2260.  
  2261. 113100         PERFORM PRINT-ERROR                                       11310000
  2262.  
  2263. 113200         GO TO NEXT-WORD.                                          11320000
  2264.  
  2265. 113300     GO TO CN-1.                                                   11330000
  2266.  
  2267. 113400                                                                   11340000
  2268.  
  2269. 113500 CN-EXIT.                                                          11350000
  2270.  
  2271. 113600     MOVE NUM-FIELD TO NUMBER.                                     11360000
  2272.  
  2273. 113700                                                                   11370000
  2274.  
  2275. 113800 CHECK-LABELS SECTION.                                             11380000
  2276.  
  2277. 113900                                                                   11390000
  2278.  
  2279. 114000 CL-0.                                                             11400000
  2280.  
  2281. 114100     MOVE ZERO TO CELL-POINT.                                      11410000
  2282.  
  2283. 114200                                                                   11420000
  2284.  
  2285. 114300 CL-1.                                                             11430000
  2286.  
  2287. 114400     ADD 1 TO CELL-POINT.                                          11440000
  2288.  
  2289. 114500     IF CELL-POINT > TOTAL-CELLS                                   11450000
  2290.  
  2291. 114600         MOVE ZERO TO CELL                                         11460000
  2292.  
  2293. 114700         MOVE TYPE-GO TO CELL-TYPE                                 11470000
  2294.  
  2295. 114800         MOVE 1 TO CELL-EXIT                                       11480000
  2296.  
  2297. 114900         MOVE CELL TO CELL-STORE (CELL-POINT)                      11490000
  2298.  
  2299. 115000         ADD 1 TO TOTAL-CELLS                                      11500000
  2300.  
  2301. 115100         GO TO PRINT-CELLS.                                        11510000
  2302.  
  2303. 115200     MOVE CELL-STORE (CELL-POINT) TO CELL.                         11520000
  2304.  
  2305. 115300     IF CELL-TYPE NOT = TYPE-PERFORM AND CELL-TYPE NOT = TYPE-GO   11530000
  2306.  
  2307. 115400         GO TO CL-1.                                               11540000
  2308.  
  2309. 115500     IF CELL-LOC1 ZERO                                             11550000
  2310.  
  2311. 115600         GO TO CL-1.                                               11560000
  2312.  
  2313. 115700     MOVE ZERO TO POYNT.                                           11570000
  2314.  
  2315. 115800                                                                   11580000
  2316.  
  2317. 115900 CL-2.                                                             11590000
  2318.  
  2319. 116000     ADD 1 TO POYNT.                                               11600000
  2320.  
  2321. 116100     IF POYNT > TOTAL-CELLS                                        11610000
  2322.  
  2323. 116200         MOVE "UNDEFINED LABEL" TO LIST-COMMENT                    11620000
  2324.  
  2325. 116300         MOVE CELL-LABEL TO LIST-NAME                              11630000
  2326.  
  2327. 116400         PERFORM PRINT                                             11640000
  2328.  
  2329. 116500         MOVE 1 TO ERROR-FLAG                                      11650000
  2330.  
  2331. 116600         GO TO CL-1.                                               11660000
  2332.  
  2333. 116700     IF CELL-STORE-TYPE (POYNT) NOT = TYPE-LABEL                   11670000
  2334.  
  2335. 116800         GO TO CL-2.                                               11680000
  2336.  
  2337. 116900     IF CELL-STORE-LABEL (POYNT) NOT = CELL-LABEL                  11690000
  2338.  
  2339. 117000         GO TO CL-2.                                               11700000
  2340.  
  2341. 117100     MOVE ZERO TO CELL-LABEL.                                      11710000
  2342.  
  2343. 117200     IF CELL-TYPE = TYPE-GO                                        11720000
  2344.  
  2345. 117300         ADD 1 POYNT GIVING CELL-EXIT                              11730000
  2346.  
  2347. 117400         GO TO CL-4.                                               11740000
  2348.  
  2349. 117500     ADD 1 POYNT GIVING CELL-LOC1.                                 11750000
  2350.  
  2351. 117600                                                                   11760000
  2352.  
  2353. 117700 CL-3.                                                             11770000
  2354.  
  2355. 117800     ADD 1 TO POYNT.                                               11780000
  2356.  
  2357. 117900     IF POYNT > TOTAL-CELLS                                        11790000
  2358.  
  2359. 118000         GO TO POST-MORTEM.                                        11800000
  2360.  
  2361. 118100     IF CELL-STORE-TYPE (POYNT) NOT = TYPE-EXIT                    11810000
  2362.  
  2363. 118200         GO TO CL-3.                                               11820000
  2364.  
  2365. 118300     MOVE POYNT TO CELL-LOC2.                                      11830000
  2366.  
  2367. 118400                                                                   11840000
  2368.  
  2369. 118500 CL-4.                                                             11850000
  2370.  
  2371. 118600     MOVE CELL TO CELL-STORE (CELL-POINT).                         11860000
  2372.  
  2373. 118700     GO TO CL-1.                                                   11870000
  2374.  
  2375. 118800                                                                   11880000
  2376.  
  2377. 118900 PRINT-CELLS SECTION.                                              11890000
  2378.  
  2379. 119000                                                                   11900000
  2380.  
  2381. 119100 PC-0.                                                             11910000
  2382.  
  2383. 119200     PERFORM PRINT 3 TIMES.                                        11920000
  2384.  
  2385. 119300     MOVE "LISTING OF FILE DATA:" TO LIST-CARD.                    11930000
  2386.  
  2387. 119400     PERFORM PRINT 2 TIMES.                                        11940000
  2388.  
  2389. 119500     MOVE "FILE NO.  FILE NAME       GEN     BLOCK   TYPE    MODE" 11950000
  2390.  
  2391. 119600             TO LIST-CARD.                                         11960000
  2392.  
  2393. 119700     PERFORM PRINT 2 TIMES.                                        11970000
  2394.  
  2395. 119800     MOVE ZERO TO POYNT.                                           11980000
  2396.  
  2397. 119900                                                                   11990000
  2398.  
  2399. 120000 PC-FILE.                                                          12000000
  2400.  
  2401. 120100     ADD 1 TO POYNT.                                               12010000
  2402.  
  2403. 120200     IF POYNT > FILE-POINT                                         12020000
  2404.  
  2405. 120300             GO TO PC-CELLS.                                       12030000
  2406.  
  2407. 120400     MOVE FILE-DATA (POYNT) TO WORK-FILE-DATA.                     12040000
  2408.  
  2409. 120500     MOVE WORK-FILE-NO TO LIST-CELL.                               12050000
  2410.  
  2411. 120600     MOVE WORK-NAME TO LIST-LABEL.                                 12060000
  2412.  
  2413. 120700     MOVE WORK-GEN TO LIST-LOC1.                                   12070000
  2414.  
  2415. 120800     MOVE WORK-BLOCK TO LIST-LOC2.                                 12080000
  2416.  
  2417. 120900     MOVE WORK-TYPE TO LIST-NUM.                                   12090000
  2418.  
  2419. 121000     MOVE WORK-MODE TO LIST-EXIT.                                  12100000
  2420.  
  2421. 121100     PERFORM PRINT.                                                12110000
  2422.  
  2423. 121200     GO TO PC-FILE.                                                12120000
  2424.  
  2425. 121300                                                                   12130000
  2426.  
  2427. 121400 PC-CELLS.                                                         12140000
  2428.  
  2429. 121500     PERFORM PRINT 2 TIMES.                                        12150000
  2430.  
  2431. 121600     MOVE "LISTING OF GENERATED INSTRUCTIONS:" TO LIST-CARD.       12160000
  2432.  
  2433. 121700     PERFORM PRINT 2 TIMES.                                        12170000
  2434.  
  2435. 121800     MOVE "ADDRESS   INSTRUCTION     LOC1    LOC2    SIZE    EXIT" 12180000
  2436.  
  2437. 121900             TO LIST-CARD.                                         12190000
  2438.  
  2439. 122000     PERFORM PRINT 2 TIMES.                                        12200000
  2440.  
  2441. 122100     MOVE 1 TO CELL-POINT.                                         12210000
  2442.  
  2443. 122200                                                                   12220000
  2444.  
  2445. 122300 PC-1.                                                             12230000
  2446.  
  2447. 122400     MOVE CELL-STORE (CELL-POINT) TO CELL.                         12240000
  2448.  
  2449. 122500     MOVE CELL-POINT TO LIST-CELL.                                 12250000
  2450.  
  2451. 122600     IF CELL-TYPE = TYPE-LABEL                                     12260000
  2452.  
  2453. 122700         MOVE CELL-LABEL TO LIST-LABEL                             12270000
  2454.  
  2455. 122800         GO TO PC-2.                                               12280000
  2456.  
  2457. 122900     MOVE INSTRUCTION-NAME (CELL-TYPE) TO LIST-TYPE.               12290000
  2458.  
  2459. 123000     MOVE CELL-LOC1 TO LIST-LOC1.                                  12300000
  2460.  
  2461. 123100     MOVE CELL-LOC2 TO LIST-LOC2.                                  12310000
  2462.  
  2463. 123200     MOVE CELL-NUM TO LIST-NUM.                                    12320000
  2464.  
  2465. 123300     MOVE CELL-EXIT TO LIST-EXIT.                                  12330000
  2466.  
  2467. 123400                                                                   12340000
  2468.  
  2469. 123500 PC-2.                                                             12350000
  2470.  
  2471. 123600     PERFORM PRINT.                                                12360000
  2472.  
  2473. 123700     IF CELL-POINT < TOTAL-CELLS                                   12370000
  2474.  
  2475. 123800         ADD 1 TO CELL-POINT                                       12380000
  2476.  
  2477. 123900         GO TO PC-1.                                               12390000
  2478.  
  2479. 124000     PERFORM PRINT 2 TIMES.                                        12400000
  2480.  
  2481. 124100     MOVE "LISTING OF LITERAL TABLE:" TO LIST-CARD.                12410000
  2482.  
  2483. 124200     PERFORM PRINT 2 TIMES.                                        12420000
  2484.  
  2485. 124300     MOVE LITERAL-AREA TO PRINT-LINE.                              12430000
  2486.  
  2487. 124400     PERFORM PRINT.                                                12440000
  2488.  
  2489. 124500                                                                   12450000
  2490.  
  2491. 124600 CHECK-ERROR.                                                      12460000
  2492.  
  2493. 124700     IF ERROR-FLAG NOT ZERO                                        12470000
  2494.  
  2495. 124800         STOP "ABANDON, COMPILE ERROR"                             12480000
  2496.  
  2497. 124900         GO TO CHECK-ERROR.                                        12490000
  2498.  
  2499. 125000     MOVE 1 TO COMPILE-FLAG.                                       12500000
  2500.  
  2501. 125100     IF HALT-AFTER-COMPILE                                         12510000
  2502.  
  2503. 125200         PERFORM CLOSE-CARD-PRINTER                                12520000
  2504.  
  2505. 125300         STOP "ACTION, COMPILED OK"                                12530000
  2506.  
  2507. 125400     ELSE                                                          12540000
  2508.  
  2509. 125500         DISPLAY "COMPILED OK".                                    12550000
  2510.  
  2511. 125600                                                                   12560000
  2512.  
  2513. 125700 RUN-GENERATED-PROGRAM SECTION.                                    12570000
  2514.  
  2515. 125800                                                                   12580000
  2516.  
  2517. 125900 RUN-INITIALISE.                                                   12590000
  2518.  
  2519. 126000     PERFORM OPEN-CARD-PRINTER.                                    12600000
  2520.  
  2521. 126100     MOVE ZERO TO RECORD-AREA WORK-AREA A510-PAGE                  12610000
  2522.  
  2523. 126200                  FILE-STATUS-TABLE                                12620000
  2524.  
  2525. 126300                  IN-FILE-POINT OUT-FILE-POINT TOTALS.             12630000
  2526.  
  2527. 126400     MOVE SPACES TO CARD-AREA PRINT-AREA.                          12640000
  2528.  
  2529. 126500     MOVE 100 TO A510-LINES-THIS.                                  12650000
  2530.  
  2531. 126600     MOVE SPACES TO HEAD-1-COM.                                    12660000
  2532.  
  2533. 126700     IF OUT-MT-FLAG = 1 AND TOTAL-CELLS = 1                        12670000
  2534.  
  2535. 126800         MOVE OPEN-OUTPUT TO MODE-REQUIRED                         12680000
  2536.  
  2537. 126900         PERFORM OPEN-FILE                                         12690000
  2538.  
  2539. 127000         GO TO CLOSE-FILES.                                        12700000
  2540.  
  2541. 127100     MOVE ZERO TO CELL-POINT.                                      12710000
  2542.  
  2543. 127200                                                                   12720000
  2544.  
  2545. 127300 NEXT-CELL.                                                        12730000
  2546.  
  2547. 127400     ADD 1 TO CELL-POINT.                                          12740000
  2548.  
  2549. 127500                                                                   12750000
  2550.  
  2551. 127600 ACTION-CELL.                                                      12760000
  2552.  
  2553. 127700     MOVE CELL-STORE (CELL-POINT) TO CELL.                         12770000
  2554.  
  2555. 127800                                                                   12780000
  2556.  
  2557. 127900 BRANCH-ON-CELL-TYPE.                                              12790000
  2558.  
  2559. 128000     GO TO                                                         12800000
  2560.  
  2561. 128100             RUN-ADD                                               12810000
  2562.  
  2563. 128200             RUN-AUGMENT                                           12820000
  2564.  
  2565. 128300             RUN-CALL                                              12830000
  2566.  
  2567. 128400             RUN-DIVIDE                                            12840000
  2568.  
  2569. 128500             RUN-EXIT                                              12850000
  2570.  
  2571. 128600             RUN-GO                                                12860000
  2572.  
  2573. 128700             RUN-IF-EQUAL-CHARS                                    12870000
  2574.  
  2575. 128800             RUN-IF-NOT-EQUAL-CHARS                                12880000
  2576.  
  2577. 128900             RUN-IF-GREAT-CHARS                                    12890000
  2578.  
  2579. 129000             RUN-IF-NOT-GREAT-CHARS                                12900000
  2580.  
  2581. 129100             RUN-IF-LESS-CHARS                                     12910000
  2582.  
  2583. 129200             RUN-IF-NOT-LESS-CHARS                                 12920000
  2584.  
  2585. 129300             NEXT-CELL                                             12930000
  2586.  
  2587. 129400             RUN-MOVE-1B-D                                         12940000
  2588.  
  2589. 129500             RUN-MOVE-CHARS                                        12950000
  2590.  
  2591. 129600             RUN-MOVE-D-1B                                         12960000
  2592.  
  2593. 129700             RUN-MULTIPLY                                          12970000
  2594.  
  2595. 129800             RUN-PERFORM                                           12980000
  2596.  
  2597. 129900             RUN-PRINT                                             12990000
  2598.  
  2599. 130000             RUN-READ                                              13000000
  2600.  
  2601. 130100             RUN-STOP                                              13010000
  2602.  
  2603. 130200             RUN-SUBTRACT                                          13020000
  2604.  
  2605. 130300             RUN-WRITE                                             13030000
  2606.  
  2607. 130400     DEPENDING ON CELL-TYPE.                                       13040000
  2608.  
  2609. 130500                                                                   13050000
  2610.  
  2611. 130600 POST-MORTEM.                                                      13060000
  2612.  
  2613. 130700     DISPLAY "ADDRESS" CELL-POINT.                                 13070000
  2614.  
  2615. 130800     STOP "ABANDON PM".                                            13080000
  2616.  
  2617. 130900     GO TO POST-MORTEM.                                            13090000
  2618.  
  2619. 131000                                                                   13100000
  2620.  
  2621. 131100 RUN-ADD.                                                          13110000
  2622.  
  2623. 131200     ADD BINARY-WORD (CELL-LOC1) TO BINARY-WORD (CELL-LOC2).       13120000
  2624.  
  2625. 131300     GO TO NEXT-CELL.                                              13130000
  2626.  
  2627. 131400                                                                   13140000
  2628.  
  2629. 131500 RUN-AUGMENT.                                                      13150000
  2630.  
  2631. 131600     MOVE CELL-LABEL TO AUG-STORE.                                 13160000
  2632.  
  2633. 131700     ADD 1 TO CELL-POINT.                                          13170000
  2634.  
  2635. 131800     MOVE CELL-STORE (CELL-POINT) TO CELL.                         13180000
  2636.  
  2637. 131900     MOVE ZERO TO AUG-POINT.                                       13190000
  2638.  
  2639. 132000                                                                   13200000
  2640.  
  2641. 132100 RAU-1.                                                            13210000
  2642.  
  2643. 132200     ADD 1 TO AUG-POINT.                                           13220000
  2644.  
  2645. 132300     IF AUG-POINT > 4                                              13230000
  2646.  
  2647. 132400         GO TO BRANCH-ON-CELL-TYPE.                                13240000
  2648.  
  2649. 132500     MOVE AUG-WORD (AUG-POINT) TO ONE-LOC.                         13250000
  2650.  
  2651. 132600     IF ONE-LOC = ZERO                                             13260000
  2652.  
  2653. 132700         GO TO RAU-1.                                              13270000
  2654.  
  2655. 132800     ENTER PLAN MOVECHAR USING ONE-WORD-MOVE IN-RECORD.            13280000
  2656.  
  2657. 132900                                                                   13290000
  2658.  
  2659. 133000* SORRY I HAVE NO IDEA WHAT THIS IS DOING!                         13300000
  2660.  
  2661. 133100* IT OUGHT TO BE INCREMENTING THE NEXT INSTRUCTIONS'S PARAMETERS   13310000
  2662.  
  2663. 133200* WITH A SET OF VARIABLES                                          13320000
  2664.  
  2665. 133300                                                                   13330000
  2666.  
  2667. 133400     IF SCR-WORD > 800                                             13340000
  2668.  
  2669. 133500         STOP "ABANDON, MOD OUT OF RANGE".                         13350000
  2670.  
  2671. 133600     ADD SCR-WORD TO CELL-WORD (AUG-POINT).                        13360000
  2672.  
  2673. 133700     GO TO RAU-1.                                                  13370000
  2674.  
  2675. 133800                                                                   13380000
  2676.  
  2677. 133900 RUN-CALL.                                                         13390000
  2678.  
  2679. 134000     IF CELL-LOC1 = SUBR-M5DAEXPAND                                13400000
  2680.  
  2681. 134100         ENTER PLAN M5DAEXPAND USING M5DA-INDEX-BITS.              13410000
  2682.  
  2683. 134200     GO TO NEXT-CELL.                                              13420000
  2684.  
  2685. 134300                                                                   13430000
  2686.  
  2687. 134400 RUN-DIVIDE.                                                       13440000
  2688.  
  2689. 134500     DIVIDE BINARY-WORD (CELL-LOC1) INTO BINARY-WORD (CELL-LOC2).  13450000
  2690.  
  2691. 134600     GO TO NEXT-CELL.                                              13460000
  2692.  
  2693. 134700                                                                   13470000
  2694.  
  2695. 134800 RUN-EXIT.                                                         13480000
  2696.  
  2697. 134900     IF CELL-EXIT ZERO                                             13490000
  2698.  
  2699. 135000         GO TO NEXT-CELL.                                          13500000
  2700.  
  2701. 135100     MOVE ZERO TO CELL-STORE-EXIT (CELL-POINT).                    13510000
  2702.  
  2703. 135200     MOVE CELL-EXIT TO CELL-POINT.                                 13520000
  2704.  
  2705. 135300     GO TO ACTION-CELL.                                            13530000
  2706.  
  2707. 135400                                                                   13540000
  2708.  
  2709. 135500 RUN-GO.                                                           13550000
  2710.  
  2711. 135600     MOVE CELL-EXIT TO CELL-POINT.                                 13560000
  2712.  
  2713. 135700     GO TO ACTION-CELL.                                            13570000
  2714.  
  2715. 135800                                                                   13580000
  2716.  
  2717. 135900 RUN-IF-EQUAL-CHARS.                                               13590000
  2718.  
  2719. 136000     IF CELL-NUM = ZERO                                            13600000
  2720.  
  2721. 136100         GO TO NEXT-CELL.                                          13610000
  2722.  
  2723. 136200     IF CHAR (CELL-LOC1) = CHAR (CELL-LOC2)                        13620000
  2724.  
  2725. 136300         ADD 1 TO CELL-LOC1                                        13630000
  2726.  
  2727. 136400         ADD 1 TO CELL-LOC2                                        13640000
  2728.  
  2729. 136500         SUBTRACT 1 FROM CELL-NUM                                  13650000
  2730.  
  2731. 136600         GO TO RUN-IF-EQUAL-CHARS.                                 13660000
  2732.  
  2733. 136700     GO TO RUN-IF-FAIL.                                            13670000
  2734.  
  2735. 136800                                                                   13680000
  2736.  
  2737. 136900 RUN-IF-GREAT-CHARS.                                               13690000
  2738.  
  2739. 137000     IF CELL-NUM = ZERO                                            13700000
  2740.  
  2741. 137100         GO TO RUN-IF-FAIL.                                        13710000
  2742.  
  2743. 137200     IF CHAR (CELL-LOC1) > CHAR (CELL-LOC2)                        13720000
  2744.  
  2745. 137300         GO TO NEXT-CELL.                                          13730000
  2746.  
  2747. 137400     IF CHAR (CELL-LOC1) = CHAR (CELL-LOC2)                        13740000
  2748.  
  2749. 137500         ADD 1 TO CELL-LOC1                                        13750000
  2750.  
  2751. 137600         ADD 1 TO CELL-LOC2                                        13760000
  2752.  
  2753. 137700         SUBTRACT 1 FROM CELL-NUM                                  13770000
  2754.  
  2755. 137800         GO TO RUN-IF-GREAT-CHARS.                                 13780000
  2756.  
  2757. 137900     GO TO RUN-IF-FAIL.                                            13790000
  2758.  
  2759. 138000                                                                   13800000
  2760.  
  2761. 138100 RUN-IF-LESS-CHARS.                                                13810000
  2762.  
  2763. 138200     IF CELL-NUM = ZERO                                            13820000
  2764.  
  2765. 138300         GO TO RUN-IF-FAIL.                                        13830000
  2766.  
  2767. 138400     IF CHAR (CELL-LOC1) < CHAR (CELL-LOC2)                        13840000
  2768.  
  2769. 138500         GO TO NEXT-CELL.                                          13850000
  2770.  
  2771. 138600     IF CHAR (CELL-LOC1) = CHAR (CELL-LOC2)                        13860000
  2772.  
  2773. 138700         ADD 1 TO CELL-LOC1                                        13870000
  2774.  
  2775. 138800         ADD 1 TO CELL-LOC2                                        13880000
  2776.  
  2777. 138900         SUBTRACT 1 FROM CELL-NUM                                  13890000
  2778.  
  2779. 139000         GO TO RUN-IF-LESS-CHARS.                                  13900000
  2780.  
  2781. 139100     GO TO RUN-IF-FAIL.                                            13910000
  2782.  
  2783. 139200                                                                   13920000
  2784.  
  2785. 139300 RUN-IF-FAIL.                                                      13930000
  2786.  
  2787. 139400     MOVE CELL-EXIT TO CELL-POINT.                                 13940000
  2788.  
  2789. 139500     GO TO ACTION-CELL.                                            13950000
  2790.  
  2791. 139600                                                                   13960000
  2792.  
  2793. 139700 RUN-IF-NOT-EQUAL-CHARS.                                           13970000
  2794.  
  2795. 139800     SUBTRACT 1 FROM CELL-EXIT GIVING POYNT.                       13980000
  2796.  
  2797. 139900     ADD 1 CELL-POINT GIVING CELL-EXIT.                            13990000
  2798.  
  2799. 140000     MOVE POYNT TO CELL-POINT.                                     14000000
  2800.  
  2801. 140100     GO TO RUN-IF-EQUAL-CHARS.                                     14010000
  2802.  
  2803. 140200                                                                   14020000
  2804.  
  2805. 140300 RUN-IF-NOT-GREAT-CHARS.                                           14030000
  2806.  
  2807. 140400     SUBTRACT 1 FROM CELL-EXIT GIVING POYNT.                       14040000
  2808.  
  2809. 140500     ADD 1 CELL-POINT GIVING CELL-EXIT.                            14050000
  2810.  
  2811. 140600     MOVE POYNT TO CELL-POINT.                                     14060000
  2812.  
  2813. 140700     GO TO RUN-IF-GREAT-CHARS.                                     14070000
  2814.  
  2815. 140800                                                                   14080000
  2816.  
  2817. 140900 RUN-IF-NOT-LESS-CHARS.                                            14090000
  2818.  
  2819. 141000     SUBTRACT 1 FROM CELL-EXIT GIVING POYNT.                       14100000
  2820.  
  2821. 141100     ADD 1 CELL-POINT GIVING CELL-EXIT.                            14110000
  2822.  
  2823. 141200     MOVE POYNT TO CELL-POINT.                                     14120000
  2824.  
  2825. 141300     GO TO RUN-IF-LESS-CHARS.                                      14130000
  2826.  
  2827. 141400                                                                   14140000
  2828.  
  2829. 141500 RUN-MOVE-1B-D.                                                    14150000
  2830.  
  2831. 141600* CONVERTS A BINARY WORD TO DISPLAY                                14160000
  2832.  
  2833. 141700     MOVE BINARY-WORD (CELL-LOC1) TO NUM-FIELD.                    14170000
  2834.  
  2835. 141800     SUBTRACT CELL-EXIT FROM 7 GIVING POYNT.                       14180000
  2836.  
  2837. 141900                                                                   14190000
  2838.  
  2839. 142000 RMBD-MOVE.                                                        14200000
  2840.  
  2841. 142100     IF CELL-EXIT < 1                                              14210000
  2842.  
  2843. 142200         GO TO NEXT-CELL.                                          14220000
  2844.  
  2845. 142300     MOVE NUM-CHAR (POYNT) TO CHAR (CELL-LOC2).                    14230000
  2846.  
  2847. 142400     ADD 1 TO POYNT.                                               14240000
  2848.  
  2849. 142500     ADD 1 TO CELL-LOC2.                                           14250000
  2850.  
  2851. 142600     SUBTRACT 1 FROM CELL-EXIT.                                    14260000
  2852.  
  2853. 142700     GO TO RMBD-MOVE.                                              14270000
  2854.  
  2855. 142800                                                                   14280000
  2856.  
  2857. 142900 RUN-MOVE-CHARS.                                                   14290000
  2858.  
  2859. 143000* SUBROUTINE MOVECHAR USED FOR EFFICIENCY ONLY                     14300000
  2860.  
  2861. 143100*    ENTER PLAN MOVECHAR USING CELL-LOC1 IN-RECORD.                14310000
  2862.  
  2863. 143200*    GO TO NEXT-CELL.                                              14320000
  2864.  
  2865. 143300     IF CELL-NUM = ZERO                                            14330000
  2866.  
  2867. 143400         GO TO NEXT-CELL.                                          14340000
  2868.  
  2869. 143500     MOVE CHAR (CELL-LOC1) TO CHAR (CELL-LOC2).                    14350000
  2870.  
  2871. 143600     ADD 1 TO CELL-LOC1.                                           14360000
  2872.  
  2873. 143700     ADD 1 TO CELL-LOC2.                                           14370000
  2874.  
  2875. 143800     SUBTRACT 1 FROM CELL-NUM.                                     14380000
  2876.  
  2877. 143900     GO TO RUN-MOVE-CHARS.                                         14390000
  2878.  
  2879. 144000                                                                   14400000
  2880.  
  2881. 144100 RUN-MOVE-D-1B.                                                    14410000
  2882.  
  2883. 144200* CONVERTS DISPLAY NUMERICS TO BINARY                              14420000
  2884.  
  2885. 144300     MOVE SPACES TO NUM-FIELD-X.                                   14430000
  2886.  
  2887. 144400     SUBTRACT CELL-NUM FROM 7 GIVING POYNT.                        14440000
  2888.  
  2889. 144500                                                                   14450000
  2890.  
  2891. 144600 RMDB-MOVE.                                                        14460000
  2892.  
  2893. 144700     MOVE CHAR (CELL-LOC1) TO NUM-CHAR (POYNT).                    14470000
  2894.  
  2895. 144800     ADD 1 TO CELL-LOC1.                                           14480000
  2896.  
  2897. 144900     ADD 1 TO POYNT.                                               14490000
  2898.  
  2899. 145000     SUBTRACT 1 FROM CELL-NUM.                                     14500000
  2900.  
  2901. 145100     IF CELL-NUM > 0                                               14510000
  2902.  
  2903. 145200         GO TO RMDB-MOVE.                                          14520000
  2904.  
  2905. 145300     MOVE NUM-FIELD TO BINARY-WORD (CELL-LOC2).                    14530000
  2906.  
  2907. 145400     GO TO NEXT-CELL.                                              14540000
  2908.  
  2909. 145500                                                                   14550000
  2910.  
  2911. 145600 RUN-MULTIPLY.                                                     14560000
  2912.  
  2913. 145700     MULTIPLY BINARY-WORD (CELL-LOC1) BY BINARY-WORD (CELL-LOC2).  14570000
  2914.  
  2915. 145800     GO TO NEXT-CELL.                                              14580000
  2916.  
  2917. 145900                                                                   14590000
  2918.  
  2919. 146000 RUN-PERFORM.                                                      14600000
  2920.  
  2921. 146100     ADD 1 CELL-POINT GIVING CELL-STORE-EXIT (CELL-LOC2).          14610000
  2922.  
  2923. 146200     MOVE CELL-LOC1 TO CELL-POINT.                                 14620000
  2924.  
  2925. 146300     GO TO ACTION-CELL.                                            14630000
  2926.  
  2927. 146400                                                                   14640000
  2928.  
  2929. 146500 RUN-PRINT.                                                        14650000
  2930.  
  2931. 146600     CALL A510 USING A510-AREA.                                    14660000
  2932.  
  2933. 146700* A510 IS A GENERAL PRINTING ROUTINE THAT HANDLES HEADINGS ETC     14670000
  2934.  
  2935. 146800     MOVE SPACES TO PRINT-AREA.                                    14680000
  2936.  
  2937. 146900     GO TO NEXT-CELL.                                              14690000
  2938.  
  2939. 147000                                                                   14700000
  2940.  
  2941. 147100 RUN-READ.                                                         14710000
  2942.  
  2943. 147200     IF CELL-LOC2 NOT ZERO                                         14720000
  2944.  
  2945. 147300         GO TO RR-CARD.                                            14730000
  2946.  
  2947. 147400     IF IN-FILE-POINT ZERO                                         14740000
  2948.  
  2949. 147500         MOVE OPEN-INPUT TO MODE-REQUIRED                          14750000
  2950.  
  2951. 147600         GO TO RR-OPEN.                                            14760000
  2952.  
  2953. 147700     IF CELL-LOC1 = IN-FILE-NO                                     14770000
  2954.  
  2955. 147800         GO TO RR-READ.                                            14780000
  2956.  
  2957. 147900     MOVE OPEN-INPUT TO MODE-REQUIRED.                             14790000
  2958.  
  2959. 148000     PERFORM CLOSE-FILE.                                           14800000
  2960.  
  2961. 148100                                                                   14810000
  2962.  
  2963. 148200 RR-OPEN.                                                          14820000
  2964.  
  2965. 148300     PERFORM OPEN-FILE.                                            14830000
  2966.  
  2967. 148400     IF END-FILE-FLAG NOT ZERO                                     14840000
  2968.  
  2969. 148500         GO TO NEXT-CELL.                                          14850000
  2970.  
  2971. 148600                                                                   14860000
  2972.  
  2973. 148700 RR-READ.                                                          14870000
  2974.  
  2975. 148800     IF IN-TYPE = INPUT-DA                                         14880000
  2976.  
  2977. 148900         READ IN-DA                                                14890000
  2978.  
  2979. 149000             AT END GO TO RUN-READ-END.                            14900000
  2980.  
  2981. 149100     IF IN-TYPE = INPUT-MT                                         14910000
  2982.  
  2983. 149200         READ IN-MT                                                14920000
  2984.  
  2985. 149300             AT END GO TO RUN-READ-END.                            14930000
  2986.  
  2987. 149400     ADD 1 TO RECS-IN.                                             14940000
  2988.  
  2989. 149500     IF RECORD-WORD-COUNT > 200                                    14950000
  2990.  
  2991. 149600         STOP "ABANDON, RECORD TOO LONG".                          14960000
  2992.  
  2993. 149700                                                                   14970000
  2994.  
  2995. 149800 RR-NEXT.                                                          14980000
  2996.  
  2997. 149900     MOVE CELL-EXIT TO CELL-POINT.                                 14990000
  2998.  
  2999. 150000     GO TO ACTION-CELL.                                            15000000
  3000.  
  3001. 150100                                                                   15010000
  3002.  
  3003. 150200 RR-CARD.                                                          15020000
  3004.  
  3005. 150300     READ CARD-FILE                                                15030000
  3006.  
  3007. 150400             AT END GO TO NEXT-CELL.                               15040000
  3008.  
  3009. 150500     MOVE CARD-RECORD TO CARD-AREA.                                15050000
  3010.  
  3011. 150600     GO TO RR-NEXT.                                                15060000
  3012.  
  3013. 150700                                                                   15070000
  3014.  
  3015. 150800 RUN-READ-END.                                                     15080000
  3016.  
  3017. 150900     MOVE OPEN-INPUT TO MODE-REQUIRED.                             15090000
  3018.  
  3019. 151000     PERFORM CLOSE-FILE.                                           15100000
  3020.  
  3021. 151100     PERFORM OPEN-FILE.                                            15110000
  3022.  
  3023. 151200     IF END-FILE-FLAG NOT ZERO                                     15120000
  3024.  
  3025. 151300         GO TO NEXT-CELL.                                          15130000
  3026.  
  3027. 151400     GO TO RUN-READ.                                               15140000
  3028.  
  3029. 151500                                                                   15150000
  3030.  
  3031. 151600 RUN-STOP.                                                         15160000
  3032.  
  3033. 151700     GO TO CLOSE-FILES.                                            15170000
  3034.  
  3035. 151800                                                                   15180000
  3036.  
  3037. 151900 RUN-SUBTRACT.                                                     15190000
  3038.  
  3039. 152000     SUBTRACT BINARY-WORD (CELL-LOC1) FROM BINARY-WORD (CELL-LOC2).15200000
  3040.  
  3041. 152100     GO TO NEXT-CELL.                                              15210000
  3042.  
  3043. 152200                                                                   15220000
  3044.  
  3045. 152300 RUN-WRITE.                                                        15230000
  3046.  
  3047. 152400     MOVE RECORD-WORD-COUNT TO NUMBER.                             15240000
  3048.  
  3049. 152500     IF OUT-FILE-POINT ZERO                                        15250000
  3050.  
  3051. 152600         MOVE OPEN-OUTPUT TO MODE-REQUIRED                         15260000
  3052.  
  3053. 152700         GO TO RW-OPEN.                                            15270000
  3054.  
  3055. 152800     IF CELL-LOC1 = OUT-FILE-NO                                    15280000
  3056.  
  3057. 152900         GO TO RW-WRITE.                                           15290000
  3058.  
  3059. 153000     MOVE OPEN-OUTPUT TO MODE-REQUIRED.                            15300000
  3060.  
  3061. 153100     PERFORM CLOSE-FILE.                                           15310000
  3062.  
  3063. 153200                                                                   15320000
  3064.  
  3065. 153300 RW-OPEN.                                                          15330000
  3066.  
  3067. 153400     PERFORM OPEN-FILE.                                            15340000
  3068.  
  3069. 153500                                                                   15350000
  3070.  
  3071. 153600 RW-WRITE.                                                         15360000
  3072.  
  3073. 153700     MOVE NUMBER TO RECORD-WORD-COUNT.                             15370000
  3074.  
  3075. 153800     IF OUT-TYPE = OUTPUT-DA                                       15380000
  3076.  
  3077. 153900         WRITE OUT-DA-REC                                          15390000
  3078.  
  3079. 154000         PERFORM OUT-REPLY-CHECK                                   15400000
  3080.  
  3081. 154100         GO TO RUN-WRITE-END.                                      15410000
  3082.  
  3083. 154200     IF OUT-TYPE = OUTPUT-MT-2048                                  15420000
  3084.  
  3085. 154300         WRITE OUT-MT-2048-REC                                     15430000
  3086.  
  3087. 154400         GO TO RUN-WRITE-END.                                      15440000
  3088.  
  3089. 154500     IF OUT-TYPE = OUTPUT-MT-512                                   15450000
  3090.  
  3091. 154600         WRITE OUT-MT-512-REC                                      15460000
  3092.  
  3093. 154700         GO TO RUN-WRITE-END.                                      15470000
  3094.  
  3095. 154800     IF OUT-TYPE = OUTPUT-MT-128                                   15480000
  3096.  
  3097. 154900         WRITE OUT-MT-128-REC                                      15490000
  3098.  
  3099. 155000         GO TO RUN-WRITE-END.                                      15500000
  3100.  
  3101. 155100     IF OUT-TYPE = OUTPUT-MT-64                                    15510000
  3102.  
  3103. 155200         WRITE OUT-MT-64-REC.                                      15520000
  3104.  
  3105. 155300                                                                   15530000
  3106.  
  3107. 155400 RUN-WRITE-END.                                                    15540000
  3108.  
  3109. 155500     MOVE NUMBER TO RECORD-WORD-COUNT.                             15550000
  3110.  
  3111. 155600     ADD 1 TO RECS-OUT.                                            15560000
  3112.  
  3113. 155700     GO TO NEXT-CELL.                                              15570000
  3114.  
  3115. 155800                                                                   15580000
  3116.  
  3117. 155900 CLOSE-FILES.                                                      15590000
  3118.  
  3119. 156000     PERFORM CLOSE-CARD-PRINTER.                                   15600000
  3120.  
  3121. 156100     MOVE OPEN-INPUT TO MODE-REQUIRED.                             15610000
  3122.  
  3123. 156200     PERFORM CLOSE-FILE.                                           15620000
  3124.  
  3125. 156300     MOVE OPEN-OUTPUT TO MODE-REQUIRED.                            15630000
  3126.  
  3127. 156400     PERFORM CLOSE-FILE.                                           15640000
  3128.  
  3129. 156500     IF RECS-IN NOT ZERO                                           15650000
  3130.  
  3131. 156600         DISPLAY "IN " RECS-IN.                                    15660000
  3132.  
  3133. 156700     IF RECS-OUT NOT ZERO                                          15670000
  3134.  
  3135. 156800         DISPLAY "OUT " RECS-OUT.                                  15680000
  3136.  
  3137. 156900     STOP RUN.                                                     15690000
  3138.  
  3139. 157000                                                                   15700000
  3140.  
  3141. 157100 OPEN-FILE SECTION.                                                15710000
  3142.  
  3143. 157200                                                                   15720000
  3144.  
  3145. 157300 OF-INITIALISE.                                                    15730000
  3146.  
  3147. 157400     MOVE ZERO TO FILE-POINT END-FILE-FLAG.                        15740000
  3148.  
  3149. 157500                                                                   15750000
  3150.  
  3151. 157600 OF-NEXT-FILE.                                                     15760000
  3152.  
  3153. 157700     ADD 1 TO FILE-POINT.                                          15770000
  3154.  
  3155. 157800     IF FILE-POINT > FILE-TABLE-SIZE                               15780000
  3156.  
  3157. 157900         MOVE 1 TO END-FILE-FLAG                                   15790000
  3158.  
  3159. 158000         GO TO OF-EXIT.                                            15800000
  3160.  
  3161. 158100                                                                   15810000
  3162.  
  3163. 158200     MOVE FILE-DATA (FILE-POINT) TO WORK-FILE-DATA.                15820000
  3164.  
  3165. 158300     IF WORK-MODE NOT = MODE-REQUIRED                              15830000
  3166.  
  3167. 158400     OR WORK-FILE-NO NOT = CELL-LOC1                               15840000
  3168.  
  3169. 158500     OR FILE-STATUS-FLAG (FILE-POINT) NOT ZERO                     15850000
  3170.  
  3171. 158600         GO TO OF-NEXT-FILE.                                       15860000
  3172.  
  3173. 158700     MOVE 1 TO FILE-STATUS-FLAG (FILE-POINT).                      15870000
  3174.  
  3175. 158800     IF MODE-REQUIRED = OPEN-INPUT                                 15880000
  3176.  
  3177. 158900         GO TO OF-INPUT.                                           15890000
  3178.  
  3179. 159000                                                                   15900000
  3180.  
  3181. 159100 OF-OUTPUT.                                                        15910000
  3182.  
  3183. 159200     MOVE WORK-FILE-DATA TO OUT-FILE-DATA.                         15920000
  3184.  
  3185. 159300     MOVE FILE-POINT TO OUT-FILE-POINT.                            15930000
  3186.  
  3187. 159400                                                                   15940000
  3188.  
  3189. 159500 OF-OUTPUT-DA.                                                     15950000
  3190.  
  3191. 159600     IF OUT-TYPE > FILE-TYPE-DA                                    15960000
  3192.  
  3193. 159700         GO TO OF-OUTPUT-MT.                                       15970000
  3194.  
  3195. 159800     IF OUT-TYPE = OUTPUT-DA                                       15980000
  3196.  
  3197. 159900         OPEN OUTPUT OUT-DA                                        15990000
  3198.  
  3199. 160000         GO TO OF-TEST-OUT-REPLY.                                  16000000
  3200.  
  3201. 160100     GO TO OF-ABANDON.                                             16010000
  3202.  
  3203. 160200                                                                   16020000
  3204.  
  3205. 160300 OF-TEST-OUT-REPLY.                                                16030000
  3206.  
  3207. 160400     IF REPLY-WORD NOT ZERO                                        16040000
  3208.  
  3209. 160500         DISPLAY "FILE " OUT-NAME " REPLY " REPLY-WORD             16050000
  3210.  
  3211. 160600         GO TO OF-OUTPUT-DA.                                       16060000
  3212.  
  3213. 160700     DISPLAY "ED " OUT-NAME " OPEN OUTPUT".                        16070000
  3214.  
  3215. 160800     GO TO OF-EXIT.                                                16080000
  3216.  
  3217. 160900                                                                   16090000
  3218.  
  3219. 161000 OF-OUTPUT-MT.                                                     16100000
  3220.  
  3221. 161100     IF OUT-TYPE = OUTPUT-MT-2048                                  16110000
  3222.  
  3223. 161200         OPEN OUTPUT OUT-MT-2048                                   16120000
  3224.  
  3225. 161300         GO TO OF-EXIT.                                            16130000
  3226.  
  3227. 161400     IF OUT-TYPE = OUTPUT-MT-512                                   16140000
  3228.  
  3229. 161500         OPEN OUTPUT OUT-MT-512                                    16150000
  3230.  
  3231. 161600         GO TO OF-EXIT.                                            16160000
  3232.  
  3233. 161700     IF OUT-TYPE = OUTPUT-MT-128                                   16170000
  3234.  
  3235. 161800         OPEN OUTPUT OUT-MT-128                                    16180000
  3236.  
  3237. 161900         GO TO OF-EXIT.                                            16190000
  3238.  
  3239. 162000     IF OUT-TYPE = OUTPUT-MT-64                                    16200000
  3240.  
  3241. 162100         OPEN OUTPUT OUT-MT-64                                     16210000
  3242.  
  3243. 162200         GO TO OF-EXIT.                                            16220000
  3244.  
  3245. 162300     GO TO OF-ABANDON.                                             16230000
  3246.  
  3247. 162400                                                                   16240000
  3248.  
  3249. 162500 OF-INPUT.                                                         16250000
  3250.  
  3251. 162600     MOVE WORK-FILE-DATA TO IN-FILE-DATA.                          16260000
  3252.  
  3253. 162700     MOVE FILE-POINT TO IN-FILE-POINT.                             16270000
  3254.  
  3255. 162800                                                                   16280000
  3256.  
  3257. 162900 OF-INPUT-DA.                                                      16290000
  3258.  
  3259. 163000     IF IN-TYPE > FILE-TYPE-DA                                     16300000
  3260.  
  3261. 163100         GO TO OF-INPUT-MT.                                        16310000
  3262.  
  3263. 163200     IF IN-TYPE = INPUT-DA                                         16320000
  3264.  
  3265. 163300         OPEN INPUT IN-DA                                          16330000
  3266.  
  3267. 163400         GO TO OF-TEST-IN-REPLY.                                   16340000
  3268.  
  3269. 163500     GO TO OF-ABANDON.                                             16350000
  3270.  
  3271. 163600                                                                   16360000
  3272.  
  3273. 163700 OF-TEST-IN-REPLY.                                                 16370000
  3274.  
  3275. 163800     IF REPLY-WORD NOT ZERO                                        16380000
  3276.  
  3277. 163900         DISPLAY "FILE " IN-NAME " REPLY " REPLY-WORD              16390000
  3278.  
  3279. 164000         GO TO OF-INPUT-DA.                                        16400000
  3280.  
  3281. 164100     DISPLAY "ED " IN-NAME " OPEN INPUT".                          16410000
  3282.  
  3283. 164200     GO TO OF-EXIT.                                                16420000
  3284.  
  3285. 164300                                                                   16430000
  3286.  
  3287. 164400 OF-INPUT-MT.                                                      16440000
  3288.  
  3289. 164500     IF IN-TYPE = INPUT-MT                                         16450000
  3290.  
  3291. 164600         OPEN INPUT IN-MT                                          16460000
  3292.  
  3293. 164700         GO TO OF-EXIT.                                            16470000
  3294.  
  3295. 164800                                                                   16480000
  3296.  
  3297. 164900 OF-ABANDON.                                                       16490000
  3298.  
  3299. 165000     STOP "ABANDON, FILE NOT SPECIFIED".                           16500000
  3300.  
  3301. 165100                                                                   16510000
  3302.  
  3303. 165200 OF-EXIT.                                                          16520000
  3304.  
  3305. 165300     IF END-FILE-FLAG NOT ZERO                                     16530000
  3306.  
  3307. 165400     AND MODE-REQUIRED NOT = OPEN-INPUT                            16540000
  3308.  
  3309. 165500         GO TO OF-ABANDON.                                         16550000
  3310.  
  3311. 165600                                                                   16560000
  3312.  
  3313. 165700 CLOSE-FILE SECTION.                                               16570000
  3314.  
  3315. 165800                                                                   16580000
  3316.  
  3317. 165900 CLF-INITIALISE.                                                   16590000
  3318.  
  3319. 166000     MOVE ZERO TO REPLY-WORD.                                      16600000
  3320.  
  3321. 166100     IF MODE-REQUIRED = OPEN-INPUT                                 16610000
  3322.  
  3323. 166200         MOVE IN-FILE-POINT TO FILE-POINT                          16620000
  3324.  
  3325. 166300     ELSE                                                          16630000
  3326.  
  3327. 166400         MOVE OUT-FILE-POINT TO FILE-POINT.                        16640000
  3328.  
  3329. 166500     IF FILE-POINT ZERO                                            16650000
  3330.  
  3331. 166600         GO TO CLF-EXIT.                                           16660000
  3332.  
  3333. 166700     IF FILE-STATUS-FLAG (FILE-POINT) NOT = 1                      16670000
  3334.  
  3335. 166800         GO TO CLF-EXIT.                                           16680000
  3336.  
  3337. 166900     MOVE 2 TO FILE-STATUS-FLAG (FILE-POINT).                      16690000
  3338.  
  3339. 167000     MOVE FILE-DATA (FILE-POINT) TO WORK-FILE-DATA.                16700000
  3340.  
  3341. 167100                                                                   16710000
  3342.  
  3343. 167200 CLF-CLOSE.                                                        16720000
  3344.  
  3345. 167300     IF WORK-TYPE = INPUT-DA                                       16730000
  3346.  
  3347. 167400         CLOSE IN-DA                                               16740000
  3348.  
  3349. 167500         GO TO CLF-EXIT.                                           16750000
  3350.  
  3351. 167600     IF WORK-TYPE = OUTPUT-DA                                      16760000
  3352.  
  3353. 167700         CLOSE OUT-DA                                              16770000
  3354.  
  3355. 167800         GO TO CLF-EXIT.                                           16780000
  3356.  
  3357. 167900     IF WORK-TYPE = INPUT-MT                                       16790000
  3358.  
  3359. 168000         CLOSE IN-MT                                               16800000
  3360.  
  3361. 168100         GO TO CLF-EXIT.                                           16810000
  3362.  
  3363. 168200     IF WORK-TYPE = OUTPUT-MT-2048                                 16820000
  3364.  
  3365. 168300         CLOSE OUT-MT-2048                                         16830000
  3366.  
  3367. 168400         GO TO CLF-EXIT.                                           16840000
  3368.  
  3369. 168500     IF WORK-TYPE = OUTPUT-MT-512                                  16850000
  3370.  
  3371. 168600         CLOSE OUT-MT-512                                          16860000
  3372.  
  3373. 168700         GO TO CLF-EXIT.                                           16870000
  3374.  
  3375. 168800     IF WORK-TYPE = OUTPUT-MT-128                                  16880000
  3376.  
  3377. 168900         CLOSE OUT-MT-128                                          16890000
  3378.  
  3379. 169000         GO TO CLF-EXIT.                                           16900000
  3380.  
  3381. 169100     IF WORK-TYPE = OUTPUT-MT-64                                   16910000
  3382.  
  3383. 169200         CLOSE OUT-MT-64                                           16920000
  3384.  
  3385. 169300         GO TO CLF-EXIT.                                           16930000
  3386.  
  3387. 169400     STOP "ABANDON CLF".                                           16940000
  3388.  
  3389. 169500                                                                   16950000
  3390.  
  3391. 169600 CLF-EXIT.                                                         16960000
  3392.  
  3393. 169700     IF REPLY-WORD NOT ZERO                                        16970000
  3394.  
  3395. 169800         DISPLAY "FILE " WORK-NAME " REPLY " REPLY-WORD            16980000
  3396.  
  3397. 169900         STOP "ABANDON ON CLOSE".                                  16990000
  3398.  
  3399. 170000                                                                   17000000
  3400.  
  3401. 170100 RUN-TIME-SUBROUTNES SECTION.                                      17010000
  3402.  
  3403. 170200                                                                   17020000
  3404.  
  3405. 170300 OPEN-CARD-PRINTER.                                                17030000
  3406.  
  3407. 170400     IF CARD-PRINTER-FLAG ZERO                                     17040000
  3408.  
  3409. 170500         MOVE 1 TO CARD-PRINTER-FLAG                               17050000
  3410.  
  3411. 170600         OPEN INPUT CARD-FILE                                      17060000
  3412.  
  3413. 170700         MOVE "OPEN" TO A510-CONTROL                               17070000
  3414.  
  3415. 170800         PERFORM PRINT.                                            17080000
  3416.  
  3417. 170900                                                                   17090000
  3418.  
  3419. 171000 CLOSE-CARD-PRINTER.                                               17100000
  3420.  
  3421. 171100     IF CARD-PRINTER-FLAG NOT ZERO                                 17110000
  3422.  
  3423. 171200         MOVE ZERO TO CARD-PRINTER-FLAG                            17120000
  3424.  
  3425. 171300         CLOSE CARD-FILE                                           17130000
  3426.  
  3427. 171400         MOVE "CLSE" TO A510-CONTROL                               17140000
  3428.  
  3429. 171500         PERFORM PRINT.                                            17150000
  3430.  
  3431. 171600                                                                   17160000
  3432.  
  3433. 171700 OUT-REPLY-CHECK.                                                  17170000
  3434.  
  3435. 171800     IF REPLY-WORD NOT ZERO                                        17180000
  3436.  
  3437. 171900         DISPLAY "FILE " OUT-NAME " REPLY " REPLY-WORD             17190000
  3438.  
  3439. 172000         STOP "ABANDON, OVERFLOW".                                 17200000
  3440.  
  3441. 172100****                                                               17210000
  3442.  
  3443. 
Add Comment
Please, Sign In to add comment