Seq # *Modification Id* Act
----------------------------+
00001 M01S00001.comcmbs +++| CTEXT COMCMBS - MOVE BIT STRING PROCESSORS.
00002 M01S00002.comcmbs +++| QUAL$ IF -DEF,QUAL$
00003 M01S00003.comcmbs +++| QUAL COMCMBS
00004 M01S00004.comcmbs +++| QUAL$ ENDIF
00005 M01S00005.comcmbs +++| BASE D
00006 M01S00006.comcmbs +++| COMCMBS SPACE 4,10
00007 M01S00007.comcmbs +++|*** COMCMBS - MOVE BIT STRING PROCESSORS.
00008 M01S00008.comcmbs +++|*
00009 M01S00009.comcmbs +++|* J. D. HOLMBECK. 84/03/31.
00010 M01S00010.comcmbs +++| MBS SPACE 4,20
00011 M01S00011.comcmbs +++|** MBS - MOVE BIT STRING.
00012 M01S00012.comcmbs +++|*
00013 M01S00013.comcmbs +++|* ENTRY (A1) = ADDRESS OF SOURCE STRING.
00014 M01S00014.comcmbs +++|* (A2) = ADDRESS OF DESTINATION STRING.
00015 M01S00015.comcmbs +++|* (B2) = UPPER BIT POSITION OF DESTINATION STRING.
00016 M01S00016.comcmbs +++|* (B3) = UPPER BIT POSITION OF SOURCE STRING.
00017 M01S00017.comcmbs +++|* (B4) = BIT COUNT.
00018 M01S00018.comcmbs +++|* (X1) = FIRST WORD OF SOURCE STRING.
00019 M01S00019.comcmbs +++|* (X2) = FIRST WORD OF DESTINATION STRING.
00020 M01S00020.comcmbs +++|*
00021 M01S00021.comcmbs +++|* EXIT (A1) = ADDRESS OF REMAINDER OF SOURCE STRING.
00022 M01S00022.comcmbs +++|* (A2) = ADDRESS OF REMAINDER OF DESTINATION STRING.
00023 M01S00023.comcmbs +++|* (B2) = UPPER BIT POSITION OF REMAINDER OF DESTINATION
00024 M01S00024.comcmbs +++|* STRING.
00025 M01S00025.comcmbs +++|* (B3) = UPPER BIT POSITION OF REMAINDER OF SOURCE
00026 M01S00026.comcmbs +++|* STRING.
00027 M01S00027.comcmbs +++|*
00028 M01S00028.comcmbs +++|* USES B - 4.
00029 M01S00029.comcmbs +++|* X - 1, 2.
00030 M01S00030.comcmbs +++|*
00031 M01S00031.comcmbs +++|* CALLS SBS.
00032 M01S00032.comcmbs +++|
00033 M01S00033.comcmbs +++|
00034 M01S00034.comcmbs +++| MBS SUBR ENTRY/EXIT
00035 M01S00035.comcmbs +++| MBS1 LE B4,MBSX IF NO MORE BITS TO TRANSFER
00036 M01S00036.comcmbs +++| RJ SBS SET BIT STRING
00037 M01S00037.comcmbs +++| BX2 X6 GET NEW STRING
00038 M01S00038.comcmbs +++| PL B3,MBS2 IF MORE BITS IN SOURCE WORD
00039 M01S00039.comcmbs +++| SA1 A1+B1 GET NEXT SOURCE WORD
00040 M01S00040.comcmbs +++| SB3 59
00041 M01S00041.comcmbs +++| MBS2 SA6 A2 SET NEW STRING
00042 M01S00042.comcmbs +++| PL B2,MBS1 IF MORE BITS IN DESTINATION WORD
00043 M01S00043.comcmbs +++| SA2 A2+B1 GET NEXT DESTINATION WORD
00044 M01S00044.comcmbs +++| SB2 59
00045 M01S00045.comcmbs +++| EQ MBS1 CHECK BIT COUNT
00046 M01S00046.comcmbs +++| SBS SPACE 4,20
00047 M01S00047.comcmbs +++|** SBS - SET BIT STRING.
00048 M01S00048.comcmbs +++|*
00049 M01S00049.comcmbs +++|* ENTRY (X1) = SOURCE STRING.
00050 M01S00050.comcmbs +++|* (X2) = DESTINATION STRING.
00051 M01S00051.comcmbs +++|* (B2) = UPPER BIT POSITION OF DESTINATION STRING.
00052 M01S00052.comcmbs +++|* (B3) = UPPER BIT POSITION OF SOURCE STRING.
00053 M01S00053.comcmbs +++|* (B4) = MAXIMUM BIT COUNT.
00054 M01S00054.comcmbs +++|*
00055 M01S00055.comcmbs +++|* EXIT (X6) = NEW STRING.
00056 M01S00056.comcmbs +++|* (B2) = LOWER BIT POSITION - 1 OF DESTINATION STRING.
00057 M01S00057.comcmbs +++|* .LT. 0 IF STRING AT END OF WORD.
00058 M01S00058.comcmbs +++|* (B3) = LOWER BIT POSITION - 1 OF SOURCE STRING.
00059 M01S00059.comcmbs +++|* .LT. 0 IF STRING AT END OF WORD.
00060 M01S00060.comcmbs +++|* (B4) = REMAINING BIT COUNT.
00061 M01S00061.comcmbs +++|* (B6) = NUMBER OF BITS TRANSFERRED.
00062 M01S00062.comcmbs +++|*
00063 M01S00063.comcmbs +++|* USES B - 7.
00064 M01S00064.comcmbs +++|* X - 0, 7.
00065 M01S00065.comcmbs +++|
00066 M01S00066.comcmbs +++|
00067 M01S00067.comcmbs +++| SBS SUBR ENTRY/EXIT
00068 M01S00068.comcmbs +++| SB6 B4-B1
00069 M01S00069.comcmbs +++| LE B6,B3,SBS1 IF UPPER BIT OF SOURCE .GT. BIT COUNT
00070 M01S00070.comcmbs +++| SB6 B3
00071 M01S00071.comcmbs +++| SBS1 LE B6,B2,SBS2 IF UPPER BIT OF DESTINATION .GT. COUNT
00072 M01S00072.comcmbs +++| SB6 B2+
00073 M01S00073.comcmbs +++| SBS2 BX6 X2 PRESET DESTINATION IMAGE
00074 M01S00074.comcmbs +++| NG B6,SBS4 IF NO BIT COUNT
00075 M01S00075.comcmbs +++| MX0 1 CREATE MASK
00076 M01S00076.comcmbs +++| AX0 B6
00077 M01S00077.comcmbs +++| SB7 B3+1 GET SOURCE STRING
00078 M01S00078.comcmbs +++| LX0 B7
00079 M01S00079.comcmbs +++| BX6 X0*X1
00080 M01S00080.comcmbs +++| SB7 B2-B3 GET DESTINATION IMAGE
00081 M01S00081.comcmbs +++| PL B7,SBS3 IF VALID SHIFT COUNT
00082 M01S00082.comcmbs +++| SB7 B7+60
00083 M01S00083.comcmbs +++| SBS3 LX0 B7
00084 M01S00084.comcmbs +++| BX0 -X0*X2
00085 M01S00085.comcmbs +++| LX6 B7 SET NEW IMAGE
00086 M01S00086.comcmbs +++| BX6 X0+X6
00087 M01S00087.comcmbs +++| SBS4 SB6 B6+B1 SET NUMBER OF BITS SET
00088 M01S00088.comcmbs +++| SB2 B2-B6 RESET UPPER BIT POSITIONS
00089 M01S00089.comcmbs +++| SB3 B3-B6
00090 M01S00090.comcmbs +++| SB4 B4-B6 RESET BIT COUNT
00091 M01S00091.comcmbs +++| EQ SBSX RETURN
00092 M01S00092.comcmbs +++| SPACE 4
00093 M01S00093.comcmbs +++| BASE *
00094 M01S00094.comcmbs +++| QUAL$ IF -DEF,QUAL$
00095 M01S00095.comcmbs +++| QUAL *
00096 M01S00096.comcmbs +++| MBS EQU /COMCMBS/MBS
00097 M01S00097.comcmbs +++| SBS EQU /COMCMBS/SBS
00098 M01S00098.comcmbs +++| QUAL$ ENDIF
00099 M01S00099.comcmbs +++| ENDX