*COMDECK COMFSID
 COMFSID  CTEXT              COMFSID - SELECT INTEGER DIVIDE SUBSKEL. 
  
**        **KLUGE** AT PRESENT THE QCG I. L. INPUT IS IN P2. FORMAT.
*         SO IN ORER TO ACHIEVE COMMONALITY WE SUBSTITUTE THE MICRO 
*         "TP" FOR TP IN THIS CODE. "TP" = P2 (QCG) OR TP (BRIDGE). 
*         TO FURTHER COMPLICATE THINGS SHORT CONSTANT VALUES RESIDE 
*         IN THE BIAS FIELD FOR THE BRIDGE AND THE TAG FIELD FOR QCG. 
*         WE DEFINE "BIAS" = TAG (QCG) OR BIAS (BRIDGE).
  
          SX6    =XV=IDV
          SA1    B5+OR.2OP
          HX1    "TP".SHRT
          PL     X1,SUB.RET  IF NOT SHRT[TURP(3)] 
          =X3    1
          LX1    "TP".SHRTP+1-"TP"."BIAS"P
          SX1    X1 
          IX4    X1-X3
          BX0    X1*X4
          MI     X4,SUB.RET  IF VAL LE 0
          NZ     X0,SUB.RET  IF VAL NOT POWER OF 2
          SX6    =XV=IDP2 
          MX2    1
          NX0    B7,X1
          SB7    B7-47
          SX0    -B7
          LX0    "TP"."BIAS"P 
          LX2    1+"TP".SHRTP 
          BX7    X2+X0
          SA7    "GPBUF"
          EQ     SUB.RET
          ENDX
