Seq # *Modification Id* Act
----------------------------+
00001 M01S00001.comcscb +++| CTEXT COMCSCB - SET CHARACTERS IN BUFFER.
00002 M01S00002.comcscb +++| SCB SPACE 4,10
Line S00003 Modification History |
M01 (Added by) | comcscb |
M02 (Updated by) | cscb1 |
Seq # *Modification Id* Act
----------------------------+
00003 M02S00003.cscb1 ---| IF -DEF,QUAL$
00004 M01S00001.cscb1 +++| IF -DEF,QUAL$,1
00005 M01S00004.comcscb +++| QUAL COMCSCB
00006 M01S00005.comcscb +++| BASE D
Line S00006 Modification History |
M01 (Added by) | comcscb |
M02 (Updated by) | 281l803 |
Seq # *Modification Id* Act
----------------------------+
00007 M02S00006.281l803 ---|* COMMENT COPYRIGHT CONTROL DATA CORPORATION. (1979).
00008 M01S00001.281l803 +++|* COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
00009 M01S00007.comcscb +++| SCB SPACE 4,10
00010 M01S00008.comcscb +++|*** SCB - SET CHARACTERS IN BUFFER.
00011 M01S00009.comcscb +++|* W. B. CHAPIN. 79/01/22.
00012 M01S00010.comcscb +++| SCB SPACE 4,25
00013 M01S00011.comcscb +++|*** SCB PACKS UP TO 10 CHARACTERS INTO A WORKING BUFFER. THE
00014 M01S00012.comcscb +++|* CHARACTER DESTINATION AND NUMBER OF CHARACTERS ARE DETERMINED
00015 M01S00013.comcscb +++|* BY A LINE DEFINITION TABLE, *LDT*, WITH THE FOLLOWING LINE
00016 M01S00014.comcscb +++|* ENTRY FORMAT.
00017 M01S00015.comcscb +++|*
00018 M01S00016.comcscb +++|* VFD 12/WORD INDEX,6/CHARACTER INDEX,6/NUMBER OF CHAR.,36/
00019 M01S00017.comcscb +++|*
00020 M01S00018.comcscb +++|* THE ABOVE FORMAT IS REPEATED FOR EACH LINE ENTRY.
00021 M01S00019.comcscb +++|* THE *CFORM* MACRO CAN BE USED TO ESTABLISH THESE ENTRIES.
00022 M01S00020.comcscb +++|*
00023 M01S00021.comcscb +++|* ENTRY (B1) = 1.
00024 M01S00022.comcscb +++|* (B3) = ADDRESS OF LINE ENTRY DESCRIPTOR IN *LDT*.
00025 M01S00023.comcscb +++|* (B7) = FWA OF WORKING BUFFER.
00026 M01S00024.comcscb +++|* (X6) = LEFT JUSTIFIED CHARACTER STRING TO BE PLACED.
00027 M01S00025.comcscb +++|*
00028 M01S00026.comcscb +++|* EXIT CHARACTERS FROM *X6* PLACED IN WORKING BUFFER.
00029 M01S00027.comcscb +++|*
00030 M01S00028.comcscb +++|* USES A - 1, 7.
00031 M01S00029.comcscb +++|* X - 1, 2, 3, 4, 6, 7.
00032 M01S00030.comcscb +++|* B - 2, 3, 4, 5.
00033 M01S00031.comcscb +++|*
00034 M01S00032.comcscb +++|
00035 M01S00033.comcscb +++|
00036 M01S00034.comcscb +++| SCB SUBR ENTRY/EXIT
00037 M01S00035.comcscb +++| SA1 B3 SET DESTINATION ADDRESS
00038 M01S00036.comcscb +++| MX2 -12
00039 M01S00037.comcscb +++| LX1 0-48+60
00040 M01S00038.comcscb +++| BX2 -X2*X1
00041 M01S00039.comcscb +++| SB2 X2+B7
00042 M01S00040.comcscb +++| LX1 0-42-0+48 SET DESTINATION CHARACTER INDEX
00043 M01S00041.comcscb +++| MX2 -6
00044 M01S00042.comcscb +++| BX3 -X2*X1
00045 M01S00043.comcscb +++| SX4 6 CALCULATE CHARACTERS TO BE SHIFTED
00046 M01S00044.comcscb +++| SB5 X3
00047 M01S00045.comcscb +++| IX3 X3*X4
00048 M01S00046.comcscb +++| SB3 X3
00049 M01S00047.comcscb +++| LX1 0-36-0+42 SET NUMBER OF CHARACTERS
00050 M01S00048.comcscb +++| BX4 -X2*X1
00051 M01S00049.comcscb +++| SB4 X4
00052 M01S00050.comcscb +++| MX2 -54
00053 M01S00051.comcscb +++|
00054 M01S00052.comcscb +++|* INITIALIZE FOR PLACEMENT OF CHARACTERS IN NEXT WORD.
00055 M01S00053.comcscb +++|
00056 M01S00054.comcscb +++| SA1 B2 CURRENT DESTINATION WORD
00057 M01S00055.comcscb +++| SCB1 ZR B4,SCBX IF ALL CHARACTERS PLACED
00058 M01S00056.comcscb +++|
00059 M01S00057.comcscb +++|* POSITION CHARACTERS IN DESTINATION WORD FOR CHARACTER
00060 M01S00058.comcscb +++|* PLACEMENT.
00061 M01S00059.comcscb +++|
00062 M01S00060.comcscb +++| LX1 B3 POSITION CHARACTERS
00063 M01S00061.comcscb +++|
00064 M01S00062.comcscb +++|* PLACE CHARACTERS INTO CURRENT WORD.
00065 M01S00063.comcscb +++|
00066 M01S00064.comcscb +++| SB3 9
00067 M01S00065.comcscb +++| SCB2 BX1 -X2*X1 INSERT CHARACTER
00068 M01S00066.comcscb +++| BX7 X2*X6
00069 M01S00067.comcscb +++| BX1 X1+X7
00070 M01S00068.comcscb +++| SB4 B4-B1 COUNT CHARACTERS REMAINING
00071 M01S00069.comcscb +++| LX6 6 POSITION FOR NEXT SOURCE CHARACTER
00072 M01S00070.comcscb +++| ZR B4,SCB3 IF ALL CHARACTERS PLACED
00073 M01S00071.comcscb +++|
00074 M01S00072.comcscb +++|* CHECK FOR OVERFLOW INTO NEXT WORD.
00075 M01S00073.comcscb +++|
00076 M01S00074.comcscb +++| EQ B3,B5,SCB3 IF CHARACTERS TO GO IN NEXT WORD
00077 M01S00075.comcscb +++| LX1 6 CONTINUE PLACEMENT IN CURRENT WORD
00078 M01S00076.comcscb +++| SB5 B5+B1 COUNT CHARACTER POSITION IN CURRENT WORD
00079 M01S00077.comcscb +++| EQ SCB2 CONTINUE PLACING CHARACTERS
00080 M01S00078.comcscb +++|
00081 M01S00079.comcscb +++|* CHARACTERS OVERFLOW INTO NEXT WORD.
00082 M01S00080.comcscb +++|
00083 M01S00081.comcscb +++| SCB3 SX4 6 REPOSITION CHARACTERS FOR DESTINATION
00084 M01S00082.comcscb +++| SX3 B5
00085 M01S00083.comcscb +++| IX3 X3*X4
00086 M01S00084.comcscb +++| SX4 60
00087 M01S00085.comcscb +++| IX4 X4-X3
00088 M01S00086.comcscb +++| SB3 X4
00089 M01S00087.comcscb +++| LX7 X1,B3
00090 M01S00088.comcscb +++|
00091 M01S00089.comcscb +++|* PLACE WORD IN DESTINATION BUFFER.
00092 M01S00090.comcscb +++|
00093 M01S00091.comcscb +++| SA7 A1
00094 M01S00092.comcscb +++| SA1 A1+B1 SET FOR NEXT DESTINATION WORD
00095 M01S00093.comcscb +++| SB3 B0 SET FIRST CHARACTER POSITION
00096 M01S00094.comcscb +++| SB5 B0 FIRST CHARACTER POSITION
00097 M01S00095.comcscb +++| EQ SCB1 CONTINUE PLACING CHARACTERS
00098 M01S00096.comcscb +++| SPACE 4,10
00099 M01S00097.comcscb +++| QUAL$ IF -DEF,QUAL$
00100 M01S00098.comcscb +++| QUAL *
00101 M01S00099.comcscb +++| SCB EQU /COMCSCB/SCB
00102 M01S00100.comcscb +++| QUAL$ ENDIF
00103 M01S00101.comcscb +++| ENDX