home *** CD-ROM | disk | FTP | other *** search
/ Programmer Plus 2007 / Programmer-Plus-2007.iso / Programming / Low Level Languages / Rm Cobol V2.2 / VDTTST.CBL < prev    next >
Encoding:
Text File  |  1985-09-03  |  16.9 KB  |  543 lines

  1.  
  2.     IDENTIFICATION DIVISION.
  3.     PROGRAM-ID.        VDTTST.
  4.       * SCCS information:
  5.       *@(#) VDTTST  ver. 1.1 last update 85/03/29 12:18:46
  6.       *@(#) This source obtained from the s file on 85/03/29 at 12:19:25
  7.       *            Date Revised  12-FEB-1985.
  8.       *
  9.       *            (TERMINAL CONFIGURATION TEST)
  10.       *
  11.       *            12-Feb-85  1 SUBTRACTed from C for EOS to
  12.       *                prevent scrolling if 24 by 80
  13.       *                chosen in test 5. Notation added
  14.       *                to EOL and EOS tests that they get
  15.       *                their screen dimensions from test 5.
  16.       *                <CR> at command entry now goes to
  17.       *                next test automatically.
  18.       *            30-Oct-84  Version 2 tests added, EOL and EOS
  19.       *                improved, "R" for test repeat added,
  20.       *                beeps on ACCEPTs removed, screen dim-
  21.       *                ension test improved, ON EXECPTION
  22.       *                test clarified.
  23.       *            01-Oct-84  UNIT test removed, spiffy language
  24.       *                changed or removed.
  25.       *
  26.     ENVIRONMENT DIVISION.
  27.     CONFIGURATION SECTION.
  28.     SOURCE-COMPUTER.        RMC.
  29.     OBJECT-COMPUTER.        RMC.
  30.       *
  31.     DATA DIVISION.
  32.     WORKING-STORAGE SECTION.
  33.     01    TITLE.
  34.         03    FILLER        PIC    X(51) VALUE
  35.         "VDTTST: RM/COBOL Verify terminal I/O functions ver.".
  36.         03    TITLE-DATE    PIC    X(10).
  37.         03    TITLE-TIME    PIC    X(8).
  38.     01    VERSION-INFO.
  39.         03    FILLER        PIC    X(15) VALUE "@ #( ) (@)#@(#)".
  40.         03    PROGRAM-NAME    PIC    X(10) VALUE "VDTTST".
  41.         03    FILLER        PIC    X(6) VALUE " ver. ".
  42.         03    VERSION        PIC    X(4)    VALUE "1.1".
  43.         03    VER-DATE    PIC    X(10) VALUE " 85/03/29 ".
  44.         03    VER-TIME    PIC    X(8)    VALUE "12:18:46".
  45.         03    FILLER        PIC    X    VALUE ">".
  46.     77    COMMAND-NUMBER        PIC 99        VALUE ZERO.
  47.     77    LAST-COMMAND        PIC 99        VALUE ZERO.
  48.     77    LAST-COMEDIT        PIC ZZ        VALUE ZERO.
  49.     77    EXC-NUM            PIC 99        VALUE ZERO.
  50.     77    EXC-NUM2        PIC 99        VALUE ZERO.
  51.     77    ONE-CHAR        PIC X        VALUE SPACE.
  52.     77    R            PIC 99        VALUE 24.
  53.     77    C            PIC 999        VALUE 79.
  54.     77    C-DISPLAY        PIC ZZ9        VALUE ZERO.
  55.     77    N            PIC 999        VALUE ZERO.
  56.     77    NAME            PIC X(10)    VALUE SPACES.
  57.     77    LINE-NO            PIC 99        VALUE ZERO.
  58.     77    LINE-NO-EDIT        PIC Z9        VALUE ZERO.
  59.     77    DATE-FLD        PIC 9(6)    VALUE ZERO.
  60.     77    DAY-FLD            PIC 9(5)    VALUE ZERO.
  61.     77    TIME-FLD        PIC 9(8)    VALUE ZERO.
  62.     77    OPERAND            PIC S9(9)V9(9)    VALUE ZERO.
  63.     77    RESULT            PIC -(9)9.9(9)    VALUE ZERO.
  64.     77    COL-ACC            PIC X(150)    VALUE SPACES.
  65.     77    COL-NUM            PIC X(150)    VALUE
  66.     "1234567890123456789012345678901234567890123456789012345678901234
  67.       -"5678901234567890123456789012345678901234567890123456789012345678
  68.       -"9012345678901234567890".
  69.       /
  70.       *
  71.       *
  72.     PROCEDURE DIVISION.
  73.     ENTER-COMMAND.
  74.         MOVE VER-DATE TO TITLE-DATE MOVE VER-TIME TO TITLE-TIME.
  75.         DISPLAY TITLE LINE 1 ERASE.
  76.         DISPLAY " ".
  77.         DISPLAY "       1.  ACCEPT WITH AND WITHOUT PROMPT".
  78.         DISPLAY "       2.  ACCEPT/DISPLAY WITH AND WITHOUT BEEP".
  79.         DISPLAY "       3.  ACCEPT WITH AND WITHOUT TAB".
  80.         DISPLAY "       4.  ACCEPT/DISPLAY WITH DEFAULT VALUES".
  81.         DISPLAY "       5.  CHECK SCREEN DIMENSIONS".
  82.         DISPLAY "       6.  ACCEPT WITH SECURE".
  83.         DISPLAY "       7.  ACCEPT/DISPLAY WITH REVERSE".
  84.         DISPLAY "       8.  ACCEPT DATE & TIME".
  85.         DISPLAY "       9.  HIGH/LOW INTENSITY".
  86.         DISPLAY "       10. ACCEPT WITH BLINK".
  87.         DISPLAY "       11. ACCEPT WITH ON EXCEPTION CLAUSE".
  88.         DISPLAY "       12. ACCEPT WITH UPDATE".
  89.         DISPLAY "       13. ERASE TO END OF LINE".
  90.         DISPLAY "       14. ERASE TO END OF SCREEN".
  91.         DISPLAY "       15. EXIT PROGRAM".
  92.         DISPLAY " ".
  93.         DISPLAY "           ENTER COMMAND NUMBER      ".
  94.         DISPLAY "              LAST COMMAND = ".
  95.         MOVE COMMAND-NUMBER TO LAST-COMMAND, LAST-COMEDIT.
  96.         DISPLAY LAST-COMEDIT POSITION 0.
  97.         DISPLAY "           <CR> GOES TO NEXT TEST.".
  98.     ACCEPT-COMMAND-NUMBER.
  99.         ACCEPT COMMAND-NUMBER LINE 19 POSITION 34
  100.                             NO BEEP CONVERT TAB.
  101.         DISPLAY " " LINE 21.
  102.         IF COMMAND-NUMBER EQUAL ZERO
  103.             ADD 1 TO LAST-COMMAND
  104.             MOVE LAST-COMMAND TO COMMAND-NUMBER.
  105.         GO TO TEST-1-PARA,
  106.             TEST-2-PARA,
  107.             TEST-3-PARA,
  108.             TEST-4-PARA,
  109.             TEST-5-PARA,
  110.             TEST-6-PARA,
  111.             TEST-7-PARA,
  112.             TEST-8-PARA,
  113.             TEST-9-PARA,
  114.             TEST-10-PARA,
  115.             TEST-11-PARA,
  116.             TEST-12-PARA,
  117.             TEST-13-PARA,
  118.             TEST-14-PARA,
  119.             EXIT-PARA     DEPENDING ON COMMAND-NUMBER.
  120.         DISPLAY SPACES SIZE 2 LINE 19 POSITION 34.
  121.         GO TO ACCEPT-COMMAND-NUMBER.
  122.       /
  123.       *
  124.       *
  125.     TEST-1-PARA.
  126.         DISPLAY "1. ACCEPT WITH AND WITHOUT PROMPT "
  127.             LINE 1 POSITION 12 ERASE.
  128.       *
  129.         DISPLAY "A.  ACCEPT WITH NO PROMPT" LINE 3.
  130.         DISPLAY "    ENTER YOUR NAME:  " LINE 4.
  131.         ACCEPT NAME LINE 4 POSITION 23 NO BEEP TAB.
  132.         DISPLAY NAME LINE 5 POSITION 23.
  133.       *
  134.         DISPLAY "B.  ACCEPT WITH DEFAULT PROMPT CHARACTER" LINE 7.
  135.         DISPLAY "    ENTER YOUR NAME:  " LINE 8.
  136.         ACCEPT NAME LINE 8 POSITION 23 NO BEEP TAB PROMPT.
  137.         DISPLAY NAME LINE 9 POSITION 23.
  138.       *
  139.         DISPLAY
  140.         "C.  ACCEPT WITH USER-SPECIFIED PROMPT CHARACTER: ""H"""
  141.             LINE 11.
  142.         DISPLAY
  143.         "    ENTER YOUR NAME:  " LINE 12.
  144.         ACCEPT NAME LINE 12 POSITION 23 NO BEEP TAB PROMPT "H"
  145.         DISPLAY NAME LINE 13 POSITION 23.
  146.       *
  147.         PERFORM RETURN-TO-MENU.
  148.         GO TO TEST-1-PARA.
  149.       *
  150.       *
  151.     TEST-2-PARA.
  152.         DISPLAY "2. ACCEPT/DISPLAY WITHOUT AND WITHOUT BEEP"
  153.             LINE 1 POSITION 12 ERASE.
  154.       *
  155.         DISPLAY "A. ACCEPT WITH BEEP (PRESS ""RETURN"")"  LINE 3.
  156.         ACCEPT ONE-CHAR POSITION 0 NO BEEP.
  157.         DISPLAY
  158.             "ENTER YOUR NAME (YOU SHOULD HAVE HEARD A BEEP):  "
  159.             LINE 4 POSITION 4.
  160.         ACCEPT NAME POSITION 0 TAB PROMPT.
  161.       *
  162.         DISPLAY "B. ACCEPT WITHOUT BEEP (PRESS ""RETURN"")" LINE 6.
  163.         ACCEPT ONE-CHAR POSITION 0 NO BEEP.
  164.         DISPLAY
  165.             "ENTER YOUR NAME (YOU SHOULD NOT HAVE HEARD A BEEP):  "
  166.             LINE 7 POSITION 4.
  167.         ACCEPT NAME POSITION 0 TAB PROMPT NO BEEP.
  168.       *
  169.         DISPLAY "C. DISPLAY WITH BEEP (PRESS ""RETURN"")"
  170.             LINE 9.
  171.         ACCEPT ONE-CHAR POSITION 0 NO BEEP.
  172.         DISPLAY "THIS DISPLAY SHOULD HAVE BEEPED."
  173.             LINE 10 POSITION 4 BEEP.
  174.       *
  175.         DISPLAY "D. DISPLAY WITHOUT BEEP (PRESS ""RETURN"")"
  176.             LINE 12.
  177.         ACCEPT ONE-CHAR POSITION 0 NO BEEP.
  178.         DISPLAY "THIS DISPLAY SHOULD NOT HAVE BEEPED."
  179.             LINE 13 POSITION 4.
  180.       *
  181.         PERFORM RETURN-TO-MENU.
  182.         GO TO TEST-2-PARA.
  183.       *
  184.       *
  185.     TEST-3-PARA.
  186.         DISPLAY "3. ACCEPT WITH AND WITHOUT TAB" LINE 1
  187.             POSITION 12 ERASE.
  188.         DISPLAY
  189.         "ENTER A STRING OF 10 CHARS.  AN AUTOMATIC TAB SHOULD"
  190.             LINE 4 POSITION 5.
  191.         DISPLAY "NOT OCCUR AFTER THE LAST CHARACTER IS TYPED."
  192.             LINE 5 POSITION 5.
  193.         ACCEPT NAME LINE 7 POSITION 15
  194.             NO BEEP PROMPT TAB ECHO.
  195.         DISPLAY NAME LINE 8 POSITION 15.
  196.       *
  197.         DISPLAY
  198.         "ENTER A STRING OF 10 CHARS.  AN AUTOMATIC TAB SHOULD"
  199.             LINE 10 POSITION 5.
  200.         DISPLAY "OCCUR AFTER THE LAST CHARACTER HAS BEEN TYPED."
  201.             LINE 11 POSITION 5.
  202.         ACCEPT NAME LINE 13 POSITION 15 PROMPT NO BEEP ECHO.
  203.         DISPLAY NAME LINE 14 POSITION 15.
  204.       *
  205.         PERFORM RETURN-TO-MENU.
  206.         GO TO TEST-3-PARA.
  207.       *
  208.       *
  209.     TEST-4-PARA.
  210.         DISPLAY "4. ACCEPT AND DISPLAY W/ DEFAULT CURSOR POSITION"
  211.             LINE 1 POSITION 12 ERASE.
  212.         DISPLAY "THIS LINE SHOULD START ON LINE 2 POSITION 1."
  213.         DISPLAY "THIS LINE SHOULD START ON LINE 3 POSITION 15."
  214.             POSITION 15.
  215.         DISPLAY "THIS LINE SHOULD START ON LINE 4 POSITION 1."
  216.             LINE 4 POSITION 1.
  217.         DISPLAY "THIS LINE SHOULD START ON LINE 5 POSITION 1."
  218.             LINE 5.
  219.         DISPLAY " THIS LINE SHOULD APPEAR ON LINE 24 POSITION 10."
  220.             LINE 24 POSITION 10.
  221.         DISPLAY "****PRESS ""RETURN"" TO CONTINUE: "
  222.             LINE 12.
  223.         ACCEPT ONE-CHAR POSITION 0 NO BEEP TAB.
  224.       *
  225.         DISPLAY "THIS LINE SHOULD APPEAR ON NEXT LINE POSITION 5."
  226.             POSITION 5.
  227.         DISPLAY "ACCEPT/DISPLAY DEFAULT TEST (POSITION 0) "
  228.             LINE 15 POSITION 5.
  229.         DISPLAY "ENTER FIELD " POSITION 0.
  230.         ACCEPT NAME POSITION 0 PROMPT NO BEEP TAB.
  231.         DISPLAY " ACCEPT AGAIN " POSITION 0.
  232.         ACCEPT NAME POSITION 0 PROMPT NO BEEP TAB.
  233.         DISPLAY " ONE MORE TIME " POSITION 0.
  234.         ACCEPT NAME POSITION 0 PROMPT NO BEEP TAB.
  235.       *
  236.         PERFORM RETURN-TO-MENU.
  237.         GO TO TEST-4-PARA.
  238.       *
  239.       *
  240.     TEST-5-PARA.
  241.         DISPLAY "5. CHECK SCREEN DIMENSIONS (24X79 DEFAULT)"
  242.             LINE 1 POSITION 12 ERASE.
  243.         DISPLAY "HOW MANY HORIZONTAL ROWS ARE THERE ON YOUR CRT? "
  244.             LINE 3 POSITION 5.
  245.         ACCEPT R POSITION 0 TAB NO BEEP.
  246.         IF R = 0 MOVE 24 TO R.
  247.         DISPLAY "HOW MANY VERTICAL COLUMNS? "  LINE 5 POSITION 5.
  248.         ACCEPT C POSITION 0 TAB NO BEEP.
  249.         IF C = 0 MOVE 79 TO C.
  250.         DISPLAY "YOU SHOULD SEE AN ASTERISK IN EACH CORNER"
  251.         LINE 7 POSITION 5.
  252.         DISPLAY "OF SCREEN (AFTER PRESSING ""RETURN"")"
  253.             LINE 8 POSITION 5.
  254.         ACCEPT ONE-CHAR POSITION 0 NO BEEP.
  255.         DISPLAY "*" LINE 1 POSITION 1 ERASE.
  256.         DISPLAY "*" LINE R.
  257.         DISPLAY "*" LINE 1 POSITION C.
  258.         DISPLAY "*" LINE R POSITION C.
  259.       *
  260.         DISPLAY "ENTER '0' TO DISPLAY LINE NOS, OTHERWISE 'RETURN'"
  261.         LINE 3 POSITION 5.
  262.         ACCEPT ONE-CHAR POSITION 0 NO BEEP TAB.
  263.         IF ONE-CHAR NOT = "0" GO TO COL-DISPLAY.
  264.         MOVE 1 TO LINE-NO.
  265.         MOVE C TO N.
  266.         SUBTRACT 1 FROM N.
  267.         PERFORM DISPLAY-LINE-NO R TIMES.
  268.       *
  269.     COL-DISPLAY.
  270.         DISPLAY "ENTER '1' TO DISPLAY COL-NUM, OTHERWISE 'RETURN'"
  271.             LINE 5 POSITION 5.
  272.         ACCEPT ONE-CHAR POSITION 0 NO BEEP TAB.
  273.         IF ONE-CHAR NOT = "1" GO TO ENTER-LINE.
  274.         DISPLAY COL-NUM SIZE C LINE 1 POSITION 1.
  275.         DISPLAY COL-NUM SIZE C LINE R POSITION 1.
  276.       *
  277.     ENTER-LINE.
  278.         DISPLAY "ENTER AN " LINE 7 POSITION 5.
  279.         MOVE C TO C-DISPLAY.
  280.         DISPLAY C-DISPLAY LINE 7 POSITION 0.
  281.         DISPLAY " CHARACTER FIELD TO TEST ACCEPT LIMITS"
  282.             LINE 7 POSITION 0.
  283.         ACCEPT COL-ACC LINE 9 POSITION 1 SIZE C NO BEEP PROMPT TAB.
  284.         DISPLAY COL-ACC LINE 10 SIZE C REVERSE.
  285.       *
  286.         PERFORM RETURN-TO-MENU.
  287.         GO TO TEST-5-PARA.
  288.       *
  289.     DISPLAY-LINE-NO.
  290.         MOVE LINE-NO TO LINE-NO-EDIT.
  291.         DISPLAY LINE-NO, LINE LINE-NO, POSITION 1.
  292.         DISPLAY LINE-NO-EDIT, LINE LINE-NO, POSITION N.
  293.         ADD 1 TO LINE-NO.
  294.       *
  295.       *
  296.     TEST-6-PARA.
  297.         DISPLAY "6. ACCEPT WITH/WITHOUT OFF"
  298.             LINE 1 POSITION 12 ERASE.
  299.         DISPLAY "THIS LINE SHOULD REMAIN UNCHANGED"
  300.             LINE 23 POSITION 5.
  301.         DISPLAY "ENTER YOUR CODE NAME: " LINE 5 POSITION 5.
  302.         ACCEPT NAME POSITION 0 PROMPT NO BEEP TAB OFF.
  303.         DISPLAY "  YOUR CODE NAME WAS: " LINE 7 POSITION 5.
  304.         DISPLAY NAME POSITION 0.
  305.       *
  306.         PERFORM RETURN-TO-MENU.
  307.         GO TO TEST-6-PARA.
  308.       *
  309.       *
  310.     TEST-7-PARA.
  311.         DISPLAY "7. ACCEPT/DISPLAY IN REVERSE"
  312.             LINE 1 POSITION 12 ERASE REVERSE.
  313.         DISPLAY "THIS LINE SHOULD REMAIN UNCHANGED"
  314.             LINE 23 POSITION 5.
  315.         DISPLAY "DISPLAY WITH EXTRA SPACES "
  316.             LINE 5 POSITION 5 REVERSE.
  317.       *
  318.         DISPLAY "ACCEPT IN REVERSE: " LINE 8 POSITION 5.
  319.         ACCEPT NAME POSITION 0 REVERSE NO BEEP TAB.
  320.       *
  321.         DISPLAY "ACCEPT W/PROMPT: " LINE 10 POSITION 5.
  322.         ACCEPT NAME POSITION 0 PROMPT " "
  323.             REVERSE NO BEEP TAB.
  324.       *
  325.         DISPLAY "ACCEPT W/DEF PROMPT: " LINE 12 POSITION 5.
  326.         ACCEPT NAME POSITION 0 PROMPT REVERSE NO BEEP TAB.
  327.       *
  328.         PERFORM RETURN-TO-MENU.
  329.         GO TO TEST-7-PARA.
  330.       *
  331.       *
  332.     TEST-8-PARA.
  333.         DISPLAY "8. ACCEPTING .... FROM DATE, DAY, AND TIME"
  334.             LINE 1 POSITION 12 ERASE.
  335.         ACCEPT DATE-FLD FROM DATE.
  336.         ACCEPT DAY-FLD FROM DAY.
  337.         ACCEPT TIME-FLD FROM TIME.
  338.         DISPLAY " " LINE 2.
  339.         DISPLAY "    TODAY'S DATE IS   (YYMMDD): ", DATE-FLD.
  340.         DISPLAY " ".
  341.         DISPLAY "    THE JULIAN FORM IS (YYDDD): ", DAY-FLD.
  342.         DISPLAY " ".
  343.         DISPLAY "    THE TIME IS     (HHMMSSss): ", TIME-FLD.
  344.       *
  345.         PERFORM RETURN-TO-MENU.
  346.         GO TO TEST-8-PARA.
  347.       *
  348.       *
  349.     TEST-9-PARA.
  350.         DISPLAY "9. HIGH/LOW INTENSITY AND DEFAULT POSITIONING"
  351.             LINE 1 POSITION 12 ERASE.
  352.         DISPLAY "THIS LINE SHOULD REMAIN UNCHANGED"
  353.             LINE 23 POSITION 5.
  354.         DISPLAY "DISPLAY LOW, ACCEPT LOW" LINE 4 POSITION 40.
  355.         DISPLAY "DISPLAY LOW, ACCEPT HIGH" LINE 6 POSITION 40.
  356.         DISPLAY "  W/ DEFAULT POSITIONING" LINE 8 POSITION 40.
  357.       *
  358.         DISPLAY "OPERAND   = " LINE 4 LOW.
  359.         ACCEPT OPERAND LINE 4 POSITION 13 SIZE 9
  360.                     TAB NO BEEP PROMPT CONVERT LOW.
  361.         MOVE OPERAND TO RESULT.
  362.         DISPLAY RESULT LINE 4 POSITION 13 LOW.
  363.       *
  364.         DISPLAY "OPERAND   = " LINE 6 LOW.
  365.         ACCEPT OPERAND LINE 6 POSITION 13 SIZE 9
  366.                     TAB NO BEEP PROMPT CONVERT HIGH.
  367.         MOVE OPERAND TO RESULT.
  368.         DISPLAY RESULT LINE 6 POSITION 13 LOW.
  369.       *
  370.         DISPLAY "OPERAND   = " LINE 8 LOW.
  371.         ACCEPT OPERAND LINE 8 POSITION 13 SIZE 9
  372.                     TAB NO BEEP PROMPT CONVERT HIGH.
  373.         MOVE OPERAND TO RESULT.
  374.         DISPLAY "RESULT = " POSITION 0 LOW.
  375.         DISPLAY RESULT POSITION 0 LOW.
  376.       *
  377.         PERFORM RETURN-TO-MENU.
  378.         GO TO TEST-9-PARA.
  379.       *
  380.       *
  381.     TEST-10-PARA.
  382.         DISPLAY "10. ACCEPT/DISPLAY WITH BLINK"
  383.             LINE 1 POSITION 12 ERASE BLINK.
  384.         DISPLAY " THIS LINE SHOULD REMAIN UNCHANGED"
  385.             LINE 23 POSITION 5.
  386.         DISPLAY " DISPLAY WITH EXTRA SPACES "
  387.             LINE 5 POSITION 5 BLINK REVERSE.
  388.         DISPLAY "BLINK/REVERSE VIDEO" LINE 5 POSITION 40.
  389.         DISPLAY " DISPLAY WITH EXTRA SPACES "
  390.             LINE 7 POSITION 5 LOW BLINK.
  391.         DISPLAY "LOW/BLINK" LINE 7 POSITION 40.
  392.         DISPLAY " WE ARE TESTING ALL THE "
  393.             LINE 9 POSITION 5 LOW REVERSE.
  394.         DISPLAY "LOW/REVERSE VIDEO" LINE 9 POSITION 40.
  395.         DISPLAY " DISPLAY OPTIONS "
  396.             LINE 11 POSITION 5 LOW BLINK REVERSE.
  397.         DISPLAY "LOW/REV/BLINK" LINE 11 POSITION 40.
  398.       *
  399.         DISPLAY " ACCEPT WITH BLINK: " LINE 14 POSITION 5.
  400.         ACCEPT NAME POSITION 0 NO BEEP TAB BLINK.
  401.       *
  402.         DISPLAY " LOW/REV W/PROMPT: " LINE 16 POSITION 5.
  403.         ACCEPT NAME POSITION 0 NO BEEP TAB PROMPT " " LOW REVERSE.
  404.       *
  405.         DISPLAY " BLINK/REV  W/DEF PROMPT: " LINE 18 POSITION 5.
  406.         ACCEPT NAME POSITION 0 NO BEEP TAB PROMPT BLINK REVERSE.
  407.       *
  408.         PERFORM RETURN-TO-MENU.
  409.         GO TO TEST-10-PARA.
  410.       *
  411.       *
  412.     TEST-11-PARA.
  413.         DISPLAY
  414.             "11. ACCEPT WITH ON EXCEPTION CLAUSE AND CONVERT"
  415.             LINE 1 POSITION 12 ERASE.
  416.         MOVE ZEROS TO OPERAND, RESULT.
  417.         DISPLAY
  418.         "ENTER A NUMBER AND TERMINATE W/EXCEPTION CHARACTER:"
  419.             LINE 4 POSITION 5.
  420.         DISPLAY
  421.         "(NON-NUMERIC ENTRY WILL SHOW CONVERT ERROR ""98"")"
  422.             LINE 6 POSITION 5.
  423.         DISPLAY SPACES SIZE 40 LINE 12 POSITION 20.
  424.         ACCEPT OPERAND LINE 8 POSITION 25 SIZE 9
  425.             PROMPT CONVERT NO BEEP TAB
  426.             ON EXCEPTION EXC-NUM
  427.                 DISPLAY
  428.                     "*** EXCEPTION BRANCH TAKEN ***"
  429.                     LINE 12 POSITION 29 BEEP.
  430.         MOVE OPERAND TO RESULT.
  431.         DISPLAY "AS IT WAS ACCEPTED:" LINE 9 POSITION 5.
  432.         DISPLAY RESULT LINE 9 POSITION 24.
  433.         DISPLAY "TERMINATION CODE <  >" LINE 13 POSITION 33.
  434.         DISPLAY EXC-NUM LINE 13 POSITION 51.
  435.       *
  436.         PERFORM RETURN-TO-MENU.
  437.         GO TO TEST-11-PARA.
  438.       *
  439.       *
  440.     TEST-12-PARA.
  441.         DISPLAY "12. ACCEPT WITH UPDATE"
  442.             LINE 1 POSITION 12 ERASE.
  443.         DISPLAY "UPDATE INITIAL FIELD, THEN <RETURN>"
  444.             LINE 3 POSITION 5.
  445.         MOVE "INIT-FIELD" TO NAME.
  446.         ACCEPT NAME LINE 5 POSITION 20 UPDATE NO BEEP TAB.
  447.         DISPLAY "UPDATE CURRENT FIELD, THEN <TAB>"
  448.             LINE 7 POSITION 5.
  449.         ACCEPT NAME LINE 9 POSITION 20 UPDATE NO BEEP TAB.
  450.         DISPLAY "(TRAILING CHARACTERS SHOULD BE BLANK)"
  451.             LINE 11 POSITION 5.
  452.         DISPLAY NAME LINE 13 POSITION 20.
  453.       *
  454.         PERFORM RETURN-TO-MENU.
  455.         GO TO TEST-12-PARA.
  456.       *
  457.       *
  458.     TEST-13-PARA.
  459.         DISPLAY "13. ERASE TO END-OF-LINE"
  460.             LINE 2 POSITION 12 ERASE.
  461.         DISPLAY "(SCREEN DIMENSIONS TAKEN FROM TEST 5.)"
  462.             LINE 3 POSITION 15.
  463.       *
  464.         DISPLAY "ACCEPT WITH EOL." LINE 5 POSITION 5.
  465.         DISPLAY COL-NUM SIZE C LINE 9.
  466.         DISPLAY COL-NUM SIZE C LINE 10.
  467.         DISPLAY "  THIS LINE MUST REMAIN UNCHANGED.  "
  468.             LINE 10 POSITION 3.
  469.         DISPLAY "PRESS ""RETURN"" TO ENTER YOUR NAME W/EOL."
  470.             LINE 7 POSITION 5.
  471.         ACCEPT ONE-CHAR POSITION 0 NO BEEP.
  472.         ACCEPT NAME LINE 9 POSITION 5 PROMPT
  473.                     NO BEEP ERASE EOL TAB.
  474.       *
  475.         DISPLAY "DISPLAY WITH EOL." LINE 12 POSITION 5.
  476.         DISPLAY COL-NUM SIZE C LINE 16.
  477.         DISPLAY COL-NUM SIZE C LINE 17.
  478.         DISPLAY "  THIS LINE MUST REMAIN UNCHANGED.  "
  479.             LINE 17 POSITION 3.
  480.         DISPLAY "PRESS ""RETURN"" TO DISPLAY W/EOL."
  481.             LINE 14 POSITION 5.
  482.         ACCEPT ONE-CHAR POSITION 0 NO BEEP.
  483.         DISPLAY NAME LINE 16 POSITION 5 ERASE EOL.
  484.       *
  485.         PERFORM RETURN-TO-MENU.
  486.         GO TO TEST-13-PARA.
  487.       *
  488.       *
  489.     TEST-14-PARA.
  490.         SUBTRACT 1 FROM C.
  491.         DISPLAY "14. ERASE TO END-OF SCREEN"
  492.             LINE 2 POSITION 12 ERASE.
  493.         DISPLAY "(SCREEN DIMENSIONS TAKEN FROM TEST 5.)"
  494.             LINE 3 POSITION 15.
  495.       *
  496.         DISPLAY "ACCEPT WITH EOS." LINE 5 POSITION 5.
  497.         DISPLAY COL-NUM SIZE C LINE 9.
  498.         MOVE 10 TO N.
  499.         PERFORM THIS-LINE.
  500.         DISPLAY "PRESS ""RETURN"" TO ENTER YOUR NAME W/EOS"
  501.             LINE 7 POSITION 5.
  502.         ACCEPT ONE-CHAR POSITION 0 NO BEEP.
  503.         ACCEPT NAME LINE 9 POSITION 5
  504.                     NO BEEP PROMPT ERASE EOS TAB.
  505.       *
  506.         DISPLAY "DISPLAY WITH EOS." LINE 12 POSITION 5.
  507.         DISPLAY COL-NUM SIZE C LINE 16.
  508.         MOVE 17 TO N.
  509.         PERFORM THIS-LINE.
  510.         DISPLAY "PRESS ""RETURN"" TO DISPLAY W/EOS"
  511.             LINE 14 POSITION 5.
  512.         ACCEPT ONE-CHAR POSITION 0 NO BEEP.
  513.         DISPLAY NAME LINE 16 POSITION 5 ERASE EOS.
  514.       *
  515.         ADD 1 TO C.
  516.         PERFORM RETURN-TO-MENU.
  517.         GO TO TEST-14-PARA.
  518.       *
  519.     THIS-LINE.
  520.         DISPLAY COL-NUM SIZE C LINE N.
  521.         DISPLAY " THIS LINE MUST BE ERASED. " LINE N POSITION 3.
  522.         ADD 1 TO N.
  523.         IF N NOT GREATER THAN R GO TO THIS-LINE.
  524.       *
  525.       *
  526.     RETURN-TO-MENU.
  527.         MOVE SPACE TO ONE-CHAR.
  528.         DISPLAY "PRESS ""RETURN"" TO RETURN TO MENU.  < >"
  529.             LINE 20 POSITION 26.
  530.         DISPLAY "ENTER AN ""R"" TO REPEAT THIS TEST."
  531.             LINE 21 POSITION 26.
  532.         ACCEPT ONE-CHAR LINE 20 POSITION 62 TAB NO BEEP.
  533.         IF ONE-CHAR = " " GO TO ENTER-COMMAND.
  534.         IF ONE-CHAR NOT EQUAL "R" AND
  535.         ONE-CHAR NOT EQUAL "r" GO TO RETURN-TO-MENU.
  536.       *
  537.       *
  538.     EXIT-PARA.
  539.         EXIT PROGRAM.
  540.       *
  541.       *
  542.     END PROGRAM.
  543.