User Tools

Site Tools


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

Common COMCUSB

1 Modification

Source

Seq #  *Modification Id* Act 
----------------------------+
00001  M01S00001.comcusb +++|          CTEXT  COMCUSB - UNPACK DATA BLOCK TO STRING BUFFER.
00002  M01S00002.comcusb +++|          SPACE  4
00003  M01S00003.comcusb +++|          IF     -DEF,QUAL$,1
00004  M01S00004.comcusb +++|          QUAL   COMCUSB
00005  M01S00005.comcusb +++|          BASE   D
Line S00006 Modification History
M01 (Added by) comcusb
M02 (Updated by) 281l803
Seq #  *Modification Id* Act 
----------------------------+
00006  M02S00006.281l803 ---|*         COMMENT COPYRIGHT CONTROL DATA CORP. 1972.
00007  M01S00001.281l803 +++|*         COMMENT  COPYRIGHT CONTROL DATA SYSTEMS INC.  1992.
00008  M01S00007.comcusb +++| USB      SPACE  4
00009  M01S00008.comcusb +++|***       USB - UNPACK DATA BLOCK TO STRING BUFFER.
00010  M01S00009.comcusb +++|*         D. A. HIVELEY.     72/03/01.
00011  M01S00010.comcusb +++|*         S. R. MCPHERSON.   74/09/30.
00012  M01S00011.comcusb +++|*         A. D. FORET.       74/12/04. RESEQUENCE.
00013  M01S00012.comcusb +++| USB      SPACE  4
00014  M01S00013.comcusb +++|***       USB - UNPACK DATA BLOCK TO STRING BUFFER.
00015  M01S00014.comcusb +++|*
00016  M01S00015.comcusb +++|*         IF THE SYMBOL USBL$ IS DEFINED IN THE USER PROGRAM, THE
00017  M01S00016.comcusb +++|*         VARIABLE LENGTH STRING BUFFER OPTION IS SELECTED.  THIS
00018  M01S00017.comcusb +++|*         VARIABLE LENGTH OPTION REQUIRES THAT THE STRING BUFFER USBB,
00019  M01S00018.comcusb +++|*         OF LENGTH SPECIFIED BY B6 UPON ENTRY, ALSO BE DEFINED IN THE
00020  M01S00019.comcusb +++|*         USER PROGRAM.
00021  M01S00020.comcusb +++|*
00022  M01S00021.comcusb +++|*         IF THE SYMBOL USBA$ IS DEFINED IN THE USER PROGRAM, 12 BIT
00023  M01S00022.comcusb +++|*         ASCII CHARACTERS WILL BE CORRECTLY UNPACKED INTO THE STRING
00024  M01S00023.comcusb +++|*         BUFFER.  (B3) DEFINES WHETHER OR NOT ASCII UNPACKING WILL
00025  M01S00024.comcusb +++|*         BE DONE.
00026  M01S00025.comcusb +++|*
00027  M01S00026.comcusb +++|*         ENTRY  (B1) - 1.
00028  M01S00027.comcusb +++|*                (B2) - FWA OF PACKED DATA.
00029  M01S00028.comcusb +++|*                (B3) - .EQ. 0, IF NORMAL CHARACTER SET.
00030  M01S00029.comcusb +++|*                       .NE. 0, IF ASCII 6/12 CHARACTER SET.
00031  M01S00030.comcusb +++|*                       THIS CONDITION IS USED ONLY WHEN ASCII 6/12
00032  M01S00031.comcusb +++|*                       UNPACKING OPTION (USBA$) IS DEFINED.
00033  M01S00032.comcusb +++|*                (B6) - STRING BUFFER LENGTH, REQUIRED AND USED ONLY
00034  M01S00033.comcusb +++|*                       WHEN VARIABLE LENGTH STRING BUFFER OPTION
00035  M01S00034.comcusb +++|*                       SELECTED (USBL$ DEFINED).
00036  M01S00035.comcusb +++|*
00037  M01S00036.comcusb +++|*         EXIT   CHARACTER UNPACKED 1 TO A WORD, RIGHT JUSTIFIED
00038  M01S00037.comcusb +++|*                            STARTING AT (USBB). A MAXIMUM OF
00039  M01S00038.comcusb +++|*                            80 CHARACTERS ARE ACCOMMODATED, BY
00040  M01S00039.comcusb +++|*                            DEFAULT.  AN ADDITIONAL WORD IS PROVIDED
00041  M01S00040.comcusb +++|*                            FOR THOSE PROGRAMS THAT GUARANTEE A
00042  M01S00041.comcusb +++|*                            TERMINATOR AT THE END OF STRING.
00043  M01S00042.comcusb +++|*                (A1) = LWA PACKED DATA PROCESSED.
00044  M01S00043.comcusb +++|*                ((A6)) = LWA OF UNPACK BUFFER.
00045  M01S00044.comcusb +++|*                (B2) = 0, IF MAXIMUM CHARACTERS PROCESSED.
00046  M01S00045.comcusb +++|*                (B6) = FWA OF UNPACK BUFFER.
00047  M01S00046.comcusb +++|*                (B7) = LWA OF UNPACKED BUFFER.
00048  M01S00047.comcusb +++|*                (USBC) = LWA OF UNPACKED BUFFER.
00049  M01S00048.comcusb +++|*
00050  M01S00049.comcusb +++|*         USES   X - 1, 2, 3, 6, 7.
00051  M01S00050.comcusb +++|*                A - 1, 6.
00052  M01S00051.comcusb +++|*                B - 2, 6, 7.
00053  M01S00052.comcusb +++|
00054  M01S00053.comcusb +++|
00055  M01S00054.comcusb +++| USB3     SX6    B7+         ADDRESS OF LAST CHARACTER
00056  M01S00055.comcusb +++|          SA6    USBC
00057  M01S00056.comcusb +++|          SB6    USBB        SET BEGINNING ADDRESS OF STRING
00058  M01S00057.comcusb +++|
00059  M01S00058.comcusb +++| USB      PS                 ENTRY/EXIT
00060  M01S00059.comcusb +++|          SA1    B2+         CONTROL CARD BUFFER
00061  M01S00060.comcusb +++|          SB7    USBB-1      DATA BLOCK STRING BUFFER
00062  M01S00061.comcusb +++|          MX2    -6
00063  M01S00062.comcusb +++|          IF     DEF,USBL$
00064  M01S00063.comcusb +++|          SB2    B6+
00065  M01S00064.comcusb +++|          ELSE   1
00066  M01S00065.comcusb +++|          SB2    80
00067  M01S00066.comcusb +++|          SB6    B0          SET CHARACTER COUNT IN WORD
00068  M01S00067.comcusb +++| .A       IF     DEF,USBA$
00069  M01S00068.comcusb +++|          SX7    B0+
00070  M01S00069.comcusb +++| .A       ENDIF
00071  M01S00070.comcusb +++| USB1     LX1    6
00072  M01S00071.comcusb +++|          SB6    B6+B1       BUMP CHARACTER COUNT THIS WORD
00073  M01S00072.comcusb +++|          BX6    -X2*X1
00074  M01S00073.comcusb +++| .B       IF     DEF,USBA$
00075  M01S00074.comcusb +++|          BX6    X6+X7
00076  M01S00075.comcusb +++| .B       ENDIF
00077  M01S00076.comcusb +++|          BX1    X2*X1       CLEAR CURRENT CHARACTER FROM WORD
00078  M01S00077.comcusb +++| .C       IF     DEF,USBA$
00079  M01S00078.comcusb +++|          ZR     B3,USB2     IF ASCII 6/12 NOT SELECTED
00080  M01S00079.comcusb +++|          SX3    X6-74B
00081  M01S00080.comcusb +++|          ZR     X3,USB2.2   IF ESCAPE CHARACTER *74*
00082  M01S00081.comcusb +++|          SX3    X6-76B
00083  M01S00082.comcusb +++|          ZR     X3,USB2.2   IF ESCAPE CHARACTER *76*
00084  M01S00083.comcusb +++|          SX7    B0+
00085  M01S00084.comcusb +++| .C       ENDIF
00086  M01S00085.comcusb +++| USB2     SB7    B7+B1       INCREMENT STRING BUFFER ADDRESS
00087  M01S00086.comcusb +++|          SB2    B2-B1       DECREMENT CHARACTER COUNT
00088  M01S00087.comcusb +++|          SA6    B7+         STORE CURRENT CHARACTER IN STRING BUFFER
00089  M01S00088.comcusb +++|          ZR     B2,USB3     IF MAXIMUM CHARACTERS PROCESSED
00090  M01S00089.comcusb +++| USB2.1   NZ     X1,USB1     IF MORE CHARACTERS
00091  M01S00090.comcusb +++|          SX6    B6-9        CHECK CHARACTERS PROCESSED THIS WORD
00092  M01S00091.comcusb +++|          NG     X6,USB3     IF END OF LINE
00093  M01S00092.comcusb +++|          SB6    B0          RESET CHARACTER COUNT WITHIN WORD
00094  M01S00093.comcusb +++|          SA1    A1+B1       GET NEXT WORD
00095  M01S00094.comcusb +++|          ZR     X1,USB3     IF END OF LINE
00096  M01S00095.comcusb +++|          NZ     X6,USB1     IF LAST WORD COMPLETELY PROCESSED
00097  M01S00096.comcusb +++|          EQ     USB2        PROCESS *00* TERMINATING PREVIOUS WORD
00098  M01S00097.comcusb +++|
00099  M01S00098.comcusb +++| .D       IF     DEF,USBA$
00100  M01S00099.comcusb +++| USB2.2   BX7    X6
00101  M01S00100.comcusb +++|          LX7    6
00102  M01S00101.comcusb +++|          EQ     USB2.1      PROCESS NEXT CHARACTER
00103  M01S00102.comcusb +++| .D       ENDIF
00104  M01S00103.comcusb +++|          SPACE  4
00105  M01S00104.comcusb +++|          IF     -DEF,USBL$,2
00106  M01S00105.comcusb +++|          IF     -DEF,USBB,1
00107  M01S00106.comcusb +++| USBB     BSS    81          STRING BUFFER
00108  M01S00107.comcusb +++|          IF     -DEF,USBC,1
00109  M01S00108.comcusb +++| USBC     BSS    1
00110  M01S00109.comcusb +++| QUAL$    IF     -DEF,QUAL$
00111  M01S00110.comcusb +++|          QUAL   *
00112  M01S00111.comcusb +++| USB      EQU    /COMCUSB/USB
00113  M01S00112.comcusb +++|          IF     -DEF,USBL$,2
00114  M01S00113.comcusb +++|          IF     -DEF,USBB,1
00115  M01S00114.comcusb +++| USBB     EQU    /COMCUSB/USBB
00116  M01S00115.comcusb +++|          IF     -DEF,USBC,1
00117  M01S00116.comcusb +++| USBC     EQU    /COMCUSB/USBC
00118  M01S00117.comcusb +++| QUAL$    ENDIF
00119  M01S00118.comcusb +++|          BASE   *
00120  M01S00119.comcusb +++|          ENDX
cdc/nos2.source/opl.opl871/common/comcusb.txt ยท Last modified: by 127.0.0.1