User Tools

Site Tools


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

Common COMCRDO

Library Member Format: MODIFY

Source

Seq #  *Modification Id* Act 
----------------------------+
00001  M00S00001.comcrdo +++|          CTEXT  COMCRDO - READ ONE WORD.
00002  M00S00002.comcrdo +++| RDO      SPACE  4
00003  M00S00003.comcrdo +++|          IF     -DEF,QUAL$,1
00004  M00S00004.comcrdo +++|          QUAL   COMCRDO
00005  M00S00005.comcrdo +++|          BASE   D
Line S00006 Modification History
M01 (Removed by) 281l803
Seq #  *Modification Id* Act 
----------------------------+
00006  M01S00006.281l803 ---|*         COMMENT COPYRIGHT CONTROL DATA CORP. 1970.
Line S00001 Modification History
M01 (Added by) 281l803
Seq #  *Modification Id* Act 
----------------------------+
00007  M01S00001.281l803 +++|*         COMMENT  COPYRIGHT CONTROL DATA SYSTEMS INC.  1992.
00008  M00S00007.comcrdo +++| RDO      SPACE  4
00009  M00S00008.comcrdo +++|***       RDO - READ ONE WORD.
00010  M00S00009.comcrdo +++|*         D. A. CAHALANDER.  70/10/09.
00011  M00S00010.comcrdo +++| RDO      SPACE  4
Line S00011 Modification History
M01 (Removed by) ns2383
Seq #  *Modification Id* Act 
----------------------------+
00012  M01S00011.ns2383  ---|***              RDO READS 1 WORD FROM A CIO BUFFER TO (X6)
Line S00001 Modification History
M01 (Added by) ns2383
Seq #  *Modification Id* Act 
----------------------------+
00013  M01S00001.ns2383  +++|***       RDO READS 1 WORD FROM A CIO BUFFER TO (X6).
00014  M00S00012.comcrdo +++|*
00015  M00S00013.comcrdo +++|*         ENTRY  (A1) = ADDRESS OF IN POINTER.
00016  M00S00014.comcrdo +++|*                (X1) = IN.
00017  M00S00015.comcrdo +++|*
00018  M00S00016.comcrdo +++|*         EXIT   (X1) = 0 FOR TRANSFER COMPLETE.
00019  M00S00017.comcrdo +++|*                (X1) = -1 IF EOF DETECTED ON FILE.
00020  M00S00018.comcrdo +++|*                (X1) = -2 IF EOI DETECTED ON FILE.
00021  M01S00002.ns2383  +++|*                (X1) = -3 IF *CIO=* WAS CALLED TO READ MORE DATA AND
00022  M01S00003.ns2383  +++|*                       RETURNED AN ERROR STATUS.
00023  M00S00019.comcrdo +++|*                (X1) = 1 IF EOR DETECTED ON FILE.
00024  M00S00020.comcrdo +++|*                (X2) = ADDRESS OF FET FOR FILE.
00025  M00S00021.comcrdo +++|*                (X6) = WORD READ.
00026  M01S00004.ns2383  +++|*                (X7) = *CIO* ERROR STATUS IF (X1) = -3.
00027  M00S00022.comcrdo +++|*
00028  M00S00023.comcrdo +++|*         USES   X - 1, 2, 3, 4, 6, 7.
00029  M00S00024.comcrdo +++|*                B - 1.
00030  M00S00025.comcrdo +++|*                A - 1, 2, 3, 4, 6, 7.
00031  M00S00026.comcrdo +++|*
00032  M00S00027.comcrdo +++|*         CALLS  CIO=.
00033  M00S00028.comcrdo +++|
00034  M00S00029.comcrdo +++|
00035  M00S00030.comcrdo +++| RDO1     SX7    X3+B1       INCREMENT OUT
00036  M00S00031.comcrdo +++|          BX6    X4
00037  M00S00032.comcrdo +++|          MX1    0           RESPONSE = 0
00038  M00S00033.comcrdo +++|          SA7    A3          UPDATE OUT
00039  M00S00034.comcrdo +++|
00040  M00S00035.comcrdo +++| RDO=     PS                 ENTRY/EXIT
00041  M00S00036.comcrdo +++| RDO2     BSS    0
00042  M00S00037.comcrdo +++|
00043  M00S00038.comcrdo +++|          IF     -DEF,B1=1,1
00044  M00S00039.comcrdo +++|          SB1    1
00045  M00S00040.comcrdo +++|
00046  M00S00041.comcrdo +++|          SA3    A1+B1       READ OUT
00047  M00S00042.comcrdo +++|          IX7    X3-X1       OUT - IN
00048  M00S00043.comcrdo +++|          SX2    A1-2
00049  M00S00044.comcrdo +++|          SA4    X3          READ WORD
00050  M00S00045.comcrdo +++|          NG     X7,RDO1     IF NO WRAP AROUND
00051  M00S00046.comcrdo +++|          SA1    A3+B1       READ LIMIT
00052  M00S00047.comcrdo +++|          SX6    X1
00053  M00S00048.comcrdo +++|          ZR     X7,RDO3     IF BUFFER EMPTY
00054  M00S00049.comcrdo +++|          SX7    X3+B1       ADVANCE OUT
00055  M00S00050.comcrdo +++|          IX1    X7-X6
00056  M00S00051.comcrdo +++|          NZ     X1,RDO1     IF OUT " LIMIT
00057  M00S00052.comcrdo +++|          SA1    X2+B1       READ FIRST
00058  M00S00053.comcrdo +++|          SX3    X1-1
00059  M00S00054.comcrdo +++|          EQ     RDO1        RETURN
00060  M00S00055.comcrdo +++|
00061  M00S00056.comcrdo +++|*         LOAD CIRCULAR BUFFER.
00062  M00S00057.comcrdo +++|
00063  M00S00058.comcrdo +++| RDO3     SA1    X2          CHECK BUFFER STATUS
00064  M00S00059.comcrdo +++|          LX1    59-0
00065  M00S00060.comcrdo +++|          NG     X1,RDO5     IF BUFFER NOT BUSY
00066  M00S00061.comcrdo +++|          RECALL
00067  M00S00062.comcrdo +++| RDO4     SA1    X2+2        READ IN
00068  M00S00063.comcrdo +++|          EQ     RDO2        CONTINUE READ
00069  M00S00064.comcrdo +++|
00070  M00S00065.comcrdo +++| RDO5     SA4    A3-B1       READ IN
00071  M00S00066.comcrdo +++|          IX7    X4-X3
00072  M00S00067.comcrdo +++|          NZ     X7,RDO4     IF BUFFER NOT EMPTY
00073  M00S00068.comcrdo +++|          LX1    -4
00074  M00S00069.comcrdo +++|          NG     X1,RDO6     IF EOR SET
00075  M00S00070.comcrdo +++|          LX1    4           ISSUE PREVIOUS READ FUNCTION
00076  M00S00071.comcrdo +++|          SX6    740770B/2
00077  M00S00072.comcrdo +++|          BX7    X6*X1
00078  M00S00073.comcrdo +++|          LX7    1
00079  M00S00074.comcrdo +++|          RJ     =XCIO=
Line S00075 Modification History
M01 (Removed by) ns2383
Seq #  *Modification Id* Act 
----------------------------+
00080  M01S00075.ns2383  ---|          EQ     RDO4        CONTINUE READ
Line S00005 Modification History
M01 (Added by) ns2383
Seq #  *Modification Id* Act 
----------------------------+
00081  M01S00005.ns2383  +++|          ZR     X7,RDO4     IF NO ERROR
00082  M01S00006.ns2383  +++|          SA3    X2+3        OUT
00083  M01S00007.ns2383  +++|          SA4    X2+2        IN
00084  M01S00008.ns2383  +++|          MX1    -2          SET RESPONSE = -3
00085  M01S00009.ns2383  +++|          IX3    X3-X4
00086  M01S00010.ns2383  +++|          NZ     X3,RDO4     IF BUFFER NOT EMPTY
00087  M01S00011.ns2383  +++|          EQ     RDO=        RETURN
00088  M00S00076.comcrdo +++|
00089  M00S00077.comcrdo +++| RDO6     LX3    X1,B1
00090  M00S00078.comcrdo +++|          SA1    A1+B1       SET IN = OUT = FIRST
00091  M00S00079.comcrdo +++|          SX7    X1
00092  M00S00080.comcrdo +++|          SA7    A1+B1
00093  M00S00081.comcrdo +++|          SA7    A7+B1
00094  M00S00082.comcrdo +++|          SX1    B1          RESPONSE = 1
00095  M00S00083.comcrdo +++|          PL     X3,RDO=     IF NOT EOF
00096  M00S00084.comcrdo +++|          LX3    3-9
00097  M00S00085.comcrdo +++|          SX1    -B1         RESPONSE = -1
00098  M00S00086.comcrdo +++|          PL     X3,RDO=     RETURN - IF NOT EOI
00099  M00S00087.comcrdo +++|          SX1    -2          RESPONSE= -2
00100  M00S00088.comcrdo +++|          EQ     RDO=        RETURN
00101  M00S00089.comcrdo +++|          SPACE  4
00102  M00S00090.comcrdo +++|          BASE   *
00103  M00S00091.comcrdo +++| QUAL$    IF     -DEF,QUAL$
00104  M00S00092.comcrdo +++|          QUAL   *
00105  M00S00093.comcrdo +++| RDO=     EQU    /COMCRDO/RDO=
00106  M00S00094.comcrdo +++| QUAL$    ENDIF
00107  M00S00095.comcrdo +++|          ENDX
cdc/nos2.source/opl.opl871/common/comcrdo.txt ยท Last modified: (external edit)