User Tools

Site Tools


cdc:nos2.source:opl.opl871:common:comcckd

Common COMCCKD

1 Modification

Source

Seq #  *Modification Id* Act 
----------------------------+
00001  M01S00001.comcckd +++|          CTEXT  COMCCKD - COPY K-DISPLAY TO FILE.
00002  M01S00002.comcckd +++|          SPACE  4
00003  M01S00003.comcckd +++| QUAL$    IF     -DEF,QUAL$
00004  M01S00004.comcckd +++|          QUAL   COMCCKD
00005  M01S00005.comcckd +++| QUAL$    ENDIF
00006  M01S00006.comcckd +++|          BASE   D
Line S00007 Modification History
M01 (Added by) comcckd
M02 (Updated by) 281l803
Seq #  *Modification Id* Act 
----------------------------+
00007  M02S00007.281l803 ---|*COMMENT  COPYRIGHT CONTROL DATA CORPORATION. 1984.
00008  M01S00001.281l803 +++|*         COMMENT  COPYRIGHT CONTROL DATA SYSTEMS INC.  1992.
00009  M01S00008.comcckd +++| COMCCKD  SPACE  4,10
00010  M01S00009.comcckd +++|***       COMCCKD - COPY K-DISPLAY TO FILE.
00011  M01S00010.comcckd +++|*
00012  M01S00011.comcckd +++|*         J. D. HOLMBECK     84/01/15.
00013  M01S00012.comcckd +++| EQUIV    SPACE  4,10
00014  M01S00013.comcckd +++|**        GENERAL EQUIVILENCES.
00015  M01S00014.comcckd +++|
00016  M01S00015.comcckd +++|
00017  M01S00016.comcckd +++| CKDC$    IF     -DEF,CDKC$
00018  M01S00017.comcckd +++| CKDC$    EQU    64          MAXIMUM NUMBER OF CHARACTERS PER LINE
00019  M01S00018.comcckd +++| CKDC$    ENDIF
00020  M01S00019.comcckd +++| CKDI$    IF     -DEF,CKDI$  Y-COORDINATE INCREMENT FOR K-DISPLAY
00021  M01S00020.comcckd +++| CKDI$    EQU    15
00022  M01S00021.comcckd +++| CKDI$    ENDIF
00023  M01S00022.comcckd +++| CKDL$    IF     -DEF,CKDL$
00024  M01S00023.comcckd +++| CKDL$    EQU    40          MAXIMUM NUMBER OF LINES PER DISPLAY
00025  M01S00024.comcckd +++| CKDL$    ENDIF
00026  M01S00025.comcckd +++| CKDW$    EQU    CKDC$/10+1  NUMBER OF WORDS PER DISPLAY LINE
00027  M01S00026.comcckd +++| CKDY$    IF     -DEF,CKDY$  Y-COORDINATE OF K-DISPLAY
00028  M01S00027.comcckd +++| CKDY$    EQU    7707B
00029  M01S00028.comcckd +++| CKDY$    ENDIF
00030  M01S00029.comcckd +++| WORKING  SPACE  4,10
00031  M01S00030.comcckd +++|**        WORKING STORAGE.
00032  M01S00031.comcckd +++|
00033  M01S00032.comcckd +++|
00034  M01S00033.comcckd +++| SPS      BSS    1           SPACE PREFIX STATUS
00035  M01S00034.comcckd +++| WSP      DATA   10H            WORD OF SPACES
00036  M01S00035.comcckd +++| CKD      SPACE  4,25
00037  M01S00036.comcckd +++|***       CKD - COPY K-DISPLAY TO FILE.
00038  M01S00037.comcckd +++|*
00039  M01S00038.comcckd +++|*         ENTRY  (B6) = FWA OF K-DISPLAY BUFFER.
00040  M01S00039.comcckd +++|*                ((B6)) - BIT 48 SET IF CODED FORMAT.
00041  M01S00040.comcckd +++|*                (B7) .NE. 0 IF PREFIX EACH LINE BY 10 SPACES.
00042  M01S00041.comcckd +++|*                (X2) = FET ADDRESS.
00043  M01S00042.comcckd +++|*                CKDP$ - IF DEFINED, IGNORE PROGRAM FORMAT.
00044  M01S00043.comcckd +++|*                CKDC$ = MAXIMUM NUMBER OF CHARACTERS PER LINE.
00045  M01S00044.comcckd +++|*                        SET TO 64 IF NOT DEFINED.
00046  M01S00045.comcckd +++|*                CKDI$ = Y-COORDINATE INCREMENT FOR K-DISPLAY.  SET TO
00047  M01S00046.comcckd +++|*                        THE KDC DEFAULT 15 IF NO DEFINED.
00048  M01S00047.comcckd +++|*                CKDY$ = Y-COORDINATE OF K-DISPLAY.  SET TO KDC DEFAULT
00049  M01S00048.comcckd +++|*                        7707B IF NOT DEFINED.
00050  M01S00049.comcckd +++|*                CKDL$ = MAXIMUM NUMBER OF LINES PER DISPLAY.
00051  M01S00050.comcckd +++|*                        SET TO 40 IF NOT DEFINED.
00052  M01S00051.comcckd +++|*                CKDS$ - IF DEFINED, DO NOT SPACE FILL COLONS.
00053  M01S00052.comcckd +++|*
00054  M01S00053.comcckd +++|*         EXIT   K-DISPLAY COPIED TO FET BUFFER.
00055  M01S00054.comcckd +++|*
00056  M01S00055.comcckd +++|*         USES   A - 1, 2, 6.
00057  M01S00056.comcckd +++|*                X - 1, 2, 6.
00058  M01S00057.comcckd +++|*
00059  M01S00058.comcckd +++|*         CALLS  CCK, CPK.
00060  M01S00059.comcckd +++|*
00061  M01S00060.comcckd +++|*         XREF   COMCMAC, COMCMBS, COMCSFN, COMCWTH, COMCWTW, COMCZTB.
00062  M01S00061.comcckd +++|
00063  M01S00062.comcckd +++|
00064  M01S00063.comcckd +++| CKD      SUBR               ENTRY/EXIT
00065  M01S00064.comcckd +++|          SX6    B7          SAVE SPACE PREFIX STATUS
00066  M01S00065.comcckd +++|          SA6    SPS
00067  M01S00066.comcckd +++| CKDP$    IF     -DEF,CKDP$
00068  M01S00067.comcckd +++|          SA1    B6          CHECK FOR CODED FLAG
00069  M01S00068.comcckd +++|          LX1    59-48
00070  M01S00069.comcckd +++| CKDP$    ENDIF
00071  M01S00070.comcckd +++|          SB6    B6+B1
00072  M01S00071.comcckd +++| CKDP$    IF     -DEF,CKDP$
00073  M01S00072.comcckd +++|          NG     X1,CKD1     IF CODED FORMAT
00074  M01S00073.comcckd +++|          BX6    X2          SAVE FET ADDRESS
00075  M01S00074.comcckd +++|          SA6    CKDA
00076  M01S00075.comcckd +++|          RJ     CPK         COPY PROGRAM FORMAT K-DISPLAY TO FILE
00077  M01S00076.comcckd +++|          SA2    CKDA        GET FET ADDRESS
00078  M01S00077.comcckd +++| CKDP$    ENDIF
00079  M01S00078.comcckd +++| CKD1     RJ     CCK         COPY CODED FORMAT K-DISPLAY TO FILE
00080  M01S00079.comcckd +++|          EQ     CKDX        RETURN
00081  M01S00080.comcckd +++|
00082  M01S00081.comcckd +++| CKDA     BSS    1           FET ADDRESS
00083  M01S00082.comcckd +++| CCK      SPACE  4,15
00084  M01S00083.comcckd +++|**        CCK - COPY CODED FORMAT K-DISPLAY.
00085  M01S00084.comcckd +++|*
00086  M01S00085.comcckd +++|*         ENTRY  (B6) = FWA OF K-DISPLAY BUFFER.
00087  M01S00086.comcckd +++|*                (X2) = FET ADDRESS.
00088  M01S00087.comcckd +++|*
00089  M01S00088.comcckd +++|*         EXIT   K-DISPLAY IMAGE COPIED TO FET BUFFER.
00090  M01S00089.comcckd +++|*
00091  M01S00090.comcckd +++|*         USES   A - 1, 6.
00092  M01S00091.comcckd +++|*                B - 6.
00093  M01S00092.comcckd +++|*                X - 0, 1, 6.
00094  M01S00093.comcckd +++|*
00095  M01S00094.comcckd +++|*         CALLS  CWL.
00096  M01S00095.comcckd +++|*
00097  M01S00096.comcckd +++|*         MACROS WRITEH, WRITEW.
00098  M01S00097.comcckd +++|
00099  M01S00098.comcckd +++|
00100  M01S00099.comcckd +++| CCK      SUBR               ENTRY/EXIT
00101  M01S00100.comcckd +++|          SX6    B6          SAVE FWA OF K-DISPLAY
00102  M01S00101.comcckd +++|          SA6    CCKA
00103  M01S00102.comcckd +++| CCK1     SA1    CCKA        CHECK IF END OF DISPLAY
00104  M01S00103.comcckd +++|          SA1    X1
00105  M01S00104.comcckd +++|          ZR     X1,CCKX     IF END OF DISPLAY
00106  M01S00105.comcckd +++|          MX0    12          CHECK IF POINTER
00107  M01S00106.comcckd +++|          BX6    X0*X1
00108  M01S00107.comcckd +++|          BX6    X0-X1
00109  M01S00108.comcckd +++|          NZ     X6,CCK2     IF NOT POINTER
00110  M01S00109.comcckd +++|          SX6    X1          RESET K-DISPLAY ADDRESS
00111  M01S00110.comcckd +++|          SA6    CCKA
00112  M01S00111.comcckd +++|          EQ     CCK1        CHECK NEXT LINE
00113  M01S00112.comcckd +++|
00114  M01S00113.comcckd +++| CCK2     SA1    SPS
00115  M01S00114.comcckd +++|          ZR     X1,CCK3     IF NO WORD OF SPACES
00116  M01S00115.comcckd +++|          WRITEW X2,WSP,1    INSERT A WORD OF SPACES
00117  M01S00116.comcckd +++| CCK3     SA1    CCKA
00118  M01S00117.comcckd +++|          SB6    X1
00119  M01S00118.comcckd +++|          RJ     CWL         COUNT WORDS IN LINE
00120  M01S00119.comcckd +++|          SX6    B6+B7       RESET K-DISPLAY ADDRESS
00121  M01S00120.comcckd +++|          SA6    CCKA
00122  M01S00121.comcckd +++|          WRITEH X2,B6,B7    COPY LINE TO FET BUFFER
00123  M01S00122.comcckd +++|          EQ     CCK1        CHECK NEXT LINE
00124  M01S00123.comcckd +++|
00125  M01S00124.comcckd +++| CCKA     BSS    1           K-DISPLAY ADDRESS
00126  M01S00125.comcckd +++| CKDP$    IF     -DEF,CKDP$
00127  M01S00126.comcckd +++| CPK      SPACE  4,15
00128  M01S00127.comcckd +++|**        CPK - COPY PROGRAM FORMAT K-DISPLAY.
00129  M01S00128.comcckd +++|*
00130  M01S00129.comcckd +++|*         ENTRY  (B6) = FWA OF K-DISPLAY BUFFER.
00131  M01S00130.comcckd +++|*
00132  M01S00131.comcckd +++|*         EXIT   (B6) = FWA OF CODED FORMAT K-DISPLAY BUFFER.
00133  M01S00132.comcckd +++|*
00134  M01S00133.comcckd +++|*         USES   A - 1, 2, 3, 6.
00135  M01S00134.comcckd +++|*                B - 2, 3.
00136  M01S00135.comcckd +++|*                X - 0, 1, 2, 3, 4, 6, 7.
00137  M01S00136.comcckd +++|*
00138  M01S00137.comcckd +++|*         CALLS  MBS, SFN, ZTB.
00139  M01S00138.comcckd +++|
00140  M01S00139.comcckd +++|
00141  M01S00140.comcckd +++| CPK12    SB6    CPKA        SET BUFFER ADDRESS
00142  M01S00141.comcckd +++|
00143  M01S00142.comcckd +++| CPK      SUBR               ENTRY/EXIT
00144  M01S00143.comcckd +++|          SA1    WSP         SPACE FILL WORKING BUFFER
00145  M01S00144.comcckd +++|          BX6    X1
00146  M01S00145.comcckd +++|          SB2    CPKA
00147  M01S00146.comcckd +++|          SB3    CPKAE
00148  M01S00147.comcckd +++| CPK1     GE     B2,B3,CPK2  IF END OF BUFFER
00149  M01S00148.comcckd +++|          SA6    B2
00150  M01S00149.comcckd +++|          SB2    B2+B1
00151  M01S00150.comcckd +++|          EQ     CPK1        CHECK NEXT WORD
00152  M01S00151.comcckd +++|
00153  M01S00152.comcckd +++| CPK2     SA1    B6          SET INITIAL K-DISPLAY ADDRESS
00154  M01S00153.comcckd +++|          SA2    CPKA        SET INITIAL WORKING BUFFER ADDRESS
00155  M01S00154.comcckd +++|          SB2    59          SET INITIAL WORKING BUFFER BIT POSITION
00156  M01S00155.comcckd +++| CPK3     ZR     X1,CPK6     IF END OF K-DISPLAY
00157  M01S00156.comcckd +++|          MX0    2           CHECK IF NORMAL CHARACTERS
00158  M01S00157.comcckd +++|          BX6    X0*X1
00159  M01S00158.comcckd +++|          BX6    X0-X6
00160  M01S00159.comcckd +++|          ZR     X6,CPK4     IF SPECIAL CHARACTERS
00161  M01S00160.comcckd +++|          SB4    10*6        SET BIT COUNT
00162  M01S00161.comcckd +++|          SB3    59          SET UPPER BIT POSITION
00163  M01S00162.comcckd +++|          RJ     MBS         MOVE BIT STRING
00164  M01S00163.comcckd +++|          EQ     CPK3        CHECK NEXT WORD
00165  M01S00164.comcckd +++|
00166  M01S00165.comcckd +++| CPK4     MX0    12          CHECK IF POINTER
00167  M01S00166.comcckd +++|          BX6    X0*X1
00168  M01S00167.comcckd +++|          BX6    X0-X6
00169  M01S00168.comcckd +++|          NZ     X6,CPK5     IF NOT POINTER
00170  M01S00169.comcckd +++|          SA1    X1          RESET K-DISPLAY ADDRESS
00171  M01S00170.comcckd +++|          EQ     CPK3        CHECK NEXT WORD
00172  M01S00171.comcckd +++|
00173  M01S00172.comcckd +++| CPK5     BX6    X0*X1       GET X-COORDINATE
00174  M01S00173.comcckd +++|          LX6    12
00175  M01S00174.comcckd +++|          SX6    X6-6000B
00176  M01S00175.comcckd +++|          AX6    3           (X6) = CHARACTER POSITON
00177  M01S00176.comcckd +++|          SX3    6
00178  M01S00177.comcckd +++|          IX6    X6*X3
00179  M01S00178.comcckd +++|          SX4    X6
00180  M01S00179.comcckd +++|          SX3    60
00181  M01S00180.comcckd +++|          IX3    X6/X3       (X3) = WORD POSITION IN LINE
00182  M01S00181.comcckd +++|          SX7    60
00183  M01S00182.comcckd +++|          IX6    X3*X7
00184  M01S00183.comcckd +++|          IX6    X4-X6
00185  M01S00184.comcckd +++|          IX6    X7-X6
00186  M01S00185.comcckd +++|          SB2    X6-1        (B2) = BIT POSITION IN WORD
00187  M01S00186.comcckd +++|          LX0    -12+60      GET Y-COORDINATE
00188  M01S00187.comcckd +++|          BX6    X0*X1
00189  M01S00188.comcckd +++|          LX6    24
00190  M01S00189.comcckd +++|          SX4    CKDY$
00191  M01S00190.comcckd +++|          IX6    X4-X6
00192  M01S00191.comcckd +++|          SX4    CKDI$
00193  M01S00192.comcckd +++|          IX6    X6/X4       (X6) = LINE NUMBER
00194  M01S00193.comcckd +++|          SX4    CKDW$
00195  M01S00194.comcckd +++|          IX6    X6*X4
00196  M01S00195.comcckd +++|          IX6    X6+X3
00197  M01S00196.comcckd +++|          SA2    X6+CPKA     (A2) = NEW ADDRESS IN WORKING BUFFER
00198  M01S00197.comcckd +++|          SB4    6*6         SET BIT COUNT
00199  M01S00198.comcckd +++|          SB3    35          SET UPPER BIT POSITION
00200  M01S00199.comcckd +++|          RJ     MBS         MOVE BIT STRING
00201  M01S00200.comcckd +++|          EQ     CPK3        CHECK NEXT WORD
00202  M01S00201.comcckd +++|
00203  M01S00202.comcckd +++| CPK6     SA1    CPKA        CONVERT COLONS TO SPACES
00204  M01S00203.comcckd +++| CPK7     SB2    A1-CPKAE
00205  M01S00204.comcckd +++|          PL     B2,CPK8     IF END OF BUFFER
00206  M01S00205.comcckd +++| CKDS$    IF     DEF,CKDS$
00207  M01S00206.comcckd +++|          RJ     SFN         SPACE FILL NAME
00208  M01S00207.comcckd +++| CKDS$    ELSE
00209  M01S00208.comcckd +++|          RJ     ZTB         COVERT ZEROES TO BLANKS
00210  M01S00209.comcckd +++| CKDS$    ENDIF
00211  M01S00210.comcckd +++|          SA6    A1
00212  M01S00211.comcckd +++|          SA1    A1+B1
00213  M01S00212.comcckd +++|          EQ     CPK7        CHECK NEXT WORD
00214  M01S00213.comcckd +++|
00215  M01S00214.comcckd +++| CPK8     SA1    CPKAE-1     CLEAR EXTRA SPACES
00216  M01S00215.comcckd +++|          SA3    WSP
00217  M01S00216.comcckd +++| CPK9     BX6    X3-X1
00218  M01S00217.comcckd +++|          NZ     X6,CPK10    IF NOT EXTRA SPACES
00219  M01S00218.comcckd +++|          SA6    A1
00220  M01S00219.comcckd +++|          SA1    A1-B1
00221  M01S00220.comcckd +++|          EQ     CPK9        CHECK NEXT WORD
00222  M01S00221.comcckd +++|
00223  M01S00222.comcckd +++| CPK10    MX0    48          SET ENDS OF LINE IN BUFFER
00224  M01S00223.comcckd +++|          SA1    CPKA+CKDW$-1
00225  M01S00224.comcckd +++| CPK11    SB2    A1-CPKAE
00226  M01S00225.comcckd +++|          PL     B2,CPK12    IF END OF BUFFER
00227  M01S00226.comcckd +++|          BX6    X0*X1
00228  M01S00227.comcckd +++|          SA6    A1
00229  M01S00228.comcckd +++|          SA1    A1+CKDW$
00230  M01S00229.comcckd +++|          EQ     CPK11       CHECK NEXT WORD
00231  M01S00230.comcckd +++|
00232  M01S00231.comcckd +++| CPKA     BSS    CKDL$*CKDW$ WORKING BUFFER
00233  M01S00232.comcckd +++| CPKAE    CON    0           END OF WORKING BUFFER
00234  M01S00233.comcckd +++| CKDP$    ENDIF
00235  M01S00234.comcckd +++| CWL      SPACE  4,10
00236  M01S00235.comcckd +++|**        CWL - COUNT WORDS IN LINE.
00237  M01S00236.comcckd +++|*
00238  M01S00237.comcckd +++|*         ENTRY  (B6) = FWA OF LINE.
00239  M01S00238.comcckd +++|*
00240  M01S00239.comcckd +++|*         EXIT   (B7) = NUMBER OF WORDS IN LINE.
00241  M01S00240.comcckd +++|*
00242  M01S00241.comcckd +++|*         USES   A - 1.
00243  M01S00242.comcckd +++|*                X - 0, 1.
00244  M01S00243.comcckd +++|
00245  M01S00244.comcckd +++|
00246  M01S00245.comcckd +++| CWL      SUBR               ENTRY/EXIT
00247  M01S00246.comcckd +++|          MX0    -12
00248  M01S00247.comcckd +++|          SB7    B0
00249  M01S00248.comcckd +++| CWL1     SA1    B6+B7       CHECK FOR END OF LINE
00250  M01S00249.comcckd +++|          BX1    -X0*X1
00251  M01S00250.comcckd +++|          SB7    B7+B1
00252  M01S00251.comcckd +++|          NZ     X1,CWL1     IF NOT END OF LINE
00253  M01S00252.comcckd +++|          EQ     CWLX        RETURN
00254  M01S00253.comcckd +++|          SPACE  4
00255  M01S00254.comcckd +++|          BASE   *
00256  M01S00255.comcckd +++| QUAL$    IF     -DEF,QUAL$
00257  M01S00256.comcckd +++|          QUAL   *
00258  M01S00257.comcckd +++| CKD      EQU    /COMCCKD/CKD
00259  M01S00258.comcckd +++| QUAL$    ENDIF
00260  M01S00259.comcckd +++|          ENDX
cdc/nos2.source/opl.opl871/common/comcckd.txt ยท Last modified: by 127.0.0.1