Deck SETCHT

Library Member Format: MODIFY

Source

Seq #  *Modification Id* Act 
----------------------------+
00001  M00S00001.setcht  +++|          IDENT  SETCHT
00002  M00S00002.setcht  +++|          ENTRY  SETCHT
00003  M00S00003.setcht  +++|          SYSCOM B1
Line S00004 Modification History
M01 (Removed by) ns2440
Seq #  *Modification Id* Act 
----------------------------+
00004  M01S00004.ns2440  ---| SETCHT   TITLE  SET INPUT CHARACTER TYPE.
00005  M01S00005.ns2440  ---|*COMMENT  SET INPUT CHARACTER TYPE.
Line S00001 Modification History
M01 (Added by) ns2440
Seq #  *Modification Id* Act 
----------------------------+
00006  M01S00001.ns2440  +++|          TITLE  SETCHT - SET INPUT CHARACTER TYPE.
00007  M01S00002.ns2440  +++|*COMMENT  SETCHT - SET INPUT CHARACTER TYPE.
Line S00006 Modification History
M01 (Removed by) 281l803
Seq #  *Modification Id* Act 
----------------------------+
00008  M01S00006.281l803 ---|          COMMENT  COPYRIGHT CONTROL DATA CORP. 1977.
Line S00001 Modification History
M01 (Added by) 281l803
Seq #  *Modification Id* Act 
----------------------------+
00009  M01S00001.281l803 +++|          COMMENT  COPYRIGHT CONTROL DATA SYSTEMS INC.  1992.
00010  M00S00007.setcht  +++| SETCHT   SPACE  4,10
00011  M00S00008.setcht  +++|*****     SETCHT - SET CHARACTER TYPE.
00012  M00S00009.setcht  +++|*
00013  M00S00010.setcht  +++|*         W.E. MARTIN.       77/05/05.
00014  M00S00011.setcht  +++|          SPACE  4,10
00015  M00S00012.setcht  +++|*         COMMOM TEXT DEFINITION.
00016  M00S00013.setcht  +++|
00017  M00S00014.setcht  +++|
00018  M00S00015.setcht  +++|*CALL     COMCMAC
00019  M00S00016.setcht  +++|*CALL     COMKMAC
00020  M00S00017.setcht  +++|*CALL     COMSPRD
00021  M00S00018.setcht  +++|          SPACE  4,30
00022  M00S00019.setcht  +++|***       SETCHT - SET CHARACTER TYPE.
00023  M00S00020.setcht  +++|*
00024  M00S00021.setcht  +++|*         SET CHARACTER TYPE ALLOWS A TASK TO CHANGE THE CHARACTER
00025  M00S00022.setcht  +++|*         TYPE ASSOCIATED WITH A PARTICULAR TERMINAL.  THE ARGUMENTS
00026  M00S00023.setcht  +++|*         ARE CHECKED FOR VALIDITY AND A *CTI* CALL IS MADE IN ORDER
00027  M00S00024.setcht  +++|*         TO PASS THE REQUEST ON TO THE NETWORK SUPERVISOR.
00028  M00S00025.setcht  +++|*
00029  M00S00026.setcht  +++|*         CALL FORMAT -
00030  M00S00027.setcht  +++|*         FORTRAN EXTENDED - CALL SETCHT(TERMINAL,STATUS,ACT)
00031  M00S00028.setcht  +++|*
00032  M00S00029.setcht  +++|*         COBOL - ENTER SETCHT USING TERMINAL, STATUS, ACT.
00033  M00S00030.setcht  +++|*
00034  M00S00031.setcht  +++|*                 TERMINAL = TERMINAL WHICH IS TO HAVE ITS ATTRIBUTES
00035  M00S00032.setcht  +++|*                            CHANGED.  TERMINAL IS 1 - 7 CHARACTERS,
00036  M00S00033.setcht  +++|*                            ZERO OR BLANK FILLED.  IF A BINARY ZERO
00037  M00S00034.setcht  +++|*                            IS SUPPLIED, THE OPERATION APPLIES TO
00038  M00S00035.setcht  +++|*                            ORIGINATING TERMINAL.
00039  M00S00036.setcht  +++|*
00040  M00S00037.setcht  +++|*                 STATUS = LOCATION WHICH IS TO HAVE THE TERMINAL
00041  M00S00038.setcht  +++|*                          LOGGIN STATUS RETURNED.
00042  M00S00039.setcht  +++|*
00043  M00S00040.setcht  +++|*                 ACT = INTEGER VALUE FOR FORTRAN AND COMP-1 FOR
00044  M00S00041.setcht  +++|*                       COBOL, VALUE RANGING FROM 2 - 4, OR THE
00045  M00S00042.setcht  +++|*                       CHARACTER STRINGS - *ASCII7*, *ASCII5* AND
00046  M00S00043.setcht  +++|*                       *DISPLAY*.
00047  M00S00044.setcht  +++|
00048  M00S00045.setcht  +++|          VFD    42/0LSETCHT,18/SETCHT
00049  M00S00046.setcht  +++|
00050  M00S00047.setcht  +++| SETCHT   SUBR               ENTRY/EXIT
00051  M00S00048.setcht  +++|          SX6    A0          SAVE (A0)
00052  M00S00049.setcht  +++|          MX0    42
00053  M00S00050.setcht  +++|          SA6    SCTA
00054  M00S00051.setcht  +++|          SB1    1
00055  M00S00052.setcht  +++|
00056  M00S00053.setcht  +++|*         PROCESS TERMINAL NAME.
00057  M00S00054.setcht  +++|
00058  M00S00055.setcht  +++|          SA3    X1
00059  M00S00056.setcht  +++|          UX2,B3 X3
00060  M00S00057.setcht  +++|          ZR     X1,SCT8     IF NO ARGUMENTS - ABORT TASK
00061  M00S00058.setcht  +++|          NZ     B3,SCT1     IF NOT COBOL COMPUTATIONAL-1 ARGUMENT
00062  M00S00059.setcht  +++|          BX1    X1-X1
00063  M00S00060.setcht  +++|          ZR     X2,SCT2     IF ZERO TERMINAL NAME
00064  M00S00061.setcht  +++| SCT1     BX1    X0*X3
00065  M00S00062.setcht  +++|          ZR     X1,SCT2     IF ZERO TERMINAL NAME
00066  M00S00063.setcht  +++|          RJ     ZFN         ZERO FILL NAME
00067  M00S00064.setcht  +++| SCT2     BX5    X1
00068  M00S00065.setcht  +++|
00069  M00S00066.setcht  +++|*         PROCESS STATUS PARAMETER.
00070  M00S00067.setcht  +++|
00071  M00S00068.setcht  +++|          SA1    A1+B1       READ NEXT ARGUMENT
00072  M00S00069.setcht  +++|          ZR     X1,SCT8     IF NO *STATUS* ARGUMENT - ABORT TASK
00073  M00S00070.setcht  +++|          SX7    X1          SET STATUS RETURN ADDRESS
00074  M00S00071.setcht  +++|
00075  M00S00072.setcht  +++|*         PROCESS ACT PARAMETER.
00076  M00S00073.setcht  +++|
00077  M00S00074.setcht  +++|          SA2    A1+B1
00078  M00S00075.setcht  +++|          SA7    SCTB+1
00079  M00S00076.setcht  +++|          ZR     X2,SCT5     IF NO *ACT* ARGUMENT
00080  M00S00077.setcht  +++|          SA1    X2
00081  M00S00078.setcht  +++|          BX7    X0*X1
00082  M00S00079.setcht  +++|          UX3,B3 X1          UNPACK POSSIBLE COBOL ARGUMENT
00083  M00S00080.setcht  +++|          ZR     B3,SCT3     IF NOT COBOL COMPUTATIONAL-1
00084  M00S00081.setcht  +++|          NZ     X7,SCT6     IF CHARACTER ARGUMENT
00085  M00S00082.setcht  +++| SCT3     SX4    X3-5
00086  M00S00083.setcht  +++|          PL     X4,SCT8     IF ARGUMENT TOO LARGE
00087  M00S00084.setcht  +++|          SX4    X3-2
00088  M00S00085.setcht  +++|          NG     X4,SCT8     IF TASK *ACT* SETS MODE TO BINARY
00089  M00S00086.setcht  +++| SCT4     BX6    X5+X3       SET TERMINAL NAME AND CHARACTER TYPE
00090  M00S00087.setcht  +++|          SA6    SCTB
00091  M00S00088.setcht  +++|          SETCHT A6
00092  M00S00089.setcht  +++| SCT5     SA1    SCTA        RESTORE (A0)
00093  M00S00090.setcht  +++|          SA0    X1+
00094  M00S00091.setcht  +++|          EQ     SETCHTX     RETURN
00095  M00S00092.setcht  +++|
00096  M00S00093.setcht  +++|
00097  M00S00094.setcht  +++|*         PERFORM TABLE LOOKUP FOR DISPLAY ARGUMENTS.
00098  M00S00095.setcht  +++|
00099  M00S00096.setcht  +++| SCT6     RJ     ZFN         ZERO FILL NAME
00100  M00S00097.setcht  +++|          SB3    TSCTL       (B3) = TABLE SIZE
00101  M00S00098.setcht  +++| SCT7     SA3    TSCT-1+B3
00102  M00S00099.setcht  +++|          BX4    X0*X3
00103  M00S00100.setcht  +++|          SB3    B3-B1
00104  M00S00101.setcht  +++|          BX7    X4-X1
00105  M00S00102.setcht  +++|          SX3    X3
00106  M00S00103.setcht  +++|          ZR     X7,SCT4     IF ARGUMENT FOUND
00107  M00S00104.setcht  +++|          GE     B3,SCT7     IF TABLE NOT EXHAUSTED
00108  M00S00105.setcht  +++|
00109  M00S00106.setcht  +++|*         ABORT TASK FOR ARGUMENT ERROR.
00110  M00S00107.setcht  +++|
00111  M00S00108.setcht  +++| SCT8     SA1    SETCHT      READ TRACE-BACK WORD
00112  M00S00109.setcht  +++|          MX0    30
00113  M00S00110.setcht  +++|          LX1    30
00114  M00S00111.setcht  +++|          SA2    X1-1        READ *RJ* FROM CALLING PROGRAM
00115  M00S00112.setcht  +++|          BX6    -X0*X2
00116  M00S00113.setcht  +++|          SA6    SCTB
00117  M00S00114.setcht  +++|          ARGERR  A6         EXIT TO EXECUTIVE
00118  M00S00115.setcht  +++|
00119  M00S00116.setcht  +++| SCTA     BSS    1           TEMPORARY STORAGE (A0)
00120  M00S00117.setcht  +++| SCTB     BSS    2           LOCATION FOR MESSAGE HEADER
00121  M00S00118.setcht  +++|
00122  M00S00119.setcht  +++|*         TABLE OF TERMINAL CHARACTER TYPES.
00123  M00S00120.setcht  +++|*T        42/  CHARACTER TYPE, 18/  NETWORK REQUIRED VALUE
Figure

0171829 NETWORK REQUIRED VALUE CHARACTER TYPE3059 CHARACTER TYPE

00124  M00S00121.setcht  +++|
00125  M00S00122.setcht  +++| TSCT     BSS    0           TABLE OF CHARACTER TYPES
00126  M00S00123.setcht  +++|          VFD    42/0LASCII7,18/2
00127  M00S00124.setcht  +++|          VFD    42/0LASCII5,18/3
00128  M00S00125.setcht  +++|          VFD    42/0LDISPLAY,18/4
00129  M00S00126.setcht  +++| TSCTL    EQU    *-TSCT      LENGTH OF CHARACTER TYPE TABLE
00130  M00S00127.setcht  +++|
00131  M00S00128.setcht  +++|
00132  M00S00129.setcht  +++|
00133  M00S00130.setcht  +++|*         COMMON DECK.
00134  M00S00131.setcht  +++|
00135  M00S00132.setcht  +++|
00136  M00S00133.setcht  +++|*CALL     COMKZFN
00137  M00S00134.setcht  +++|
00138  M00S00135.setcht  +++|
00139  M00S00136.setcht  +++|          END