Seq # *Modification Id* Act
----------------------------+
00001 M01S00001.comcrdc +++| CTEXT COMCRDC - READ CODED LINE, -C- FORMAT.
00002 M01S00002.comcrdc +++| RDC SPACE 4
00003 M01S00003.comcrdc +++| IF -DEF,QUAL$,1
00004 M01S00004.comcrdc +++| QUAL COMCRDC
00005 M01S00005.comcrdc +++| BASE D
Line S00006 Modification History |
M01 (Added by) | comcrdc |
M02 (Updated by) | 281l803 |
Seq # *Modification Id* Act
----------------------------+
00006 M02S00006.281l803 ---|* COMMENT COPYRIGHT CONTROL DATA CORP. 1970.
00007 M01S00001.281l803 +++|* COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
00008 M01S00007.comcrdc +++| RDC SPACE 4
00009 M01S00008.comcrdc +++|*** RDC - READ CODED LINE, -C- FORMAT.
00010 M01S00009.comcrdc +++|* G. R. MANSFIELD. 70/10/09.
00011 M01S00010.comcrdc +++| RDC SPACE 4
00012 M01S00011.comcrdc +++|*** RDC READS 1 CODED LINE FROM A CIO BUFFER TO A
00013 M01S00012.comcrdc +++|* WORKING BUFFER.
00014 M01S00013.comcrdc +++|*
00015 M01S00014.comcrdc +++|* ENTRY (X2) = ADDRESS OF FET FOR FILE.
00016 M01S00015.comcrdc +++|* (B6) = FWA WORKING BUFFER.
00017 M01S00016.comcrdc +++|* (B7) = WORD COUNT OF WORKING BUFFER.
00018 M01S00017.comcrdc +++|*
00019 M01S00018.comcrdc +++|* EXIT (X1) = 0 FOR TRANSFER COMPLETE.
00020 M01S00019.comcrdc +++|* (X1) = -1 IF EOF DETECTED ON FILE.
00021 M01S00020.comcrdc +++|* (X1) = -2 IF EOI DETECTED ON FILE.
00022 M01S00021.comcrdc +++|* (X1) = (B6) IF EOR WAS DETECTED ON FILE BEFORE
00023 M01S00022.comcrdc +++|* TRANSFER WAS COMPLETED.
00024 M01S00023.comcrdc +++|* (B6) = ADDRESS PLUS ONE OF LAST WORD TRANSFERRED TO
00025 M01S00024.comcrdc +++|* WORKING BUFFER.
00026 M01S00025.comcrdc +++|* (X2) = ADDRESS OF FET FOR FILE.
00027 M01S00026.comcrdc +++|* (X4) = CONTENTS OF LAST DATA WORD TRANSFERRED
00028 M01S00027.comcrdc +++|* BEFORE EOL GUARANTEED, IF TRANSFER
00029 M01S00028.comcrdc +++|* COMPLETED ((X1)=0).
00030 M01S00029.comcrdc +++|*
00031 M01S00030.comcrdc +++|* USES X - 1, 2, 3, 4, 6, 7.
00032 M01S00031.comcrdc +++|* B - 1, 2, 3, 4, 5, 6, 7.
00033 M01S00032.comcrdc +++|* A - 1, 2, 3, 4, 6, 7.
00034 M01S00033.comcrdc +++|*
00035 M01S00034.comcrdc +++|* CALLS LCB=, RDX=.
00036 M01S00035.comcrdc +++|
00037 M01S00036.comcrdc +++|
00038 M01S00037.comcrdc +++| + EQ RDC1
00039 M01S00038.comcrdc +++|
00040 M01S00039.comcrdc +++| RDC= PS ENTRY/EXIT
00041 M01S00040.comcrdc +++| SA4 *-1 SET RETURN ADDRESS
00042 M01S00041.comcrdc +++|
00043 M01S00042.comcrdc +++| IF -DEF,B1=1,1
00044 M01S00043.comcrdc +++| SB1 1
00045 M01S00044.comcrdc +++|
00046 M01S00045.comcrdc +++| SA1 X2+4 (B5) = LIMIT
00047 M01S00046.comcrdc +++| SA3 X2+B1 (X3) = FIRST
00048 M01S00047.comcrdc +++| SB7 B6+B7 (B7) = LWA+1 WORKING BUFFER
00049 M01S00048.comcrdc +++| MX4 -12 (X4) = BYTE MASK
00050 M01S00049.comcrdc +++| SB5 X1
00051 M01S00050.comcrdc +++|
00052 M01S00051.comcrdc +++|* INITIALIZE REGISTERS FOR TRANSFER.
00053 M01S00052.comcrdc +++|
00054 M01S00053.comcrdc +++| RDC1 SA1 A3+B1 (B3) = IN
00055 M01S00054.comcrdc +++| SA2 A1+B1 (B4) = OUT
00056 M01S00055.comcrdc +++| SB3 X1
00057 M01S00056.comcrdc +++| SB4 X2
00058 M01S00057.comcrdc +++|
00059 M01S00058.comcrdc +++|* TRANSFER DATA FROM CIRCULAR BUFFER TO WORKING BUFFER.
00060 M01S00059.comcrdc +++|
00061 M01S00060.comcrdc +++| RDC2 EQ B4,B3,=XLCB= LOAD CIRCULAR BUFFER IF OUT = IN
00062 M01S00061.comcrdc +++| SA1 B4 READ WORD
00063 M01S00062.comcrdc +++| BX6 X1
00064 M01S00063.comcrdc +++| SB4 B4+B1 (OUT+1)
00065 M01S00064.comcrdc +++| EQ B4,B5,RDC5 IF (OUT+1) = LIMIT
00066 M01S00065.comcrdc +++| SA6 B6 STORE WORD
00067 M01S00066.comcrdc +++| RDC3 BX7 -X4*X6 CHECK LOWER BYTE
00068 M01S00067.comcrdc +++| SB6 B6+B1 ADVANCE WORKING BUFFER
00069 M01S00068.comcrdc +++| ZR X7,RDC4 IF END OF LINE ENCOUNTERED
00070 M01S00069.comcrdc +++| NE B6,B7,RDC2 LOOP TO FILL WORKING BUFFER
00071 M01S00070.comcrdc +++| BX7 X4*X6 CLEAR LAST BYTE
00072 M01S00071.comcrdc +++| SA7 A6
00073 M01S00072.comcrdc +++| RDC4 BX4 X6 RETURN LAST WORD BEFORE EOL CLEARED
00074 M01S00073.comcrdc +++| EQ =XRDX= EXIT
00075 M01S00074.comcrdc +++|
00076 M01S00075.comcrdc +++| RDC5 SB4 X3 (OUT+1) = FIRST
00077 M01S00076.comcrdc +++| SA6 B6 STORE WORD
00078 M01S00077.comcrdc +++| EQ RDC3 LOOP
00079 M01S00078.comcrdc +++| SPACE 4
00080 M01S00079.comcrdc +++| BASE *
00081 M01S00080.comcrdc +++| QUAL$ IF -DEF,QUAL$
00082 M01S00081.comcrdc +++| QUAL *
00083 M01S00082.comcrdc +++| RDC= EQU /COMCRDC/RDC=
00084 M01S00083.comcrdc +++| QUAL$ ENDIF
00085 M01S00084.comcrdc +++| ENDX